dotCMS / dotCMS/core

[44/44] Enable TS strict mode in dotcms-ui

Open
#35,977 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Team : Maintenance Type : Refactoring
Dominant language
Java
Stars
970
Forks
486
Avg merge
3d 33m
Merged PRs (30d)
170

Description

Description

Part of the strict-mode rollout epic #35932. Enable TypeScript strict mode for the dotcms-ui project using typescript-strict-plugin.

  • Dependency layer: 10 (0 = leaf library, 10 = top-level app)
  • Internal dependents: 1 project(s)
  • Rollout order: 44 / 44
  • Note: Main admin app - consumes 25 projects; do this last.

All internal dependencies of dotcms-ui should already be in strict mode before starting (they appear earlier in the rollout order).

Acceptance Criteria

  • dotcms-ui's src is added to the typescript-strict-plugin strict paths config.
  • All resulting type errors are resolved (no new any; use explicit types).
  • // @ts-strict-ignore is used only where unavoidable, each with a follow-up TODO.
  • yarn nx run dotcms-ui:lint passes (and :build / :test where applicable).
  • npx tsc-strict passes for dotcms-ui.
  • yarn nx affected -t build does not break dependents.

Priority

Medium

Additional Context

One project in the bottom-up rollout tracked by epic #35932. Depends on the bootstrap task being merged and on lower-layer projects already being strict.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the dotcms-ui project configuration and the typescript-strict-plugin strict paths setup, then inspect its src for errors after enabling the project. Run npx tsc-strict and yarn nx run dotcms-ui:lint, followed by the applicable build and test targets. Done means the listed checks pass, unavoidable ignores have follow-up TODOs, and affected dependents still build.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
frontend
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.