igniteui-cli 15.2.2 → 15.3.1-beta.1

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.
Files changed (134) hide show
  1. package/lib/commands/build.js +7 -12
  2. package/package.json +7 -7
  3. package/templates/blazor/igb/projects/ai-config/files/skills/AGENTS.md +0 -5
  4. package/templates/blazor/igb/projects/ai-config/files/skills/igniteui-blazor-components/SKILL.md +2 -0
  5. package/templates/blazor/igb/projects/ai-config/files/skills/igniteui-blazor-components/references/charts.md +7 -35
  6. package/templates/blazor/igb/projects/ai-config/files/skills/igniteui-blazor-components/references/data-display.md +0 -54
  7. package/templates/blazor/igb/projects/ai-config/files/skills/igniteui-blazor-components/references/feedback.md +0 -38
  8. package/templates/blazor/igb/projects/ai-config/files/skills/igniteui-blazor-components/references/form-controls.md +0 -68
  9. package/templates/blazor/igb/projects/ai-config/files/skills/igniteui-blazor-components/references/layout-manager.md +1 -124
  10. package/templates/blazor/igb/projects/ai-config/files/skills/igniteui-blazor-components/references/layout.md +0 -62
  11. package/templates/blazor/igb/projects/ai-config/files/skills/igniteui-blazor-grids/references/grid-migration.md +322 -0
  12. package/templates/blazor/igb/projects/ai-config/files/skills/igniteui-blazor-theming/SKILL.md +1 -1
  13. package/templates/react/igr-ts/projects/_base/files/package.json +1 -0
  14. package/templates/react/igr-ts/projects/_base/files/src/app/app.tsx +4 -2
  15. package/templates/react/igr-ts/projects/_base/files/src/setupTests.ts +12 -0
  16. package/templates/react/igr-ts/projects/_base/files/styles.css +6 -0
  17. package/templates/react/igr-ts/projects/_base_with_home/files/index.html +2 -1
  18. package/templates/react/igr-ts/projects/_base_with_home/files/src/app/home/home.tsx +60 -10
  19. package/templates/react/igr-ts/projects/_base_with_home/files/src/app/home/style.module.css +79 -20
  20. package/templates/react/igr-ts/projects/ai-config/files/skills/grid-lite-to-igr-grid-migration/SKILL.md +274 -0
  21. package/templates/react/igr-ts/projects/ai-config/files/skills/igniteui-react-components/SKILL.md +0 -8
  22. package/templates/react/igr-ts/projects/ai-config/files/skills/igniteui-react-components/reference/CHARTS-GRIDS.md +6 -36
  23. package/templates/react/igr-ts/projects/ai-config/files/skills/igniteui-react-components/reference/COMPONENT-CATALOGUE.md +8 -142
  24. package/templates/react/igr-ts/projects/ai-config/files/skills/igniteui-react-components/reference/EVENT-HANDLING.md +2 -0
  25. package/templates/react/igr-ts/projects/ai-config/files/skills/igniteui-react-customize-theme/SKILL.md +7 -14
  26. package/templates/react/igr-ts/projects/ai-config/files/skills/igniteui-react-customize-theme/reference/CSS-THEMING.md +2 -0
  27. package/templates/react/igr-ts/projects/ai-config/files/skills/igniteui-react-customize-theme/reference/MCP-SERVER.md +0 -8
  28. package/templates/react/igr-ts/projects/ai-config/files/skills/igniteui-react-generate-from-image-design/SKILL.md +2 -2
  29. package/templates/react/igr-ts/projects/ai-config/files/skills/igniteui-react-generate-from-image-design/reference/component-mapping.md +60 -74
  30. package/templates/react/igr-ts/projects/ai-config/files/skills/igniteui-react-generate-from-image-design/reference/gotchas.md +2 -2
  31. package/templates/react/igr-ts/projects/empty/index.js +2 -2
  32. package/templates/react/igr-ts/projects/side-nav/files/src/app/app-routes.tsx +5 -0
  33. package/templates/react/igr-ts/projects/side-nav/files/src/app/app.css +82 -0
  34. package/templates/react/igr-ts/projects/side-nav/files/src/app/app.tsx +104 -0
  35. package/templates/react/igr-ts/projects/side-nav/files/src/app/home/home.tsx +69 -0
  36. package/templates/react/igr-ts/projects/side-nav/files/src/app/home/style.module.css +105 -0
  37. package/templates/react/igr-ts/projects/{top-nav → side-nav}/index.d.ts +2 -2
  38. package/templates/react/igr-ts/projects/{top-nav → side-nav}/index.js +7 -7
  39. package/templates/react/igr-ts/projects/side-nav-auth/files/index.html +19 -0
  40. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/app-routes.tsx +24 -0
  41. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/app.css +84 -0
  42. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/app.tsx +124 -0
  43. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/AuthContext.tsx +73 -0
  44. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/AuthGuard.tsx +14 -0
  45. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/components/Login.module.css +93 -0
  46. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/components/Login.tsx +69 -0
  47. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/components/LoginBar.module.css +42 -0
  48. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/components/LoginBar.tsx +44 -0
  49. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/components/LoginDialog.module.css +14 -0
  50. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/components/LoginDialog.tsx +49 -0
  51. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/components/Register.module.css +74 -0
  52. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/components/Register.tsx +67 -0
  53. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/models/external-login.ts +10 -0
  54. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/models/login.ts +4 -0
  55. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/models/register-info.ts +6 -0
  56. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/models/user.ts +19 -0
  57. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/pages/Profile.module.css +87 -0
  58. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/pages/Profile.tsx +42 -0
  59. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/pages/RedirectFacebook.tsx +44 -0
  60. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/pages/RedirectGoogle.tsx +40 -0
  61. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/pages/RedirectMicrosoft.tsx +40 -0
  62. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/services/authentication.ts +37 -0
  63. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/services/external-auth-config.ts +44 -0
  64. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/services/externalAuth.ts +272 -0
  65. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/services/fakeBackend.ts +88 -0
  66. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/services/jwtUtil.ts +10 -0
  67. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/services/pkce.ts +29 -0
  68. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/services/userStore.ts +39 -0
  69. package/templates/react/igr-ts/projects/side-nav-auth/index.d.ts +15 -0
  70. package/templates/react/igr-ts/projects/side-nav-auth/index.js +46 -0
  71. package/templates/react/igr-ts/projects/side-nav-mini/files/src/app/app-routes.tsx +5 -0
  72. package/templates/react/igr-ts/projects/side-nav-mini/files/src/app/app.css +109 -0
  73. package/templates/react/igr-ts/projects/side-nav-mini/files/src/app/app.test.tsx +20 -0
  74. package/templates/react/igr-ts/projects/side-nav-mini/files/src/app/app.tsx +81 -0
  75. package/templates/react/igr-ts/projects/side-nav-mini/files/src/app/home/home.tsx +69 -0
  76. package/templates/react/igr-ts/projects/side-nav-mini/files/src/app/home/style.module.css +105 -0
  77. package/templates/react/igr-ts/projects/side-nav-mini/index.d.ts +15 -0
  78. package/templates/react/igr-ts/projects/side-nav-mini/index.js +46 -0
  79. package/templates/react/igr-ts/projects/side-nav-mini-auth/files/src/app/app.css +106 -0
  80. package/templates/react/igr-ts/projects/side-nav-mini-auth/files/src/app/app.tsx +101 -0
  81. package/templates/react/igr-ts/projects/side-nav-mini-auth/index.d.ts +15 -0
  82. package/templates/react/igr-ts/projects/side-nav-mini-auth/index.js +50 -0
  83. package/templates/webcomponents/igc-ts/projects/_base/files/src/app/app.ts +6 -1
  84. package/templates/webcomponents/igc-ts/projects/_base/files/styles.css +1 -0
  85. package/templates/webcomponents/igc-ts/projects/_base_with_home/files/index.html +2 -0
  86. package/templates/webcomponents/igc-ts/projects/_base_with_home/files/src/app/home/home.ts +103 -9
  87. package/templates/webcomponents/igc-ts/projects/_base_with_home/files/src/assets/wc.png +0 -0
  88. package/templates/webcomponents/igc-ts/projects/ai-config/files/skills/igniteui-wc-choose-components/SKILL.md +122 -160
  89. package/templates/webcomponents/igc-ts/projects/ai-config/files/skills/igniteui-wc-customize-component-theme/SKILL.md +83 -311
  90. package/templates/webcomponents/igc-ts/projects/ai-config/files/skills/igniteui-wc-customize-component-theme/references/mcp-setup.md +69 -0
  91. package/templates/webcomponents/igc-ts/projects/ai-config/files/skills/igniteui-wc-generate-from-image-design/SKILL.md +4 -1
  92. package/templates/webcomponents/igc-ts/projects/ai-config/files/skills/igniteui-wc-generate-from-image-design/references/component-mapping.md +60 -61
  93. package/templates/webcomponents/igc-ts/projects/ai-config/files/skills/igniteui-wc-generate-from-image-design/references/gotchas.md +15 -11
  94. package/templates/webcomponents/igc-ts/projects/ai-config/files/skills/igniteui-wc-migrate-grid-lite-to-premium/SKILL.md +446 -0
  95. package/templates/webcomponents/igc-ts/projects/ai-config/files/skills/igniteui-wc-optimize-bundle-size/SKILL.md +23 -274
  96. package/templates/webcomponents/igc-ts/projects/empty/index.js +1 -1
  97. package/templates/webcomponents/igc-ts/projects/side-nav/files/index.html +21 -0
  98. package/templates/webcomponents/igc-ts/projects/side-nav/files/src/app/app-routing.ts +9 -0
  99. package/templates/webcomponents/igc-ts/projects/side-nav/files/src/app/app.ts +192 -22
  100. package/templates/webcomponents/igc-ts/projects/side-nav/files/src/app/home/home.ts +175 -0
  101. package/templates/webcomponents/igc-ts/projects/side-nav/index.js +1 -1
  102. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/index.html +25 -0
  103. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/app-routing.ts +37 -0
  104. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/app.ts +251 -0
  105. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/login-bar/login-bar.ts +124 -0
  106. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/login-dialog/login-dialog.ts +253 -0
  107. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/models/external-login.ts +10 -0
  108. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/models/login.ts +4 -0
  109. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/models/register-info.ts +6 -0
  110. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/models/user.ts +19 -0
  111. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/services/authentication.ts +37 -0
  112. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/services/external-auth-config.ts +44 -0
  113. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/services/externalAuth.ts +272 -0
  114. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/services/fakeBackend.ts +88 -0
  115. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/services/jwtUtil.ts +10 -0
  116. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/services/pkce.ts +29 -0
  117. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/services/userStore.ts +39 -0
  118. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/profile/profile.ts +142 -0
  119. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/redirect/redirect-facebook.ts +57 -0
  120. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/redirect/redirect-google.ts +53 -0
  121. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/redirect/redirect-microsoft.ts +53 -0
  122. package/templates/webcomponents/igc-ts/projects/side-nav-auth/index.d.ts +15 -0
  123. package/templates/webcomponents/igc-ts/projects/side-nav-auth/index.js +46 -0
  124. package/templates/webcomponents/igc-ts/projects/side-nav-mini/files/src/app/app-routing.ts +13 -0
  125. package/templates/webcomponents/igc-ts/projects/side-nav-mini/files/src/app/app.ts +238 -0
  126. package/templates/webcomponents/igc-ts/projects/side-nav-mini/index.d.ts +14 -0
  127. package/templates/webcomponents/igc-ts/projects/side-nav-mini/index.js +45 -0
  128. package/templates/webcomponents/igc-ts/projects/side-nav-mini-auth/files/src/app/app.ts +258 -0
  129. package/templates/webcomponents/igc-ts/projects/side-nav-mini-auth/index.d.ts +15 -0
  130. package/templates/webcomponents/igc-ts/projects/side-nav-mini-auth/index.js +50 -0
  131. package/templates/react/igr-ts/projects/top-nav/files/src/app/app.css +0 -62
  132. package/templates/react/igr-ts/projects/top-nav/files/src/app/app.tsx +0 -18
  133. package/templates/react/igr-ts/projects/top-nav/files/src/components/navigation-header/index.tsx +0 -19
  134. /package/templates/react/igr-ts/projects/{top-nav → side-nav}/files/src/app/app.test.tsx +0 -0
@@ -1,40 +1,134 @@
1
1
  import { html, css, LitElement } from 'lit';
2
2
  import { customElement } from 'lit/decorators.js';
3
+ import { github } from '@igniteui/material-icons-extended';
4
+ import {
5
+ defineComponents,
6
+ IgcIconComponent,
7
+ registerIconFromText,
8
+ } from 'igniteui-webcomponents';
9
+
10
+ defineComponents(IgcIconComponent);
11
+ registerIconFromText(github.name, github.value, 'imx-icons');
3
12
 
4
13
  @customElement('app-home')
5
14
  export class HomeComponent extends LitElement {
6
15
  static styles = css`
16
+ :host {
17
+ display: flex;
18
+ flex-flow: column nowrap;
19
+ align-items: center;
20
+ width: 100%;
21
+ padding: 24px;
22
+ text-align: center;
23
+ box-sizing: border-box;
24
+ }
25
+
26
+ h1 {
27
+ color: #09f;
28
+ font-size: 80px;
29
+ font-weight: 300;
30
+ line-height: 1.2;
31
+ margin: 0 0 16px;
32
+ }
33
+
34
+ h4 {
35
+ font-size: 28px;
36
+ font-weight: 400;
37
+ line-height: 1.4;
38
+ margin: 0 0 32px;
39
+ max-width: 1120px;
40
+ }
41
+
7
42
  p {
43
+ font-size: 16px;
8
44
  margin: 0px 0px 8px 0px;
9
45
  }
46
+
47
+ p:nth-last-child(2) {
48
+ padding-top: 16px;
49
+ }
50
+
51
+ .content__container--wide {
52
+ display: flex;
53
+ flex-flow: row wrap;
54
+ justify-content: center;
55
+ gap: 24px;
56
+ }
57
+
58
+ .content__github-item {
59
+ display: flex;
60
+ flex-flow: row nowrap;
61
+ align-items: center;
62
+ }
63
+
64
+ .content__github-icon {
65
+ display: inline-flex;
66
+ width: 24px;
67
+ height: 24px;
68
+ margin-right: 8px;
69
+ flex: 0 0 24px;
70
+ color: #000;
71
+ }
72
+
10
73
  img {
11
- margin-bottom: 48px;
12
- max-height: 480px;
74
+ display: block;
75
+ width: 500px;
76
+ height: 350px;
77
+ margin-bottom: 32px;
13
78
  max-width: 100%;
79
+ object-fit: contain;
80
+ }
81
+
82
+ a {
83
+ font-size: 16px;
84
+ }
85
+
86
+ @media (max-width: 768px) {
87
+ h1 {
88
+ font-size: 40px;
89
+ }
90
+
91
+ h4 {
92
+ font-size: 20px;
93
+ }
94
+
95
+ img {
96
+ width: 100%;
97
+ height: 240px;
98
+ }
14
99
  }
15
100
  `;
16
101
 
17
102
  render() {
18
103
  return html`
19
104
  <h1>Welcome to Ignite UI for Web Components!</h1>
20
- <h4>A complete library of UI components, giving you the ability to build modern web applications using encapsulation and the concept of reusable components in a dependency-free approach.</h4>
21
- <img src="./src/assets/astronaut-components.svg" alt="indigoDesign">
105
+ <h4>A complete library of 50+ UI components for building modern web applications with reusable Web Components.</h4>
106
+ <img src="./src/assets/astronaut-components.svg" alt="Ignite UI for Web Components">
22
107
  <p class="ig-typography__subtitle-1">Discover more at</p>
23
108
  <p>
24
- <a href="https://www.infragistics.com/products/ignite-ui-web-components" target="_blank">
109
+ <a href="https://www.infragistics.com/products/ignite-ui-web-components" target="_blank" rel="noopener noreferrer">
25
110
  www.infragistics.com/products/ignite-ui-web-components
26
111
  </a>
27
112
  </p>
28
113
  <p>
29
- <a href="https://www.infragistics.com/products/indigo-design" target="_blank">
114
+ <a href="https://www.infragistics.com/products/indigo-design" target="_blank" rel="noopener noreferrer">
30
115
  www.infragistics.com/products/indigo-design
31
116
  </a>
32
117
  </p>
33
118
  <p class="ig-typography__subtitle-1">We are also on GitHub</p>
34
119
  <p class="content__container--wide">
35
- <a href="https://github.com/IgniteUI/igniteui-cli" target="_blank">
36
- <span class="content__link-image"></span>Ignite UI CLI
37
- </a>
120
+ <span class="content__github-item">
121
+ <igc-icon class="content__github-icon" name="github" collection="imx-icons" aria-hidden="true"></igc-icon>
122
+ <a href="https://github.com/IgniteUI/igniteui-webcomponents" target="_blank" rel="noopener noreferrer" class="content__link--github">
123
+ Ignite UI Web Components
124
+ </a>
125
+ </span>
126
+ <span class="content__github-item">
127
+ <igc-icon class="content__github-icon" name="github" collection="imx-icons" aria-hidden="true"></igc-icon>
128
+ <a href="https://github.com/IgniteUI/igniteui-cli" target="_blank" rel="noopener noreferrer" class="content__link--github">
129
+ Ignite UI CLI
130
+ </a>
131
+ </span>
38
132
  </p>
39
133
  `;
40
134
  }
@@ -64,161 +64,145 @@ This skill helps AI agents and developers identify the best Ignite UI components
64
64
 
65
65
  ## Available Packages
66
66
 
67
- Ignite UI for Web Components is distributed across several packages depending on your needs:
68
-
69
- | Package | License | Install | Best For |
67
+ | Component family | License | Trial install | Licensed install |
70
68
  |---|---|---|---|
71
- | [`igniteui-webcomponents`](https://www.npmjs.com/package/igniteui-webcomponents) | MIT | `npm install igniteui-webcomponents` | General UI components (inputs, layouts, notifications, scheduling) |
72
- | [`igniteui-webcomponents-grids`](https://www.npmjs.com/package/igniteui-webcomponents-grids) | Commercial | `npm install igniteui-webcomponents-grids` (trial) | Advanced data grids (Data Grid, Tree Grid, Hierarchical Grid, Pivot Grid) with many built-in functionalities |
73
- | [`@infragistics/igniteui-webcomponents-grids`](https://packages.infragistics.com/feeds/js-licensed/@infragistics/igniteui-webcomponents-grids) | Commercial | `npm install @infragistics/igniteui-webcomponents-grids` (licensed) | Advanced data grids (Data Grid, Tree Grid, Hierarchical Grid, Pivot Grid) with many built-in functionalities |
74
- | [`igniteui-grid-lite`](https://www.npmjs.com/package/igniteui-grid-lite) | MIT | `npm install igniteui-grid-lite` | Lightweight data grid for simpler tabular data |
75
- | [`igniteui-dockmanager`](https://www.npmjs.com/package/igniteui-dockmanager) | Commercial | `npm install igniteui-dockmanager` (trial) | Windowing / docking layouts (IDE-style panels) |
76
- | [`@infragistics/igniteui-dockmanager`](https://packages.infragistics.com/feeds/js-licensed/@infragistics/igniteui-dockmanager) | Commercial | `npm install @infragistics/igniteui-dockmanager` (licensed) | Windowing / docking layouts (IDE-style panels) |
77
- | [`igniteui-webcomponents-charts`](https://www.npmjs.com/package/igniteui-webcomponents-charts) | Commercial | `npm install igniteui-webcomponents-core igniteui-webcomponents-charts` (trial) | Charts and data visualizations (65+ chart types) |
78
- | [`@infragistics/igniteui-webcomponents-charts`](https://packages.infragistics.com/feeds/js-licensed/@infragistics/igniteui-webcomponents-charts) | Commercial | `npm install @infragistics/igniteui-webcomponents-core @infragistics/igniteui-webcomponents-charts` (licensed) | Charts and data visualizations (65+ chart types) |
79
-
80
- ---
81
-
82
- ## Package Routing
83
-
84
- | Component family | Package |
85
- |---|---|
86
- | General UI components | `igniteui-webcomponents` |
87
- | Advanced grids | `igniteui-webcomponents-grids` (trial) `@infragistics/igniteui-webcomponents-grids` (licensed) |
88
- | Grid Lite | `igniteui-grid-lite` |
89
- | Dock Manager | `igniteui-dockmanager` (trial) `@infragistics/igniteui-dockmanager` (licensed) |
90
- | Charts | `igniteui-webcomponents-charts` (trial) `@infragistics/igniteui-webcomponents-charts` (licensed) |
69
+ | General UI components | MIT | `npm install igniteui-webcomponents` | (same) |
70
+ | Advanced grids | Commercial | `npm install igniteui-webcomponents-grids` | `npm install @infragistics/igniteui-webcomponents-grids` |
71
+ | Grid Lite | MIT | `npm install igniteui-grid-lite` | (same) |
72
+ | Dock Manager | Commercial | `npm install igniteui-dockmanager` | `npm install @infragistics/igniteui-dockmanager` |
73
+ | Charts | Commercial | `npm install igniteui-webcomponents-core igniteui-webcomponents-charts` | `npm install @infragistics/igniteui-webcomponents-core @infragistics/igniteui-webcomponents-charts` |
91
74
 
92
75
  If the request only says "grid", choose by features:
93
76
 
94
- - Advanced features such as editing, paging, summaries, grouping, hierarchical data, or pivot behavior -> `igniteui-webcomponents-grids`
95
- - Lightweight table -> `igniteui-grid-lite`
77
+ - Advanced features (editing, paging, summaries, grouping, hierarchical data, pivot) `igniteui-webcomponents-grids`
78
+ - Lightweight table `igniteui-grid-lite`
96
79
 
97
80
  ## Component Catalogue by UI Pattern
98
81
 
99
- Use the table below to map a UI need to the right component, then follow the documentation link.
82
+ > **Use MCP to discover the live component catalogue.** Call `list_components({ framework: "webcomponents" })` — it returns all 300+ available docs with doc names, summaries, and premium status. Then call `get_doc` with the exact doc `name` field to get usage patterns, HTML examples, and slots; call `get_api_reference` with the component class name (e.g. `IgcCarouselComponent`) for the full property/method/event API.
83
+ >
84
+ > ```
85
+ > list_components({ framework: "webcomponents", filter: "<keyword>" })
86
+ > get_doc({ framework: "webcomponents", name: "<doc-name-from-list>" })
87
+ > ```
88
+ >
89
+ > Use `filter` to narrow results: `"input"`, `"grid"`, `"chart"`, `"nav"`, `"date"`, `"combo"`, etc.
90
+
91
+ The tables below are a **quick routing reference** for the most common UI patterns. Component tags and package assignments are stable; for usage examples call `get_doc`, for full property/method/event API call `get_api_reference`.
100
92
 
101
93
  ### Inputs & Forms
102
94
 
103
95
  All inputs are form-associated and integrate natively with `<form>`.
104
96
 
105
- | UI Need | Component | Tag | Docs |
106
- |---|---|---|---|
107
- | Text field / text input | Input | `<igc-input>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/inputs/input) |
108
- | Multi-line text | Textarea | `<igc-textarea>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/inputs/text-area) |
109
- | Checkbox | Checkbox | `<igc-checkbox>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/inputs/checkbox) |
110
- | On/off toggle | Switch | `<igc-switch>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/inputs/switch) |
111
- | Single choice from a list | Radio / Radio Group | `<igc-radio>` / `<igc-radio-group>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/inputs/radio) |
112
- | Star / score rating | Rating | `<igc-rating>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/inputs/rating) |
113
- | Formatted / masked text input | Mask Input | `<igc-mask-input>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/inputs/mask-input) |
114
- | Date and time input | Date Time Input | `<igc-date-time-input>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/inputs/date-time-input) |
115
- | File upload | File Input | `<igc-file-input>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/inputs/file-input) |
116
- | Simple dropdown / select | Select | `<igc-select>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/inputs/select) |
117
- | Searchable dropdown, single or multi-select | Combo | `<igc-combo>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/inputs/combo/overview) |
118
- | Grouped toggle buttons | Button Group | `<igc-button-group>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/inputs/button-group) |
119
- | Range / numeric slider | Slider | `<igc-slider>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/inputs/slider) |
120
- | Range slider (two handles) | Range Slider | `<igc-range-slider>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/inputs/slider) |
97
+ | UI Need | Component | Tag |
98
+ |---|---|---|
99
+ | Text field / text input | Input | `<igc-input>` |
100
+ | Multi-line text | Textarea | `<igc-textarea>` |
101
+ | Checkbox | Checkbox | `<igc-checkbox>` |
102
+ | On/off toggle | Switch | `<igc-switch>` |
103
+ | Single choice from a list | Radio / Radio Group | `<igc-radio>` / `<igc-radio-group>` |
104
+ | Star / score rating | Rating | `<igc-rating>` |
105
+ | Formatted / masked text input | Mask Input | `<igc-mask-input>` |
106
+ | Date and time input | Date Time Input | `<igc-date-time-input>` |
107
+ | File upload | File Input | `<igc-file-input>` |
108
+ | Simple dropdown / select | Select | `<igc-select>` |
109
+ | Searchable dropdown, single or multi-select | Combo | `<igc-combo>` |
110
+ | Grouped toggle buttons | Button Group | `<igc-button-group>` |
111
+ | Range / numeric slider | Slider | `<igc-slider>` |
112
+ | Range slider (two handles) | Range Slider | `<igc-range-slider>` |
121
113
 
122
114
  ### Buttons & Actions
123
115
 
124
- | UI Need | Component | Tag | Docs |
125
- |---|---|---|---|
126
- | Standard clickable button | Button | `<igc-button>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/inputs/button) |
127
- | Icon-only button | Icon Button | `<igc-icon-button>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/inputs/icon-button) |
128
- | Click ripple effect | Ripple | `<igc-ripple>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/inputs/ripple) |
129
- | Removable tag / filter chip | Chip | `<igc-chip>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/inputs/chip) |
116
+ | UI Need | Component | Tag |
117
+ |---|---|---|
118
+ | Standard clickable button | Button | `<igc-button>` |
119
+ | Icon-only button | Icon Button | `<igc-icon-button>` |
120
+ | Click ripple effect | Ripple | `<igc-ripple>` |
121
+ | Removable tag / filter chip | Chip | `<igc-chip>` |
130
122
 
131
123
  ### Scheduling & Date Pickers
132
124
 
133
- | UI Need | Component | Tag | Docs |
134
- |---|---|---|---|
135
- | Full calendar view | Calendar | `<igc-calendar>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/scheduling/calendar) |
136
- | Date picker (popup calendar) | Date Picker | `<igc-date-picker>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/scheduling/date-picker) |
137
- | Date range selection | Date Range Picker | `<igc-date-range-picker>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/scheduling/date-range-picker) |
125
+ | UI Need | Component | Tag |
126
+ |---|---|---|
127
+ | Full calendar view | Calendar | `<igc-calendar>` |
128
+ | Date picker (popup calendar) | Date Picker | `<igc-date-picker>` |
129
+ | Date range selection | Date Range Picker | `<igc-date-range-picker>` |
138
130
 
139
131
  ### Notifications & Feedback
140
132
 
141
- | UI Need | Component | Tag | Docs |
142
- |---|---|---|---|
143
- | Brief auto-dismiss notification | Toast | `<igc-toast>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/notifications/toast) |
144
- | Actionable dismissible notification bar | Snackbar | `<igc-snackbar>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/notifications/snackbar) |
145
- | Persistent status banner (e.g. warning, error) | Banner | `<igc-banner>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/notifications/banner) |
146
- | Modal confirmation or content dialog | Dialog | `<igc-dialog>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/notifications/dialog) |
147
- | Tooltip on hover | Tooltip | `<igc-tooltip>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/inputs/tooltip) |
148
- | Small count / status indicator | Badge | `<igc-badge>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/inputs/badge) |
133
+ | UI Need | Component | Tag |
134
+ |---|---|---|
135
+ | Brief auto-dismiss notification | Toast | `<igc-toast>` |
136
+ | Actionable dismissible notification bar | Snackbar | `<igc-snackbar>` |
137
+ | Persistent status banner (e.g. warning, error) | Banner | `<igc-banner>` |
138
+ | Modal confirmation or content dialog | Dialog | `<igc-dialog>` |
139
+ | Tooltip on hover | Tooltip | `<igc-tooltip>` |
140
+ | Small count / status indicator | Badge | `<igc-badge>` |
149
141
 
150
142
  ### Progress Indicators
151
143
 
152
- | UI Need | Component | Tag | Docs |
153
- |---|---|---|---|
154
- | Horizontal progress bar | Linear Progress | `<igc-linear-progress>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/inputs/linear-progress) |
155
- | Circular / spinner progress | Circular Progress | `<igc-circular-progress>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/inputs/circular-progress) |
144
+ | UI Need | Component | Tag |
145
+ |---|---|---|
146
+ | Horizontal progress bar | Linear Progress | `<igc-linear-progress>` |
147
+ | Circular / spinner progress | Circular Progress | `<igc-circular-progress>` |
156
148
 
157
149
  ### Layouts & Containers
158
150
 
159
- | UI Need | Component | Tag | Docs |
160
- |---|---|---|---|
161
- | Generic content card | Card | `<igc-card>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/layouts/card) |
162
- | User avatar / profile image | Avatar | `<igc-avatar>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/layouts/avatar) |
163
- | Icon display | Icon | `<igc-icon>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/layouts/icon) |
164
- | Horizontal or vertical divider line | Divider | `<igc-divider>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/layouts/divider) |
165
- | Collapsible section | Expansion Panel | `<igc-expansion-panel>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/layouts/expansion-panel) |
166
- | Multiple collapsible sections (accordion) | Accordion | `<igc-accordion>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/layouts/accordion) |
167
- | Tabbed content panels | Tabs | `<igc-tabs>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/layouts/tabs) |
168
- | Image / content slideshow | Carousel | `<igc-carousel>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/layouts/carousel) |
169
- | Multi-step wizard / onboarding flow | Stepper | `<igc-stepper>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/layouts/stepper) |
170
- | Resizable, draggable dashboard tiles | Tile Manager | `<igc-tile-manager>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/layouts/tile-manager) |
171
- | IDE-style docking / floating panels | Dock Manager | `<igc-dockmanager>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/layouts/dock-manager) |
151
+ | UI Need | Component | Tag |
152
+ |---|---|---|
153
+ | Generic content card | Card | `<igc-card>` |
154
+ | User avatar / profile image | Avatar | `<igc-avatar>` |
155
+ | Icon display | Icon | `<igc-icon>` |
156
+ | Horizontal or vertical divider line | Divider | `<igc-divider>` |
157
+ | Collapsible section | Expansion Panel | `<igc-expansion-panel>` |
158
+ | Multiple collapsible sections (accordion) | Accordion | `<igc-accordion>` |
159
+ | Tabbed content panels | Tabs | `<igc-tabs>` |
160
+ | Image / content slideshow | Carousel | `<igc-carousel>` |
161
+ | Multi-step wizard / onboarding flow | Stepper | `<igc-stepper>` |
162
+ | Resizable, draggable dashboard tiles | Tile Manager | `<igc-tile-manager>` |
163
+ | IDE-style docking / floating panels | Dock Manager | `<igc-dockmanager>` |
172
164
 
173
165
  ### Navigation
174
166
 
175
- | UI Need | Component | Tag | Docs |
176
- |---|---|---|---|
177
- | Top application bar / toolbar | Navbar | `<igc-navbar>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/menus/navbar) |
178
- | Side navigation drawer | Navigation Drawer | `<igc-nav-drawer>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/menus/navigation-drawer) |
179
- | Context menu / actions dropdown | Drop Down | `<igc-dropdown>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/inputs/dropdown) |
167
+ | UI Need | Component | Tag |
168
+ |---|---|---|
169
+ | Top application bar / toolbar | Navbar | `<igc-navbar>` |
170
+ | Side navigation drawer | Navigation Drawer | `<igc-nav-drawer>` |
171
+ | Context menu / actions dropdown | Drop Down | `<igc-dropdown>` |
180
172
 
181
173
  ### Lists & Data Display
182
174
 
183
- | UI Need | Component | Tag | Docs |
184
- |---|---|---|---|
185
- | Simple scrollable list | List | `<igc-list>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/grids/list) |
186
- | Hierarchical / tree data | Tree | `<igc-tree>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/grids/tree) |
187
- | Tabular data (MIT, lightweight) | Grid Lite | `<igc-grid>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/grid-lite/overview) |
188
- | Full-featured tabular data grid | Data Grid | `<igc-grid>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/grids/grid/overview) |
189
- | Nested / master-detail grid | Hierarchical Grid | `<igc-hierarchical-grid>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/grids/hierarchical-grid/overview) |
190
- | Parent-child relational tree grid | Tree Grid | `<igc-tree-grid>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/grids/tree-grid/overview) |
191
- | Cross-tabulation / BI pivot table | Pivot Grid | `<igc-pivot-grid>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/grids/pivot-grid/overview) |
175
+ | UI Need | Component | Tag |
176
+ |---|---|---|
177
+ | Simple scrollable list | List | `<igc-list>` |
178
+ | Hierarchical / tree data | Tree | `<igc-tree>` |
179
+ | Tabular data (MIT, lightweight) | Grid Lite | `<igc-grid>` |
180
+ | Full-featured tabular data grid | Data Grid | `<igc-grid>` |
181
+ | Nested / master-detail grid | Hierarchical Grid | `<igc-hierarchical-grid>` |
182
+ | Parent-child relational tree grid | Tree Grid | `<igc-tree-grid>` |
183
+ | Cross-tabulation / BI pivot table | Pivot Grid | `<igc-pivot-grid>` |
192
184
 
193
185
  ### Charting & Visualization
194
186
 
195
187
  > Charts are provided by the **`igniteui-webcomponents-charts`** package (commercial). Use `IgcCategoryChartComponent` or `IgcFinancialChartComponent` for simpler domain-specific scenarios; use `IgcDataChartComponent` for full flexibility (mixed series, numeric/time axes, scatter, polar, etc.).
188
+ >
189
+ > Call `list_components({ framework: "webcomponents", filter: "chart" })` for the full chart doc list, then `get_doc` on the specific chart type before coding.
196
190
 
197
- | UI Need | Component | Tag | Docs |
198
- |---|---|---|---|
199
- | Column chart (vertical bars, category comparison) | Category Chart | `<igc-category-chart>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/charts/types/column-chart) |
200
- | Line chart (continuous data over time) | Category Chart | `<igc-category-chart>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/charts/types/line-chart) |
201
- | Area chart (filled line, change over time) | Category Chart | `<igc-category-chart>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/charts/types/area-chart) |
202
- | Spline chart (smooth curved lines) | Category Chart | `<igc-category-chart>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/charts/types/spline-chart) |
203
- | Step chart (stepped line or area) | Category Chart | `<igc-category-chart>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/charts/types/step-chart) |
204
- | Pie chart (part-to-whole, small data sets) | Pie Chart | `<igc-pie-chart>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/charts/types/pie-chart) |
205
- | Doughnut chart (part-to-whole with center label) | Doughnut Chart | `<igc-doughnut-chart>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/charts/types/donut-chart) |
206
- | Financial / stock chart (OHLC, candlestick, price series) | Financial Chart | `<igc-financial-chart>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/charts/types/stock-chart) |
207
- | Bar chart (horizontal bars, category comparison) | Data Chart | `<igc-data-chart>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/charts/types/bar-chart) |
208
- | Scatter chart (X/Y data correlation) | Data Chart | `<igc-data-chart>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/charts/types/scatter-chart) |
209
- | Bubble chart (3-value scatter with size dimension) | Data Chart | `<igc-data-chart>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/charts/types/bubble-chart) |
210
- | Polar chart (angle/radius coordinate system) | Data Chart | `<igc-data-chart>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/charts/types/polar-chart) |
211
- | Composite / combo chart (mixed series types) | Data Chart | `<igc-data-chart>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/charts/types/composite-chart) |
212
- | Shape chart (polygons / polylines on a Cartesian plane) | Data Chart | `<igc-data-chart>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/charts/types/shape-chart) |
213
- | Sparkline (word-sized inline mini-chart) | Sparkline | `<igc-sparkline>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/charts/types/sparkline-chart) |
214
- | Treemap (hierarchical data as proportional nested nodes) | Treemap | `<igc-treemap>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/charts/types/treemap-chart) |
215
-
191
+ | UI Need | Component | Tag |
192
+ |---|---|---|
193
+ | Column / Line / Area / Spline / Step charts | Category Chart | `<igc-category-chart>` |
194
+ | Pie chart | Pie Chart | `<igc-pie-chart>` |
195
+ | Doughnut chart | Doughnut Chart | `<igc-doughnut-chart>` |
196
+ | Financial / stock chart (OHLC, candlestick) | Financial Chart | `<igc-financial-chart>` |
197
+ | Bar / Scatter / Bubble / Polar / Composite charts | Data Chart | `<igc-data-chart>` |
198
+ | Sparkline (inline mini-chart) | Sparkline | `<igc-sparkline>` |
199
+ | Treemap | Treemap | `<igc-treemap>` |
216
200
 
217
201
  ### Conversational / AI
218
202
 
219
- | UI Need | Component | Tag | Docs |
220
- |---|---|---|---|
221
- | Chat / AI assistant message thread | Chat | `<igc-chat>` | [Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/interactivity/chat) |
203
+ | UI Need | Component | Tag |
204
+ |---|---|---|
205
+ | Chat / AI assistant message thread | Chat | `<igc-chat>` |
222
206
 
223
207
  ---
224
208
 
@@ -262,15 +246,26 @@ Confirm which package provides the component:
262
246
  - **Docking layout** → `igniteui-dockmanager` *(commercial)*
263
247
  - **Charts & visualizations** (Category Chart, Data Chart, Financial Chart, Pie Chart, Sparkline, Treemap, etc.) → `igniteui-webcomponents-charts` *(commercial)*
264
248
 
265
- ### Step 4 — Link to official resources
249
+ ### Step 4 — Look up component documentation
250
+
251
+ These tools serve different data sources — call the right one to avoid guessing:
266
252
 
267
- Always direct the user to the official documentation linked in the tables above. Key entry points:
253
+ - **Usage patterns, HTML examples, slots** → `get_doc` serves the component's **topic-page** (prose guide, code samples, slot names, CSS examples). Use the kebab-case doc `name` returned by `list_components`:
254
+ ```
255
+ get_doc({ framework: "webcomponents", name: "<doc-name>" })
256
+ ```
268
257
 
269
- - **Component overview**: [Ignite UI Web Components Docs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/general-getting-started)
270
- - **Live Storybook demos**: [https://igniteui.github.io/igniteui-webcomponents](https://igniteui.github.io/igniteui-webcomponents)
271
- - **npm package**: [https://www.npmjs.com/package/igniteui-webcomponents](https://www.npmjs.com/package/igniteui-webcomponents)
272
- - **GitHub repository**: [https://github.com/IgniteUI/igniteui-webcomponents](https://github.com/IgniteUI/igniteui-webcomponents)
273
- - **Changelog / releases**: [https://github.com/IgniteUI/igniteui-webcomponents/blob/master/CHANGELOG.md](https://github.com/IgniteUI/igniteui-webcomponents/blob/master/CHANGELOG.md)
258
+ - **Full property/method/event API** `get_api_reference` serves **class-level reflection data** (every `@property`, method signature, event name with types). It does NOT overlap with `get_doc` — the topic page rarely lists all properties. Use `search_api` first when you don't know the exact class name (e.g. `IgcCarouselComponent`):
259
+ ```
260
+ search_api({ platform: "webcomponents", query: "<component keyword>" })
261
+ get_api_reference({ platform: "webcomponents", component: "<ClassName>" })
262
+ ```
263
+
264
+ For feature-based questions (e.g., "how does combo filtering work"), use `search_docs` instead:
265
+
266
+ ```
267
+ search_docs({ framework: "webcomponents", query: "<feature keyword>" })
268
+ ```
274
269
 
275
270
  ### Step 5 — Provide a starter code snippet
276
271
 
@@ -282,46 +277,20 @@ import {
282
277
  IgcNavbarComponent,
283
278
  IgcNavDrawerComponent,
284
279
  IgcCardComponent,
285
- IgcIconComponent,
286
280
  IgcButtonComponent,
287
- registerIconFromText,
288
281
  } from 'igniteui-webcomponents';
289
282
 
290
- defineComponents(
291
- IgcNavbarComponent,
292
- IgcNavDrawerComponent,
293
- IgcCardComponent,
294
- IgcIconComponent,
295
- IgcButtonComponent
296
- );
297
-
298
- registerIconFromText('menu', '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"/></svg>', 'material');
299
- registerIconFromText('home', '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M10 20v-6h4v6h5v-8h3L12 3 2 12h3v8z"/></svg>', 'material');
300
- registerIconFromText('build', '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M22.7 19l-9.1-9.1c.9-2.3.4-5-1.5-6.9-2-2-5-2.4-7.4-1.3L9 6 6 9 1.6 4.7C.4 7.1.9 10.1 2.9 12.1c1.9 1.9 4.6 2.4 6.9 1.5l9.1 9.1c.4.4 1 .4 1.4 0l2.3-2.3c.5-.4.5-1.1.1-1.4z"/></svg>', 'material');
283
+ defineComponents(IgcNavbarComponent, IgcNavDrawerComponent, IgcCardComponent, IgcButtonComponent);
301
284
  ```
302
285
 
303
286
  ```html
304
- <igc-navbar>
305
- <igc-icon name="menu" collection="material" slot="start"></igc-icon>
306
- <h1>My Dashboard</h1>
307
- </igc-navbar>
308
-
287
+ <igc-navbar><h1>My Dashboard</h1></igc-navbar>
309
288
  <igc-nav-drawer>
310
- <igc-nav-drawer-item>
311
- <igc-icon name="home" collection="material" slot="icon"></igc-icon>
312
- <span slot="content">Home</span>
313
- </igc-nav-drawer-item>
314
- <igc-nav-drawer-item>
315
- <igc-icon name="build" collection="material" slot="icon"></igc-icon>
316
- <span slot="content">Settings</span>
317
- </igc-nav-drawer-item>
289
+ <igc-nav-drawer-item><span slot="content">Home</span></igc-nav-drawer-item>
318
290
  </igc-nav-drawer>
319
-
320
291
  <igc-card>
321
- <igc-card-header>
322
- <h3 slot="title">Summary</h3>
323
- </igc-card-header>
324
- <igc-card-content>Dashboard content here</igc-card-content>
292
+ <igc-card-header><h3 slot="title">Summary</h3></igc-card-header>
293
+ <igc-card-content>Content goes here</igc-card-content>
325
294
  </igc-card>
326
295
  ```
327
296
 
@@ -334,7 +303,6 @@ registerIconFromText('build', '<svg xmlns="http://www.w3.org/2000/svg" viewBox="
334
303
  - `<igc-checkbox>` — "Remember me"
335
304
  - `<igc-button>` — submit
336
305
  - `<igc-snackbar>` — error/success feedback
337
- - **Docs**: [Input](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/inputs/input) · [Button](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/inputs/button) · [Snackbar](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/notifications/snackbar)
338
306
 
339
307
  ### User Profile / Settings Page
340
308
  - `<igc-avatar>` — profile picture
@@ -343,7 +311,6 @@ registerIconFromText('build', '<svg xmlns="http://www.w3.org/2000/svg" viewBox="
343
311
  - `<igc-switch>` — feature toggles
344
312
  - `<igc-select>` — preference dropdowns
345
313
  - `<igc-button>` — save/cancel actions
346
- - **Docs**: [Avatar](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/layouts/avatar) · [Tabs](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/layouts/tabs) · [Switch](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/inputs/switch)
347
314
 
348
315
  ### Data Table / Admin List View
349
316
  - `<igc-input>` — search bar
@@ -352,7 +319,6 @@ registerIconFromText('build', '<svg xmlns="http://www.w3.org/2000/svg" viewBox="
352
319
  - `<igc-button>` / `<igc-icon-button>` — actions
353
320
  - `<igc-dialog>` — confirm delete modal
354
321
  - `<igc-badge>` — status indicators
355
- - **Docs**: [Grid Lite](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/grid-lite/overview) · [Data Grid](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/grids/grid/overview) · [Dialog](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/notifications/dialog)
356
322
 
357
323
  ### Booking / Reservation Form
358
324
  - `<igc-date-range-picker>` — check-in / check-out
@@ -361,7 +327,6 @@ registerIconFromText('build', '<svg xmlns="http://www.w3.org/2000/svg" viewBox="
361
327
  - `<igc-stepper>` — multi-step booking flow
362
328
  - `<igc-button>` — next / confirm
363
329
  - `<igc-toast>` — booking confirmation
364
- - **Docs**: [Date Range Picker](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/scheduling/date-range-picker) · [Stepper](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/layouts/stepper)
365
330
 
366
331
  ### Analytics / Reporting Dashboard
367
332
  - `<igc-navbar>` — top bar
@@ -370,7 +335,6 @@ registerIconFromText('build', '<svg xmlns="http://www.w3.org/2000/svg" viewBox="
370
335
  - `<igc-tabs>` or `<igc-tile-manager>` — section layout
371
336
  - Data Grid or Pivot Grid — detailed data tables
372
337
  - `<igc-linear-progress>` / `<igc-circular-progress>` — loading states
373
- - **Docs**: [Tile Manager](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/layouts/tile-manager) · [Pivot Grid](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/grids/pivot-grid/overview)
374
338
 
375
339
  ### Notification / Activity Feed
376
340
  - `<igc-list>` — activity items
@@ -378,7 +342,6 @@ registerIconFromText('build', '<svg xmlns="http://www.w3.org/2000/svg" viewBox="
378
342
  - `<igc-badge>` — unread count
379
343
  - `<igc-snackbar>` — real-time alerts
380
344
  - `<igc-chip>` — filter tags (All, Mentions, Replies)
381
- - **Docs**: [List](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/grids/list) · [Badge](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/inputs/badge) · [Chip](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/inputs/chip)
382
345
 
383
346
  ### AI / Chatbot Interface
384
347
  - `<igc-chat>` — full chat UI with message threading
@@ -386,7 +349,6 @@ registerIconFromText('build', '<svg xmlns="http://www.w3.org/2000/svg" viewBox="
386
349
  - `<igc-icon-button>` — send button
387
350
  - `<igc-avatar>` — bot and user avatars
388
351
  - `<igc-circular-progress>` — "thinking" indicator
389
- - **Docs**: [Chat](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/interactivity/chat) · [Avatar](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/layouts/avatar)
390
352
 
391
353
  ---
392
354
 
@@ -394,7 +356,7 @@ registerIconFromText('build', '<svg xmlns="http://www.w3.org/2000/svg" viewBox="
394
356
 
395
357
  ### "I can't find a component for X"
396
358
 
397
- 1. Check the [full component list](https://www.infragistics.com/products/ignite-ui-web-components/web-components/components/general-getting-started) in the official docs
359
+ 1. Call `list_components({ framework: "webcomponents" })` or use `search_docs` with a feature keyword to find the best match
398
360
  2. Consider composing two simpler components (e.g., `<igc-card>` + `<igc-list>` for a list card)
399
361
 
400
362
  ### "Which grid should I use?"