Commit Graph

39 Commits (6424f2e197db0f64a65e381c4b9f40daaae7c645)

Author SHA1 Message Date
Maxime Quandalle e5b42e2321
🔥 Supprime le HOC withColours
Renomme colour en color, pour-être cohérent avec le CSS
2019-12-18 23:06:46 +01:00
Maxime Quandalle ca5b7cc2df
Ajout des types null et undefined
Ajout des paramètres strictNullChecks et strictPropertyInitialization
dans la configuration TypeScript et correction des environ 70 erreurs
de typage résultantes.
2019-12-18 18:52:32 +01:00
Maxime Quandalle 7e2a4085a7 Poursuite de la migration TypeScript
* Utilisation de la version stable de TypeScript 3.7

* Début de migration du State Redux. Plutôt que de redéfinir les types
  en doublon par rapport aux actions et reducers, on utilise les valeurs
  retournées par ces fonctions comme source pour les types globaux.

* Modification de tsconfig pour meilleur typage dans VS Code

* Meilleur typage de l'environnement : suppression de @types/node qui
  était trop large (contient tout l'environnement serveur), et
  remplacement par @types/webpack-env. Par ailleurs typage des variables
  d'environnement utilisées.

* Début de migration de l'économie collaborative

* Migration de nombreux composants UI

* Mise à jour de dépendances pour récupérer un meilleur typage

* Ajout d'un hook pour configurer les simulateurs

* Suppression du higher-order component "withSitePaths", on utilise
  systématiquement le hook useContext.

L'essentiel de l'application est maintenant migré, reste le moteur !
2019-11-11 11:33:38 +01:00
Maxime Quandalle 6de970f0e3 🔥 Migration vers TypeScript
Outils
======

Ce commit retire le tooling de Flow, et ajoute le support de TypeScript
pour les fichiers .ts et .tsx. Il n'est pas nécessaire de tout migrer
d'un coup ce qui facilite la transition. On garde en effet le
compilateur Babel avec un preset TypeScript (ce qui permet donc de
retirer à la fois les types Flow et TypeScript) plutôt que d'utiliser le
compilateur standard pour la conversion du code. Cela permet aussi de
mieux s'intégrer avec d'autres outils, notamment les test-runners.

Ajout d'une nouvelle commande `yarn run type-check`, intégrée dans
CircleCI.

Par ailleurs ajout du support de l'opérateur ?? pour donner des valeurs
par défaut (nullish-coalescing-operator).

Typage des libraires tierces
============================

Les principales libraires que nous utilisons ont un typage TypeScript de
bon niveau, ce qui facilite l'intégration. J'ai mis à jour react-i18next
et i18next afin de corriger un problème de typage.

Typage du code
==============

Le typage est loin d'être complet dans ce commit, en particulier il
manque les types relatifs au state Redux, ainsi qu'au moteur (règle,
explication). Néanmoins le typage des contextes fonctionne, en
particulier sitePaths (avec un type récursif non trivial !) qui a déjà
permis de détecter un lien mort.

Le typage des "paths" (Components/, Règles/, etc.) fonctionne bien, y
compris avec l'auto-complétion automatique des import par Typescript.

TypeScript se révèle déjà bien agréable dans VSCode (auto-complétion,
refacto, etc.) ! Reste à migrer progressivement le reste du code !
2019-10-30 10:20:48 +01:00
Maxime Quandalle 0663c97204 Utilisation du hook useTranslation de react-i18next
Suppression de notre composant withLanguage qui rajoutait une abstraction
inutile.

Note: de nombreux appels à withTranslation et withLanguage était inutile
car le composant augmenté n'utilisait pas les paramètres fournis (language, t, i18n).
L'utilisation des hooks nous permet de mieux gérer le code mort, car il s'agit
de simples variables dont le non-usage est détecté par l'analyse statique.
2019-09-11 11:17:23 +02:00
Maxime Quandalle 6ea5dd0870 Migration de React "class" à "function"
Le but de la refacto est de généraliser l'utilisation des hook

Nombre de composants convertis: 52
Nombre de composants restants: 12

Il est possible de compter les composants class restants en utilisant
grep "render()"

L'occasion aussi de remplacer la dernière occurence de UNSAFE_componentWillMount
2019-09-11 11:17:23 +02:00
Johan Girod 8e3fe03b66
Rétablit le feedback sur les simulations 2019-06-06 18:38:48 +02:00
Johan Girod 76e06e4a79
🎨 nouveau footer 2019-06-03 14:27:18 +02:00
Johan Girod ed8d9f1a28
Amélioration du Feedback et changement du mail de contact 2019-04-30 14:56:54 +02:00
Johan Girod dfc67407dd
🎨 🐛 corrige le scroll sur mobile et ajoute du padding sur le feedback 2019-04-30 13:16:07 +02:00
Mael 14f4a45f27 🎨 Rétablissement de l'agencement de la zone de retour sur ptit mobile 2019-04-29 17:44:17 +02:00
Johan Girod 27a03048d7
Améliore l'affichage des résultats & du feedback sur les différents simulateur (et refactor) 2019-04-24 12:38:43 +02:00
Johan Girod fac63bf5d1
💚 remet l'enregistrement des tests E2E maintenant que nous sommes labelisés OSS par Cypress 2019-04-24 10:52:27 +02:00
Johan Girod b69fb92944
Suppression du site embauche.beta.gouv.fr 2019-04-24 10:49:11 +02:00
Johan Girod c086fb96cf
Uniformisation des styles et ajout de la précédente sauvegarde sur mon-entreprise 2019-04-24 10:47:49 +02:00
Mael 7b87b8009b 🎨 design final des retours utilsiateur 2019-04-19 19:16:05 +02:00
Mael 837d595458 🐛 Annulation de la tentative de suggestion 2019-04-19 19:00:40 +02:00
Mael 9dc7593fd2 🎨 Redesign de la zone de retours utilisateur 2019-04-19 15:18:09 +02:00
Johan Girod 5d7c502f3c 🐛 corrige quelques bugs 2019-04-09 11:01:07 +02:00
Johan Girod 5c3f4bfa64 🖋️ ajustements retours open-lab 2019-04-09 11:01:07 +02:00
Johan Girod 4923da742c 🖋️ ajustements contenus 2019-04-09 11:01:07 +02:00
Johan Girod 107eca7b88 Ajoute des avertissements légaux et enlève le montant des revenu micro si CA dépassé
Suite aux retours de l'ACOSS
2019-02-18 15:36:09 +01:00
Johan Girod c6290e6275 🖋️ meilleure descriptions pour le SEO, avertissement beta plus gros 2019-02-15 17:18:21 +01:00
Johan Girod e5a7770881 Rétabli les retours utilisateurs pour les simulateurs 2019-02-15 16:05:59 +01:00
Johan Girod 2a44e71437 🐛 répare la page blanche sur mycompanyinfrance.fr 2019-02-08 13:46:37 +01:00
Johan Girod d7d5833a54 💚 Fix les derniers warnings de flow 2019-02-03 18:05:55 +01:00
Johan Girod de2f41ecd4 💚 Répare les tests unitaire, les erreurs flow et les erreurs eslint 2019-02-01 17:21:41 +01:00
Mael f229bcb6ca 🎨 Affichage du 'page utile ?' sur mobile 2019-01-15 19:50:57 +01:00
Mael a949860226 🐛 withNamespaces, pas withI18n 2018-11-23 16:16:19 +00:00
Johan Girod 1d69feafd6 💚 fix flow
Suppression des décorateurs.

Problème :
Les décorateurs que l'on utilisait correspondait à une ancienne
version de la proposal tc39, encore en stage 1 (voir 0). La
proposition a complètement évolué, pour ne plus du tout avoir
la même forme que précédement.

Au lieu de garder la version 'legacy', on choisit de se séparer
des décorateur, étant donné que le nouveau use case n'a plus rien
à voir, et que l'ancienne version peut être gérée de manière
quasi équivalente avec des fonctions et des compose
2018-11-15 11:06:35 +01:00
Johan Girod 1ae8196c5e Répare le bug firefox du localstorage 2018-10-11 17:23:28 +02:00
Johan Girod bf74d1f313 📈 change la valeur minimum d'une mauvaise note de 0 à 0.1
Pour éviter que le zéro soit considéré comme pas de valeur
2018-10-09 11:10:59 +02:00
Johan Girod 9a2b634ab5 📈 ajoute un tracking pour le feedback positif et negatif 2018-10-05 15:28:57 +02:00
Johan Girod 776cbaf7d5 Ajoute le module de retour au simulateur et garde en memoire les
retours déjà effectués

starting
2018-10-05 10:50:56 +02:00
Johan Girod c6277328ba Remet le module de retour sur le simulateur d'embauche 2018-10-04 17:16:26 +02:00
Johan Girod 8d58090d5f Ajoutes des informations contextuelles au feedback utilisateur 2018-10-04 17:16:26 +02:00
Johan Girod 7a1a741672 Ajoute une partie reporting d'erreur 2018-10-04 17:16:26 +02:00
Johan Girod f08ec87095 🆎 Enlève la partie radio button du formulaire de retour 2018-10-04 17:16:26 +02:00
Johan Girod 0606759e74 Ajoute un module de retour sur infrance 2018-10-04 17:16:26 +02:00