1
0
Fork 0
mirror of https://github.com/betagouv/mon-entreprise synced 2025-02-09 04:05:01 +00:00
mon-entreprise/source/components/SimulateurWarning.tsx
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

87 lines
2.3 KiB
TypeScript

import { T } from 'Components'
import { usePersistingState } from 'Components/utils/persistState'
import React from 'react'
import emoji from 'react-easy-emoji'
type SimulateurWarningProps = {
simulateur: string
}
export default function SimulateurWarning({
simulateur
}: SimulateurWarningProps) {
let [folded, fold] = usePersistingState(
'app::simulateurs:warning-folded:v1:' + simulateur,
false
)
return (
<div
id="SimulateurWarning"
css={`
margin-bottom: 1rem;
`}
>
<p>
{emoji('🚩 ')}
<strong>
<T k="simulateurs.warning.titre">Avant de commencer...</T>
</strong>{' '}
{folded && (
<button
className="ui__ button simple small"
onClick={() => fold(false)}
>
<T k="simulateurs.warning.plus">Lire les précisions</T>
</button>
)}
</p>
{!folded && (
<div
className="ui__ card light-bg"
css="padding-top: 1rem; padding-bottom: 0.4rem"
>
<ul>
{simulateur == 'auto-entreprise' && (
<li>
<T k="simulateurs.warning.cfe">
Le simulateur n'intègre pas la cotisation foncière des
entreprise (CFE) qui est dûe dès la deuxième année d'exercice.
Son montant varie fortement en fonction du chiffre d'affaire
et de la domiciliation de l'entreprise.{' '}
<a href="https://www.service-public.fr/professionnels-entreprises/vosdroits/F23547">
Plus d'infos.
</a>
</T>
</li>
)}
<li>
<T k="simulateurs.warning.urssaf">
Les calculs sont indicatifs et ne se substituent pas aux
décomptes réels des Urssaf, impots.gouv.fr, ou autres.
</T>
</li>
{simulateur == 'auto-entreprise' && (
<li>
<T k="simulateurs.warning.auto-entrepreneur">
{' '}
Les auto-entrepreneurs ne peuvent pas déduire leurs charges de
leur chiffre d'affaires. Il faut donc retrancher au net tous
les coûts liés à l'entreprise pour obtenir le revenu
réellement perçu.
</T>
</li>
)}
</ul>
<div className="ui__ answer-group">
<button
className="ui__ button simple small"
onClick={() => fold(true)}
>
<T>J'ai compris</T>
</button>
</div>
</div>
)}
</div>
)
}