igniteui-cli 15.2.2-alpha.3 → 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.
Files changed (175) hide show
  1. package/lib/PromptSession.js +1 -1
  2. package/lib/commands/ai-config.d.ts +9 -2
  3. package/lib/commands/ai-config.js +49 -14
  4. package/lib/commands/build.js +7 -12
  5. package/lib/commands/new.js +4 -1
  6. package/package.json +4 -4
  7. package/templates/blazor/igb/projects/ai-config/files/skills/AGENTS.md +0 -5
  8. package/templates/blazor/igb/projects/ai-config/files/skills/igniteui-blazor-components/SKILL.md +3 -1
  9. package/templates/blazor/igb/projects/ai-config/files/skills/igniteui-blazor-components/references/charts.md +7 -35
  10. package/templates/blazor/igb/projects/ai-config/files/skills/igniteui-blazor-components/references/data-display.md +1 -54
  11. package/templates/blazor/igb/projects/ai-config/files/skills/igniteui-blazor-components/references/feedback.md +0 -38
  12. package/templates/blazor/igb/projects/ai-config/files/skills/igniteui-blazor-components/references/form-controls.md +0 -68
  13. package/templates/blazor/igb/projects/ai-config/files/skills/igniteui-blazor-components/references/layout-manager.md +1 -124
  14. package/templates/blazor/igb/projects/ai-config/files/skills/igniteui-blazor-components/references/layout.md +0 -62
  15. package/templates/blazor/igb/projects/ai-config/files/skills/igniteui-blazor-generate-from-image-design/references/gotchas.md +29 -6
  16. package/templates/blazor/igb/projects/ai-config/files/skills/igniteui-blazor-theming/SKILL.md +2 -2
  17. package/templates/react/igr-ts/accordion/default/index.js +2 -1
  18. package/templates/react/igr-ts/avatar/default/index.js +2 -1
  19. package/templates/react/igr-ts/badge/default/index.js +2 -1
  20. package/templates/react/igr-ts/banner/default/index.js +2 -1
  21. package/templates/react/igr-ts/button/default/index.js +2 -1
  22. package/templates/react/igr-ts/button-group/default/index.js +2 -1
  23. package/templates/react/igr-ts/calendar/default/index.js +2 -1
  24. package/templates/react/igr-ts/card/default/index.js +2 -1
  25. package/templates/react/igr-ts/checkbox/default/index.js +2 -1
  26. package/templates/react/igr-ts/chip/default/index.js +2 -1
  27. package/templates/react/igr-ts/circular-progress/default/index.js +2 -1
  28. package/templates/react/igr-ts/constants.d.ts +2 -0
  29. package/templates/react/igr-ts/constants.js +5 -0
  30. package/templates/react/igr-ts/custom-templates/subscription-form/index.js +2 -1
  31. package/templates/react/igr-ts/date-picker/default/index.js +2 -1
  32. package/templates/react/igr-ts/divider/default/index.js +2 -1
  33. package/templates/react/igr-ts/dropdown/default/index.js +2 -1
  34. package/templates/react/igr-ts/expansion-panel/default/index.js +2 -1
  35. package/templates/react/igr-ts/form/default/index.js +2 -1
  36. package/templates/react/igr-ts/grid/basic/index.js +2 -1
  37. package/templates/react/igr-ts/icon/default/index.js +2 -1
  38. package/templates/react/igr-ts/icon-button/default/index.js +2 -1
  39. package/templates/react/igr-ts/input/default/index.js +2 -1
  40. package/templates/react/igr-ts/linear-progress/default/index.js +2 -1
  41. package/templates/react/igr-ts/list/default/index.js +2 -1
  42. package/templates/react/igr-ts/navbar/default/index.js +2 -1
  43. package/templates/react/igr-ts/projects/_base/files/package.json +2 -1
  44. package/templates/react/igr-ts/projects/_base/files/src/app/app.tsx +4 -2
  45. package/templates/react/igr-ts/projects/_base/files/src/setupTests.ts +12 -0
  46. package/templates/react/igr-ts/projects/_base/files/styles.css +6 -0
  47. package/templates/react/igr-ts/projects/_base_with_home/files/index.html +2 -1
  48. package/templates/react/igr-ts/projects/_base_with_home/files/src/app/home/home.tsx +60 -10
  49. package/templates/react/igr-ts/projects/_base_with_home/files/src/app/home/style.module.css +79 -20
  50. package/templates/react/igr-ts/projects/ai-config/files/skills/igniteui-react-components/SKILL.md +0 -8
  51. package/templates/react/igr-ts/projects/ai-config/files/skills/igniteui-react-components/reference/CHARTS-GRIDS.md +6 -36
  52. package/templates/react/igr-ts/projects/ai-config/files/skills/igniteui-react-components/reference/COMPONENT-CATALOGUE.md +8 -142
  53. package/templates/react/igr-ts/projects/ai-config/files/skills/igniteui-react-components/reference/EVENT-HANDLING.md +2 -0
  54. package/templates/react/igr-ts/projects/ai-config/files/skills/igniteui-react-customize-theme/SKILL.md +7 -14
  55. package/templates/react/igr-ts/projects/ai-config/files/skills/igniteui-react-customize-theme/reference/CSS-THEMING.md +2 -0
  56. package/templates/react/igr-ts/projects/ai-config/files/skills/igniteui-react-customize-theme/reference/MCP-SERVER.md +0 -8
  57. package/templates/react/igr-ts/projects/ai-config/files/skills/igniteui-react-generate-from-image-design/SKILL.md +2 -2
  58. package/templates/react/igr-ts/projects/ai-config/files/skills/igniteui-react-generate-from-image-design/reference/component-mapping.md +60 -74
  59. package/templates/react/igr-ts/projects/empty/index.js +2 -2
  60. package/templates/react/igr-ts/projects/side-nav/files/src/app/app-routes.tsx +5 -0
  61. package/templates/react/igr-ts/projects/side-nav/files/src/app/app.css +82 -0
  62. package/templates/react/igr-ts/projects/side-nav/files/src/app/app.tsx +104 -0
  63. package/templates/react/igr-ts/projects/side-nav/files/src/app/home/home.tsx +69 -0
  64. package/templates/react/igr-ts/projects/side-nav/files/src/app/home/style.module.css +105 -0
  65. package/templates/react/igr-ts/projects/{top-nav → side-nav}/index.d.ts +2 -2
  66. package/templates/react/igr-ts/projects/{top-nav → side-nav}/index.js +7 -7
  67. package/templates/react/igr-ts/projects/side-nav-auth/files/index.html +19 -0
  68. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/app-routes.tsx +24 -0
  69. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/app.css +84 -0
  70. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/app.tsx +124 -0
  71. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/AuthContext.tsx +73 -0
  72. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/AuthGuard.tsx +14 -0
  73. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/components/Login.module.css +93 -0
  74. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/components/Login.tsx +69 -0
  75. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/components/LoginBar.module.css +42 -0
  76. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/components/LoginBar.tsx +44 -0
  77. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/components/LoginDialog.module.css +14 -0
  78. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/components/LoginDialog.tsx +49 -0
  79. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/components/Register.module.css +74 -0
  80. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/components/Register.tsx +67 -0
  81. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/models/external-login.ts +10 -0
  82. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/models/login.ts +4 -0
  83. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/models/register-info.ts +6 -0
  84. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/models/user.ts +19 -0
  85. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/pages/Profile.module.css +87 -0
  86. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/pages/Profile.tsx +42 -0
  87. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/pages/RedirectFacebook.tsx +44 -0
  88. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/pages/RedirectGoogle.tsx +40 -0
  89. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/pages/RedirectMicrosoft.tsx +40 -0
  90. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/services/authentication.ts +37 -0
  91. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/services/external-auth-config.ts +44 -0
  92. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/services/externalAuth.ts +272 -0
  93. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/services/fakeBackend.ts +88 -0
  94. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/services/jwtUtil.ts +10 -0
  95. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/services/pkce.ts +29 -0
  96. package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/services/userStore.ts +39 -0
  97. package/templates/react/igr-ts/projects/side-nav-auth/index.d.ts +15 -0
  98. package/templates/react/igr-ts/projects/side-nav-auth/index.js +46 -0
  99. package/templates/react/igr-ts/projects/side-nav-mini/files/src/app/app-routes.tsx +5 -0
  100. package/templates/react/igr-ts/projects/side-nav-mini/files/src/app/app.css +109 -0
  101. package/templates/react/igr-ts/projects/side-nav-mini/files/src/app/app.test.tsx +20 -0
  102. package/templates/react/igr-ts/projects/side-nav-mini/files/src/app/app.tsx +81 -0
  103. package/templates/react/igr-ts/projects/side-nav-mini/files/src/app/home/home.tsx +69 -0
  104. package/templates/react/igr-ts/projects/side-nav-mini/files/src/app/home/style.module.css +105 -0
  105. package/templates/react/igr-ts/projects/side-nav-mini/index.d.ts +15 -0
  106. package/templates/react/igr-ts/projects/side-nav-mini/index.js +46 -0
  107. package/templates/react/igr-ts/projects/side-nav-mini-auth/files/src/app/app.css +106 -0
  108. package/templates/react/igr-ts/projects/side-nav-mini-auth/files/src/app/app.tsx +101 -0
  109. package/templates/react/igr-ts/projects/side-nav-mini-auth/index.d.ts +15 -0
  110. package/templates/react/igr-ts/projects/side-nav-mini-auth/index.js +50 -0
  111. package/templates/react/igr-ts/radio-group/default/index.js +2 -1
  112. package/templates/react/igr-ts/rating/default/index.js +2 -1
  113. package/templates/react/igr-ts/ripple/default/index.js +2 -1
  114. package/templates/react/igr-ts/slider/default/index.js +2 -1
  115. package/templates/react/igr-ts/switch/default/index.js +2 -1
  116. package/templates/react/igr-ts/tabs/default/index.js +2 -1
  117. package/templates/react/igr-ts/text-area/default/index.js +2 -1
  118. package/templates/react/igr-ts/tree/default/index.js +2 -1
  119. package/templates/webcomponents/igc-ts/grid/default/index.js +1 -1
  120. package/templates/webcomponents/igc-ts/grid/grid-editing/index.js +1 -1
  121. package/templates/webcomponents/igc-ts/grid/grid-summaries/index.js +1 -1
  122. package/templates/webcomponents/igc-ts/projects/_base/files/package.json +1 -1
  123. package/templates/webcomponents/igc-ts/projects/_base/files/src/app/app.ts +6 -1
  124. package/templates/webcomponents/igc-ts/projects/_base/files/styles.css +1 -0
  125. package/templates/webcomponents/igc-ts/projects/_base_with_home/files/index.html +2 -0
  126. package/templates/webcomponents/igc-ts/projects/_base_with_home/files/package.json +2 -2
  127. package/templates/webcomponents/igc-ts/projects/_base_with_home/files/src/app/home/home.ts +103 -9
  128. package/templates/webcomponents/igc-ts/projects/_base_with_home/files/src/assets/wc.png +0 -0
  129. package/templates/webcomponents/igc-ts/projects/ai-config/files/skills/igniteui-wc-choose-components/SKILL.md +122 -160
  130. package/templates/webcomponents/igc-ts/projects/ai-config/files/skills/igniteui-wc-customize-component-theme/SKILL.md +83 -311
  131. package/templates/webcomponents/igc-ts/projects/ai-config/files/skills/igniteui-wc-customize-component-theme/references/mcp-setup.md +69 -0
  132. package/templates/webcomponents/igc-ts/projects/ai-config/files/skills/igniteui-wc-generate-from-image-design/SKILL.md +4 -1
  133. package/templates/webcomponents/igc-ts/projects/ai-config/files/skills/igniteui-wc-generate-from-image-design/references/component-mapping.md +60 -61
  134. package/templates/webcomponents/igc-ts/projects/ai-config/files/skills/igniteui-wc-generate-from-image-design/references/gotchas.md +15 -11
  135. package/templates/webcomponents/igc-ts/projects/ai-config/files/skills/igniteui-wc-optimize-bundle-size/SKILL.md +23 -274
  136. package/templates/webcomponents/igc-ts/projects/empty/index.js +1 -1
  137. package/templates/webcomponents/igc-ts/projects/side-nav/files/index.html +21 -0
  138. package/templates/webcomponents/igc-ts/projects/side-nav/files/src/app/app-routing.ts +9 -0
  139. package/templates/webcomponents/igc-ts/projects/side-nav/files/src/app/app.ts +192 -22
  140. package/templates/webcomponents/igc-ts/projects/side-nav/files/src/app/home/home.ts +175 -0
  141. package/templates/webcomponents/igc-ts/projects/side-nav/index.js +1 -1
  142. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/index.html +25 -0
  143. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/app-routing.ts +37 -0
  144. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/app.ts +251 -0
  145. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/login-bar/login-bar.ts +124 -0
  146. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/login-dialog/login-dialog.ts +253 -0
  147. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/models/external-login.ts +10 -0
  148. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/models/login.ts +4 -0
  149. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/models/register-info.ts +6 -0
  150. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/models/user.ts +19 -0
  151. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/services/authentication.ts +37 -0
  152. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/services/external-auth-config.ts +44 -0
  153. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/services/externalAuth.ts +272 -0
  154. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/services/fakeBackend.ts +88 -0
  155. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/services/jwtUtil.ts +10 -0
  156. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/services/pkce.ts +29 -0
  157. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/services/userStore.ts +39 -0
  158. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/profile/profile.ts +142 -0
  159. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/redirect/redirect-facebook.ts +57 -0
  160. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/redirect/redirect-google.ts +53 -0
  161. package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/redirect/redirect-microsoft.ts +53 -0
  162. package/templates/webcomponents/igc-ts/projects/side-nav-auth/index.d.ts +15 -0
  163. package/templates/webcomponents/igc-ts/projects/side-nav-auth/index.js +46 -0
  164. package/templates/webcomponents/igc-ts/projects/side-nav-mini/files/src/app/app-routing.ts +13 -0
  165. package/templates/webcomponents/igc-ts/projects/side-nav-mini/files/src/app/app.ts +238 -0
  166. package/templates/webcomponents/igc-ts/projects/side-nav-mini/index.d.ts +14 -0
  167. package/templates/webcomponents/igc-ts/projects/side-nav-mini/index.js +45 -0
  168. package/templates/webcomponents/igc-ts/projects/side-nav-mini-auth/files/src/app/app.ts +258 -0
  169. package/templates/webcomponents/igc-ts/projects/side-nav-mini-auth/index.d.ts +15 -0
  170. package/templates/webcomponents/igc-ts/projects/side-nav-mini-auth/index.js +50 -0
  171. package/templates/webcomponents/igc-ts/tree/default/index.js +1 -1
  172. package/templates/react/igr-ts/projects/top-nav/files/src/app/app.css +0 -62
  173. package/templates/react/igr-ts/projects/top-nav/files/src/app/app.tsx +0 -18
  174. package/templates/react/igr-ts/projects/top-nav/files/src/components/navigation-header/index.tsx +0 -19
  175. /package/templates/react/igr-ts/projects/{top-nav → side-nav}/files/src/app/app.test.tsx +0 -0
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const IgniteUIForReactTemplate_1 = require("../../../../../lib/templates/IgniteUIForReactTemplate");
4
+ const constants_1 = require("../../constants");
4
5
  class IgrBannerTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTemplate {
5
6
  constructor() {
6
7
  super(__dirname);
@@ -11,7 +12,7 @@ class IgrBannerTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTempl
11
12
  this.projectType = "igr-ts";
12
13
  this.name = "Banner";
13
14
  this.description = "basic IgrBanner";
14
- this.packages = ["igniteui-react@~19.5.2"];
15
+ this.packages = [constants_1.IGNITEUI_REACT_PACKAGE];
15
16
  }
16
17
  }
17
18
  module.exports = new IgrBannerTemplate();
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const IgniteUIForReactTemplate_1 = require("../../../../../lib/templates/IgniteUIForReactTemplate");
4
+ const constants_1 = require("../../constants");
4
5
  class IgrButtonTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTemplate {
5
6
  constructor() {
6
7
  super(__dirname);
@@ -11,7 +12,7 @@ class IgrButtonTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTempl
11
12
  this.projectType = "igr-ts";
12
13
  this.name = "Button";
13
14
  this.description = "displays a button with customizable size and content.";
14
- this.packages = ["igniteui-react@~19.5.2"];
15
+ this.packages = [constants_1.IGNITEUI_REACT_PACKAGE];
15
16
  }
16
17
  }
17
18
  module.exports = new IgrButtonTemplate();
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const IgniteUIForReactTemplate_1 = require("../../../../../lib/templates/IgniteUIForReactTemplate");
4
+ const constants_1 = require("../../constants");
4
5
  class IgrButtonGroupTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTemplate {
5
6
  constructor() {
6
7
  super(__dirname);
@@ -11,7 +12,7 @@ class IgrButtonGroupTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReact
11
12
  this.projectType = "igr-ts";
12
13
  this.name = "Button group";
13
14
  this.description = "basic IgrButtonGroup";
14
- this.packages = ["igniteui-react@~19.5.2"];
15
+ this.packages = [constants_1.IGNITEUI_REACT_PACKAGE];
15
16
  }
16
17
  }
17
18
  module.exports = new IgrButtonGroupTemplate();
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const IgniteUIForReactTemplate_1 = require("../../../../../lib/templates/IgniteUIForReactTemplate");
4
+ const constants_1 = require("../../constants");
4
5
  class IgrCalendarTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTemplate {
5
6
  constructor() {
6
7
  super(__dirname);
@@ -11,7 +12,7 @@ class IgrCalendarTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTem
11
12
  this.projectType = "igr-ts";
12
13
  this.name = "Calendar";
13
14
  this.description = "basic IgrCalendar";
14
- this.packages = ["igniteui-react@~19.5.2"];
15
+ this.packages = [constants_1.IGNITEUI_REACT_PACKAGE];
15
16
  }
16
17
  }
17
18
  module.exports = new IgrCalendarTemplate();
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const IgniteUIForReactTemplate_1 = require("../../../../../lib/templates/IgniteUIForReactTemplate");
4
+ const constants_1 = require("../../constants");
4
5
  class IgrCardTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTemplate {
5
6
  constructor() {
6
7
  super(__dirname);
@@ -11,7 +12,7 @@ class IgrCardTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTemplat
11
12
  this.projectType = "igr-ts";
12
13
  this.name = "Card";
13
14
  this.description = "basic IgrCard";
14
- this.packages = ["igniteui-react@~19.5.2"];
15
+ this.packages = [constants_1.IGNITEUI_REACT_PACKAGE];
15
16
  }
16
17
  }
17
18
  module.exports = new IgrCardTemplate();
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const IgniteUIForReactTemplate_1 = require("../../../../../lib/templates/IgniteUIForReactTemplate");
4
+ const constants_1 = require("../../constants");
4
5
  class IgrCheckboxTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTemplate {
5
6
  constructor() {
6
7
  super(__dirname);
@@ -11,7 +12,7 @@ class IgrCheckboxTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTem
11
12
  this.projectType = "igr-ts";
12
13
  this.name = "Checkbox";
13
14
  this.description = "basic IgrCheckbox";
14
- this.packages = ["igniteui-react@~19.5.2"];
15
+ this.packages = [constants_1.IGNITEUI_REACT_PACKAGE];
15
16
  }
16
17
  }
17
18
  module.exports = new IgrCheckboxTemplate();
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const IgniteUIForReactTemplate_1 = require("../../../../../lib/templates/IgniteUIForReactTemplate");
4
+ const constants_1 = require("../../constants");
4
5
  class IgrChipTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTemplate {
5
6
  constructor() {
6
7
  super(__dirname);
@@ -11,7 +12,7 @@ class IgrChipTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTemplat
11
12
  this.projectType = "igr-ts";
12
13
  this.name = "Chip";
13
14
  this.description = "basic IgrChip";
14
- this.packages = ["igniteui-react@~19.5.2"];
15
+ this.packages = [constants_1.IGNITEUI_REACT_PACKAGE];
15
16
  }
16
17
  }
17
18
  module.exports = new IgrChipTemplate();
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const IgniteUIForReactTemplate_1 = require("../../../../../lib/templates/IgniteUIForReactTemplate");
4
+ const constants_1 = require("../../constants");
4
5
  class IgrCircularProgressTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTemplate {
5
6
  constructor() {
6
7
  super(__dirname);
@@ -11,7 +12,7 @@ class IgrCircularProgressTemplate extends IgniteUIForReactTemplate_1.IgniteUIFor
11
12
  this.projectType = "igr-ts";
12
13
  this.name = "Circular Progress";
13
14
  this.description = "basic IgrCircularProgress";
14
- this.packages = ["igniteui-react@~19.5.2"];
15
+ this.packages = [constants_1.IGNITEUI_REACT_PACKAGE];
15
16
  }
16
17
  }
17
18
  module.exports = new IgrCircularProgressTemplate();
@@ -0,0 +1,2 @@
1
+ export declare const IGNITEUI_REACT_PACKAGE = "igniteui-react@~19.7.0";
2
+ export declare const IGNITEUI_REACT_GRIDS_PACKAGE = "igniteui-react-grids@~19.7.0";
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IGNITEUI_REACT_GRIDS_PACKAGE = exports.IGNITEUI_REACT_PACKAGE = void 0;
4
+ exports.IGNITEUI_REACT_PACKAGE = "igniteui-react@~19.7.0";
5
+ exports.IGNITEUI_REACT_GRIDS_PACKAGE = "igniteui-react-grids@~19.7.0";
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const IgniteUIForReactTemplate_1 = require("../../../../../lib/templates/IgniteUIForReactTemplate");
4
+ const constants_1 = require("../../constants");
4
5
  class IgrSubscriptionFormTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTemplate {
5
6
  constructor() {
6
7
  super(__dirname);
@@ -10,7 +11,7 @@ class IgrSubscriptionFormTemplate extends IgniteUIForReactTemplate_1.IgniteUIFor
10
11
  this.projectType = "igr-ts";
11
12
  this.name = "Subscription Form";
12
13
  this.description = "Subscription form with inputs, buttons and a checkbox inside";
13
- this.packages = ["igniteui-react@~19.5.2"];
14
+ this.packages = [constants_1.IGNITEUI_REACT_PACKAGE];
14
15
  }
15
16
  }
16
17
  module.exports = new IgrSubscriptionFormTemplate();
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const IgniteUIForReactTemplate_1 = require("../../../../../lib/templates/IgniteUIForReactTemplate");
4
+ const constants_1 = require("../../constants");
4
5
  class IgrDatePickerTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTemplate {
5
6
  constructor() {
6
7
  super(__dirname);
@@ -11,7 +12,7 @@ class IgrDatePickerTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactT
11
12
  this.projectType = "igr-ts";
12
13
  this.name = "Date Picker";
13
14
  this.description = "basic IgrDatePicker";
14
- this.packages = ["igniteui-react@~19.5.2"];
15
+ this.packages = [constants_1.IGNITEUI_REACT_PACKAGE];
15
16
  }
16
17
  }
17
18
  module.exports = new IgrDatePickerTemplate();
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const IgniteUIForReactTemplate_1 = require("../../../../../lib/templates/IgniteUIForReactTemplate");
4
+ const constants_1 = require("../../constants");
4
5
  class IgrDividerTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTemplate {
5
6
  constructor() {
6
7
  super(__dirname);
@@ -11,7 +12,7 @@ class IgrDividerTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTemp
11
12
  this.projectType = "igr-ts";
12
13
  this.name = "Divider";
13
14
  this.description = "basic IgrDivider";
14
- this.packages = ["igniteui-react@~19.5.2"];
15
+ this.packages = [constants_1.IGNITEUI_REACT_PACKAGE];
15
16
  }
16
17
  }
17
18
  module.exports = new IgrDividerTemplate();
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const IgniteUIForReactTemplate_1 = require("../../../../../lib/templates/IgniteUIForReactTemplate");
4
+ const constants_1 = require("../../constants");
4
5
  class IgrDropdownTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTemplate {
5
6
  constructor() {
6
7
  super(__dirname);
@@ -11,7 +12,7 @@ class IgrDropdownTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTem
11
12
  this.projectType = "igr-ts";
12
13
  this.name = "Dropdown";
13
14
  this.description = "basic IgrDropdown";
14
- this.packages = ["igniteui-react@~19.5.2"];
15
+ this.packages = [constants_1.IGNITEUI_REACT_PACKAGE];
15
16
  }
16
17
  }
17
18
  module.exports = new IgrDropdownTemplate();
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const IgniteUIForReactTemplate_1 = require("../../../../../lib/templates/IgniteUIForReactTemplate");
4
+ const constants_1 = require("../../constants");
4
5
  class IgrExpansionPanelTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTemplate {
5
6
  constructor() {
6
7
  super(__dirname);
@@ -11,7 +12,7 @@ class IgrExpansionPanelTemplate extends IgniteUIForReactTemplate_1.IgniteUIForRe
11
12
  this.projectType = "igr-ts";
12
13
  this.name = "Expansion Panel";
13
14
  this.description = "basic IgrExpansionPanel";
14
- this.packages = ["igniteui-react@~19.5.2"];
15
+ this.packages = [constants_1.IGNITEUI_REACT_PACKAGE];
15
16
  }
16
17
  }
17
18
  module.exports = new IgrExpansionPanelTemplate();
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const IgniteUIForReactTemplate_1 = require("../../../../../lib/templates/IgniteUIForReactTemplate");
4
+ const constants_1 = require("../../constants");
4
5
  class IgrFormTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTemplate {
5
6
  constructor() {
6
7
  super(__dirname);
@@ -11,7 +12,7 @@ class IgrFormTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTemplat
11
12
  this.projectType = "igr-ts";
12
13
  this.name = "Form";
13
14
  this.description = "basic IgrForm";
14
- this.packages = ["igniteui-react@~19.5.2"];
15
+ this.packages = [constants_1.IGNITEUI_REACT_PACKAGE];
15
16
  }
16
17
  }
17
18
  module.exports = new IgrFormTemplate();
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const IgniteUIForReactTemplate_1 = require("../../../../../lib/templates/IgniteUIForReactTemplate");
4
+ const constants_1 = require("../../constants");
4
5
  class GridTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTemplate {
5
6
  /**
6
7
  *
@@ -14,7 +15,7 @@ class GridTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTemplate {
14
15
  this.projectType = "igr-ts";
15
16
  this.components = ["Grid"];
16
17
  this.controlGroup = "Data Grids";
17
- this.packages = ["igniteui-react-grids@~19.6.2"];
18
+ this.packages = [constants_1.IGNITEUI_REACT_GRIDS_PACKAGE];
18
19
  this.hasExtraConfiguration = false;
19
20
  }
20
21
  }
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const IgniteUIForReactTemplate_1 = require("../../../../../lib/templates/IgniteUIForReactTemplate");
4
+ const constants_1 = require("../../constants");
4
5
  class IgrIconTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTemplate {
5
6
  constructor() {
6
7
  super(__dirname);
@@ -11,7 +12,7 @@ class IgrIconTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTemplat
11
12
  this.projectType = "igr-ts";
12
13
  this.name = "Icon";
13
14
  this.description = "basic IgrIcon";
14
- this.packages = ["igniteui-react@~19.5.2"];
15
+ this.packages = [constants_1.IGNITEUI_REACT_PACKAGE];
15
16
  }
16
17
  }
17
18
  module.exports = new IgrIconTemplate();
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const IgniteUIForReactTemplate_1 = require("../../../../../lib/templates/IgniteUIForReactTemplate");
4
+ const constants_1 = require("../../constants");
4
5
  class IgrIconButtonTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTemplate {
5
6
  constructor() {
6
7
  super(__dirname);
@@ -11,7 +12,7 @@ class IgrIconButtonTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactT
11
12
  this.projectType = "igr-ts";
12
13
  this.name = "Icon button";
13
14
  this.description = "basic IgrIconButton";
14
- this.packages = ["igniteui-react@~19.5.2"];
15
+ this.packages = [constants_1.IGNITEUI_REACT_PACKAGE];
15
16
  }
16
17
  }
17
18
  module.exports = new IgrIconButtonTemplate();
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const IgniteUIForReactTemplate_1 = require("../../../../../lib/templates/IgniteUIForReactTemplate");
4
+ const constants_1 = require("../../constants");
4
5
  class IgrInputTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTemplate {
5
6
  constructor() {
6
7
  super(__dirname);
@@ -11,7 +12,7 @@ class IgrInputTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTempla
11
12
  this.projectType = "igr-ts";
12
13
  this.name = "Input";
13
14
  this.description = "basic IgrInput";
14
- this.packages = ["igniteui-react@~19.5.2"];
15
+ this.packages = [constants_1.IGNITEUI_REACT_PACKAGE];
15
16
  }
16
17
  }
17
18
  module.exports = new IgrInputTemplate();
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const IgniteUIForReactTemplate_1 = require("../../../../../lib/templates/IgniteUIForReactTemplate");
4
+ const constants_1 = require("../../constants");
4
5
  class IgrLinearProgressTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTemplate {
5
6
  constructor() {
6
7
  super(__dirname);
@@ -11,7 +12,7 @@ class IgrLinearProgressTemplate extends IgniteUIForReactTemplate_1.IgniteUIForRe
11
12
  this.projectType = "igr-ts";
12
13
  this.name = "Linear Progress";
13
14
  this.description = "basic IgrLinearProgress";
14
- this.packages = ["igniteui-react@~19.5.2"];
15
+ this.packages = [constants_1.IGNITEUI_REACT_PACKAGE];
15
16
  }
16
17
  }
17
18
  module.exports = new IgrLinearProgressTemplate();
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const IgniteUIForReactTemplate_1 = require("../../../../../lib/templates/IgniteUIForReactTemplate");
4
+ const constants_1 = require("../../constants");
4
5
  class IgrListTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTemplate {
5
6
  constructor() {
6
7
  super(__dirname);
@@ -11,7 +12,7 @@ class IgrListTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTemplat
11
12
  this.projectType = "igr-ts";
12
13
  this.name = "List";
13
14
  this.description = "basic IgrList";
14
- this.packages = ["igniteui-react@~19.5.2"];
15
+ this.packages = [constants_1.IGNITEUI_REACT_PACKAGE];
15
16
  }
16
17
  }
17
18
  module.exports = new IgrListTemplate();
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const IgniteUIForReactTemplate_1 = require("../../../../../lib/templates/IgniteUIForReactTemplate");
4
+ const constants_1 = require("../../constants");
4
5
  class IgrNavbarTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTemplate {
5
6
  constructor() {
6
7
  super(__dirname);
@@ -11,7 +12,7 @@ class IgrNavbarTemplate extends IgniteUIForReactTemplate_1.IgniteUIForReactTempl
11
12
  this.projectType = "igr-ts";
12
13
  this.name = "Navbar";
13
14
  this.description = "basic IgrNavbar";
14
- this.packages = ["igniteui-react@~19.5.2"];
15
+ this.packages = [constants_1.IGNITEUI_REACT_PACKAGE];
15
16
  }
16
17
  }
17
18
  module.exports = new IgrNavbarTemplate();
@@ -13,9 +13,10 @@
13
13
  "dependencies": {
14
14
  "@testing-library/jest-dom": "^6.9.1",
15
15
  "@testing-library/react": "^16.3.0",
16
+ "@igniteui/material-icons-extended": "^3.0.2",
16
17
  "element-internals-polyfill": "^3.0.2",
17
18
  "functions-have-names": "^1.2.3",
18
- "igniteui-react": "~19.6.2",
19
+ "igniteui-react": "~19.7.0",
19
20
  "react": "^19.2.4",
20
21
  "react-app-polyfill": "^3.0.0",
21
22
  "react-dom": "^19.2.4",
@@ -3,6 +3,8 @@ import { Outlet } from "react-router-dom";
3
3
  export default function App() {
4
4
 
5
5
  return (
6
- <Outlet />
7
- )
6
+ <div className="outer-wrapper">
7
+ <Outlet />
8
+ </div>
9
+ );
8
10
  }
@@ -4,6 +4,18 @@ import ResizeObserver from 'resize-observer-polyfill';
4
4
  export function setupTestMocks() {
5
5
  globalThis.ResizeObserver = ResizeObserver;
6
6
 
7
+ Object.defineProperty(window, 'matchMedia', {
8
+ writable: true,
9
+ value: vi.fn().mockImplementation(query => ({
10
+ matches: true,
11
+ media: query,
12
+ onchange: null,
13
+ addEventListener: vi.fn(),
14
+ removeEventListener: vi.fn(),
15
+ dispatchEvent: vi.fn(),
16
+ })),
17
+ });
18
+
7
19
  HTMLElement.prototype.scrollIntoView = vi.fn();
8
20
  HTMLElement.prototype.hidePopover = vi.fn();
9
21
  HTMLElement.prototype.showPopover = vi.fn();
@@ -14,6 +14,12 @@ html, body, #root {
14
14
  height: 100%;
15
15
  }
16
16
 
17
+ .outer-wrapper {
18
+ display: flex;
19
+ justify-content: center;
20
+ height: 100%;
21
+ }
22
+
17
23
  /* minor CSS reset */
18
24
  body, h1, h2, h3, h4, h5, h6, p {
19
25
  margin: 0;
@@ -4,7 +4,8 @@
4
4
  <meta charset="UTF-8" />
5
5
  <link rel="icon" type="image/svg+xml" href="/favicon.svg" />
6
6
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
7
- <title>IgniteUI for React</title>
7
+ <title>Ignite UI for React</title>
8
+ <link href="https://fonts.googleapis.com/css?family=Titillium+Web:300,400,600,700" rel="stylesheet">
8
9
  <link rel="stylesheet" href="./styles.css">
9
10
  </head>
10
11
  <body>
@@ -1,24 +1,74 @@
1
1
  import logo from "/logo.svg";
2
+ import { github } from "@igniteui/material-icons-extended";
3
+ import { IgrIcon, registerIconFromText } from "igniteui-react";
2
4
  import styles from "./style.module.css";
3
5
 
4
- export default function App() {
5
- const name = '$(name)';
6
+ registerIconFromText(github.name, github.value, "imx-icons");
6
7
 
8
+ export default function App() {
7
9
  return (
8
- <div className="app">
9
- <div className={styles.app__name}>{name}</div>
10
- <header className={styles.header}>
11
- <img src={logo} className={styles.logo} alt="logo" />
12
- <p>Welcome to Ignite UI for React!</p>
10
+ <main className={styles.content}>
11
+ <h1 className={styles.header}>Welcome to Ignite UI for React!</h1>
12
+ <h4 className={styles.subject}>
13
+ A complete library of 50+ UI components for building modern web applications with reusable React components.
14
+ </h4>
15
+ <img src={logo} className={styles.logo} alt="Ignite UI for React" />
16
+
17
+ <p className={styles.subtitle}>Discover more at</p>
18
+ <p>
13
19
  <a
14
20
  className={styles.link}
15
21
  target="_blank"
16
22
  href="https://www.infragistics.com/products/ignite-ui-react"
17
23
  rel="noopener noreferrer"
18
24
  >
19
- Learn More
25
+ www.infragistics.com/products/ignite-ui-react
26
+ </a>
27
+ </p>
28
+ <p>
29
+ <a
30
+ className={styles.link}
31
+ target="_blank"
32
+ href="https://www.infragistics.com/products/indigo-design"
33
+ rel="noopener noreferrer"
34
+ >
35
+ www.infragistics.com/products/indigo-design
20
36
  </a>
21
- </header>
22
- </div>
37
+ </p>
38
+
39
+ <p className={styles.subtitle}>We are also on GitHub</p>
40
+ <p className={styles.githubLinks}>
41
+ <span className={styles.githubItem}>
42
+ <IgrIcon
43
+ className={styles.githubIcon}
44
+ name="github"
45
+ collection="imx-icons"
46
+ />
47
+ <a
48
+ className={styles.githubLink}
49
+ target="_blank"
50
+ href="https://github.com/IgniteUI/igniteui-react"
51
+ rel="noopener noreferrer"
52
+ >
53
+ Ignite UI for React
54
+ </a>
55
+ </span>
56
+ <span className={styles.githubItem}>
57
+ <IgrIcon
58
+ className={styles.githubIcon}
59
+ name="github"
60
+ collection="imx-icons"
61
+ />
62
+ <a
63
+ className={styles.githubLink}
64
+ target="_blank"
65
+ href="https://github.com/IgniteUI/igniteui-cli"
66
+ rel="noopener noreferrer"
67
+ >
68
+ Ignite UI CLI
69
+ </a>
70
+ </span>
71
+ </p>
72
+ </main>
23
73
  );
24
74
  }
@@ -1,36 +1,95 @@
1
- :local(.logo) {
2
- animation: App-logo-spin infinite 20s linear;
3
- height: 40vmin;
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
- padding-top: 5em;
8
- display: flex;
9
- flex-direction: column;
10
- align-items: center;
11
- justify-content: center;
12
- font-size: calc(10px + 2vmin);
13
- color: #333;
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
- color: #61dafb;
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(.app__name) {
21
- padding-top: 1em;
51
+ :local(.githubLinks) {
22
52
  display: flex;
23
- flex-direction: column;
53
+ flex-flow: row wrap;
24
54
  align-items: center;
25
55
  justify-content: center;
26
- font-size: calc(10px + 2vmin);
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
- @keyframes App-logo-spin {
30
- from {
31
- transform: rotate(0deg);
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
- to {
34
- transform: rotate(360deg);
86
+
87
+ :local(.subject) {
88
+ font-size: 20px;
89
+ }
90
+
91
+ :local(.logo) {
92
+ width: 100%;
93
+ height: 240px;
35
94
  }
36
95
  }