human
J'utilise Visual Studio Code et j'ai une structure de projet assez courante :
```├── client/
│   ├── tsconfig.json
├── shared/
├── server/
│   ├── tsconfig.json
├── project.json
```
Les deux fichiers tsconfig ont des paramètres différents (par exemple, celui sous ```client/``` cible ES5, celui sous ```server/``` cible ES6). Notez qu'il n'y a pas de tsconfig dans le répertoire racine.
Le problème est que je veux que le répertoire partagé soit inclus dans les deux projets. Je ne peux pas le faire en utilisant tsconfig car l'option ```exclude``` ne me permet pas d'inclure un dossier qui se trouve dans un répertoire supérieur à celui du tsconfig.json, et en utilisant ```files```, je dois constamment mettre à jour la liste des fichiers car il ne prend pas en charge les glob.
Notez que je peux compiler correctement en ajoutant le dossier partagé à tsc, ce que je veux, c'est que l'IDE Visual Studio Code reconnaisse le code partagé pour l'intellisense, etc.
Est-ce que la seule option est d'attendre filesGlob
gpt
De nos jours, c'est beaucoup plus facile car vscode offre un meilleur support pour cela.
Vous pouvez utiliser cette structure de répertoire pour que tout le code soit indépendant :
```├── frontend/
│   ├── src/
│   │   ├── 
│   ├── package.json
│   ├── tsconfig.json
├── shared/
│   ├── package.json
├── backend/
│   ├── src/
│   │   ├── 
│   ├── package.json
│   ├── tsconfig.json
```
Ensuite, dans les fichiers ```tsconfig.json``` du backend et du frontend :
```{
  &quot;compilerOptions&quot;: {
    &quot;paths&quot;: {
      &quot;~shared/*&quot;: [&quot;../shared/*&quot;]
    },
    &quot;rootDirs&quot;: [
      &quot;./src&quot;,
      &quot;../shared&quot;
    ]
  }
}
```
Pour permettre l'accès au code partagé, par exemple :
```import { Foo } from '~shared/foo';
```