mirror of
https://github.com/betagouv/mon-entreprise
synced 2025-02-10 15:05:01 +00:00
refactor: ventilation des avertissements dans les simulateurs
This commit is contained in:
parent
c620f23fd4
commit
90921e9d1b
13 changed files with 303 additions and 232 deletions
|
@ -1,17 +1,11 @@
|
|||
import { ReactNode } from 'react'
|
||||
import { Trans } from 'react-i18next'
|
||||
import { styled } from 'styled-components'
|
||||
|
||||
import Warning from '@/components/ui/WarningBlock'
|
||||
import { Emoji } from '@/design-system/emoji'
|
||||
import { Strong } from '@/design-system/typography'
|
||||
import { Link } from '@/design-system/typography/link'
|
||||
import { Li, Ul } from '@/design-system/typography/list'
|
||||
import { Body } from '@/design-system/typography/paragraphs'
|
||||
import { AbsoluteSitePaths } from '@/sitePaths'
|
||||
|
||||
import useYear from './utils/useYear'
|
||||
|
||||
type SimulateurWarningProps = {
|
||||
simulateur: Exclude<keyof AbsoluteSitePaths['simulateurs'], 'index'>
|
||||
informationsComplémentaires?: ReactNode
|
||||
|
@ -21,206 +15,12 @@ export default function SimulateurWarning({
|
|||
simulateur,
|
||||
informationsComplémentaires,
|
||||
}: SimulateurWarningProps) {
|
||||
const year = useYear()
|
||||
|
||||
return (
|
||||
<Warning
|
||||
localStorageKey={'app::simulateurs:warning-folded:v1:' + simulateur}
|
||||
>
|
||||
{simulateur === 'auto-entrepreneur' && (
|
||||
<Ul>
|
||||
<StyledLi>
|
||||
<Trans i18nKey="simulateurs.warning.auto-entrepreneur">
|
||||
Les auto-entrepreneurs bénéficient d’un régime très simplifié avec
|
||||
un taux forfaitaire pour le calcul des cotisations et
|
||||
contributions sociales appliqué sur le chiffre d’affaires. Selon
|
||||
le choix de la modalité de paiement des impôts il est appliqué un
|
||||
abattement forfaitaire au titre des frais professionnels. Il n’est
|
||||
pas possible de déduire des charges réelles en plus. Votre revenu
|
||||
net est donc le chiffre d’affaires moins toutes les charges
|
||||
engagées pour l’entreprise.
|
||||
</Trans>
|
||||
</StyledLi>
|
||||
<StyledLi>
|
||||
<Trans i18nKey="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’affaires et de la
|
||||
domiciliation de l’entreprise.{' '}
|
||||
<Link
|
||||
aria-label="Plus d’infos, en savoir plus sur service-public.fr, nouvelle fenêtre"
|
||||
href="https://www.service-public.fr/professionnels-entreprises/vosdroits/F23547"
|
||||
>
|
||||
Plus d’infos.
|
||||
</Link>
|
||||
</Trans>
|
||||
</StyledLi>
|
||||
</Ul>
|
||||
)}
|
||||
{informationsComplémentaires && <>{informationsComplémentaires}</>}
|
||||
{simulateur === 'profession-libérale' && (
|
||||
<Ul>
|
||||
<StyledLi>
|
||||
<Trans i18nKey="simulateurs.warning.profession-libérale">
|
||||
Ce simulateur est à destination des professions libérales en BNC.
|
||||
Il ne prend pas en compte les sociétés d’exercice libéral.
|
||||
</Trans>
|
||||
</StyledLi>
|
||||
<StyledLi>
|
||||
<Trans i18nKey="simulateurs.warning.libérale.année-courante">
|
||||
Le montant calculé correspond aux cotisations de l’année{' '}
|
||||
{{ year }} (pour un revenu {{ year }}).
|
||||
</Trans>
|
||||
</StyledLi>{' '}
|
||||
<StyledLi>
|
||||
<Trans i18nKey="simulateurs.warning.cotisations-ordinales">
|
||||
Pour les professions réglementées, le simulateur ne calcule pas le
|
||||
montant des cotisations à l’ordre. Elles doivent être ajoutées
|
||||
manuellement dans la case « charges de fonctionnement ».
|
||||
</Trans>
|
||||
</StyledLi>
|
||||
</Ul>
|
||||
)}
|
||||
{simulateur === 'artiste-auteur' && (
|
||||
<Body>
|
||||
<Trans i18nKey="simulateurs.warning.artiste-auteur">
|
||||
Ce simulateur permet d’estimer le montant de vos cotisations à
|
||||
partir de votre revenu projeté.
|
||||
</Trans>
|
||||
</Body>
|
||||
)}
|
||||
{simulateur === 'coût-création-entreprise' && (
|
||||
<Ul>
|
||||
<StyledLi>
|
||||
<Trans i18nKey="simulateurs.warning.coût-création-entreprise.pas-reprise">
|
||||
Ce simulateur calcule les frais de création pour les nouvelles
|
||||
entreprises. Il ne prend pas en compte le cas des reprises
|
||||
d’entreprises existantes.
|
||||
</Trans>
|
||||
</StyledLi>
|
||||
<StyledLi>
|
||||
<Trans i18nKey="simulateurs.warning.coût-création-entreprise.greffe">
|
||||
Des frais de greffe peuvent être facturés en raison d’informations
|
||||
ou de documents manquants ou incorrects. Par ailleurs, en cas
|
||||
d’envoi de courrier, le greffe facture les frais postaux.
|
||||
</Trans>
|
||||
</StyledLi>
|
||||
<StyledLi>
|
||||
<Trans i18nKey="simulateurs.warning.coût-création-entreprise.JAL">
|
||||
Ce simulateur calcule les frais de créations uniquement pour les
|
||||
SARL, EURL, SAS, SASU, EI et SEL. Il ne prend pas encore en compte
|
||||
les autres formes de société (SA, SCA, SCS, SCI, SCP, SNC, SCM,
|
||||
coopératives, GIE, GAEC, etc.)
|
||||
</Trans>
|
||||
</StyledLi>
|
||||
</Ul>
|
||||
)}
|
||||
{simulateur === 'indépendant' && (
|
||||
<Body>
|
||||
<Trans i18nKey="simulateurs.warning.indépendant.année-courante">
|
||||
Le montant calculé correspond aux cotisations de l’année {{ year }}{' '}
|
||||
(pour un revenu {{ year }}).
|
||||
</Trans>
|
||||
</Body>
|
||||
)}
|
||||
{simulateur === 'sasu' && (
|
||||
<Body>
|
||||
<Trans i18nKey="simulateurs.warning.sasu">
|
||||
Ce simulateur ne gère pas le cas des SAS(U) à l’impôt sur le revenu
|
||||
(IR). Seule l’option pour l’impôt sur les sociétés est implémentée
|
||||
(IS).
|
||||
</Trans>
|
||||
</Body>
|
||||
)}
|
||||
{simulateur === 'salarié' && (
|
||||
<Body>
|
||||
<Trans i18nKey="simulateurs.warning.salarié">
|
||||
Le simulateur ne prend pour l’instant pas en compte les accords et
|
||||
conventions collectives, ni la myriade d’aides aux entreprises.
|
||||
Trouvez votre convention collective{' '}
|
||||
<Link
|
||||
href="https://code.travail.gouv.fr/outils/convention-collective#entreprise"
|
||||
aria-label="ici, trouvez votre convention collective sur code.travail.gouv.fr, nouvelle fenêtre"
|
||||
>
|
||||
ici
|
||||
</Link>
|
||||
, et explorez les aides sur
|
||||
<Link
|
||||
href="https://www.aides-entreprises.fr"
|
||||
aria-label="aides-entreprises.fr, nouvelle fenêtre"
|
||||
>
|
||||
aides-entreprises.fr
|
||||
</Link>
|
||||
.
|
||||
</Trans>
|
||||
</Body>
|
||||
)}
|
||||
{simulateur === 'chômage-partiel' && (
|
||||
<Ul>
|
||||
<StyledLi>
|
||||
<Trans i18nKey="simulateurs.warning.chômage-partiel.1">
|
||||
Ce simulateur ne prend pas en compte les rémunérations brutes
|
||||
définies sur 39h hebdomadaires.
|
||||
</Trans>
|
||||
</StyledLi>
|
||||
<StyledLi>
|
||||
<Trans i18nKey="simulateurs.warning.chômage-partiel.2">
|
||||
De même, il ne prend pas en compte les indemnités complémentaire
|
||||
d’activité partielle prévue par une convention/accord collectif ou
|
||||
une décision unilatérale de l’employeur.
|
||||
</Trans>
|
||||
</StyledLi>
|
||||
</Ul>
|
||||
)}
|
||||
{simulateur === 'is' && (
|
||||
<Body>
|
||||
<Trans i18nKey="simulateurs.warning.is">
|
||||
Ce simulateur s’adresse aux{' '}
|
||||
<abbr title="Très Petites Entreprises">TPE</abbr> : il prend en
|
||||
compte les taux réduits de l’impôt sur les sociétés.
|
||||
</Trans>
|
||||
</Body>
|
||||
)}
|
||||
{simulateur === 'dividendes' && (
|
||||
<Ul>
|
||||
<StyledLi>
|
||||
<Trans i18nKey="simulateurs.warning.dividendes.1">
|
||||
Cette simulation ne concerne que les sociétés françaises à l’impôt
|
||||
sur les sociétés (IS), et ne concerne pas les travailleurs
|
||||
indépendants non salariés.
|
||||
</Trans>
|
||||
</StyledLi>
|
||||
<StyledLi>
|
||||
<Trans i18nKey="simulateurs.warning.dividendes.2">
|
||||
Le montant de l’impôt sur les dividendes est calculé en plus de
|
||||
l’impôt sur les autres revenus imposables.
|
||||
</Trans>
|
||||
</StyledLi>
|
||||
</Ul>
|
||||
)}
|
||||
{simulateur === 'réduction-générale' && (
|
||||
<>
|
||||
<Body>
|
||||
<Trans i18nKey="simulateurs.warning.réduction-générale">
|
||||
Ce simulateur n’intègre{' '}
|
||||
<Strong>pas toutes les règles de calcul</Strong> spécifiques
|
||||
(Entreprises de Travail Temporaire, salariés des transports
|
||||
routiers soumis à un horaire d’équivalence...). Il ne tient pas
|
||||
non plus compte des taux et/ou répartition particuliers de la
|
||||
cotisation de retraite complémentaire appliqués dans certaines
|
||||
entreprises.
|
||||
</Trans>
|
||||
</Body>
|
||||
</>
|
||||
)}
|
||||
{simulateur === 'lodeom' && (
|
||||
<Trans i18nKey="simulateurs.warning.lodeom">
|
||||
<Body>
|
||||
<Emoji emoji="⚠️" /> Les taux et répartitions de cotisations
|
||||
dérogatoires ne sont pas pris en compte.
|
||||
</Body>
|
||||
</Trans>
|
||||
)}
|
||||
|
||||
<Body>
|
||||
<Trans i18nKey="simulateurs.warning.general">
|
||||
<Strong>Les calculs sont indicatifs.</Strong> Ils sont faits à partir
|
||||
|
@ -234,9 +34,3 @@ export default function SimulateurWarning({
|
|||
</Warning>
|
||||
)
|
||||
}
|
||||
|
||||
const StyledLi = styled(Li)`
|
||||
&::before {
|
||||
color: ${({ theme }) => theme.colors.bases.tertiary[800]} !important;
|
||||
}
|
||||
`
|
||||
|
|
|
@ -14,6 +14,7 @@ import { DistributionBranch } from '@/components/simulationExplanation/Distribut
|
|||
import { InstitutionsPartenairesArtisteAuteur } from '@/components/simulationExplanation/InstitutionsPartenaires'
|
||||
import { EngineContext } from '@/components/utils/EngineContext'
|
||||
import { H2 } from '@/design-system/typography/heading'
|
||||
import { Body } from '@/design-system/typography/paragraphs'
|
||||
import useSimulationConfig from '@/hooks/useSimulationConfig'
|
||||
|
||||
import { configArtisteAuteur } from './simulationConfig'
|
||||
|
@ -28,7 +29,17 @@ export default function ArtisteAuteur() {
|
|||
explanations={<CotisationsResult />}
|
||||
afterQuestionsSlot={<SelectSimulationYear />}
|
||||
>
|
||||
<SimulateurWarning simulateur="artiste-auteur" />
|
||||
<SimulateurWarning
|
||||
simulateur="artiste-auteur"
|
||||
informationsComplémentaires={
|
||||
<Body>
|
||||
<Trans i18nKey="simulateurs.warning.artiste-auteur">
|
||||
Ce simulateur permet d’estimer le montant de vos cotisations à
|
||||
partir de votre revenu projeté.
|
||||
</Trans>
|
||||
</Body>
|
||||
}
|
||||
/>
|
||||
<SimulationGoals
|
||||
legend="Vos revenus d'artiste auteur"
|
||||
toggles={<PeriodSwitch />}
|
||||
|
|
|
@ -1,3 +1,6 @@
|
|||
import { Trans } from 'react-i18next'
|
||||
import { styled } from 'styled-components'
|
||||
|
||||
import ChiffreAffairesActivitéMixte from '@/components/ChiffreAffairesActivitéMixte'
|
||||
import { WhenAlreadyDefined } from '@/components/EngineValue/WhenAlreadyDefined'
|
||||
import PeriodSwitch from '@/components/PeriodSwitch'
|
||||
|
@ -7,6 +10,8 @@ import Simulation, {
|
|||
SimulationGoal,
|
||||
SimulationGoals,
|
||||
} from '@/components/Simulation'
|
||||
import { Link } from '@/design-system/typography/link'
|
||||
import { Li, Ul } from '@/design-system/typography/list'
|
||||
import { AutoEntrepreneurDétails } from '@/pages/simulateurs/auto-entrepreneur/AutoEntrepreneurDétails'
|
||||
|
||||
export default function AutoEntrepreneur() {
|
||||
|
@ -16,7 +21,40 @@ export default function AutoEntrepreneur() {
|
|||
explanations={<AutoEntrepreneurDétails />}
|
||||
afterQuestionsSlot={<SelectSimulationYear />}
|
||||
>
|
||||
<SimulateurWarning simulateur="auto-entrepreneur" />
|
||||
<SimulateurWarning
|
||||
simulateur="auto-entrepreneur"
|
||||
informationsComplémentaires={
|
||||
<Ul>
|
||||
<StyledLi>
|
||||
<Trans i18nKey="simulateurs.warning.auto-entrepreneur">
|
||||
Les auto-entrepreneurs bénéficient d’un régime très simplifié
|
||||
avec un taux forfaitaire pour le calcul des cotisations et
|
||||
contributions sociales appliqué sur le chiffre d’affaires.
|
||||
Selon le choix de la modalité de paiement des impôts il est
|
||||
appliqué un abattement forfaitaire au titre des frais
|
||||
professionnels. Il n’est pas possible de déduire des charges
|
||||
réelles en plus. Votre revenu net est donc le chiffre
|
||||
d’affaires moins toutes les charges engagées pour
|
||||
l’entreprise.
|
||||
</Trans>
|
||||
</StyledLi>
|
||||
<StyledLi>
|
||||
<Trans i18nKey="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’affaires
|
||||
et de la domiciliation de l’entreprise.{' '}
|
||||
<Link
|
||||
aria-label="Plus d’infos, en savoir plus sur service-public.fr, nouvelle fenêtre"
|
||||
href="https://www.service-public.fr/professionnels-entreprises/vosdroits/F23547"
|
||||
>
|
||||
Plus d’infos.
|
||||
</Link>
|
||||
</Trans>
|
||||
</StyledLi>
|
||||
</Ul>
|
||||
}
|
||||
/>
|
||||
<SimulationGoals
|
||||
toggles={<PeriodSwitch />}
|
||||
legend="Vos revenus d'auto-entrepreneur"
|
||||
|
@ -41,3 +79,9 @@ export default function AutoEntrepreneur() {
|
|||
</>
|
||||
)
|
||||
}
|
||||
|
||||
const StyledLi = styled(Li)`
|
||||
&::before {
|
||||
color: ${({ theme }) => theme.colors.bases.tertiary[800]} !important;
|
||||
}
|
||||
`
|
||||
|
|
|
@ -44,7 +44,26 @@ export default function ChômagePartiel() {
|
|||
results={<ExplanationSection />}
|
||||
customEndMessages={<span>Voir les résultats au-dessus</span>}
|
||||
>
|
||||
<SimulateurWarning simulateur="chômage-partiel" />
|
||||
<SimulateurWarning
|
||||
simulateur="chômage-partiel"
|
||||
informationsComplémentaires={
|
||||
<Ul>
|
||||
<StyledLi>
|
||||
<Trans i18nKey="simulateurs.warning.chômage-partiel.1">
|
||||
Ce simulateur ne prend pas en compte les rémunérations brutes
|
||||
définies sur 39h hebdomadaires.
|
||||
</Trans>
|
||||
</StyledLi>
|
||||
<StyledLi>
|
||||
<Trans i18nKey="simulateurs.warning.chômage-partiel.2">
|
||||
De même, il ne prend pas en compte les indemnités complémentaire
|
||||
d’activité partielle prévue par une convention/accord collectif
|
||||
ou une décision unilatérale de l’employeur.
|
||||
</Trans>
|
||||
</StyledLi>
|
||||
</Ul>
|
||||
}
|
||||
/>
|
||||
<SimulationGoals legend="Salaire brut avant chômage partiel">
|
||||
<SimulationGoal
|
||||
label={t('Salaire brut mensuel')}
|
||||
|
@ -450,3 +469,9 @@ const ResultTable = styled.table`
|
|||
color: inherit;
|
||||
}
|
||||
`
|
||||
|
||||
const StyledLi = styled(Li)`
|
||||
&::before {
|
||||
color: ${({ theme }) => theme.colors.bases.tertiary[800]} !important;
|
||||
}
|
||||
`
|
||||
|
|
|
@ -1,3 +1,6 @@
|
|||
import { Trans } from 'react-i18next'
|
||||
import { styled } from 'styled-components'
|
||||
|
||||
import { Condition } from '@/components/EngineValue/Condition'
|
||||
import SimulateurWarning from '@/components/SimulateurWarning'
|
||||
import Simulation, {
|
||||
|
@ -6,6 +9,7 @@ import Simulation, {
|
|||
} from '@/components/Simulation'
|
||||
import { Grid } from '@/design-system/layout'
|
||||
import { H3 } from '@/design-system/typography/heading'
|
||||
import { Li, Ul } from '@/design-system/typography/list'
|
||||
|
||||
export default function CoutCreationEntreprise() {
|
||||
return (
|
||||
|
@ -62,7 +66,36 @@ export default function CoutCreationEntreprise() {
|
|||
</Condition>
|
||||
}
|
||||
>
|
||||
<SimulateurWarning simulateur="coût-création-entreprise" />
|
||||
<SimulateurWarning
|
||||
simulateur="coût-création-entreprise"
|
||||
informationsComplémentaires={
|
||||
<Ul>
|
||||
<StyledLi>
|
||||
<Trans i18nKey="simulateurs.warning.coût-création-entreprise.pas-reprise">
|
||||
Ce simulateur calcule les frais de création pour les nouvelles
|
||||
entreprises. Il ne prend pas en compte le cas des reprises
|
||||
d’entreprises existantes.
|
||||
</Trans>
|
||||
</StyledLi>
|
||||
<StyledLi>
|
||||
<Trans i18nKey="simulateurs.warning.coût-création-entreprise.greffe">
|
||||
Des frais de greffe peuvent être facturés en raison
|
||||
d’informations ou de documents manquants ou incorrects. Par
|
||||
ailleurs, en cas d’envoi de courrier, le greffe facture les
|
||||
frais postaux.
|
||||
</Trans>
|
||||
</StyledLi>
|
||||
<StyledLi>
|
||||
<Trans i18nKey="simulateurs.warning.coût-création-entreprise.JAL">
|
||||
Ce simulateur calcule les frais de créations uniquement pour
|
||||
les SARL, EURL, SAS, SASU, EI et SEL. Il ne prend pas encore
|
||||
en compte les autres formes de société (SA, SCA, SCS, SCI,
|
||||
SCP, SNC, SCM, coopératives, GIE, GAEC, etc.)
|
||||
</Trans>
|
||||
</StyledLi>
|
||||
</Ul>
|
||||
}
|
||||
/>
|
||||
<SimulationGoals legend="Simulateur du coût de création d'une entreprise">
|
||||
<SimulationGoal
|
||||
displayedUnit="€ HT"
|
||||
|
@ -75,3 +108,9 @@ export default function CoutCreationEntreprise() {
|
|||
</>
|
||||
)
|
||||
}
|
||||
|
||||
const StyledLi = styled(Li)`
|
||||
&::before {
|
||||
color: ${({ theme }) => theme.colors.bases.tertiary[800]} !important;
|
||||
}
|
||||
`
|
||||
|
|
|
@ -2,7 +2,7 @@ import { DottedName } from 'modele-social'
|
|||
import { useEffect, useState } from 'react'
|
||||
import { Trans, useTranslation } from 'react-i18next'
|
||||
import { useDispatch } from 'react-redux'
|
||||
import { useTheme } from 'styled-components'
|
||||
import { styled, useTheme } from 'styled-components'
|
||||
|
||||
import { Condition } from '@/components/EngineValue/Condition'
|
||||
import Notifications from '@/components/Notifications'
|
||||
|
@ -16,6 +16,7 @@ import StackedBarChart from '@/components/StackedBarChart'
|
|||
import { useEngine } from '@/components/utils/EngineContext'
|
||||
import { Radio, ToggleGroup } from '@/design-system/field'
|
||||
import { H2 } from '@/design-system/typography/heading'
|
||||
import { Li, Ul } from '@/design-system/typography/list'
|
||||
import { Body } from '@/design-system/typography/paragraphs'
|
||||
import { enregistreLaRéponse } from '@/store/actions/actions'
|
||||
|
||||
|
@ -27,7 +28,26 @@ export default function DividendesSimulation() {
|
|||
explanations={<DividendesExplanation />}
|
||||
afterQuestionsSlot={<SelectSimulationYear />}
|
||||
>
|
||||
<SimulateurWarning simulateur="dividendes" />
|
||||
<SimulateurWarning
|
||||
simulateur="dividendes"
|
||||
informationsComplémentaires={
|
||||
<Ul>
|
||||
<StyledLi>
|
||||
<Trans i18nKey="simulateurs.warning.dividendes.1">
|
||||
Cette simulation ne concerne que les sociétés françaises à
|
||||
l’impôt sur les sociétés (IS), et ne concerne pas les
|
||||
travailleurs indépendants non salariés.
|
||||
</Trans>
|
||||
</StyledLi>
|
||||
<StyledLi>
|
||||
<Trans i18nKey="simulateurs.warning.dividendes.2">
|
||||
Le montant de l’impôt sur les dividendes est calculé en plus
|
||||
de l’impôt sur les autres revenus imposables.
|
||||
</Trans>
|
||||
</StyledLi>
|
||||
</Ul>
|
||||
}
|
||||
/>
|
||||
<DividendesSimulationGoals />
|
||||
</Simulation>
|
||||
</>
|
||||
|
@ -192,3 +212,9 @@ export const SeoExplanations = () => {
|
|||
</Trans>
|
||||
)
|
||||
}
|
||||
|
||||
const StyledLi = styled(Li)`
|
||||
&::before {
|
||||
color: ${({ theme }) => theme.colors.bases.tertiary[800]} !important;
|
||||
}
|
||||
`
|
||||
|
|
|
@ -27,7 +27,18 @@ import { situationSelector } from '@/store/selectors/simulationSelectors'
|
|||
export default function ISSimulation() {
|
||||
return (
|
||||
<SimulationContainer>
|
||||
<SimulateurWarning simulateur="is" />
|
||||
<SimulateurWarning
|
||||
simulateur="is"
|
||||
informationsComplémentaires={
|
||||
<Body>
|
||||
<Trans i18nKey="simulateurs.warning.is">
|
||||
Ce simulateur s’adresse aux{' '}
|
||||
<abbr title="Très Petites Entreprises">TPE</abbr> : il prend en
|
||||
compte les taux réduits de l’impôt sur les sociétés.
|
||||
</Trans>
|
||||
</Body>
|
||||
}
|
||||
/>
|
||||
<Notifications />
|
||||
|
||||
<SimulationGoals
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
import { DottedName } from 'modele-social'
|
||||
import { Trans } from 'react-i18next'
|
||||
import { useDispatch } from 'react-redux'
|
||||
|
||||
import RuleInput from '@/components/conversation/RuleInput'
|
||||
|
@ -7,12 +8,15 @@ import { SelectSimulationYear } from '@/components/SelectSimulationYear'
|
|||
import SimulateurWarning from '@/components/SimulateurWarning'
|
||||
import Simulation from '@/components/Simulation'
|
||||
import IndépendantExplanation from '@/components/simulationExplanation/IndépendantExplanation'
|
||||
import useYear from '@/components/utils/useYear'
|
||||
import { Body } from '@/design-system/typography/paragraphs'
|
||||
import { SimpleRuleEvaluation } from '@/domaine/engine/SimpleRuleEvaluation'
|
||||
import { IndépendantSimulationGoals } from '@/pages/simulateurs/indépendant/Goals'
|
||||
import { ajusteLaSituation } from '@/store/actions/actions'
|
||||
|
||||
export default function IndépendantSimulation() {
|
||||
const dispatch = useDispatch()
|
||||
const year = useYear()
|
||||
|
||||
return (
|
||||
<>
|
||||
|
@ -20,7 +24,17 @@ export default function IndépendantSimulation() {
|
|||
explanations={<IndépendantExplanation />}
|
||||
afterQuestionsSlot={<SelectSimulationYear />}
|
||||
>
|
||||
<SimulateurWarning simulateur="indépendant" />
|
||||
<SimulateurWarning
|
||||
simulateur="indépendant"
|
||||
informationsComplémentaires={
|
||||
<Body>
|
||||
<Trans i18nKey="simulateurs.warning.indépendant.année-courante">
|
||||
Le montant calculé correspond aux cotisations de l’année{' '}
|
||||
{{ year }} (pour un revenu {{ year }}).
|
||||
</Trans>
|
||||
</Body>
|
||||
}
|
||||
/>
|
||||
<IndépendantSimulationGoals
|
||||
legend="Vos revenus d'indépendant"
|
||||
toggles={
|
||||
|
|
|
@ -1,17 +1,59 @@
|
|||
import { Trans } from 'react-i18next'
|
||||
import { styled } from 'styled-components'
|
||||
|
||||
import { SelectSimulationYear } from '@/components/SelectSimulationYear'
|
||||
import SimulateurWarning from '@/components/SimulateurWarning'
|
||||
import Simulation from '@/components/Simulation'
|
||||
import IndépendantExplanation from '@/components/simulationExplanation/IndépendantExplanation'
|
||||
import useYear from '@/components/utils/useYear'
|
||||
import { Li, Ul } from '@/design-system/typography/list'
|
||||
import { IndépendantSimulationGoals } from '@/pages/simulateurs/indépendant/Goals'
|
||||
|
||||
export const IndépendantPLSimulation = () => (
|
||||
<>
|
||||
<Simulation
|
||||
explanations={<IndépendantExplanation />}
|
||||
afterQuestionsSlot={<SelectSimulationYear />}
|
||||
>
|
||||
<SimulateurWarning simulateur="profession-libérale" />
|
||||
<IndépendantSimulationGoals legend="Vos revenus de profession libérale" />
|
||||
</Simulation>
|
||||
</>
|
||||
)
|
||||
export default function IndépendantPLSimulation() {
|
||||
const year = useYear()
|
||||
|
||||
return (
|
||||
<>
|
||||
<Simulation
|
||||
explanations={<IndépendantExplanation />}
|
||||
afterQuestionsSlot={<SelectSimulationYear />}
|
||||
>
|
||||
<SimulateurWarning
|
||||
simulateur="profession-libérale"
|
||||
informationsComplémentaires={
|
||||
<Ul>
|
||||
<StyledLi>
|
||||
<Trans i18nKey="simulateurs.warning.profession-libérale">
|
||||
Ce simulateur est à destination des professions libérales en
|
||||
BNC. Il ne prend pas en compte les sociétés d’exercice
|
||||
libéral.
|
||||
</Trans>
|
||||
</StyledLi>
|
||||
<StyledLi>
|
||||
<Trans i18nKey="simulateurs.warning.libérale.année-courante">
|
||||
Le montant calculé correspond aux cotisations de l’année{' '}
|
||||
{{ year }} (pour un revenu {{ year }}).
|
||||
</Trans>
|
||||
</StyledLi>{' '}
|
||||
<StyledLi>
|
||||
<Trans i18nKey="simulateurs.warning.cotisations-ordinales">
|
||||
Pour les professions réglementées, le simulateur ne calcule
|
||||
pas le montant des cotisations à l’ordre. Elles doivent être
|
||||
ajoutées manuellement dans la case « charges de fonctionnement
|
||||
».
|
||||
</Trans>
|
||||
</StyledLi>
|
||||
</Ul>
|
||||
}
|
||||
/>
|
||||
<IndépendantSimulationGoals legend="Vos revenus de profession libérale" />
|
||||
</Simulation>
|
||||
</>
|
||||
)
|
||||
}
|
||||
|
||||
const StyledLi = styled(Li)`
|
||||
&::before {
|
||||
color: ${({ theme }) => theme.colors.bases.tertiary[800]} !important;
|
||||
}
|
||||
`
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
import { useState } from 'react'
|
||||
import { useTranslation } from 'react-i18next'
|
||||
import { Trans, useTranslation } from 'react-i18next'
|
||||
|
||||
import PeriodSwitch from '@/components/PeriodSwitch'
|
||||
import EffectifSwitch from '@/components/RéductionDeCotisations/EffectifSwitch'
|
||||
|
@ -7,6 +7,8 @@ import RégularisationSwitch from '@/components/RéductionDeCotisations/Régular
|
|||
import { SelectSimulationYear } from '@/components/SelectSimulationYear'
|
||||
import SimulateurWarning from '@/components/SimulateurWarning'
|
||||
import Simulation from '@/components/Simulation'
|
||||
import { Emoji } from '@/design-system/emoji'
|
||||
import { Body } from '@/design-system/typography/paragraphs'
|
||||
import { useZoneLodeom } from '@/hooks/useZoneLodeom'
|
||||
import { RégularisationMethod } from '@/utils/réductionDeCotisations'
|
||||
|
||||
|
@ -41,7 +43,17 @@ export default function LodeomSimulation() {
|
|||
return (
|
||||
<>
|
||||
<Simulation afterQuestionsSlot={<SelectSimulationYear />}>
|
||||
<SimulateurWarning simulateur="lodeom" />
|
||||
<SimulateurWarning
|
||||
simulateur="lodeom"
|
||||
informationsComplémentaires={
|
||||
<Trans i18nKey="simulateurs.warning.lodeom">
|
||||
<Body>
|
||||
<Emoji emoji="⚠️" /> Les taux et répartitions de cotisations
|
||||
dérogatoires ne sont pas pris en compte.
|
||||
</Body>
|
||||
</Trans>
|
||||
}
|
||||
/>
|
||||
<LodeomSimulationGoals
|
||||
legend={t(
|
||||
'pages.simulateurs.lodeom.legend',
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
import { useState } from 'react'
|
||||
import { useTranslation } from 'react-i18next'
|
||||
import { Trans, useTranslation } from 'react-i18next'
|
||||
|
||||
import PeriodSwitch from '@/components/PeriodSwitch'
|
||||
import EffectifSwitch from '@/components/RéductionDeCotisations/EffectifSwitch'
|
||||
|
@ -7,6 +7,8 @@ import RégularisationSwitch from '@/components/RéductionDeCotisations/Régular
|
|||
import { SelectSimulationYear } from '@/components/SelectSimulationYear'
|
||||
import SimulateurWarning from '@/components/SimulateurWarning'
|
||||
import Simulation from '@/components/Simulation'
|
||||
import { Strong } from '@/design-system/typography'
|
||||
import { Body } from '@/design-system/typography/paragraphs'
|
||||
import { RégularisationMethod } from '@/utils/réductionDeCotisations'
|
||||
|
||||
import CongésPayésSwitch from './components/CongésPayésSwitch'
|
||||
|
@ -44,7 +46,22 @@ export default function RéductionGénéraleSimulation() {
|
|||
return (
|
||||
<>
|
||||
<Simulation afterQuestionsSlot={<SelectSimulationYear />}>
|
||||
<SimulateurWarning simulateur="réduction-générale" />
|
||||
<SimulateurWarning
|
||||
simulateur="réduction-générale"
|
||||
informationsComplémentaires={
|
||||
<Body>
|
||||
<Trans i18nKey="simulateurs.warning.réduction-générale">
|
||||
Ce simulateur n’intègre{' '}
|
||||
<Strong>pas toutes les règles de calcul</Strong> spécifiques
|
||||
(Entreprises de Travail Temporaire, salariés des transports
|
||||
routiers soumis à un horaire d’équivalence...). Il ne tient pas
|
||||
non plus compte des taux et/ou répartition particuliers de la
|
||||
cotisation de retraite complémentaire appliqués dans certaines
|
||||
entreprises.
|
||||
</Trans>
|
||||
</Body>
|
||||
}
|
||||
/>
|
||||
<RéductionGénéraleSimulationGoals
|
||||
legend={t(
|
||||
'pages.simulateurs.réduction-générale.legend',
|
||||
|
|
|
@ -75,7 +75,32 @@ export default function SalariéSimulation() {
|
|||
</BrowserOnly>
|
||||
}
|
||||
>
|
||||
<SimulateurWarning simulateur="salarié" />
|
||||
<SimulateurWarning
|
||||
simulateur="salarié"
|
||||
informationsComplémentaires={
|
||||
<Body>
|
||||
<Trans i18nKey="simulateurs.warning.salarié">
|
||||
Le simulateur ne prend pour l’instant pas en compte les accords
|
||||
et conventions collectives, ni la myriade d’aides aux
|
||||
entreprises. Trouvez votre convention collective{' '}
|
||||
<Link
|
||||
href="https://code.travail.gouv.fr/outils/convention-collective#entreprise"
|
||||
aria-label="ici, trouvez votre convention collective sur code.travail.gouv.fr, nouvelle fenêtre"
|
||||
>
|
||||
ici
|
||||
</Link>
|
||||
, et explorez les aides sur
|
||||
<Link
|
||||
href="https://www.aides-entreprises.fr"
|
||||
aria-label="aides-entreprises.fr, nouvelle fenêtre"
|
||||
>
|
||||
aides-entreprises.fr
|
||||
</Link>
|
||||
.
|
||||
</Trans>
|
||||
</Body>
|
||||
}
|
||||
/>
|
||||
<SalariéSimulationGoals />
|
||||
</Simulation>
|
||||
</>
|
||||
|
|
|
@ -19,7 +19,18 @@ export function SASUSimulation() {
|
|||
explanations={<SalaryExplanation />}
|
||||
afterQuestionsSlot={<SelectSimulationYear />}
|
||||
>
|
||||
<SimulateurWarning simulateur="sasu" />
|
||||
<SimulateurWarning
|
||||
simulateur="sasu"
|
||||
informationsComplémentaires={
|
||||
<Body>
|
||||
<Trans i18nKey="simulateurs.warning.sasu">
|
||||
Ce simulateur ne gère pas le cas des SAS(U) à l’impôt sur le
|
||||
revenu (IR). Seule l’option pour l’impôt sur les sociétés est
|
||||
implémentée (IS).
|
||||
</Trans>
|
||||
</Body>
|
||||
}
|
||||
/>
|
||||
<SimulationGoals
|
||||
toggles={<PeriodSwitch />}
|
||||
legend="Vos revenus de dirigeant de SAS(U)"
|
||||
|
|
Loading…
Add table
Reference in a new issue