Remove aide-declaration-independants config and add redirection

pull/2529/head
Jérémy Rialland 2023-02-28 14:43:25 +01:00 committed by Johan Girod
parent ee2c26812f
commit 9019a97768
16 changed files with 82 additions and 115 deletions

View File

@ -1,7 +1,7 @@
import { ErrorBoundary } from '@sentry/react'
import { FallbackRender } from '@sentry/react/types/errorboundary'
import rules from 'modele-social'
import { ComponentProps, useMemo } from 'react'
import { ComponentProps, StrictMode, useMemo } from 'react'
import { useTranslation } from 'react-i18next'
import { Navigate, Route, Routes } from 'react-router-dom'
import styled, { css } from 'styled-components'
@ -66,13 +66,58 @@ export default function Root({
// <StrictMode>
<Provider basename={basename}>
<EngineProvider value={engine}>
<Router />
<Redirections>
<Router />
</Redirections>
</EngineProvider>
</Provider>
// </StrictMode>
)
}
const Redirections = ({ children }: { children: React.ReactNode }) => {
const { absoluteSitePaths } = useSitePaths()
const redirections = [
{
paths: ['/stats'],
to: absoluteSitePaths.stats,
},
{
paths: ['/plan-de-site', '/site-map'],
to: absoluteSitePaths.plan,
},
{
paths: [
'/gérer/aide-declaration-independants/beta',
'/manage/declaration-aid-independent/beta',
],
to: absoluteSitePaths.gérer.déclarationIndépendant.index,
},
{
paths: [
'/gérer/aide-declaration-independants',
'/manage/declaration-aid-independent',
],
to: absoluteSitePaths.gérer['déclaration-charges-sociales-indépendant'],
},
] satisfies { paths: string[]; to: string }[]
return (
<Routes>
{redirections.flatMap(({ paths, to }) =>
paths.map((path) => (
<Route
key={path}
path={path}
element={<Navigate to={to} replace />}
/>
))
)}
<Route path="*" element={children} />
</Routes>
)
}
const Router = () => {
const engine = useEngine()
@ -81,32 +126,11 @@ const Router = () => {
return (
<Routes>
<Route index element={<Landing />} />
<Redirections />
<Route path="/iframes/*" element={<Iframes />} />
<Route path="*" element={<App />} />
</Routes>
)
}
const Redirections = () => {
const { relativeSitePaths } = useSitePaths()
return (
<>
<Route
path="/stats"
element={<Navigate to={relativeSitePaths.stats} replace />}
/>
<Route
path={'/plan-de-site'}
element={<Navigate to={relativeSitePaths.plan} replace />}
/>
<Route
path={'/site-map'}
element={<Navigate to={relativeSitePaths.plan} replace />}
/>
</>
)
}
const CatchOffline = ({ error }: ComponentProps<FallbackRender>) => {
if (error.message.includes('dynamically imported module')) {

View File

@ -86,7 +86,13 @@ export default function Plan() {
</Li>
<Li>
<H3>
<Link to={absoluteSitePaths.gérer.déclarationIndépendant.index}>
<Link
to={
absoluteSitePaths.gérer[
'déclaration-charges-sociales-indépendant'
]
}
>
<Trans>
Assistant à la détermination des charges sociales
déductibles

View File

@ -155,7 +155,7 @@ export default function Simulateurs() {
role="listitem"
/>
<SimulateurCard
{...simulators['déclaration-revenu-indépendant-beta']}
{...simulators['déclaration-revenu-indépendant']}
role="listitem"
/>
</Grid>

View File

@ -35,7 +35,6 @@ export function eirlConfig({ t, sitePaths }: SimulatorsDataParams) {
pathId: 'simulateurs.eirl',
shortName: t('pages.simulateurs.eirl.shortname', 'EIRL'),
title: t('pages.simulateurs.eirl.title', 'Simulateur de revenus pour EIRL'),
// nextSteps: ['déclaration-revenu-indépendant-beta', 'comparaison-statuts'],
nextSteps: ['comparaison-statuts'],
path: sitePaths.simulateurs.eirl,
simulation: configEirl,

View File

@ -38,11 +38,7 @@ export function eurlConfig({ t, sitePaths }: SimulatorsDataParams) {
'pages.simulateurs.eurl.title',
"Simulateur de revenus pour dirigeant d'EURL"
),
nextSteps: [
'déclaration-revenu-indépendant-beta',
'is',
'comparaison-statuts',
],
nextSteps: ['déclaration-revenu-indépendant', 'is', 'comparaison-statuts'],
path: sitePaths.simulateurs.eurl,
simulation: configEurl,
component: IndépendantSimulation,

View File

@ -25,11 +25,7 @@ export function indépendantConfig({ t, sitePaths }: SimulatorsDataParams) {
"Calcul du revenu net après impôt et des cotisations à partir du chiffre d'affaires et inversement"
),
},
nextSteps: [
'déclaration-revenu-indépendant-beta',
'comparaison-statuts',
'is',
],
nextSteps: ['déclaration-revenu-indépendant', 'comparaison-statuts', 'is'],
path: sitePaths.simulateurs.indépendant,
simulation: configIndépendant,
component: IndépendantSimulation,

View File

@ -2,10 +2,7 @@ import { ImmutableType } from '@/types/utils'
import { choixStatutConfig } from '../Creer/choix-statut/config'
import { rechercheCodeApeConfig } from '../assistants/recherche-code-ape/config'
import {
déclarationChargesSocialesIndépendantConfig,
déclarationRevenuIndépendantConfig,
} from '../gerer/declaration-charges-sociales-independant/config'
import { déclarationChargesSocialesIndépendantConfig } from '../gerer/declaration-charges-sociales-independant/config'
import { déclarationRevenuIndépendantBetaConfig } from '../gerer/declaration-revenu-independants/config'
import { demandeMobilitéConfig } from '../gerer/demande-mobilité/config'
import { artisteAuteurConfig } from './artiste-auteur/config'
@ -54,8 +51,6 @@ const getMetadataSrc = (params: SimulatorsDataParams) => {
...économieCollaborativeConfig(params),
...choixStatutConfig(params),
...déclarationChargesSocialesIndépendantConfig(params),
// TODO: Delete "déclaration-revenu-indépendant" object when DRI will no longer be in beta
...déclarationRevenuIndépendantConfig(params),
...déclarationRevenuIndépendantBetaConfig(params),
...demandeMobilitéConfig(params),
...pharmacienConfig(params),

View File

@ -14,7 +14,7 @@ export function DeclarationIndedependantsCard() {
'Déclaration de revenus (indépendants)'
)}
ctaLabel={t('gérer.choix.déclaration.cta', 'Remplir ma déclaration')}
to={absoluteSitePaths.gérer.déclarationIndépendant.index}
to={absoluteSitePaths.gérer['déclaration-charges-sociales-indépendant']}
>
<Trans i18nKey="gérer.choix.déclaration.body">
Calculez facilement les montants des charges sociales à reporter dans

View File

@ -34,45 +34,7 @@ export function déclarationChargesSocialesIndépendantConfig({
'pages.gérer.declaration_charges_sociales_indépendant.title',
'Assistant à la détermination des charges sociales déductibles'
),
nextSteps: ['déclaration-revenu-indépendant-beta'],
component: DéclarationChargeSocialeIndépendant,
} as const)
}
export function déclarationRevenuIndépendantConfig({
t,
sitePaths,
}: SimulatorsDataParams) {
// TODO: Delete "déclaration-revenu-indépendant" object when DRI will no longer be in beta
return config({
id: 'déclaration-revenu-indépendant',
path: sitePaths.gérer.déclarationIndépendant.index,
tracking: {
chapter1: 'gerer',
chapter2: 'declaration_charges_sociales_independant',
},
icône: '📑',
meta: {
description: t(
'pages.gérer.declaration_charges_sociales_indépendant.meta.description',
'Calculez le montant des cotisations et contributions sociales à reporter dans votre déclaration de revenu 2021'
),
title: t(
'pages.gérer.declaration_charges_sociales_indépendant.meta.title',
'Détermination des charges sociales déductibles'
),
},
pathId: 'gérer.déclarationIndépendant.index',
shortName: t(
'pages.gérer.declaration_charges_sociales_indépendant.shortname',
'Détermination des charges sociales déductibles'
),
iframePath: 'déclaration-revenu-indépendant',
title: t(
'pages.gérer.declaration_charges_sociales_indépendant.title',
'Assistant à la détermination des charges sociales déductibles'
),
nextSteps: ['déclaration-revenu-indépendant-beta'],
nextSteps: ['déclaration-revenu-indépendant'],
component: DéclarationChargeSocialeIndépendant,
} as const)
}

View File

@ -179,8 +179,7 @@ export function DéclarationRevenuSection({ progress }: { progress: number }) {
size="XL"
isDisabled={progress !== 1}
to={
absoluteSitePaths.gérer.déclarationIndépendant.beta
.cotisations
absoluteSitePaths.gérer.déclarationIndépendant.cotisations
}
>
Continuer vers l'estimation des cotisations pour 2022

View File

@ -7,14 +7,16 @@ export function déclarationRevenuIndépendantBetaConfig({
sitePaths,
}: SimulatorsDataParams) {
return config({
id: 'déclaration-revenu-indépendant-beta',
beta: true,
id: 'déclaration-revenu-indépendant',
pathId: 'gérer.déclarationIndépendant.index',
path: sitePaths.gérer.déclarationIndépendant.index,
iframePath: 'déclaration-revenu-indépendant',
icône: '✍️',
tracking: {
chapter1: 'gerer',
chapter2: 'declaration_revenu_independant',
},
icône: '✍️',
iframePath: 'déclaration-revenu-indépendant',
meta: {
description: t(
'pages.gérer.declaration_revenu_indépendant.meta.description',
@ -25,7 +27,6 @@ export function déclarationRevenuIndépendantBetaConfig({
'Assistant à la déclaration de revenu pour les indépendants'
),
},
pathId: 'gérer.déclarationIndépendant.beta.index',
shortName: t(
'pages.gérer.declaration_revenu_indépendant.shortname',
'Aide au remplissage de la déclaration de revenu'
@ -35,7 +36,6 @@ export function déclarationRevenuIndépendantBetaConfig({
'Assistant à la déclaration de revenu pour les indépendants'
),
nextSteps: ['déclaration-charges-sociales-indépendant'],
path: sitePaths.gérer.déclarationIndépendant.beta.index,
component: DéclarationRevenuIndépendant,
} as const)
}

View File

@ -192,8 +192,7 @@ export default function Accueil() {
<Button
size="XL"
to={
absoluteSitePaths.gérer.déclarationIndépendant.beta
.imposition
absoluteSitePaths.gérer.déclarationIndépendant.imposition
}
>
Continuer avec cette entreprise

View File

@ -349,8 +349,7 @@ function ResultSection() {
>
<Button
to={
absoluteSitePaths.gérer.déclarationIndépendant.beta
.déclaration
absoluteSitePaths.gérer.déclarationIndépendant.déclaration
}
onPress={() => {
dispatchValue('non', 'DRI . déclaration revenus manuelle')
@ -425,8 +424,7 @@ function ResultSection() {
light
size="XS"
to={
absoluteSitePaths.gérer.déclarationIndépendant.beta
.déclaration
absoluteSitePaths.gérer.déclarationIndépendant.déclaration
}
onPress={() => {
dispatchValue('oui', 'DRI . déclaration revenus manuelle')

View File

@ -41,7 +41,7 @@ const config: SimulationConfig = {
export default function AideDéclarationIndépendant() {
const { absoluteSitePaths } = useSitePaths()
useSimulationConfig({
path: absoluteSitePaths.gérer.déclarationIndépendant.beta.index,
path: absoluteSitePaths.gérer.déclarationIndépendant.index,
config,
autoloadLastSimulation: true,
})
@ -96,7 +96,7 @@ export default function AideDéclarationIndépendant() {
function useSteps() {
const sitePaths =
useSitePaths().relativeSitePaths.gérer.déclarationIndépendant.beta
useSitePaths().relativeSitePaths.gérer.déclarationIndépendant
const { t } = useTranslation()
const step1Progress = useProgress(Step1Objectifs)
const step2Progress = useProgress(Step2Objectifs)

View File

@ -102,7 +102,6 @@ export default function Gérer() {
/>
{[
simulateurs['déclaration-charges-sociales-indépendant'],
simulateurs['déclaration-revenu-indépendant-beta'],
simulateurs['déclaration-revenu-indépendant'],
simulateurs['demande-mobilité'],
].map((p) => (
@ -315,7 +314,7 @@ function Home() {
<WhenApplicable dottedName="dirigeant . indépendant">
<SimulateurCard
fromGérer
{...simulateurs['déclaration-revenu-indépendant-beta']}
{...simulateurs['déclaration-revenu-indépendant']}
/>
</WhenApplicable>
<Condition expression="entreprise . imposition . IS">

View File

@ -43,14 +43,11 @@ const rawSitePathsFr = {
'déclaration-charges-sociales-indépendant':
'declaration-charges-sociales-independant',
déclarationIndépendant: {
index: 'aide-declaration-independants',
beta: {
index: 'beta',
entreprise: 'entreprise',
imposition: 'imposition',
déclaration: 'declaration',
cotisations: 'cotisations',
},
index: 'aide-declaration-independants-v2',
entreprise: 'entreprise',
imposition: 'imposition',
déclaration: 'declaration',
cotisations: 'cotisations',
},
formulaireMobilité: 'demande-mobilité',
},
@ -131,14 +128,11 @@ const rawSitePathsEn = {
'déclaration-charges-sociales-indépendant':
'declaration-social-charges-independent',
déclarationIndépendant: {
index: 'declaration-aid-independent',
beta: {
index: 'beta',
imposition: 'taxation',
entreprise: 'company',
déclaration: 'declaration',
cotisations: 'contributions',
},
index: 'declaration-aid-independent-v2',
imposition: 'taxation',
entreprise: 'company',
déclaration: 'declaration',
cotisations: 'contributions',
},
formulaireMobilité: 'posting-demand',
},