Commit Graph

210 Commits (4f5a561ce0e41ccb661012485945abcf6cc82a4f)

Author SHA1 Message Date
Maxime Quandalle 54d45dbdb6
Création d'une section /nouveautés
Cette nouvelle section s'accompagne d'un bandeau qui s'affiche quand une
nouvelle version est publiée sur GitHub.

Les données sont téléchargées depuis l'API GitHub en GraphQL au moment
du build du site puis persistées dans un fichier Json statique.
2020-01-15 15:24:10 +01:00
Johan Girod e5d84c4abf 🐛 corrige page blanche navigation vers le simulateur embauche via 'gérer' 2020-01-08 13:58:43 +01:00
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
Johan Girod 00b122fa97 ⚙️ ajoute la conversion d'unité
Gros changements en perspective :
- Supprime la notion de période, au bénéfice de celle d'unité
  (`période : mensuelle` devient `unité: €/mois`)
- Améliore les rapports d'erreur avec des messages plus clair
- Ajoute un avertissement lorsque des types ne sont pas compatible
- Ajoute la conversion automatique d'unité dans le moteur
- Ajoute une notion d'unité par défaut de la simulation,
  c'est l'unité vers laquelle les règles qui ne spécifient pas
  d'unité seront converties
- Ajoute une notion d'unité par défaut des règles, qui spécifie
  l'unité de la règle qui prévaut lorsque qu'il n'y a pas
  d'unité par défaut de la simulation (utile pour les question ou
  pour s'assurer du bon type d'une règle)
2019-12-16 11:34:04 +01:00
Maxime Quandalle f6daedc01c Ajoute un composant Toggle 2019-12-10 20:13:14 +01:00
Johan Girod 740d6bfeb3 🐛 corrige le bouton continuer qui ne marche pas sur l'éco collab 2019-11-29 11:20:36 +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
Johan Girod 58e13df9bb remove header from integrations 2019-10-24 15:51:07 +02:00
Johan Girod 7c7ae476fc 👽 traduit l'économie collaborative et réorganise la page des obligations 2019-10-24 12:10:36 +02:00
Johan Girod b5d6025c89 🎨 rends les animations plus discrète 2019-10-23 12:21:48 +02:00
Johan Girod 1593cdcd69 🎨 🖋️ prend en compte les modifications de la revue 2019-10-23 12:21:48 +02:00
Johan Girod c40ae69660 👽 ajoute les traductions pour la nouvelle architecture 2019-10-23 12:21:48 +02:00
Johan Girod 9b80e87674 🐛 répare le guide du statut juridique 2019-10-23 12:21:48 +02:00
Johan Girod 8b7741ec7e Ajoute les ressources utiles 2019-10-23 12:21:48 +02:00
Johan Girod 45d73f1159 Ajoute une page qui liste les simulateurs 2019-10-23 12:21:48 +02:00
Johan Girod 1aa05d1d1b Nouvelle navigation avec boutons retours pour le parcours gérer 2019-10-23 12:21:48 +02:00
Johan Girod 044597132f 🎨 🐛 problème sur le prerender des styled component 2019-10-23 12:21:48 +02:00
Johan Girod c33248fd1e ajoute la description à la page de choix de statut 2019-10-23 12:21:48 +02:00
Johan Girod d70c64d83f Ajoute la prise en compte du dirigeant majoritaire et un lien vers la page sécurité sociale 2019-10-23 12:21:48 +02:00
Johan Girod 73c79e4b81 ajoute un nouveau parcours gérer mon entreprise 2019-10-23 12:21:48 +02:00
Johan Girod 0d482a0107 🎨 améliore l'animation de feedback sur le click des boutons 2019-10-23 12:21:48 +02:00
Johan Girod b87bd23ab5 🎨 accelère l'animation de checkbox 2019-10-23 12:21:48 +02:00
Johan Girod e684ddfc4e 🎨 redesign la landing
fix #621
2019-10-23 12:21:48 +02:00
Johan Girod 148ac62001 🎨 Améliore le contraste des couleurs pour l'accessibilité (AA) 2019-10-23 12:21:48 +02:00
Johan Girod 957242301a 🎨 uniformise les styles entre card et button-choice 2019-10-23 12:21:48 +02:00
Maxime Quandalle d2098c3d0c
Refacto de du composant Distribution
⬆ MAJ de react-spring vers version 8
Quelques changements d'API. Par ailleurs la version 8 exporte deux modules
l'un avec les "render-props" et l'autres avec les "hooks"

🔥 Suppression de @researchgate/react-intersection-observer
Remplacement par un custom hook
2019-10-10 12:06:57 +02:00
Johan Girod 57a7b30f14 🎨🔥 change la recherche d'entreprise
- On utilise un nouveau composant qui se base sur la dernière version de l'api SIRENE
- On sépare les données entre la simulation des cotisations et la création d'entreprise
- On gagne des lignes !
2019-10-07 11:06:05 +02:00
Maxime Quandalle 76d2101d87
Ne pas afficher l'animatedValue en cas de changement de période 2019-09-25 17:10:01 +02:00
Maxime Quandalle 579a385b41
Regroupe les fonctions de formatage
Par ailleurs ce commit formate les taux les tableaux des barèmes linéaires
2019-09-25 17:09:59 +02:00
Maxime Quandalle f3e79f4251
Merge pull request #671 from betagouv/remove-redux-form
Suppression de redux-form
2019-09-23 12:47:32 +02:00
Maxime Quandalle 0f983c974e 🎨 Meilleur arrondi pour le sélecteur de période 2019-09-23 12:46:36 +02:00
Maxime Quandalle 7a965e6d99
🐛 Correction formatage de l'AnimatedValue
Suppression de l'AnimatedValue pour l'objectif courant
Simplification du code de TargetSelection
Corrections CSS
2019-09-18 18:12:30 +02:00
Maxime Quandalle 8c9a4015c4
Input permanent pour les objectifs du simulateur
Nous alternions avant entre un <span /> et un <input /> selon le contexte

Fixes #558
2019-09-17 12:54:57 +02:00
Maxime Quandalle dbbb67ee7f
Ajout du lint pour les hooks React
Comme recommandé dans la documentation des hooks React, ajout des deux
linters suivants : react-hooks/rules-of-hooks et react-hooks/exhaustive-deps

Mise à jour des composants, en particulier les useEffect pour y spécifier
toutes les dépendances.
2019-09-17 12:54:54 +02:00
Johan Girod 7ada8c473b
🎨 répare petits bugs visuels 2019-09-13 10:23:54 +02: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 e882d630ad
🎨 bug couleur ie11" 2019-09-09 18:07:34 +02:00
Maxime Quandalle 1b01948d29 🎨 Laisser la question courante affichée dans les raccourcis
Suite à un retour utilisateur qui ne savait plus quelle question était
posée car le lien sur lequel il venait de cliquer avait changé.
2019-09-09 11:33:47 +02:00
Maxime Quandalle 1f70cff33f
🎨 Typos et ajout d'une marge sous les suggestions 2019-09-06 15:31:20 +02:00
Johan Girod 5393de1dc2
🎨 uniformise le style des suggestions 2019-09-06 15:31:18 +02:00
Johan Girod 1d99ebd88f
🐛 répare le dépliement des checklist 2019-09-06 10:51:54 +02:00
Johan Girod 2b6bf3ca9f
🐛 corrige bug markdown 2019-09-03 13:39:40 +02:00
Johan Girod dfb841147a
🎨 répare le style des checkbox sur chrome 2019-09-03 13:35:56 +02:00
Johan Girod 913b4178e1
🎨 retours UI
- Les activités peuvent tenir à trois sur une même ligne
- Le texte du bouton peut être selectioné
2019-09-03 13:35:55 +02:00
Johan Girod 921f56dd9e
Ajoute les mécanisme d'exemption à l'économie collaborative 2019-09-03 13:35:55 +02:00
Johan Girod 34780a2e15
🎨 Refacto l'économie collaborative
- L'état interne est plus simple
- Le parcours est plus beau et plus facile
- On peut revenir en arrière facilement
- Correction des bugs d'update, de modifications etc...
- La traduction sera plus simple
- L'état est sauvegardé dans le local storage
- Ajout de redirections quand l'utilisateur n'a pas suivi le parcours

NOTE ! Il reste à refactorer les exemptions
2019-09-03 13:35:54 +02:00
Johan Girod f545980a61
🎨 Bug sur les titre dans les cartes pleines 2019-09-03 11:12:44 +02:00