dotCMS / dotCMS/core

[31/44] Enable TS strict mode in portlets-dot-experiments-portlet

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

Nobody has claimed this yet.

stale 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 portlets-dot-experiments-portlet project using typescript-strict-plugin.

  • Dependency layer: 6 (0 = leaf library, 10 = top-level app)
  • Internal dependents: 1 project(s)
  • Rollout order: 31 / 44

All internal dependencies of portlets-dot-experiments-portlet should already be in strict mode before starting (they appear earlier in the rollout order).

Acceptance Criteria

  • portlets-dot-experiments-portlet'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 portlets-dot-experiments-portlet:lint passes (and :build / :test where applicable).
  • npx tsc-strict passes for portlets-dot-experiments-portlet.
  • 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 portlets-dot-experiments-portlet project configuration and the typescript-strict-plugin strict paths configuration, then run npx tsc-strict for the project to enumerate errors. Resolve the reported errors without new any types, using ts-strict-ignore only with follow-up TODOs. Verify with the listed lint, build, test, strict-check, and affected-build commands, after confirming the bootstrap and lower-layer prerequisites are merged.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
build-system, frontend, tooling
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.