Skip to content

feat(extras): add igniteui-angular-extras library to monorepo#16932

Merged
ChronosSF merged 14 commits intomasterfrom
dTsvetkov/add-igniteui-angular-extras
Mar 24, 2026
Merged

feat(extras): add igniteui-angular-extras library to monorepo#16932
ChronosSF merged 14 commits intomasterfrom
dTsvetkov/add-igniteui-angular-extras

Conversation

@dobromirts
Copy link
Contributor

@dobromirts dobromirts commented Feb 19, 2026

Related to https://github.com/IgniteUI/igniteui-actions/issues/25

Add igniteui-angular-extras library to the monorepo with build, test, and lint infrastructure
Rename enum members to PascalCase and output properties to follow Angular naming conventions
Add migration schematic for breaking API changes
Add unit tests for exported components and directives

Additional information (check all that apply):

  • Bug fix
  • New functionality
  • Documentation
  • Demos
  • CI/CD

Checklist:

  • All relevant tags have been applied to this PR
  • This PR includes unit tests covering all the new code (test guidelines)
  • This PR includes API docs for newly added methods/properties (api docs guidelines)
  • This PR includes feature/README.MD updates for the feature docs
  • This PR includes general feature table updates in the root README.MD
  • This PR includes CHANGELOG.MD updates for newly added functionality
  • This PR contains breaking changes
  • This PR includes ng update migrations for the breaking changes (migrations guidelines)
  • This PR includes behavioral changes and the feature specification has been updated with them

@ChronosSF ChronosSF requested a review from rkaraivanov March 16, 2026 09:36
rkaraivanov
rkaraivanov previously approved these changes Mar 17, 2026
Copy link
Member

@rkaraivanov rkaraivanov left a comment

Choose a reason for hiding this comment

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

LGTM

Just make sure to add package.json overrides for the chart packages since they tend to lag in Angular version support

…into dTsvetkov/add-igniteui-angular-extras
@ChronosSF ChronosSF requested a review from rkaraivanov March 18, 2026 16:18
Copy link
Member

@ChronosSF ChronosSF left a comment

Choose a reason for hiding this comment

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

@turbobobbytraykov , adding igniteui-angular-extras npm publish as part of the publish workflow for igniteui-angular will likely require your intervention to allow the workflow to auth for the extras npm package over OIDC. I am assuming this is best done before merging this.

@dobromirts , the licensed packages are now published with the new yml created by Alex - trigger-licensed-release.yml . Please integrate the licensed cd for extras with that workflow before merging this.

Copilot AI review requested due to automatic review settings March 19, 2026 12:24
@dobromirts
Copy link
Contributor Author

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds the new igniteui-angular-extras Angular library to the monorepo, wiring it into the existing build/test/lint and release pipelines, and introducing a dev-demo route showcasing the extras directives/components.

Changes:

  • Introduces projects/igniteui-angular-extras (directives/components/pipes, packaging, Karma config, and unit tests).
  • Integrates the new library into workspace/build tooling (tsconfig paths, Angular workspace config, npm scripts, gulp migration copy task, CI workflows).
  • Adds a new demo route/sample (GridDataAnalysisComponent) and its mock data generator.

Reviewed changes

Copilot reviewed 42 out of 44 changed files in this pull request and generated 18 comments.

Show a summary per file
File Description
tsconfig.json Adds TS path mapping for igniteui-angular-extras.
src/app/grid-data-analysis/grid-data-analysis.component.ts New demo component consuming extras directives/API.
src/app/grid-data-analysis/grid-data-analysis.component.html Demo template wiring grid + extras directives.
src/app/grid-data-analysis/grid-data-analysis.component.scss Demo styles for the grid/context menu wrapper.
src/app/data/FinancialData.ts Adds demo data generator + embedded mock data.
src/app/app.routes.ts Registers new demo route.
src/app/app.component.ts Adds navigation entry for the new demo.
projects/igniteui-angular-extras/tsconfig.spec.json Test TS config for extras library.
projects/igniteui-angular-extras/tsconfig.lib.prod.json Production TS config for extras library build.
projects/igniteui-angular-extras/tsconfig.lib.json Library TS config and local path mapping for builds.
projects/igniteui-angular-extras/src/test.ts Sets up Angular testing environment for extras Karma tests.
projects/igniteui-angular-extras/src/public-api.ts Defines the extras public API surface.
projects/igniteui-angular-extras/src/lib/pipes/svg.pipe.ts Adds SVG pipe used by extras UI.
projects/igniteui-angular-extras/src/lib/pipes/svg.pipe.spec.ts Unit test for SVG pipe behavior.
projects/igniteui-angular-extras/src/lib/directives/conditional-formatting/conditional-formatting.directive.ts Adds conditional formatting directive implementation.
projects/igniteui-angular-extras/src/lib/directives/chart-integration/initializers.ts Adds chart initializer helpers for chart integration directive.
projects/igniteui-angular-extras/src/lib/directives/chart-integration/chart-types.ts Adds chart/options enums used by the extras API.
projects/igniteui-angular-extras/src/lib/directives/chart-integration/chart-integration.directive.ts Adds chart integration directive implementation.
projects/igniteui-angular-extras/src/lib/directives/chart-integration/chart-integration.directive.spec.ts Unit tests for chart-data-driven chart type determination.
projects/igniteui-angular-extras/src/lib/context-menu/igx-context-menu.directive.ts Adds grid context menu directive that drives the extras UI overlay.
projects/igniteui-angular-extras/src/lib/context-menu/context-menu.component.ts Adds overlay UI component for conditional formatting / chart creation.
projects/igniteui-angular-extras/src/lib/context-menu/context-menu.component.html Context menu template.
projects/igniteui-angular-extras/src/lib/context-menu/context-menu.component.scss Context menu styles/theme wiring.
projects/igniteui-angular-extras/src/lib/context-menu/chart-dialog/chart-dialog.component.ts Adds chart dialog component (overlay).
projects/igniteui-angular-extras/src/lib/context-menu/chart-dialog/chart-dialog.component.html Chart dialog template.
projects/igniteui-angular-extras/src/lib/context-menu/chart-dialog/chart-dialog.component.scss Chart dialog styles/theme wiring.
projects/igniteui-angular-extras/src/lib/context-menu/chart-dialog/chart-dialog.component.spec.ts Unit tests for chart dialog component logic.
projects/igniteui-angular-extras/src/images/conditions.ts Adds SVG markup assets for conditional formatting UI.
projects/igniteui-angular-extras/src/images/charts.ts Adds SVG markup assets for chart UI.
projects/igniteui-angular-extras/package.json Defines extras package metadata/peers/migrations entry points.
projects/igniteui-angular-extras/ng-package.json ng-packagr configuration for packaging extras.
projects/igniteui-angular-extras/migrations/update-1_0_0/index.ts Adds migration rule for enum/output renames.
projects/igniteui-angular-extras/migrations/tsconfig.json TS config for compiling extras migrations.
projects/igniteui-angular-extras/migrations/migration-collection.json Registers extras migration(s) for ng update.
projects/igniteui-angular-extras/karma.conf.js Karma configuration for extras tests.
projects/igniteui-angular-extras/README.md Adds package README/usage notes for extras.
projects/igniteui-angular-extras/LICENSE Adds license file for extras distribution.
package.json Adds build/test/lint scripts for extras and build pipeline integration.
package-lock.json Locks new dependencies (charts/core packages).
gulpfile.js Adds task to copy extras migrations into dist.
angular.json Registers new igniteui-angular-extras library project (build/test/lint).
.github/workflows/trigger-licensed-release.yml Adds repository dispatch trigger for extras release flow.
.github/workflows/npm-publish.yml Builds/copies/licenses/versions/publishes extras package.
.github/workflows/nodejs.yml Adds CI lint/build/test steps for extras.

You can also share your feedback on Copilot code review. Take the survey.

@turbobobbytraykov
Copy link
Contributor

@turbobobbytraykov , adding igniteui-angular-extras npm publish as part of the publish workflow for igniteui-angular will likely require your intervention to allow the workflow to auth for the extras npm package over OIDC. I am assuming this is best done before merging this.

@dobromirts , the licensed packages are now published with the new yml created by Alex - trigger-licensed-release.yml . Please integrate the licensed cd for extras with that workflow before merging this.

@ChronosSF , Trusted publishing is now set up in npmjs.org for igniteui-angular-extras.
I saw that Dobry has correctly changed the package.json's repository URL
As far as these factors go, we are ready to publish the package from the current repo

dobromirts and others added 2 commits March 20, 2026 11:38
…tion or class'

Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com>
@ChronosSF ChronosSF self-requested a review March 24, 2026 12:19
@ChronosSF ChronosSF merged commit 903eb5b into master Mar 24, 2026
6 checks passed
@ChronosSF ChronosSF deleted the dTsvetkov/add-igniteui-angular-extras branch March 24, 2026 13:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants