refactor(igniteui-angular): enabling strict true for the library - #17483
refactor(igniteui-angular): enabling strict true for the library#17483kdinev wants to merge 27 commits into
Conversation
| if (queue.hasOwnProperty(id)) { | ||
| const fn = queue[id]; | ||
| delete queue[id]; | ||
| fn(); | ||
| } | ||
| }; | ||
|
|
||
| const listener = (event) => run(event.data); | ||
| const listener = (event: MessageEvent) => run(event.data); |
…ariable' Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com>
| // export { IgxRadioGroupDirective } from 'igniteui-angular/radio'; | ||
| export * from './directives/ripple/ripple.directive'; | ||
| export * from './directives/scroll-inertia/scroll_inertia.directive'; | ||
| export * from './directives/size/ig-size.directive'; |
There was a problem hiding this comment.
It looks like IgSizeDirective was intentionally moved from the library into the demo application, but AppComponent still imports it from igniteui-angular/directives. This causes npm start to fail because the corresponding public export was removed. Could we update the demo to import the new local directive instead?
Since this also removes an existing public export, could we confirm whether any changelog or migration follow-up is needed?
There was a problem hiding this comment.
I think that this was never meant to be public and I dont think anyone has ever used it. So we should be safe without changelog entry and migrations
| @@ -3074,7 +3075,7 @@ export abstract class IgxGridBaseDirective implements GridType, | |||
| /** | |||
| * @hidden | |||
| */ | |||
| protected _pagingState; | |||
| protected _pagingState!: IPagingState; | |||
There was a problem hiding this comment.
| appTree = setupTestTree(); | ||
| }); | ||
|
|
||
| const migrationName = 'migration-58'; |
There was a problem hiding this comment.
It looks like this spec runs migration-58, while the new import migration is registered as migration-59. Could we update migrationName accordingly? The current value runs the existing update-22_1_0 migration instead and causes these tests to fail.
| const migrationName = 'migration-58'; | |
| const migrationName = 'migration-59'; |
| // Add remaining imports for the original entry point first | ||
| if (remaining.length > 0) { | ||
| const sortedImports = remaining.sort(); | ||
| newImports.push(`import { ${sortedImports.join(', ')} } from '${importPath}';`); |
There was a problem hiding this comment.
Could we also preserve type-only imports during the rewrite? For example, import type { IGroupingDoneEventArgs } ... is currently regenerated as a regular import { IGroupingDoneEventArgs } ..., which may affect projects using verbatimModuleSyntax.
| // Add moved imports | ||
| for (const [entryPoint, imports] of entryPointGroups) { | ||
| const sortedImports = imports.sort(); | ||
| newImports.push(`import { ${sortedImports.join(', ')} } from '${source.basePackage}/${entryPoint}';`); |


Closes #17403
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)