Commit Graph

24 Commits (6424f2e197db0f64a65e381c4b9f40daaae7c645)

Author SHA1 Message Date
Johan Girod 67b3c915e7 🐛 change la version du localstorage pour éviter les bugs de non correspondance d'état 2020-01-21 13:30:15 +01:00
Johan Girod c2358605ae prends en compte les informations de l'api entreprise dans les simulations 2020-01-07 15:53:33 +01:00
Johan Girod 91d0989a87 🎨 Ajoute un input de type date 2020-01-07 15:53:33 +01:00
Maxime Quandalle 1b963b8bbe Ajout de l'option "allowJs" dans tsconfig.js
Cela permet l'inférence de type à partir des fichiers js qui ne sont pas
encore convertis en TypeScript.
Par ailleurs suppression des dernières traces de Flow.
Ajout d'options plus strictes pour dans la config tsconfig.js
2019-12-17 11:34:12 +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 2b271a903f 🐛 silent fail when state is corrupted 2019-10-23 12:21:48 +02:00
Maxime Quandalle 204f87a29d
🐛 Nouvelle version de l'état persisté
Bug introduit dans #705
2019-10-07 16:10:05 +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 3fbd94bc65
🔥 Suppression de redux-form
Supprime aussi redux-batched-action. Le code résultant est plus concis
(alors que l'on supprime une dépendance !), et plus clair car il y a moins
d'indirections pour se conformer aux API de redux-form.
2019-09-17 12:54:18 +02:00
Johan Girod f11f0579fd
Affiche automatiquement la question après la première valeur rentrée
🔥 Et supprime le code gérant  dans le state
2019-06-05 15:16:46 +02:00
Johan Girod 311ecbff82 🐛 répare la sauvegarde automatique de la situation sur mycompanyinfrance 2019-01-31 19:43:20 +01:00
Johan Girod 048be37a07 Ajoute une inversion pour pouvoir partir du revenu disponible 2019-01-10 17:49:35 +01:00
Johan Girod aac8414a89 Fix l'erreur 'unsafe operation' lors de l'accès au localstorage 2018-10-11 16:46:55 +02:00
Johan Girod cba61d3f7e 🐛 répare la supression de la sauvegarde 2018-10-03 11:28:18 +02:00
Johan Girod b29370ec25 Sauvegarde automatiquement l'état de l'application sur infrance 2018-08-28 16:28:03 +02:00
Johan Girod 0e028cc843 wip 2018-08-04 12:11:34 +02:00
Johan Girod 583cbcd52f 📈 rétabli le tracking de l'input (avec debounce sur les valeurs à 1s) 2018-06-20 17:49:36 +02:00
Johan Girod eaf9c3d32d 🐛 change version of localstorage cache due to model change (salaire is now namespaced 2018-06-19 18:32:06 +02:00
Johan Girod 86ae5102e0 🐛 répare la sauvegarde des données avec le nouvel état 2018-06-19 17:23:25 +02:00
Johan Girod 6ff886053d Ajoute la suppression de sauvegarde et améliore le tracking 2018-06-18 19:37:34 +02:00
Johan Girod c0fe85cf11 🎨 Nouvelle vue résultat, plus proche d'une vrai fiche de paie 2018-06-08 12:39:00 +02:00
Johan Girod 191bd66a1a ajoute un bouton pour choisir de reprendre la dernière simulation sauvegarder 2018-05-24 18:48:01 +02:00
Johan Girod e821247fa7 🐛 répare le bouton pour réinitialiser un formulaire 2018-05-24 18:48:01 +02:00
Johan Girod 76e8eeb62a ajoute la sauvegarde de la simulation d'une session sur l'autre
L'état est automatiquement sauvegardé dans le localStorage
On ne sauvegarde que les données nécessaires : les values du form, et les foldedQuestions
La sauvegarde est automatique, et est déclenchée une seconde après la dernière action
2018-05-24 18:48:01 +02:00