feat(lint): making unused vars an error and fixing lint#17316
Open
kdinev wants to merge 6 commits into
Open
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR tightens TypeScript linting by promoting @typescript-eslint/no-unused-vars to an error and updates the codebase to comply (removing unused imports/locals and prefixing intentionally-unused parameters with _). It also includes a small refactor replacing direct lodash-es/mergeWith usage in grid row data getters with the existing mergeObjects helper, and adds an MCP server configuration file.
Changes:
- Promote
@typescript-eslint/no-unused-varsfrom warning to error ineslint.config.mjs. - Fix lint violations across samples, library sources, and specs by removing unused imports/vars and renaming unused parameters (e.g.
_event,_index). - Refactor grid row
datagetters to usemergeObjectsinstead of inlinemergeWithcustomization; add.mcp.json.
Reviewed changes
Copilot reviewed 66 out of 66 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| src/app/virtual-for-directive/virtual-for.sample.ts | Prefix unused trackBy index argument with _. |
| src/app/tree-grid-groupby/tree-grid-groupby.sample.ts | Prefix unused aggregation parent argument with _. |
| src/app/styleguide/animations/animations.sample.ts | Remove unused import. |
| src/app/shared/remote.service.ts | Prefix unused data argument with _. |
| src/app/shared/financialData2.ts | Prefix unused method argument with _. |
| src/app/pivot-grid/pivot-grid.sample.ts | Prefix unused aggregation members argument with _. |
| src/app/pivot-grid-state/pivot-grid-state.sample.ts | Prefix unused aggregation members argument with _. |
| src/app/grid-percentage-columns/grid-percantge-widths.sample.ts | Remove unused IgxPaginatorComponent import. |
| src/app/grid-multi-row-layout-config/grid-mrl-config.sample.ts | Prefix unused event/cell arguments with _. |
| src/app/grid-localization/grid-localization.sample.ts | Remove unused locale imports/legacy API usage and simplify locale switching. |
| src/app/drop-down/drop-down-virtual/drop-down-virtual.component.ts | Prefix unused Array.map element argument with _. |
| projects/igniteui-angular/time-picker/src/time-picker/time-picker.component.spec.ts | Remove unused core imports. |
| projects/igniteui-angular/test-utils/routing-test-guard.spec.ts | Prefix unused route argument with _. |
| projects/igniteui-angular/test-utils/pivot-grid-samples.spec.ts | Prefix unused aggregation members argument with _. |
| projects/igniteui-angular/test-utils/pivot-grid-functions.spec.ts | Prefix unused parameter with _ (but see review comment about broken assertion). |
| projects/igniteui-angular/test-utils/grid-functions.spec.ts | Prefix unused parameters with _. |
| projects/igniteui-angular/stepper/src/stepper/stepper.component.spec.ts | Remove unused mockDocument setup. |
| projects/igniteui-angular/slider/src/slider/slider.component.spec.ts | Remove unused imports/locals. |
| projects/igniteui-angular/select/src/select/select-positioning-strategy.ts | Prefix unused parameters with _. |
| projects/igniteui-angular/query-builder/src/query-builder/query-builder-tree.component.ts | Remove unused directive import. |
| projects/igniteui-angular/grids/tree-grid/src/tree-grid.component.ts | Prefix unused map record argument with _. |
| projects/igniteui-angular/grids/tree-grid/src/tree-grid-integration.spec.ts | Remove unused DebugElement import. |
| projects/igniteui-angular/grids/tree-grid/src/tree-grid-grouping.spec.ts | Prefix unused aggregation parent argument with _. |
| projects/igniteui-angular/grids/tree-grid/src/tree-grid-grouping.pipe.spec.ts | Prefix unused aggregation parent argument with _. |
| projects/igniteui-angular/grids/pivot-grid/src/pivot-sort-strategy.ts | Prefix unused resolver/key args with _. |
| projects/igniteui-angular/grids/pivot-grid/src/pivot-header-row.component.ts | Prefix unused event args with _. |
| projects/igniteui-angular/grids/pivot-grid/src/pivot-grid.spec.ts | Prefix unused formatter row arg with _. |
| projects/igniteui-angular/grids/hierarchical-grid/src/hierarchical-grid.pipes.ts | Prefix unused args with _. |
| projects/igniteui-angular/grids/hierarchical-grid/src/hierarchical-grid.component.ts | Prefix unused args with _. |
| projects/igniteui-angular/grids/grid/src/grid.summary.pipe.ts | Prefix unused gridId arg with _. |
| projects/igniteui-angular/grids/grid/src/grid.sorting.spec.ts | Prefix unused comparer args with _. |
| projects/igniteui-angular/grids/grid/src/grid.pipes.ts | Prefix unused pipe args with _. |
| projects/igniteui-angular/grids/grid/src/grid.groupby.spec.ts | Prefix unused args with _. |
| projects/igniteui-angular/grids/grid/src/grid.component.ts | Prefix unused args and map record arg with _. |
| projects/igniteui-angular/grids/grid/src/grid-row-pinning.spec.ts | Remove unused map element arg and simplify mapping. |
| projects/igniteui-angular/grids/grid/src/grid-filtering-ui.spec.ts | Prefix unused args with _. |
| projects/igniteui-angular/grids/grid/src/cell.spec.ts | Remove unused imports. |
| projects/igniteui-angular/grids/grid/src/cell-merge.spec.ts | Prefix unused args with _ in specs/strategy overrides. |
| projects/igniteui-angular/grids/core/src/watch-changes.ts | Prefix unused decorator target with _. |
| projects/igniteui-angular/grids/core/src/summaries/grid-summary.service.ts | Prefix unused map callback arg with _. |
| projects/igniteui-angular/grids/core/src/services/pdf/pdf-exporter.ts | Prefix unused args with _. |
| projects/igniteui-angular/grids/core/src/row.directive.ts | Replace mergeWith usage with mergeObjects and remove lodash import. |
| projects/igniteui-angular/grids/core/src/grid-public-row.ts | Replace mergeWith usage with mergeObjects and remove lodash import. |
| projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-sorting.component.ts | Prefix unused callback arg with _. |
| projects/igniteui-angular/grids/core/src/filtering/base/grid-filtering-row.component.ts | Prefix unused event args with _. |
| projects/igniteui-angular/grids/core/src/filtering/base/grid-filtering-cell.component.ts | Prefix unused event args with _. |
| projects/igniteui-angular/grids/core/src/common/pivot-strategy.ts | Prefix unused args with _. |
| projects/igniteui-angular/grids/core/src/common/pipes.ts | Prefix unused pipe arg with _. |
| projects/igniteui-angular/grids/core/src/common/crud.service.ts | Prefix unused arg with _. |
| projects/igniteui-angular/grids/core/src/api.service.ts | Prefix unused arg with _. |
| projects/igniteui-angular/drop-down/src/drop-down/drop-down.component.spec.ts | Prefix unused Array.map element arg with _. |
| projects/igniteui-angular/directives/src/directives/for-of/for_of.directive.ts | Prefix unused args with _; adjust caught error variable and const usage (but see review comment about extra semicolon). |
| projects/igniteui-angular/directives/src/directives/for-of/base.helper.component.ts | Remove unused HostListener import. |
| projects/igniteui-angular/date-picker/src/date-range-picker/predefined-ranges/predefined-ranges-area.component.ts | Prefix unused trackBy index arg with _. |
| projects/igniteui-angular/date-picker/src/date-range-picker/date-range-picker.component.ts | Remove unused ElementRef import. |
| projects/igniteui-angular/date-picker/src/date-picker/date-picker.component.ts | Remove unused import. |
| projects/igniteui-angular/core/src/services/theme/theme.token.ts | Add suppression for unused Theme const (but see review comment suggesting a cleaner fix). |
| projects/igniteui-angular/core/src/services/overlay/position/connected-positioning-strategy.ts | Prefix unused args with _. |
| projects/igniteui-angular/core/src/services/overlay/position/base-fit-position-strategy.ts | Prefix unused args with _. |
| projects/igniteui-angular/core/src/data-operations/test-util/data-generator.ts | Prefix unused Array.from element arg with _. |
| projects/igniteui-angular/core/src/data-operations/expressions-tree-util.spec.ts | Remove unused imports. |
| projects/igniteui-angular/core/src/core/utils.ts | Minor refactor inside mergeObjects callback to avoid returning an assignment expression. |
| projects/igniteui-angular/carousel/src/carousel/carousel.component.ts | Prefix unused reducer accumulator arg with _. |
| projects/igniteui-angular/button-group/src/button-group/button-group.component.ts | Prefix unused callback arg with _. |
| eslint.config.mjs | Promote @typescript-eslint/no-unused-vars to an error. |
| .mcp.json | Add MCP server config for Angular CLI. |
Comments suppressed due to low confidence (2)
src/app/grid-localization/grid-localization.sample.ts:122
updateLocale()passes values likeEN,BG, etc. tosetCurrentI18n, but the registered locales are lowercase BCP-47 tags (e.g.bg,de, ...) anden-USis the default. This mismatch means changing the selection won't actually switch the Ignite UI locale resources.
projects/igniteui-angular/core/src/services/theme/theme.token.ts:52- Avoid disabling
@typescript-eslint/no-unused-varshere.Themeexists only to manufacture theIgxThemeunion and otherwise adds runtime code that is flagged as unused; instead, defineIgxThemedirectly as a string-literal union and remove the unused constant + suppression.
// eslint-disable-next-line @typescript-eslint/no-unused-vars
const Theme = {
Material: "material",
Fluent: "fluent",
Bootstrap: "bootstrap",
IndigoDesign: "indigo",
} as const;
/**
* Determines the component theme.
*/
export type IgxTheme = (typeof Theme)[keyof typeof Theme];
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #
Description
Motivation / Context
Type of Change (check all that apply):
Component(s) / Area(s) Affected:
How Has This Been Tested?
Test Configuration:
Screenshots / Recordings
Checklist:
feature/README.MDupdates for the feature docsREADME.MDCHANGELOG.MDupdates for newly added functionalityng updatemigrations for the breaking changes (migrations guidelines)