Commit Graph

662 Commits (139ca46ad1a76acd96ce4c002474dfe550eb8eb4)

Author SHA1 Message Date
Maxime Quandalle 139ca46ad1
⚙️ Traduction des unités
Gestion du pluriel (1 jour, 2 jours) et de la traduction (3 days).

Fixes #729
2019-10-13 20:36:22 +02:00
Maxime Quandalle 1ccaf94a1c
⚙️ Nouvelle syntaxe de définition publicodes
* Définition à partir du nom complet en notation pointée (plutôt que
  comme deux attributs indépendants "name" et "espace")
* Structure de données de premier niveau "dictionnaire" plutôt que liste,
  s'aligne mieux avec notre contrainte d'unicité des noms
* Possibilité de définir les règles à partir d'une liste dans les tests,
  dans ce cas il ne faut plus utiliser l'attribut "espace" mais renseigner
  directement la notation pointée dans le "nom".
2019-10-13 11:46:29 +02:00
Maxime Quandalle de3d42d188 Ajout de tests unitaires sur le formatage des valeurs 2019-10-10 14:38:44 +02:00
Maxime Quandalle c3b465bdef Améliore le formatage des montants en euro
Fixes #725
2019-10-10 14:38:44 +02:00
Maxime Quandalle 545e1cef69
Merge pull request #724 from betagouv/smallthings-max
Lien vers les releases et formatage des constantes dans la documentation
2019-10-10 13:26:39 +02:00
Maxime Quandalle e0e1e97de9
Ne pas arrondir les constantes dans la documentation
C'était perturbant d'afficher un taux à 0,03% alors que la valeur utilisée
est 0,024%
2019-10-10 11:58:31 +02:00
Mael 0eba339309 La librairie prend la notation pointée en entrée 2019-10-07 16:38:29 +02:00
Maxime Quandalle fa5157d6ba
Ajout d'une option pour retourner seulement le taux d'un barème linéaire
Option analogue à celle déjà disponible sur "barème continu"
2019-09-27 17:04:30 +02:00
Maxime Quandalle 8daa80974c
🐛 Corrige l'unité affichée dans le résultat des barèmes 2019-09-27 12:30:17 +02:00
Maxime Quandalle 5e5933d35d
Simplification de Engine/format
getFormatersFromUnit n'est plus utilisé depuis 5879c9bc
2019-09-27 11:36:15 +02:00
Maxime Quandalle f0f2123924
Revert "Simplification de Engine/format"
This reverts commit 3971496e28.
2019-09-26 10:06:46 +02:00
Maxime Quandalle 3971496e28
Simplification de Engine/format
getFormatersFromUnit n'est plus utilisé depuis 5879c9bc
2019-09-26 09:58:14 +02:00
Maxime Quandalle 5879c9bcf5
Utilise NumberFormat pour les Input des questions
Meilleure gestion du formatage (séparateur des milliers et décimal) et
début de convergence entre Input.js et CurrencyInput.js
2019-09-25 17:29:02 +02:00
Maxime Quandalle 0fcade76e1
Formatage des nombres dans les réponses aux questions
Fixes #683
2019-09-25 17:10:02 +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 c418a63d06
🎨 Change le symbole de la multiplication 2019-09-25 15:00:03 +02:00
Johan Girod d95a5b7a34
🐛 corrige l'affichage de la fiche de paie 2019-09-25 10:01:34 +02:00
Johan Girod d1f9ef383b
🎨 améliore l'affichage des valeurs négatives 2019-09-25 10:01:34 +02:00
Johan Girod 33cc92a397
⚙️ ajoute l'opération unaire de négation à la grammaire 2019-09-25 10:01:33 +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
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 59d4054e5d
ajoute des tests pour les expressionsé 2019-09-13 10:23:55 +02:00
Johan Girod 28d70b44d2
🔨 remplace 'auto entrepreneur' par 'auto-entrepreneur' 2019-09-13 10:23:55 +02:00
Johan Girod b2d0d4624a
🐎 améliore la performance du parsing
A peu près ~50% de gagné lors du parsing
Problème : long temps de blocage de l'UI lors du premier parsing des règles

Il reste encore quelques bugs
2019-09-13 10:23:55 +02:00
Johan Girod a60d86a6d5
remove unecessary abstraction: rewriteNode 2019-09-13 10:23:55 +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
Maxime Quandalle a1b99fdc64 Suppression des do-expression
Il s'agit d'une fonctionnalité non standard de JavaScript qui est peu
utilisée dans la base de code. Ajoute de la complexité pour les nouveaux
développeurs (configuration spécifique de l'environnement de dév) pour
trop peu de bénéfices.
2019-09-11 11:17:23 +02:00
Maxime Quandalle 4e4caab3da ⚙️ Ne pas afficher les fonctions désactivées
TODO: Mettre à jour immédiatement la liste des questions suivantes (QuickLinks) ?
2019-09-09 11:33:47 +02:00
Maxime Quandalle 01bb90e61f 🔨 Amélioration du support des stages
- 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.
2019-09-09 11:33:47 +02:00
Maxime Quandalle aa36b1c481 🔨 Type de contrat à choix multiple
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)
2019-09-09 11:33:47 +02:00
Maxime Quandalle 461d789535
🐛 Unité de l'impôt sur le revenu
Était affiché en pourcentage au lieu d'euros depuis a30e0a86
Prise en compte de l'unité dans le mécanisme allègement
2019-09-06 16:23:26 +02:00
Johan Girod 02410f61b9
🎨 enlève le hover entrée
Lorsque l'on aura une navigation au clavier complète et fonctionnelle, on pourra préciser tous les raccourci via une page dédiée. En attendant, inutile de polluer l'interface
2019-09-06 15:31:17 +02:00
Johan Girod 37a3f5a139
🔨 meilleure gestion de l'ACRE / année de création
- 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.
2019-09-06 15:31:17 +02:00
Maxime Quandalle 6344d2f2e1
Amélioration des pages de documentations pour rend non applicable
- ajout des traductions
- ajout d'une notice "désactivée par" quand une règle est désactivée
  par un régime d'exception actif
2019-09-04 09:14:28 +02:00
Maxime Quandalle 1ffb97c2f6
Renomme "désactive" en "rend non applicable"
Ajout de tests, amélioration de la doc
2019-09-03 22:45:54 +02:00
Maxime Quandalle 89f370b182
Ajout d'une ruleProp "désactive" 2019-09-03 22:45:48 +02:00
Johan Girod a247e5d57c
🔨 Ajoute la reduction de cotisations pour les heures supplémentaires
TODO: uniformiser la façon de gérer les réductions sur la fiche de paie, entre employeur et salarié
2019-09-03 18:11:41 +02:00
Maxime Quandalle 0fa69dfbbc
Améliore l'affichage des unités sur les barèmes 2019-09-03 09:39:36 +02:00
Maxime Quandalle 9327847360 ⚙️ Support des unités dans un barème linéaire 2019-09-02 18:17:02 +02:00
Mael 1431c02f34 Introduction du faux pourcentage (%)
Quand une variable est destinée à être saisie par l'utilisateur, on veut
qu'il saisisse 50, pas 0.5 pour exprimer 50%.

On pourrait lui faire saisir 50 et convertir en direct vers la vraie
valeur de 0.5, mais c'est compliqué aujourd'hui dans reduxForm
(l'attribut "normalize" ne suffit pas, car la valeur 0.5 sera visible
après un bref instant de debounce).

Je pense qu'il serai quand même mieux que nous stockions les variables
qui sont des ratios comme 0.5 et que l'UI se charge d'afficher et de
faire saisir ces valeurs sous forme 50%.
2019-07-23 19:07:40 +02:00
Mael 7ae3eaca60 🎨 Espacement sous les noms des mécanismes 2019-07-23 18:44:26 +02:00
Mael a0e534324d 🎨 Valeur des méca : signe = en dehors de la boîte 2019-07-23 18:44:26 +02:00
Mael fb73ed5cbf 🎨 Alingement des expressions sur mobile 2019-07-23 18:44:26 +02:00
Mael 0233c793a0 Déplacement du mécanisme operation 2019-07-23 17:03:00 +02:00
Mael 8b8afd528b Ajout de l'unité aux barèmes 2019-07-23 17:03:00 +02:00
Mael cb2cc9e8d2 Simplification du texte d'introduction des variations et composantes
Le terme règle est obscur
2019-07-23 17:03:00 +02:00
Mael a58853569a 🎨 Symbole + pour séparer les composantes
1 retour utilisateur pas familier avec ce concept de composantes
2019-07-23 17:03:00 +02:00
Mael 86a3002452 🎨 Symbole égalité pour les valeurs de méca et alignement en bas
D'après le peu de tests effectués (2) le résultat du mécanisme est mieux
en bas
2019-07-23 17:03:00 +02:00
Mael 78da370cb8 🐛 Certaines conséquences des variations ne s'affichaient pas 2019-07-23 17:03:00 +02:00