microsoft / microsoft/TypeScript

Add support for beforeDeclarations

Ouverte
#58,880 1 commentaire 1 réaction 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Awaiting More Feedback Suggestion
Langage dominant
Go
Étoiles
111k
Forks
14.4k
Merge moyen
1 j 19 h
PR mergées (30 j)
117

Description

🔍 Search Terms

beforeDeclarations declaration transform transformers afterDeclarations

✅ Viability Checklist
⭐ Suggestion

The TypeScript compiler API already supports custom transformers in 3 ways:

  1. Before built-in .js transformations
  2. After built-in .js transformations
  3. After built-in .d.ts transformations

But the API is missing a "Before built-in .d.ts transformations" variant.

📃 Motivating Example

To generate type declarations more dynamically, you often need to access AST nodes of your codebase as it is written. The built-in transformers erase already a lot of the AST making this information unavailable. With the help of this new beforeDeclarations you are able to access your full AST and use it to auto-generate your typescript declaration files.

💻 Use Cases
  1. Use information from property initializers to include "default values" your JSDoc comments. (see #41486).
  2. Remove declarations using information like visibility modifiers or used functions in your code to not expose implementation details.

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par examiner les variantes existantes de transformateurs personnalisés de la TypeScript compiler API, en particulier les étapes before et after de transformation des déclarations décrites dans l’issue. Comparez les formes de leurs API publiques et déterminez comment une étape beforeDeclarations pourrait s’y intégrer. La tâche est terminée lorsque les transformateurs personnalisés peuvent accéder à l’AST avant transformation pour la génération des déclarations et que les cas d’utilisation à l’origine de la demande sont pris en charge.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
typescript
Domaine
compilers
Type d'issue
Fonctionnalité
Difficulté
5/5
Temps estimé
Plus d'une semaine
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
25/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.