docs(tsup): update build config comments and fix jsx import extensions

This commit is contained in:
2026-04-22 14:40:09 -04:00
parent 0106bc4ea0
commit d64423c1ad
8 changed files with 42 additions and 66 deletions
+4 -7
View File
@@ -60,14 +60,11 @@ Ces suffixes ne sont pas cosmétiques : **le build les utilise comme source de v
### Source de vérité
`tsup.config.js` dérive ses entrées de deux sources :
`tsup.config.js` compile **tous les fichiers `.js` et `.jsx` de `src/`** avec `bundle: false`. Chaque fichier devient un module standalone dans `dist/` ; les imports relatifs sont préservés tels quels.
1. `package.json#exports` — pour tous les points d'entrée publics.
2. Un glob récursif `src/**/*.{server,client}.js` — pour le wiring interne (pages, widgets) qui doit rester en module paré sans être public.
**Ajouter un module public = éditer seulement `package.json#exports`.** La liste `external` et la liste `entry` sont régénérées au prochain build. Il n'y a plus trois listes à synchroniser.
Les self-imports `@zen/core/*` sont générés automatiquement à partir des clés de `exports`.
- **Ajouter un module public = éditer seulement `package.json#exports`.** L'entry list se régénère au prochain build via un walk de `src/`.
- **Pas de bundling des fichiers internes** : les modules de registre (`registry.js`, etc.) sont des singletons — les bundler avec `bundle: true` dans un barrel créerait une copie inline distincte et casserait le partage d'état entre les pages et les widgets.
- Les self-imports `@zen/core/*` sont générés automatiquement à partir des clés de `exports` et restent toujours dans la liste `external`.
---