router icon indicating copy to clipboard operation
router copied to clipboard

Convert project to TypeScript

Open abdonrd opened this issue 4 years ago • 1 comments

With this conversion, we can also drop the @polymer/gen-typescript-declarations dependency.

Migration

  • [ ] Convert tests - #362
  • [ ] Convert API docs and demos #363
  • [ ] Convert source code

Related issues

  • https://github.com/vaadin/vaadin-router/issues/404
  • https://github.com/vaadin/vaadin-router/issues/441

Also related

  • https://github.com/vaadin/vaadin-router/issues/453 - Migrate from polyserve to @web/dev-server
  • https://github.com/vaadin/vaadin-router/issues/454 - Drop polymer-cli dependency
  • https://github.com/vaadin/vaadin-router/issues/466 - Remove the bower stuff
  • https://github.com/vaadin/vaadin-router/issues/485 - Remove the HTML Imports stuff

abdonrd avatar Apr 24 '20 08:04 abdonrd

Related from https://github.com/vaadin/vaadin-router/issues/362#issuecomment-523023663:

Converting the router code itself to TS is on the roadmap, but is not a priority at the moment. It's going to be a considerable effort to rewrite the full code base.

The good thing is that the TypeScript compiler does accept untyped JS code so the change can be gradual.

The bad thing is that the API docs and demos on GitHub pages currently rely on polymer analyzer. And that would likely break when switching to TypeScript because it JSDoc-annotated JS code as input.

Generating the API docs and demos site from TypeScript is a separate task: #363. Once there is a working solution to it then conversion to TypeScript can proceed.

abdonrd avatar Apr 24 '20 08:04 abdonrd