Portage de la librairie rnb-js au format modules ES6

Quelques notes en vrac durant la migration de ma librairie javascript au format des modules ES6.

Information: Le portage de la librairie rnb.js au format des modules ES6 est en cours sur le site. Bugs et autres désagréments sont donc à prévoir dans les prochains jours.

L'unique "gros" problème concerne la concaténation des fichiers. Avec des modules de type AMD que j'utilise depuis des années, on peut tout fusionner dans un unique fichier sans avoir besoin de modifier en quoi que ce soit les appels aux modules. Mais ce n'est plus possible avec les modules ES6. Les librairies actuelles passent pas une phase de build de bundles qui consiste en fait à supprimer les imports et les exports pour pouvoir concaténer le code. Je n'ai pas envie de passer par là.

Je concatène donc les fichiers par dossier dans un fichier portant le nom du dit dossier. On peut assez facilement gérer les imports relatifs de modules dans d'autres dossiers et supprimer les imports du même dossier.

Ainsi des import comme celui-ci :

import {ModuleDirOne} from './../dir01/ModuleDirOne.js';
import {ModuleDirTwo} from './ModuleDirTwo.js';

devient :

import {ModuleDirOne} from './../dir01.js';

La portée de cette technique reste cependant limitée

Le prochain gros chantier sera maintenant sans doute une réécriture / simplification de la librairie CSS qui commence sérieusement à prendre la poussière et de l'embonpoint.