Parent
#586
What to build
Replace unsafe and legacy TypeScript types (any, unsafe function types, wrapper-object types) across src/ui-kit/components (~112 ESLint findings).
Inventory the current findings first (npx eslint src/ui-kit/components), then replace each any/unsafe-function-type usage with a precise type or a justified, narrowly-scoped alternative, following the same approach used in #702 (utilities/directives/layout/misc slice of the same parent issue).
Largest concentrations of findings as of this writing:
modal/modal.component.ts (15)
comments/comments.component.ts (9)
sidenav/services/sidenav.service.ts (8)
image/image.component.ts (7)
actions/action-button/, actions/actions-dropdown/, alert/alert.component.ts, sidenav/menu-item/menu-item.component.ts (4-5 each)
- Remaining findings scattered across
accordion, data-table, header, multiselect-dropdown, pagination, breadcrumbs, history, point-of-contact, spinner, tabs, and their spec files
Acceptance criteria
Blocked by
None - can start immediately
Parent
#586
What to build
Replace unsafe and legacy TypeScript types (
any, unsafe function types, wrapper-object types) acrosssrc/ui-kit/components(~112 ESLint findings).Inventory the current findings first (
npx eslint src/ui-kit/components), then replace eachany/unsafe-function-type usage with a precise type or a justified, narrowly-scoped alternative, following the same approach used in #702 (utilities/directives/layout/misc slice of the same parent issue).Largest concentrations of findings as of this writing:
modal/modal.component.ts(15)comments/comments.component.ts(9)sidenav/services/sidenav.service.ts(8)image/image.component.ts(7)actions/action-button/,actions/actions-dropdown/,alert/alert.component.ts,sidenav/menu-item/menu-item.component.ts(4-5 each)accordion,data-table,header,multiselect-dropdown,pagination,breadcrumbs,history,point-of-contact,spinner,tabs, and their spec filesAcceptance criteria
src/ui-kit/componentsare inventoried before implementationanyusages in this directory are replaced with precise types or justified, narrowly scoped alternativeseslint-baseline.json) is lowered to reflect the resolved findingsBlocked by
None - can start immediately