Skip to content

Convert browser support modules to strict TypeScript #28

Closed

Description

@lastobelus

Outcome

Renderer support modules are strictly typed while preserving the existing framework-free browser architecture.

Stack position

5 of 7 — stacked on the typed CLI and automation layer.

Acceptance criteria

  • Annotation, navigation, image preview, review-session, and related browser support modules are converted.
  • Browser globals and shared Node/browser exports have explicit checked contracts.
  • DOM nullability and event handling are modeled without unsafe blanket assertions.
  • Corresponding tests are converted in the same PR.
  • No UI framework or module-system redesign is introduced.
  • The temporary JavaScript boundary shrinks and all checks pass.

Evidence

  • PR Convert browser support modules to TypeScript #35 converts five browser support modules and their focused tests to strict TypeScript.
  • The release test asserts that the migrated .ts files exist and their former .js counterparts do not.
  • Node 22.13.0 and 24.13.1 both pass npm run check and all 171 tests.
  • The bundled CLI dry run and arm64 macOS application packaging both succeed.

Metadata

Metadata

Assignees

Labels

launchWork required for an announcement or release gatelaunch:blockerBlocks the next Markover announcement gatetypescriptTypeScript adoption and type-safety work

Projects

Relationships

None yet

Development

No branches or pull requests

Issue actions