* 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 !
Supprimée au niveau des cotisations patronales dans fb54d4c, ce commit
ré-intégre ce coût au niveau d'une nouvelle variable "coût du travail"
qui inclut également les aides différées.
Note: une variable "coût d'embauche" existait précédemment mais n'était
plus utilisée 4784bcd2
Sur les 9 utilisations de withRouter :
- suppression de 6 occurrences inutilisées
- migration d'1 occurrence vers le hook useLocation
- maintien de 2 occurrences inchangées car utilisées par des composants "class"
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
- Ajout d'un avertissement (le stage n'est pas un contrat de travail)
- Ajout des traductions
- D'avantage d'utilisation de "rend non applicable"
- Une modification de parentDependency pour prendre un compte que
"contrat stage" est maintenant un enum CDI | CDD | Stage plutôt qu'un
boolean true | false.
Pour l'instant les choix sont CDI, CDD, ou Stage.
Modification du moteur concernant la désactivations des règles spécifiques
au CDD (la logique précédente nécessitait que `contrat . salarié . cdd`
soit une question, elle fonctionne maintenant avec une formule)
- On utilise la date de création avant 2019 / après 2019 pour savoir si la profession libérale est rattachée à la CIPAV
- On pose directement la question de l'ACRE, ce qui permet de ne pas faire d'approximation par défaut.
On veut pouvoir dire : ce contrat est à x heures par semaine, même si la
variable temps partiel est désactivée, le nombre d'heures ne vaut pas 0
mais une valeur par défaut
Remplacement de Montant par Value
Rétablissement des explications simu salarié
Possibilité de définir des objegtifs secondaires qui sont calculés mais
pas affichés par targetSelectuon
Pour les simulateurs de revenu AS et indépendant, on ajoute après le bloc de revenu, un bloc entreprise, qui introduit les notions de charge et de chiffre d'affaires minimum.
Pour l'instant, on implémente via une deuxième variable identique à la première. Lorsque l'on aura un mécanisme d'extension de la base de règle (comme évoqué dans #566), on pourra imaginer avoir un nom différent en fonction du contexte de la simulation.
Suite aux retours utilisateurs rassemblé par l'Acoss (cc Agnes Nardon) :
- Uniformise les nom de tous les champs entre les différents simulateurs
- Pour la comparaison des régimes, on ne parle plus du CA, mais du montant dégagé pour la rémunération du dirigeant (plus clair)
- Supprime la notion de charge pour les auto-entrepreneur
- Tant que la simulation complète de l'entreprise n'est pas développé (cf #562), on enlève la notion de chiffre d'affaires des simulateurs de revenus. Elle est en effet triviale à calculer (rem total + charges) et laisse perplexe les utilisateurs même les plus renseignés
Pour par exemple séparer l'entreprise du dirigeant
Attention, le composant TargetSelection est beaucoup trop complexe, il
mérite d'être séparé en plein de plus petits composants