mobireport-libs
v1.0.0
Published
Ce projet contient une librairie Angular appelée mobireport-core qui rassemble tous les composants utilisés dans les différentes applications front pour Mobireport ([le back office](https://gitlab.com/sprint-technology/mobireport/front), [le module hub ho
Downloads
4
Readme
Mobireport-libs
Ce projet contient une librairie Angular appelée mobireport-core qui rassemble tous les composants utilisés dans les différentes applications front pour Mobireport (le back office, le module hub horaires, le module de communication, le module admin et le module my account). Elle est publiée sur npm dans un repository privé.
Modifier la librairie
Si une modification de la librairie est nécessaire (par exemple pour fixer un bug ou pour ajouter une nouvelle feature partagée entre toutes les applications, il suffit simplement d'ajouter/modifier les fichiers présents dans le dossier projects/mobireport-core/src/lib).
Pour tester (fonctionnellement et unitairement) "facilement" la modification, on peut créer un nouveau composant ou ré utiliser l'existant dans le dossier projects/mobireport-core/src/lib/testing/component.
Publier un nouveau changement
Pour publier un nouveau changement sur npm, voici la procédure :
- Une fois les changements effectués, mettre à jour la version de la lib dans le fichier projects/mobireport-core/package.json.
- Se rendre dans le dossier projects/mobireport-core et éxecuter la commande
ng build mobireport-core --configuration=production
. Corriger les problèmes en cas d'erreur de compilation. - Une fois le build effectué, se rendre dans le dossier dist/mobireport-core.
- Exécuter la commande
npm publish
.
=> Tout faire en une commande après avoir update la version dans le package.json:
cd ./projects/mobireport-core && ng build mobireport-core --configuration=production && cd ../../dist/mobireport-core && npm publish
Toutes les informations concernant le développement d'une librairie sont documentées directement sur le site d'angular : https://angular.io/guide/creating-libraries
Choses à améliorer
- Améliorer le code coverage au niveau unitaire mais aussi fonctionnelle
- Mettre à jour le ci pour créer des tags lors d'une merge request vers develop et laisser le ci déployer lui même la lib (pour éviter des conflits de version).
- Séparer les composants de la lib en plusieurs module (au lieu d'un seul aujourd'hui) pour ne pas à avoir à importer toute la lib si l'on veut utiliser qu'un seul composant par exemple.
- Mieux documenter les fonctions/composants/directives à l'aide de js doc pour compodoc (l'outil de doc utilisé)