Commit Graph

606 Commits (7a727d5a5c8a87ccbe07246638157a834af6ab0d)

Author SHA1 Message Date
Johan Girod f224272f5c 🔨⚙️🔥 refactore les règles pour une meilleure lisibilité
Et pour faire passer les tests jest au passage.
A noter : il faudra vraiment se pencher sur la notion d'applicable / non applicable
Une variable non applicable a une valeur '0' / 'false', mais une variable
à false n'est pas considérée comme non applicable. Je pense qu'il serait avantageux
de simplifier le modèle en introduisant une symetrie entre applicable si et la valeur
d'une variable.
2019-11-11 18:47:43 +01:00
Maxime Quandalle e1faea81e7
🐛 Ne pas afficher de bouton "imprimer" si ça n'est pas supporté par le navigateur 2019-11-11 17:45:29 +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
Mael c3094019e4 🔥 React-Select ATMP et du coup 🔥 react-select partout 2019-11-05 18:06:56 +01:00
Johan Girod bf0ef946c1 🐛 fix #755 2019-10-30 11:30:57 +01:00
Johan Girod 98fcb4a769 🐛 fix #756 2019-10-30 11:26:56 +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 544ffbfd54 🖊 Corrections orthographiques de pluriels 2019-10-28 18:14:16 +01:00
Johan Girod 7a7e7f539f 🐛 remonte en haut de la page lorsque l'on navigue vers un simulateur
fix #748
2019-10-25 16:59:52 +02:00
Johan Girod 4545e4a011 🐛 répare la page blanche lors du parcours création
Fix #750
2019-10-25 16:56:38 +02: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 b63701b599 Plus de redirections intempestives 2019-10-23 18:18:43 +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 f2ba57eca8 Ajoute les redirections coté front
Vu qu'on utilise un serviceworker, lorsque la requête ne passe pas jusqu'au serveur, la redirection n'est pas effective
On parse les règles de redirection netlify coté front et on les ajoute à l'app
2019-10-23 12:21:48 +02:00
Johan Girod f958e632d5 Ajoute des tests extensif pour tous les simulateurs 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 b27c9576fb Nouveau parcours de création 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 70c4b488eb 🎨 🐛 taille du logo sur ie et safari 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 60bc060c31 🎨 ajoute un header sur toutes les pages 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 2d0d443687 👽 ajoute les traductions manquantes 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 5e026abe66
🐛 Utilise un try-catch pour lire sessionStorage 2019-10-16 19:24:47 +02:00
Maxime Quandalle 479bdb8979
🐛 Encode le # de l'URL dans le paramètre couleur
Le parseur standard implémenté dans 41e4448 ne fonctionnait pas car une
partie des paramètres "search" était interprétés comme un hash de l'URL
2019-10-16 19:07:29 +02:00
Maxime Quandalle c8c003b59c
🔥 Suppression des pages de disambiguation 2019-10-16 13:08:30 +02:00
Maxime Quandalle 41e44482b8
🔥 Supprime des fonctions "utils" inutiles
Ces fonctions n'étaient utilisées qu'une fois ou deux et constituent des
indirections inutiles : getIframeOption, parseDataAttributes,
setToSessionStorage, getFromSessionStorage et isNumeric.

Préférer les fonctions de la "bibliothèque standard": sessionStorage et
URLSearchParams.
2019-10-13 20:36:21 +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
Mael 3613fc0c24 Bibliothèque pas librairie 2019-10-10 15:55:07 +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 b58c98d2df
Merge pull request #706 from betagouv/graphique-repartition
Ajout d'un graphique repartiton
2019-10-10 13:26:26 +02:00
Maxime Quandalle 416fa57cd6
🎨 Déviation d'une palette de couleurs 2019-10-10 12:07:40 +02:00
Maxime Quandalle 33c1a06b6c
🔥 Suppression d'une prop morte 2019-10-10 12:06:56 +02:00
Maxime Quandalle 031128034a
🎨 Ajout d'un diagramme en bâtons pour la répartiton du revenu total
Permet d'avoir une visualisation utilisable dans nos différents
simulateurs (salarié et les 3 simulateurs indépendants)
2019-10-10 12:06:55 +02:00
Maxime Quandalle 39c2885ec8
Ajout d'un lien vers les release GitHub dans le footer 2019-10-10 11:14:44 +02:00
Maxime Quandalle 52a924519a
🖊 Coquille orthographique
Légère reformulations
2019-10-10 10:20:36 +02:00
Mael 2b0b10841c Ajout d'un lien vers publi.codes 2019-10-09 12:00:03 +02:00
Mael 7ca7ebb102 Page librairie : ajout d'une note sur notre utilisation d'API externes 2019-10-09 11:52:21 +02:00
Maël 3149a4a67a Dernier example pour la lib : graphiques 2019-10-08 12:40:30 +02:00