Skip to content

feat: add missing igr-ts templates - #1796

Open
onlyexeption wants to merge 4 commits into
masterfrom
ibarakov/feat-1784
Open

feat: add missing igr-ts templates#1796
onlyexeption wants to merge 4 commits into
masterfrom
ibarakov/feat-1784

Conversation

@onlyexeption

Copy link
Copy Markdown
Contributor

Description

Related Issue

Closes #1784

Type of Change

  • Bug fix (non-breaking change that fixes an issue)
  • New feature (non-breaking change that adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Documentation update
  • Refactoring / code cleanup
  • Build / CI configuration change

Affected Packages

  • igniteui-cli (packages/cli)
  • @igniteui/cli-core (packages/core)
  • @igniteui/angular-templates (packages/igx-templates)
  • @igniteui/angular-schematics (packages/ng-schematics)
  • @igniteui/mcp-server (packages/igniteui-mcp)

Checklist

  • I have tested my changes locally (npm run test)
  • I have built the project successfully (npm run build)
  • I have run the linter (npm run lint)
  • I have added/updated tests as needed
  • My changes do not introduce new warnings or errors

Additional Context

@coveralls

coveralls commented Sep 3, 2026

Copy link
Copy Markdown

Coverage Status

coverage: 88.338% (+0.5%) from 87.816% — ibarakov/feat-1784 into master

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

The new Range Slider template imports a missing style.module.css, which will cause generated projects to fail to build.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Pull request overview

Adds missing Ignite UI for React (TypeScript / igr-ts) component templates to the CLI so ig add can scaffold additional React components with default sample code and tests, addressing the React template coverage gap from #1784.

Changes:

  • Adds new BaseComponent registrations for multiple React components under packages/cli/templates/react/igr-ts/*/index.ts.
  • Adds default template metadata (IgniteUIForReactTemplate) plus scaffolded component samples (.tsx) and module CSS for each component.
  • Adds Vitest-based component rendering smoke tests for most new templates.
File summaries
File Description
packages/cli/templates/react/igr-ts/tooltip/index.ts Registers Tooltip component metadata for the CLI template library.
packages/cli/templates/react/igr-ts/tooltip/default/index.ts Defines the default Tooltip template metadata (id, packages, etc.).
packages/cli/templates/react/igr-ts/tooltip/default/files/src/app/path/style.module.css Styling for the generated Tooltip sample component.
packages/cli/templates/react/igr-ts/tooltip/default/files/src/app/path/filePrefix.tsx Tooltip sample component implementation for generated apps.
packages/cli/templates/react/igr-ts/tooltip/default/files/src/app/path/filePrefix.test.tsx Vitest render smoke test for the generated Tooltip sample.
packages/cli/templates/react/igr-ts/toggle-button/index.ts Registers Toggle Button component metadata for the CLI template library.
packages/cli/templates/react/igr-ts/toggle-button/default/index.ts Defines the default Toggle Button template metadata (id, packages, etc.).
packages/cli/templates/react/igr-ts/toggle-button/default/files/src/app/path/style.module.css Styling for the generated Toggle Button sample component.
packages/cli/templates/react/igr-ts/toggle-button/default/files/src/app/path/filePrefix.tsx Toggle Button sample component implementation for generated apps.
packages/cli/templates/react/igr-ts/toggle-button/default/files/src/app/path/filePrefix.test.tsx Vitest render smoke test for the generated Toggle Button sample.
packages/cli/templates/react/igr-ts/toast/index.ts Registers Toast component metadata for the CLI template library.
packages/cli/templates/react/igr-ts/toast/default/index.ts Defines the default Toast template metadata (id, packages, etc.).
packages/cli/templates/react/igr-ts/toast/default/files/src/app/path/style.module.css Styling for the generated Toast sample component.
packages/cli/templates/react/igr-ts/toast/default/files/src/app/path/filePrefix.tsx Toast sample component implementation for generated apps.
packages/cli/templates/react/igr-ts/toast/default/files/src/app/path/filePrefix.test.tsx Vitest render smoke test for the generated Toast sample.
packages/cli/templates/react/igr-ts/tile-manager/index.ts Registers Tile Manager component metadata for the CLI template library.
packages/cli/templates/react/igr-ts/tile-manager/default/index.ts Defines the default Tile Manager template metadata (id, packages, etc.).
packages/cli/templates/react/igr-ts/tile-manager/default/files/src/app/path/style.module.css Styling for the generated Tile Manager sample component.
packages/cli/templates/react/igr-ts/tile-manager/default/files/src/app/path/filePrefix.tsx Tile Manager sample component implementation for generated apps.
packages/cli/templates/react/igr-ts/tile-manager/default/files/src/app/path/filePrefix.test.tsx Vitest render smoke test for the generated Tile Manager sample.
packages/cli/templates/react/igr-ts/stepper/index.ts Registers Stepper component metadata for the CLI template library.
packages/cli/templates/react/igr-ts/stepper/default/index.ts Defines the default Stepper template metadata (id, packages, etc.).
packages/cli/templates/react/igr-ts/stepper/default/files/src/app/path/style.module.css Styling for the generated Stepper sample component.
packages/cli/templates/react/igr-ts/stepper/default/files/src/app/path/filePrefix.tsx Stepper sample component implementation for generated apps.
packages/cli/templates/react/igr-ts/stepper/default/files/src/app/path/filePrefix.test.tsx Vitest render smoke test for the generated Stepper sample.
packages/cli/templates/react/igr-ts/snackbar/index.ts Registers Snackbar component metadata for the CLI template library.
packages/cli/templates/react/igr-ts/snackbar/default/index.ts Defines the default Snackbar template metadata (id, packages, etc.).
packages/cli/templates/react/igr-ts/snackbar/default/files/src/app/path/style.module.css Styling for the generated Snackbar sample component.
packages/cli/templates/react/igr-ts/snackbar/default/files/src/app/path/filePrefix.tsx Snackbar sample component implementation for generated apps.
packages/cli/templates/react/igr-ts/snackbar/default/files/src/app/path/filePrefix.test.tsx Vitest render smoke test for the generated Snackbar sample.
packages/cli/templates/react/igr-ts/select/index.ts Registers Select component metadata for the CLI template library.
packages/cli/templates/react/igr-ts/select/default/index.ts Defines the default Select template metadata (id, packages, etc.).
packages/cli/templates/react/igr-ts/select/default/files/src/app/path/style.module.css Styling for the generated Select sample component.
packages/cli/templates/react/igr-ts/select/default/files/src/app/path/filePrefix.tsx Select sample component implementation for generated apps.
packages/cli/templates/react/igr-ts/select/default/files/src/app/path/filePrefix.test.tsx Vitest render smoke test for the generated Select sample.
packages/cli/templates/react/igr-ts/range-slider/index.ts Registers Range Slider component metadata for the CLI template library.
packages/cli/templates/react/igr-ts/range-slider/default/index.ts Defines the default Range Slider template metadata (id, packages, etc.).
packages/cli/templates/react/igr-ts/range-slider/default/files/src/app/path/filePrefix.tsx Range Slider sample component implementation for generated apps.
packages/cli/templates/react/igr-ts/nav-drawer/index.ts Registers Nav Drawer component metadata for the CLI template library.
packages/cli/templates/react/igr-ts/nav-drawer/default/index.ts Defines the default Nav Drawer template metadata (id, packages, etc.).
packages/cli/templates/react/igr-ts/nav-drawer/default/files/src/app/path/style.module.css Styling for the generated Nav Drawer sample component.
packages/cli/templates/react/igr-ts/nav-drawer/default/files/src/app/path/filePrefix.tsx Nav Drawer sample component implementation for generated apps.
packages/cli/templates/react/igr-ts/nav-drawer/default/files/src/app/path/filePrefix.test.tsx Vitest render smoke test for the generated Nav Drawer sample.
packages/cli/templates/react/igr-ts/mask-input/index.ts Registers Mask Input component metadata for the CLI template library.
packages/cli/templates/react/igr-ts/mask-input/default/index.ts Defines the default Mask Input template metadata (id, packages, etc.).
packages/cli/templates/react/igr-ts/mask-input/default/files/src/app/path/style.module.css Styling for the generated Mask Input sample component.
packages/cli/templates/react/igr-ts/mask-input/default/files/src/app/path/filePrefix.tsx Mask Input sample component implementation for generated apps.
packages/cli/templates/react/igr-ts/mask-input/default/files/src/app/path/filePrefix.test.tsx Vitest render smoke test for the generated Mask Input sample.
packages/cli/templates/react/igr-ts/highlight/index.ts Registers Highlight component metadata for the CLI template library.
packages/cli/templates/react/igr-ts/highlight/default/index.ts Defines the default Highlight template metadata (id, packages, etc.).
packages/cli/templates/react/igr-ts/highlight/default/files/src/app/path/style.module.css Styling for the generated Highlight sample component.
packages/cli/templates/react/igr-ts/highlight/default/files/src/app/path/filePrefix.tsx Highlight sample component implementation for generated apps.
packages/cli/templates/react/igr-ts/highlight/default/files/src/app/path/filePrefix.test.tsx Vitest render smoke test for the generated Highlight sample.
packages/cli/templates/react/igr-ts/file-input/index.ts Registers File Input component metadata for the CLI template library.
packages/cli/templates/react/igr-ts/file-input/default/index.ts Defines the default File Input template metadata (id, packages, etc.).
packages/cli/templates/react/igr-ts/file-input/default/files/src/app/path/style.module.css Styling for the generated File Input sample component.
packages/cli/templates/react/igr-ts/file-input/default/files/src/app/path/filePrefix.tsx File Input sample component implementation for generated apps.
packages/cli/templates/react/igr-ts/file-input/default/files/src/app/path/filePrefix.test.tsx Vitest render smoke test for the generated File Input sample.
packages/cli/templates/react/igr-ts/dialog/index.ts Registers Dialog component metadata for the CLI template library.
packages/cli/templates/react/igr-ts/dialog/default/index.ts Defines the default Dialog template metadata (id, packages, etc.).
packages/cli/templates/react/igr-ts/dialog/default/files/src/app/path/style.module.css Styling for the generated Dialog sample component.
packages/cli/templates/react/igr-ts/dialog/default/files/src/app/path/filePrefix.tsx Dialog sample component implementation for generated apps.
packages/cli/templates/react/igr-ts/dialog/default/files/src/app/path/filePrefix.test.tsx Vitest render smoke test for the generated Dialog sample.
packages/cli/templates/react/igr-ts/date-time-input/index.ts Registers Date Time Input component metadata for the CLI template library.
packages/cli/templates/react/igr-ts/date-time-input/default/index.ts Defines the default Date Time Input template metadata (id, packages, etc.).
packages/cli/templates/react/igr-ts/date-time-input/default/files/src/app/path/style.module.css Styling for the generated Date Time Input sample component.
packages/cli/templates/react/igr-ts/date-time-input/default/files/src/app/path/filePrefix.tsx Date Time Input sample component implementation for generated apps.
packages/cli/templates/react/igr-ts/date-time-input/default/files/src/app/path/filePrefix.test.tsx Vitest render smoke test for the generated Date Time Input sample.
packages/cli/templates/react/igr-ts/date-range-picker/index.ts Registers Date Range Picker component metadata for the CLI template library.
packages/cli/templates/react/igr-ts/date-range-picker/default/index.ts Defines the default Date Range Picker template metadata (id, packages, etc.).
packages/cli/templates/react/igr-ts/date-range-picker/default/files/src/app/path/style.module.css Styling for the generated Date Range Picker sample component.
packages/cli/templates/react/igr-ts/date-range-picker/default/files/src/app/path/filePrefix.tsx Date Range Picker sample component implementation for generated apps.
packages/cli/templates/react/igr-ts/date-range-picker/default/files/src/app/path/filePrefix.test.tsx Vitest render smoke test for the generated Date Range Picker sample.
packages/cli/templates/react/igr-ts/combo/index.ts Registers Combo component metadata for the CLI template library.
packages/cli/templates/react/igr-ts/combo/default/index.ts Defines the default Combo template metadata (id, packages, etc.).
packages/cli/templates/react/igr-ts/combo/default/files/src/app/path/style.module.css Styling for the generated Combo sample component.
packages/cli/templates/react/igr-ts/combo/default/files/src/app/path/filePrefix.tsx Combo sample component implementation for generated apps.
packages/cli/templates/react/igr-ts/combo/default/files/src/app/path/filePrefix.test.tsx Vitest render smoke test for the generated Combo sample.
packages/cli/templates/react/igr-ts/chat/index.ts Registers Chat component metadata for the CLI template library.
packages/cli/templates/react/igr-ts/chat/default/index.ts Defines the default Chat template metadata (id, packages, etc.).
packages/cli/templates/react/igr-ts/chat/default/files/src/app/path/style.module.css Styling for the generated Chat sample component.
packages/cli/templates/react/igr-ts/chat/default/files/src/app/path/filePrefix.tsx Chat sample component implementation for generated apps.
packages/cli/templates/react/igr-ts/chat/default/files/src/app/path/filePrefix.test.tsx Vitest render smoke test for the generated Chat sample.
packages/cli/templates/react/igr-ts/carousel/index.ts Registers Carousel component metadata for the CLI template library.
packages/cli/templates/react/igr-ts/carousel/default/index.ts Defines the default Carousel template metadata (id, packages, etc.).
packages/cli/templates/react/igr-ts/carousel/default/files/src/app/path/style.module.css Styling for the generated Carousel sample component.
packages/cli/templates/react/igr-ts/carousel/default/files/src/app/path/filePrefix.tsx Carousel sample component implementation for generated apps.
packages/cli/templates/react/igr-ts/carousel/default/files/src/app/path/filePrefix.test.tsx Vitest render smoke test for the generated Carousel sample.
Review details
  • Files reviewed: 88/88 changed files
  • Comments generated: 1
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment on lines +1 to +3
import style from './style.module.css';
import { IgrRangeSlider } from 'igniteui-react';
import 'igniteui-webcomponents/themes/light/bootstrap.css';
@Marina-L-Stoyanova

Copy link
Copy Markdown
Contributor

Two components are missing templates: IgrThemeProvider and IgrSplitter. Other than that I made a commit fixing the missing test and style for range-slider and made a fix for chat template style.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[React] Adding new/missing component templates

4 participants