Feature request: split whatwg definitions in separate files

Offen
#1,685 0 Kommentare 9 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Anfängerfreundlichkeit
25/100
Issue-Typ
Feature
Klarheit
Größtenteils klar
Aktivitätsstatus
Veraltet
Tech-Stack
typescript
Bereich
tooling

Rechercherichtung

Im Issue werden keine Dateien, Tests oder Einstiegspunkte identifiziert. Lies zunächst die verwandten Issues 41727 und 31535 und untersuche dann, wie dieser Generator die Definitionen der DOM-Bibliothek organisiert. Erledigt ist die Aufgabe, wenn Benutzer eine separate whatwg URL auswählen und Definitionen neben einer ECMAScript lib abrufen können, ohne auf die umfassendere DOM lib angewiesen zu sein.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

Use case

I want to write an isomorphic library that runs in the browser and nodejs. I want to make sure that I only rely on globals that are available in both environments. Currently, to do this, I must use lib: ["dom"] and types: ["node"], which results in defined globals that are not actually available in both runtime envs, leading to a fake sense of type safety when writing code.

Suggested solution

As a user of typescript, I would like to be able to pick more precisely the libs I depend on. For example: lib: ["es2022", "whatwg.url", "whatwg.fetch"]

There would be a lot of benefit to doing this:

  • @types/node would not have to re-define definitions already provided by typescript (new URL(u as URL) incorrectly yields an error when using types: ["node"])
  • All libraries targeting both dom & scripthost envs would benefit from improved type safety
Related issues
Vorherrschende Sprache
TypeScript
Sterne
740
Forks
474
Ø Merge
2 T. 8 Std.
Gemergte PRs (30 T.)
15

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus microsoft/TypeScript-DOM-lib-generator

Alle Issues in microsoft/TypeScript-DOM-lib-generator

Ähnliche Issues

Weitere Issues zu TypeScript

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.