Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • pub/pnm-public/camino
1 result
Show changes
Commits on Source (3)
Showing
with 415 additions and 170 deletions
......@@ -3459,6 +3459,100 @@
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
}
},
"node_modules/@formatjs/ecma402-abstract": {
"version": "1.18.2",
"resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-1.18.2.tgz",
"integrity": "sha512-+QoPW4csYALsQIl8GbN14igZzDbuwzcpWrku9nyMXlaqAlwRBgl5V+p0vWMGFqHOw37czNXaP/lEk4wbLgcmtA==",
"license": "MIT",
"dependencies": {
"@formatjs/intl-localematcher": "0.5.4",
"tslib": "^2.4.0"
}
},
"node_modules/@formatjs/fast-memoize": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/@formatjs/fast-memoize/-/fast-memoize-2.2.0.tgz",
"integrity": "sha512-hnk/nY8FyrL5YxwP9e4r9dqeM6cAbo8PeU9UjyXojZMNvVad2Z06FAVHyR3Ecw6fza+0GH7vdJgiKIVXTMbSBA==",
"license": "MIT",
"dependencies": {
"tslib": "^2.4.0"
}
},
"node_modules/@formatjs/icu-messageformat-parser": {
"version": "2.7.6",
"resolved": "https://registry.npmjs.org/@formatjs/icu-messageformat-parser/-/icu-messageformat-parser-2.7.6.tgz",
"integrity": "sha512-etVau26po9+eewJKYoiBKP6743I1br0/Ie00Pb/S/PtmYfmjTcOn2YCh2yNkSZI12h6Rg+BOgQYborXk46BvkA==",
"license": "MIT",
"dependencies": {
"@formatjs/ecma402-abstract": "1.18.2",
"@formatjs/icu-skeleton-parser": "1.8.0",
"tslib": "^2.4.0"
}
},
"node_modules/@formatjs/icu-skeleton-parser": {
"version": "1.8.0",
"resolved": "https://registry.npmjs.org/@formatjs/icu-skeleton-parser/-/icu-skeleton-parser-1.8.0.tgz",
"integrity": "sha512-QWLAYvM0n8hv7Nq5BEs4LKIjevpVpbGLAJgOaYzg9wABEoX1j0JO1q2/jVkO6CVlq0dbsxZCngS5aXbysYueqA==",
"license": "MIT",
"dependencies": {
"@formatjs/ecma402-abstract": "1.18.2",
"tslib": "^2.4.0"
}
},
"node_modules/@formatjs/intl": {
"version": "2.10.2",
"resolved": "https://registry.npmjs.org/@formatjs/intl/-/intl-2.10.2.tgz",
"integrity": "sha512-raPGWr3JRv3neXV78SqPFrGC05fIbhhNzVghHNxFde27ls2KkXiMhtP7HBybjGpikVSjjhdhaZto+4p1vmm9bQ==",
"license": "MIT",
"dependencies": {
"@formatjs/ecma402-abstract": "1.18.2",
"@formatjs/fast-memoize": "2.2.0",
"@formatjs/icu-messageformat-parser": "2.7.6",
"@formatjs/intl-displaynames": "6.6.6",
"@formatjs/intl-listformat": "7.5.5",
"intl-messageformat": "10.5.12",
"tslib": "^2.4.0"
},
"peerDependencies": {
"typescript": "^4.7 || 5"
},
"peerDependenciesMeta": {
"typescript": {
"optional": true
}
}
},
"node_modules/@formatjs/intl-displaynames": {
"version": "6.6.6",
"resolved": "https://registry.npmjs.org/@formatjs/intl-displaynames/-/intl-displaynames-6.6.6.tgz",
"integrity": "sha512-Dg5URSjx0uzF8VZXtHb6KYZ6LFEEhCbAbKoYChYHEOnMFTw/ZU3jIo/NrujzQD2EfKPgQzIq73LOUvW6Z/LpFA==",
"license": "MIT",
"dependencies": {
"@formatjs/ecma402-abstract": "1.18.2",
"@formatjs/intl-localematcher": "0.5.4",
"tslib": "^2.4.0"
}
},
"node_modules/@formatjs/intl-listformat": {
"version": "7.5.5",
"resolved": "https://registry.npmjs.org/@formatjs/intl-listformat/-/intl-listformat-7.5.5.tgz",
"integrity": "sha512-XoI52qrU6aBGJC9KJddqnacuBbPlb/bXFN+lIFVFhQ1RnFHpzuFrlFdjD9am2O7ZSYsyqzYRpkVcXeT1GHkwDQ==",
"license": "MIT",
"dependencies": {
"@formatjs/ecma402-abstract": "1.18.2",
"@formatjs/intl-localematcher": "0.5.4",
"tslib": "^2.4.0"
}
},
"node_modules/@formatjs/intl-localematcher": {
"version": "0.5.4",
"resolved": "https://registry.npmjs.org/@formatjs/intl-localematcher/-/intl-localematcher-0.5.4.tgz",
"integrity": "sha512-zTwEpWOzZ2CiKcB93BLngUX59hQkuZjT2+SAQEscSm52peDW/getsawMcWF1rGRpMCX6D7nSJA3CzJ8gn13N/g==",
"license": "MIT",
"dependencies": {
"tslib": "^2.4.0"
}
},
"node_modules/@graphql-tools/graphql-file-loader": {
"version": "8.0.6",
"resolved": "https://registry.npmjs.org/@graphql-tools/graphql-file-loader/-/graphql-file-loader-8.0.6.tgz",
......@@ -4572,8 +4666,7 @@
"node_modules/@kurkle/color": {
"version": "0.3.4",
"resolved": "https://registry.npmjs.org/@kurkle/color/-/color-0.3.4.tgz",
"integrity": "sha512-M5UknZPHRu3DEDWoipU6sE8PdkZ6Z/S+v4dD+Ke8IaNlpdSQah50lz1KtcFBa2vsdOnwbbnxJwVM4wty6udA5w==",
"dev": true
"integrity": "sha512-M5UknZPHRu3DEDWoipU6sE8PdkZ6Z/S+v4dD+Ke8IaNlpdSQah50lz1KtcFBa2vsdOnwbbnxJwVM4wty6udA5w=="
},
"node_modules/@mapbox/geojson-rewind": {
"version": "0.5.2",
......@@ -10740,6 +10833,37 @@
"pnpm": ">=8"
}
},
"node_modules/chart2music": {
"version": "1.17.0",
"resolved": "https://registry.npmjs.org/chart2music/-/chart2music-1.17.0.tgz",
"integrity": "sha512-oDlISz51Mttx74cbA8REJDHxennlRxdafSSyimeqtsk/EUF3wO+KCuBMEGj9ZYTemlfe+GtfUa9kkV6tPScEvQ==",
"license": "MIT",
"dependencies": {
"@formatjs/intl": "2.10.2"
}
},
"node_modules/chartjs-plugin-chart2music": {
"version": "0.6.0",
"resolved": "https://registry.npmjs.org/chartjs-plugin-chart2music/-/chartjs-plugin-chart2music-0.6.0.tgz",
"integrity": "sha512-70MJF5XAk/aAauIX6Z8IQh/gAeBLIqBLFapS+Kt7+cb9pdrbCu5RerqhI41X+ffQKl9ImsWoa/kDRyVQBgXj0Q==",
"license": "MIT",
"dependencies": {
"chart.js": "4.4.4",
"chart2music": "1.17.0"
}
},
"node_modules/chartjs-plugin-chart2music/node_modules/chart.js": {
"version": "4.4.4",
"resolved": "https://registry.npmjs.org/chart.js/-/chart.js-4.4.4.tgz",
"integrity": "sha512-emICKGBABnxhMjUjlYRR12PmOXhJ2eJjEHL2/dZlWjxRAZT1D8xplLFq5M0tMQK8ja+wBS/tuVEJB5C6r7VxJA==",
"license": "MIT",
"dependencies": {
"@kurkle/color": "^0.3.0"
},
"engines": {
"pnpm": ">=8"
}
},
"node_modules/check-error": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/check-error/-/check-error-2.1.1.tgz",
......@@ -13916,6 +14040,15 @@
"integrity": "sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==",
"dev": true
},
"node_modules/focus-trap": {
"version": "7.6.4",
"resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.6.4.tgz",
"integrity": "sha512-xx560wGBk7seZ6y933idtjJQc1l+ck+pI3sKvhKozdBV1dRZoKhkW5xoCaFv9tQiX5RH1xfSxjuNu6g+lmN/gw==",
"license": "MIT",
"dependencies": {
"tabbable": "^6.2.0"
}
},
"node_modules/follow-redirects": {
"version": "1.15.9",
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz",
......@@ -15208,6 +15341,18 @@
"node": ">= 0.10"
}
},
"node_modules/intl-messageformat": {
"version": "10.5.12",
"resolved": "https://registry.npmjs.org/intl-messageformat/-/intl-messageformat-10.5.12.tgz",
"integrity": "sha512-izl0uxhy/melhw8gP2r8pGiVieviZmM4v5Oqx3c1/R7g9cwER2smmGfSjcIsp8Y3Q53bfciL/gkxacJRx/dUvg==",
"license": "BSD-3-Clause",
"dependencies": {
"@formatjs/ecma402-abstract": "1.18.2",
"@formatjs/fast-memoize": "2.2.0",
"@formatjs/icu-messageformat-parser": "2.7.6",
"tslib": "^2.4.0"
}
},
"node_modules/into-stream": {
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/into-stream/-/into-stream-7.0.0.tgz",
......@@ -24308,6 +24453,12 @@
"url": "https://opencollective.com/unts"
}
},
"node_modules/tabbable": {
"version": "6.2.0",
"resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.2.0.tgz",
"integrity": "sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==",
"license": "MIT"
},
"node_modules/tapable": {
"version": "2.2.1",
"resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
......@@ -26857,7 +27008,9 @@
"version": "1.0.0",
"dependencies": {
"@codegouvfr/react-dsfr": "1.17.0",
"chartjs-plugin-chart2music": "^0.6.0",
"decimal.js": "^10.4.3",
"focus-trap": "^7.6.4",
"zod": "^3.23.8"
},
"devDependencies": {
......
......@@ -29,7 +29,7 @@ describe('vérifie l’arbre d’octroi de PRM', () => {
ETES.publicationDeDecisionAuRecueilDesActesAdministratifs.FAIT,
ETES.publicationDansUnJournalLocalOuNational.FAIT,
ETES.notificationAuDemandeur.FAIT,
ETES.notificationAuPrefet.FAIT,
ETES.informationDuPrefetEtDesCollectivites.FAIT,
])
expect(tree).toMatchInlineSnapshot(`
[
......@@ -48,12 +48,12 @@ describe('vérifie l’arbre d’octroi de PRM', () => {
"RENDRE_AVIS_CONSEIL_GENERAL_CHARGE_DES_MINES (publique , en instruction ) -> [CLASSER_SANS_SUITE,DEMANDER_INFORMATIONS,DESISTER_PAR_LE_DEMANDEUR,FAIRE_SAISINE_AUTORITE_SIGNATAIRE,MODIFIER_DEMANDE,RECEVOIR_INFORMATIONS]",
"FAIRE_SAISINE_AUTORITE_SIGNATAIRE (publique , en instruction ) -> [CLASSER_SANS_SUITE,DEMANDER_INFORMATIONS,DESISTER_PAR_LE_DEMANDEUR,MODIFIER_DEMANDE,RECEVOIR_INFORMATIONS,RENDRE_DECISION_ADMINISTRATION_ACCEPTE,RENDRE_DECISION_ADMINISTRATION_REJETE]",
"RENDRE_DECISION_ADMINISTRATION_ACCEPTE (publique , en instruction ) -> [CLASSER_SANS_SUITE,DEMANDER_INFORMATIONS,DESISTER_PAR_LE_DEMANDEUR,FAIRE_PUBLICATION_AU_JORF,MODIFIER_DEMANDE,RECEVOIR_INFORMATIONS]",
"FAIRE_PUBLICATION_AU_JORF (publique , accepté ) -> [NOTIFIER_COLLECTIVITES_LOCALES,NOTIFIER_DEMANDEUR,NOTIFIER_PREFET,PUBLIER_DANS_UN_JOURNAL_LOCAL_OU_NATIONAL,PUBLIER_DECISIONS_RECUEIL_ACTES_ADMINISTRATIFS]",
"NOTIFIER_COLLECTIVITES_LOCALES (publique , accepté ) -> [NOTIFIER_DEMANDEUR,NOTIFIER_PREFET,PUBLIER_DANS_UN_JOURNAL_LOCAL_OU_NATIONAL,PUBLIER_DECISIONS_RECUEIL_ACTES_ADMINISTRATIFS]",
"PUBLIER_DECISIONS_RECUEIL_ACTES_ADMINISTRATIFS (publique , accepté ) -> [NOTIFIER_DEMANDEUR,NOTIFIER_PREFET,PUBLIER_DANS_UN_JOURNAL_LOCAL_OU_NATIONAL]",
"PUBLIER_DANS_UN_JOURNAL_LOCAL_OU_NATIONAL (publique , accepté ) -> [NOTIFIER_DEMANDEUR,NOTIFIER_PREFET]",
"NOTIFIER_DEMANDEUR (publique , accepté ) -> [NOTIFIER_PREFET]",
"NOTIFIER_PREFET (publique , accepté ) -> []",
"FAIRE_PUBLICATION_AU_JORF (publique , accepté ) -> [NOTIFIER_COLLECTIVITES_LOCALES,NOTIFIER_DEMANDEUR,PUBLIER_DANS_UN_JOURNAL_LOCAL_OU_NATIONAL,PUBLIER_DECISIONS_RECUEIL_ACTES_ADMINISTRATIFS,RENDRE_INFORMATION_DU_PREFET_ET_DES_COLLECTIVITES]",
"NOTIFIER_COLLECTIVITES_LOCALES (publique , accepté ) -> [NOTIFIER_DEMANDEUR,PUBLIER_DANS_UN_JOURNAL_LOCAL_OU_NATIONAL,PUBLIER_DECISIONS_RECUEIL_ACTES_ADMINISTRATIFS,RENDRE_INFORMATION_DU_PREFET_ET_DES_COLLECTIVITES]",
"PUBLIER_DECISIONS_RECUEIL_ACTES_ADMINISTRATIFS (publique , accepté ) -> [NOTIFIER_DEMANDEUR,PUBLIER_DANS_UN_JOURNAL_LOCAL_OU_NATIONAL,RENDRE_INFORMATION_DU_PREFET_ET_DES_COLLECTIVITES]",
"PUBLIER_DANS_UN_JOURNAL_LOCAL_OU_NATIONAL (publique , accepté ) -> [NOTIFIER_DEMANDEUR,RENDRE_INFORMATION_DU_PREFET_ET_DES_COLLECTIVITES]",
"NOTIFIER_DEMANDEUR (publique , accepté ) -> [RENDRE_INFORMATION_DU_PREFET_ET_DES_COLLECTIVITES]",
"RENDRE_INFORMATION_DU_PREFET_ET_DES_COLLECTIVITES (publique , accepté ) -> []",
]
`)
})
......@@ -227,13 +227,13 @@ describe('vérifie l’arbre d’octroi de PRM', () => {
ETES.avisDuConseilGeneralDeLeconomie_CGE_.FAVORABLE,
ETES.saisineDeLautoriteSignataire.FAIT,
ETES.decisionDeLAutoriteAdministrative.REJETE,
ETES.notificationAuPrefet.FAIT,
ETES.informationDuPrefetEtDesCollectivites.FAIT,
ETES.notificationAuDemandeur.FAIT,
ETES.publicationDeDecisionAuRecueilDesActesAdministratifs.FAIT,
]
expect(() => setDateAndOrderAndInterpretMachine(prmOctMachine, '2022-04-13', etapes)).toThrowErrorMatchingInlineSnapshot(
`[Error: Error: cannot execute step: '{"etapeTypeId":"rpu","etapeStatutId":"fai","date":"2022-05-30"}' after '["mfr_fai","men_fai","spp_fai","mcr_fav","anf_ter","asc_fai","ppu_ter","apd_fav","app_fav","scg_fai","rcg_fav","acg_fav","sas_fai","dex_rej","npp_fai","mno_fai"]'. The event {"type":"PUBLIER_DECISIONS_RECUEIL_ACTES_ADMINISTRATIFS","date":"2022-05-30","status":"fai"} should be one of 'RENDRE_DECISION_ABROGATION,RENDRE_DECISION_ANNULATION_PAR_JUGE_ADMINISTRATIF']`
`[Error: Error: cannot execute step: '{"etapeTypeId":"rpu","etapeStatutId":"fai","date":"2022-05-30"}' after '["mfr_fai","men_fai","spp_fai","mcr_fav","anf_ter","asc_fai","ppu_ter","apd_fav","app_fav","scg_fai","rcg_fav","acg_fav","sas_fai","dex_rej","ipc_fai","mno_fai"]'. The event {"type":"PUBLIER_DECISIONS_RECUEIL_ACTES_ADMINISTRATIFS","date":"2022-05-30","status":"fai"} should be one of 'RENDRE_DECISION_ABROGATION,RENDRE_DECISION_ANNULATION_PAR_JUGE_ADMINISTRATIF']`
)
})
......
......@@ -64,7 +64,7 @@ type XStateEvent =
| { type: 'RENDRE_DECISION_ADMINISTRATION_ACCEPTE' }
| { type: 'RENDRE_DECISION_ADMINISTRATION_REJETE' }
| { type: 'FAIRE_PUBLICATION_AU_JORF' }
| { type: 'NOTIFIER_PREFET' }
| { type: 'RENDRE_INFORMATION_DU_PREFET_ET_DES_COLLECTIVITES' }
| { type: 'NOTIFIER_DEMANDEUR' }
| { type: 'PUBLIER_DECISIONS_RECUEIL_ACTES_ADMINISTRATIFS' }
| { type: 'PUBLIER_DANS_UN_JOURNAL_LOCAL_OU_NATIONAL' }
......@@ -114,7 +114,7 @@ const trad: { [key in Event]: { db: DBEtat; mainStep: boolean } } = {
RENDRE_DECISION_ADMINISTRATION_ACCEPTE: { db: { ACCEPTE: EtapesTypesEtapesStatuts.decisionDeLAutoriteAdministrative.ACCEPTE }, mainStep: true },
RENDRE_DECISION_ADMINISTRATION_REJETE: { db: { REJETE: EtapesTypesEtapesStatuts.decisionDeLAutoriteAdministrative.REJETE }, mainStep: true },
FAIRE_PUBLICATION_AU_JORF: { db: EtapesTypesEtapesStatuts.publicationDeDecisionAuJORF, mainStep: true },
NOTIFIER_PREFET: { db: EtapesTypesEtapesStatuts.notificationAuPrefet, mainStep: true },
RENDRE_INFORMATION_DU_PREFET_ET_DES_COLLECTIVITES: { db: EtapesTypesEtapesStatuts.informationDuPrefetEtDesCollectivites, mainStep: true },
NOTIFIER_DEMANDEUR: { db: EtapesTypesEtapesStatuts.notificationAuDemandeur, mainStep: true },
PUBLIER_DECISIONS_RECUEIL_ACTES_ADMINISTRATIFS: { db: EtapesTypesEtapesStatuts.publicationDeDecisionAuRecueilDesActesAdministratifs, mainStep: true },
PUBLIER_DANS_UN_JOURNAL_LOCAL_OU_NATIONAL: { db: EtapesTypesEtapesStatuts.publicationDansUnJournalLocalOuNational, mainStep: true },
......@@ -481,23 +481,23 @@ const prmOctMachine = createMachine({
publicationAuJORFAFaire: {
on: {
FAIRE_PUBLICATION_AU_JORF: {
target: 'notificationsAFaire',
target: 'notificationsEtInformationsAFaire',
actions: assign({
demarcheStatut: DemarchesStatutsIds.Accepte,
}),
},
},
},
notificationsAFaire: {
notificationsEtInformationsAFaire: {
type: 'parallel',
states: {
notificationDuPrefetMachine: {
initial: 'notificationDuPrefetAFaire',
informationDuPrefetEtDesCollectivitesMachine: {
initial: 'informationDuPrefetEtDesCollectivitesAFaire',
states: {
notificationDuPrefetAFaire: {
on: { NOTIFIER_PREFET: 'notificationDuPrefetFaite' },
informationDuPrefetEtDesCollectivitesAFaire: {
on: { RENDRE_INFORMATION_DU_PREFET_ET_DES_COLLECTIVITES: 'informationDuPrefetEtDesCollectivitesFaite' },
},
notificationDuPrefetFaite: { type: 'final' },
informationDuPrefetEtDesCollectivitesFaite: { type: 'final' },
},
},
notificationDuDemandeurMachine: {
......@@ -551,10 +551,10 @@ const prmOctMachine = createMachine({
type: 'parallel',
states: {
notificationsMachine: {
initial: 'notificationDuPrefetAFaire',
initial: 'informationDuPrefetEtDesCollectivitesAFaire',
states: {
notificationDuPrefetAFaire: {
on: { NOTIFIER_PREFET: 'notificationDuDemandeurAFaire' },
informationDuPrefetEtDesCollectivitesAFaire: {
on: { RENDRE_INFORMATION_DU_PREFET_ET_DES_COLLECTIVITES: 'notificationDuDemandeurAFaire' },
},
notificationDuDemandeurAFaire: {
on: { NOTIFIER_DEMANDEUR: 'notificationDuDemandeurFaite' },
......
......@@ -85,12 +85,16 @@ exports[`canCreateTitre > vérifie si un utilisateur administrateur admin peut c
"arm": true,
"axm": true,
"cxm": true,
"cxr": true,
"cxw": true,
"inm": true,
"inr": true,
"pcc": true,
"prm": true,
"prr": true,
"prw": true,
"pxm": true,
"pxr": true,
"pxw": true,
},
"min-mtes-dgec-01": {
......@@ -109,12 +113,6 @@ exports[`canCreateTitre > vérifie si un utilisateur administrateur admin peut c
"pxg": true,
"pxh": true,
},
"min-mtes-dgpr-01": {
"cxr": true,
"inr": true,
"prr": true,
"pxr": true,
},
}
`;
......@@ -578,7 +576,7 @@ exports[`canEditTitre > vérifie si un utilisateur administrateur admin peut mod
"sup": true,
"val": true,
},
"cxw": {
"cxr": {
"dmc": true,
"dmi": true,
"ech": true,
......@@ -587,7 +585,7 @@ exports[`canEditTitre > vérifie si un utilisateur administrateur admin peut mod
"sup": true,
"val": true,
},
"inm": {
"cxw": {
"dmc": true,
"dmi": true,
"ech": true,
......@@ -596,7 +594,7 @@ exports[`canEditTitre > vérifie si un utilisateur administrateur admin peut mod
"sup": true,
"val": true,
},
"pcc": {
"inm": {
"dmc": true,
"dmi": true,
"ech": true,
......@@ -605,7 +603,7 @@ exports[`canEditTitre > vérifie si un utilisateur administrateur admin peut mod
"sup": true,
"val": true,
},
"prm": {
"inr": {
"dmc": true,
"dmi": true,
"ech": true,
......@@ -614,7 +612,7 @@ exports[`canEditTitre > vérifie si un utilisateur administrateur admin peut mod
"sup": true,
"val": true,
},
"prw": {
"pcc": {
"dmc": true,
"dmi": true,
"ech": true,
......@@ -623,7 +621,7 @@ exports[`canEditTitre > vérifie si un utilisateur administrateur admin peut mod
"sup": true,
"val": true,
},
"pxm": {
"prm": {
"dmc": true,
"dmi": true,
"ech": true,
......@@ -632,7 +630,7 @@ exports[`canEditTitre > vérifie si un utilisateur administrateur admin peut mod
"sup": true,
"val": true,
},
"pxw": {
"prr": {
"dmc": true,
"dmi": true,
"ech": true,
......@@ -641,9 +639,7 @@ exports[`canEditTitre > vérifie si un utilisateur administrateur admin peut mod
"sup": true,
"val": true,
},
},
"min-mtes-dgec-01": {
"aph": {
"prw": {
"dmc": true,
"dmi": true,
"ech": true,
......@@ -652,7 +648,7 @@ exports[`canEditTitre > vérifie si un utilisateur administrateur admin peut mod
"sup": true,
"val": true,
},
"arg": {
"pxm": {
"dmc": true,
"dmi": true,
"ech": true,
......@@ -661,7 +657,7 @@ exports[`canEditTitre > vérifie si un utilisateur administrateur admin peut mod
"sup": true,
"val": true,
},
"cxf": {
"pxr": {
"dmc": true,
"dmi": true,
"ech": true,
......@@ -670,7 +666,7 @@ exports[`canEditTitre > vérifie si un utilisateur administrateur admin peut mod
"sup": true,
"val": true,
},
"cxg": {
"pxw": {
"dmc": true,
"dmi": true,
"ech": true,
......@@ -679,7 +675,9 @@ exports[`canEditTitre > vérifie si un utilisateur administrateur admin peut mod
"sup": true,
"val": true,
},
"cxh": {
},
"min-mtes-dgec-01": {
"aph": {
"dmc": true,
"dmi": true,
"ech": true,
......@@ -688,7 +686,7 @@ exports[`canEditTitre > vérifie si un utilisateur administrateur admin peut mod
"sup": true,
"val": true,
},
"cxs": {
"arg": {
"dmc": true,
"dmi": true,
"ech": true,
......@@ -697,7 +695,7 @@ exports[`canEditTitre > vérifie si un utilisateur administrateur admin peut mod
"sup": true,
"val": true,
},
"prf": {
"cxf": {
"dmc": true,
"dmi": true,
"ech": true,
......@@ -706,7 +704,7 @@ exports[`canEditTitre > vérifie si un utilisateur administrateur admin peut mod
"sup": true,
"val": true,
},
"prg": {
"cxg": {
"dmc": true,
"dmi": true,
"ech": true,
......@@ -715,7 +713,7 @@ exports[`canEditTitre > vérifie si un utilisateur administrateur admin peut mod
"sup": true,
"val": true,
},
"prh": {
"cxh": {
"dmc": true,
"dmi": true,
"ech": true,
......@@ -724,7 +722,7 @@ exports[`canEditTitre > vérifie si un utilisateur administrateur admin peut mod
"sup": true,
"val": true,
},
"prm": {
"cxs": {
"dmc": true,
"dmi": true,
"ech": true,
......@@ -733,7 +731,7 @@ exports[`canEditTitre > vérifie si un utilisateur administrateur admin peut mod
"sup": true,
"val": true,
},
"prs": {
"prf": {
"dmc": true,
"dmi": true,
"ech": true,
......@@ -742,7 +740,7 @@ exports[`canEditTitre > vérifie si un utilisateur administrateur admin peut mod
"sup": true,
"val": true,
},
"pxf": {
"prg": {
"dmc": true,
"dmi": true,
"ech": true,
......@@ -751,7 +749,7 @@ exports[`canEditTitre > vérifie si un utilisateur administrateur admin peut mod
"sup": true,
"val": true,
},
"pxg": {
"prh": {
"dmc": true,
"dmi": true,
"ech": true,
......@@ -760,7 +758,7 @@ exports[`canEditTitre > vérifie si un utilisateur administrateur admin peut mod
"sup": true,
"val": true,
},
"pxh": {
"prm": {
"dmc": true,
"dmi": true,
"ech": true,
......@@ -769,9 +767,7 @@ exports[`canEditTitre > vérifie si un utilisateur administrateur admin peut mod
"sup": true,
"val": true,
},
},
"min-mtes-dgpr-01": {
"cxr": {
"prs": {
"dmc": true,
"dmi": true,
"ech": true,
......@@ -780,7 +776,7 @@ exports[`canEditTitre > vérifie si un utilisateur administrateur admin peut mod
"sup": true,
"val": true,
},
"inr": {
"pxf": {
"dmc": true,
"dmi": true,
"ech": true,
......@@ -789,7 +785,7 @@ exports[`canEditTitre > vérifie si un utilisateur administrateur admin peut mod
"sup": true,
"val": true,
},
"prr": {
"pxg": {
"dmc": true,
"dmi": true,
"ech": true,
......@@ -798,7 +794,7 @@ exports[`canEditTitre > vérifie si un utilisateur administrateur admin peut mod
"sup": true,
"val": true,
},
"pxr": {
"pxh": {
"dmc": true,
"dmi": true,
"ech": true,
......
......@@ -156,8 +156,8 @@ exports[`vérifie les administrations gestionnaire d'un type de titre 1`] = `
],
"cxr": [
{
"administrationId": "min-mtes-dgpr-01",
"associee": false,
"administrationId": "min-mtes-dgaln-01",
"associee": true,
},
],
"cxs": [
......@@ -180,8 +180,8 @@ exports[`vérifie les administrations gestionnaire d'un type de titre 1`] = `
],
"inr": [
{
"administrationId": "min-mtes-dgpr-01",
"associee": false,
"administrationId": "min-mtes-dgaln-01",
"associee": true,
},
],
"pcc": [
......@@ -224,8 +224,8 @@ exports[`vérifie les administrations gestionnaire d'un type de titre 1`] = `
],
"prr": [
{
"administrationId": "min-mtes-dgpr-01",
"associee": false,
"administrationId": "min-mtes-dgaln-01",
"associee": true,
},
],
"prs": [
......@@ -338,8 +338,8 @@ exports[`vérifie les administrations gestionnaire d'un type de titre 1`] = `
],
"pxr": [
{
"administrationId": "min-mtes-dgpr-01",
"associee": false,
"administrationId": "min-mtes-dgaln-01",
"associee": true,
},
],
"pxw": [
......@@ -1293,24 +1293,24 @@ exports[`vérifie si l'administration est associée par rapport au titreType 1`]
"cxg": true,
"cxh": true,
"cxm": true,
"cxr": false,
"cxr": true,
"cxs": true,
"cxw": true,
"inm": true,
"inr": false,
"inr": true,
"pcc": true,
"prf": true,
"prg": true,
"prh": true,
"prm": true,
"prr": false,
"prr": true,
"prs": true,
"prw": true,
"pxf": true,
"pxg": true,
"pxh": true,
"pxm": true,
"pxr": false,
"pxr": true,
"pxw": true,
},
"ope-brgm-01": {
......@@ -4807,7 +4807,7 @@ exports[`vérifie si l'administration est gestionnaire 1`] = `
"min-mctrct-dgcl-01": false,
"min-mtes-dgaln-01": true,
"min-mtes-dgec-01": true,
"min-mtes-dgpr-01": true,
"min-mtes-dgpr-01": false,
"ope-brgm-01": false,
"ope-cacem-01": false,
"ope-onf-973-01": false,
......@@ -5657,24 +5657,24 @@ exports[`vérifie si l'administration est gestionnaire par rapport au titreType
"cxg": false,
"cxh": false,
"cxm": true,
"cxr": false,
"cxr": true,
"cxs": false,
"cxw": true,
"inm": true,
"inr": false,
"inr": true,
"pcc": true,
"prf": false,
"prg": false,
"prh": false,
"prm": true,
"prr": false,
"prr": true,
"prs": false,
"prw": true,
"pxf": false,
"pxg": false,
"pxh": false,
"pxm": true,
"pxr": false,
"pxr": true,
"pxw": true,
},
"min-mtes-dgec-01": {
......@@ -5723,24 +5723,24 @@ exports[`vérifie si l'administration est gestionnaire par rapport au titreType
"cxg": false,
"cxh": false,
"cxm": false,
"cxr": true,
"cxr": false,
"cxs": false,
"cxw": false,
"inm": false,
"inr": true,
"inr": false,
"pcc": false,
"prf": false,
"prg": false,
"prh": false,
"prm": false,
"prr": true,
"prr": false,
"prs": false,
"prw": false,
"pxf": false,
"pxg": false,
"pxh": false,
"pxm": false,
"pxr": true,
"pxr": false,
"pxw": false,
},
"ope-brgm-01": {
......@@ -9755,7 +9755,7 @@ exports[`vérifie tous les droits sur les types de titre pour l'administration 1
},
{
"associee": true,
"gestionnaire": false,
"gestionnaire": true,
"titreTypeId": "cxr",
},
{
......@@ -9775,7 +9775,7 @@ exports[`vérifie tous les droits sur les types de titre pour l'administration 1
},
{
"associee": true,
"gestionnaire": false,
"gestionnaire": true,
"titreTypeId": "inr",
},
{
......@@ -9805,7 +9805,7 @@ exports[`vérifie tous les droits sur les types de titre pour l'administration 1
},
{
"associee": true,
"gestionnaire": false,
"gestionnaire": true,
"titreTypeId": "prr",
},
{
......@@ -9840,7 +9840,7 @@ exports[`vérifie tous les droits sur les types de titre pour l'administration 1
},
{
"associee": true,
"gestionnaire": false,
"gestionnaire": true,
"titreTypeId": "pxr",
},
{
......@@ -10068,8 +10068,8 @@ exports[`vérifie tous les droits sur les types de titre pour l'administration 1
"titreTypeId": "cxm",
},
{
"associee": false,
"gestionnaire": true,
"associee": true,
"gestionnaire": false,
"titreTypeId": "cxr",
},
{
......@@ -10088,8 +10088,8 @@ exports[`vérifie tous les droits sur les types de titre pour l'administration 1
"titreTypeId": "inm",
},
{
"associee": false,
"gestionnaire": true,
"associee": true,
"gestionnaire": false,
"titreTypeId": "inr",
},
{
......@@ -10118,8 +10118,8 @@ exports[`vérifie tous les droits sur les types de titre pour l'administration 1
"titreTypeId": "prm",
},
{
"associee": false,
"gestionnaire": true,
"associee": true,
"gestionnaire": false,
"titreTypeId": "prr",
},
{
......@@ -10153,8 +10153,8 @@ exports[`vérifie tous les droits sur les types de titre pour l'administration 1
"titreTypeId": "pxm",
},
{
"associee": false,
"gestionnaire": true,
"associee": true,
"gestionnaire": false,
"titreTypeId": "pxr",
},
{
......
......@@ -97,24 +97,24 @@ const AdministrationsTitresTypes: { [key in AdministrationId]?: Readonly<Adminis
[TITRES_TYPES_IDS.CONCESSION_GEOTHERMIE]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.CONCESSION_HYDROCARBURE]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.CONCESSION_METAUX]: { gestionnaire: true, associee: false },
[TITRES_TYPES_IDS.CONCESSION_RADIOACTIF]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.CONCESSION_RADIOACTIF]: { gestionnaire: true, associee: true },
[TITRES_TYPES_IDS.CONCESSION_SOUTERRAIN]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.CONCESSION_GRANULATS_MARINS]: { gestionnaire: true, associee: false },
[TITRES_TYPES_IDS.INDETERMINE_METAUX]: { gestionnaire: true, associee: false },
[TITRES_TYPES_IDS.INDETERMINE_RADIOACTIF]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.INDETERMINE_RADIOACTIF]: { gestionnaire: true, associee: true },
[TITRES_TYPES_IDS.PERMIS_EXCLUSIF_DE_CARRIERES_CARRIERES]: { gestionnaire: true, associee: false },
[TITRES_TYPES_IDS.PERMIS_EXCLUSIF_DE_RECHERCHES_FOSSILES]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.PERMIS_EXCLUSIF_DE_RECHERCHES_GEOTHERMIE]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.PERMIS_EXCLUSIF_DE_RECHERCHES_HYDROCARBURE]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.PERMIS_EXCLUSIF_DE_RECHERCHES_METAUX]: { gestionnaire: true, associee: false },
[TITRES_TYPES_IDS.PERMIS_EXCLUSIF_DE_RECHERCHES_RADIOACTIF]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.PERMIS_EXCLUSIF_DE_RECHERCHES_RADIOACTIF]: { gestionnaire: true, associee: true },
[TITRES_TYPES_IDS.PERMIS_EXCLUSIF_DE_RECHERCHES_SOUTERRAIN]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.PERMIS_EXCLUSIF_DE_RECHERCHES_GRANULATS_MARINS]: { gestionnaire: true, associee: false },
[TITRES_TYPES_IDS.PERMIS_D_EXPLOITATION_FOSSILES]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.PERMIS_D_EXPLOITATION_GEOTHERMIE]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.PERMIS_D_EXPLOITATION_HYDROCARBURE]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.PERMIS_D_EXPLOITATION_METAUX]: { gestionnaire: true, associee: false },
[TITRES_TYPES_IDS.PERMIS_D_EXPLOITATION_RADIOACTIF]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.PERMIS_D_EXPLOITATION_RADIOACTIF]: { gestionnaire: true, associee: true },
[TITRES_TYPES_IDS.PERMIS_D_EXPLOITATION_GRANULATS_MARINS]: { gestionnaire: true, associee: false },
},
'min-mtes-dgec-01': {
......@@ -163,24 +163,24 @@ const AdministrationsTitresTypes: { [key in AdministrationId]?: Readonly<Adminis
[TITRES_TYPES_IDS.CONCESSION_GEOTHERMIE]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.CONCESSION_HYDROCARBURE]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.CONCESSION_METAUX]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.CONCESSION_RADIOACTIF]: { gestionnaire: true, associee: false },
[TITRES_TYPES_IDS.CONCESSION_RADIOACTIF]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.CONCESSION_SOUTERRAIN]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.CONCESSION_GRANULATS_MARINS]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.INDETERMINE_METAUX]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.INDETERMINE_RADIOACTIF]: { gestionnaire: true, associee: false },
[TITRES_TYPES_IDS.INDETERMINE_RADIOACTIF]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.PERMIS_EXCLUSIF_DE_CARRIERES_CARRIERES]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.PERMIS_EXCLUSIF_DE_RECHERCHES_FOSSILES]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.PERMIS_EXCLUSIF_DE_RECHERCHES_GEOTHERMIE]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.PERMIS_EXCLUSIF_DE_RECHERCHES_HYDROCARBURE]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.PERMIS_EXCLUSIF_DE_RECHERCHES_METAUX]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.PERMIS_EXCLUSIF_DE_RECHERCHES_RADIOACTIF]: { gestionnaire: true, associee: false },
[TITRES_TYPES_IDS.PERMIS_EXCLUSIF_DE_RECHERCHES_RADIOACTIF]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.PERMIS_EXCLUSIF_DE_RECHERCHES_SOUTERRAIN]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.PERMIS_EXCLUSIF_DE_RECHERCHES_GRANULATS_MARINS]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.PERMIS_D_EXPLOITATION_FOSSILES]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.PERMIS_D_EXPLOITATION_GEOTHERMIE]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.PERMIS_D_EXPLOITATION_HYDROCARBURE]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.PERMIS_D_EXPLOITATION_METAUX]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.PERMIS_D_EXPLOITATION_RADIOACTIF]: { gestionnaire: true, associee: false },
[TITRES_TYPES_IDS.PERMIS_D_EXPLOITATION_RADIOACTIF]: { gestionnaire: false, associee: true },
[TITRES_TYPES_IDS.PERMIS_D_EXPLOITATION_GRANULATS_MARINS]: { gestionnaire: false, associee: true },
},
'ope-brgm-01': {
......
......@@ -95,7 +95,7 @@ test('getAdministrationTitresTypesEtapesTypes', () => {
},
{
"creationInterdit": true,
"etapeTypeId": "npp",
"etapeTypeId": "ipc",
"lectureInterdit": false,
"modificationInterdit": true,
"titreTypeId": "cxm",
......@@ -235,7 +235,7 @@ test('getAdministrationTitresTypesEtapesTypes', () => {
},
{
"creationInterdit": true,
"etapeTypeId": "npp",
"etapeTypeId": "ipc",
"lectureInterdit": false,
"modificationInterdit": true,
"titreTypeId": "prm",
......
......@@ -141,7 +141,7 @@ const AdministrationsTitresTypesEtapesTypes: {
[ETAPES_TYPES.avisDeDemandeConcurrente]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.enregistrementDeLaDemande]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.demande]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.notificationAuPrefet]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.informationDuPrefetEtDesCollectivites]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.participationDuPublic]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.rapportDuConseilGeneralDeLeconomie_CGE_]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.rapportDuConseilDEtat]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
......@@ -163,7 +163,7 @@ const AdministrationsTitresTypesEtapesTypes: {
[ETAPES_TYPES.avisDeDemandeConcurrente]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.enregistrementDeLaDemande]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.demande]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.notificationAuPrefet]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.informationDuPrefetEtDesCollectivites]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.participationDuPublic]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.rapportDuConseilGeneralDeLeconomie_CGE_]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.saisineDeLautoriteSignataire]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
......@@ -186,7 +186,7 @@ const AdministrationsTitresTypesEtapesTypes: {
[ETAPES_TYPES.avisDeDemandeConcurrente]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.enregistrementDeLaDemande]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.demande]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.notificationAuPrefet]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.informationDuPrefetEtDesCollectivites]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.participationDuPublic]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.rapportDuConseilGeneralDeLeconomie_CGE_]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.rapportDuConseilDEtat]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
......@@ -210,7 +210,7 @@ const AdministrationsTitresTypesEtapesTypes: {
[ETAPES_TYPES.avisDeDemandeConcurrente]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.enregistrementDeLaDemande]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.demande]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.notificationAuPrefet]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.informationDuPrefetEtDesCollectivites]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.participationDuPublic]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.rapportDuConseilGeneralDeLeconomie_CGE_]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.saisineDeLautoriteSignataire]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
......@@ -234,7 +234,7 @@ const AdministrationsTitresTypesEtapesTypes: {
[ETAPES_TYPES.avisDeDemandeConcurrente]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.enregistrementDeLaDemande]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.demande]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.notificationAuPrefet]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.informationDuPrefetEtDesCollectivites]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.participationDuPublic]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.rapportDuConseilGeneralDeLeconomie_CGE_]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.rapportDuConseilDEtat]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
......@@ -258,7 +258,7 @@ const AdministrationsTitresTypesEtapesTypes: {
[ETAPES_TYPES.avisDeDemandeConcurrente]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.enregistrementDeLaDemande]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.demande]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.notificationAuPrefet]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.informationDuPrefetEtDesCollectivites]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.participationDuPublic]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.rapportDuConseilGeneralDeLeconomie_CGE_]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.saisineDeLautoriteSignataire]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
......@@ -282,7 +282,7 @@ const AdministrationsTitresTypesEtapesTypes: {
[ETAPES_TYPES.avisDeDemandeConcurrente]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.enregistrementDeLaDemande]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.demande]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.notificationAuPrefet]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.informationDuPrefetEtDesCollectivites]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.participationDuPublic]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.rapportDuConseilGeneralDeLeconomie_CGE_]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.rapportDuConseilDEtat]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
......@@ -306,7 +306,7 @@ const AdministrationsTitresTypesEtapesTypes: {
[ETAPES_TYPES.avisDeDemandeConcurrente]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.enregistrementDeLaDemande]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.demande]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.notificationAuPrefet]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.informationDuPrefetEtDesCollectivites]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.participationDuPublic]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.rapportDuConseilGeneralDeLeconomie_CGE_]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.saisineDeLautoriteSignataire]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
......@@ -330,7 +330,7 @@ const AdministrationsTitresTypesEtapesTypes: {
[ETAPES_TYPES.avisDeDemandeConcurrente]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.enregistrementDeLaDemande]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.demande]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.notificationAuPrefet]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.informationDuPrefetEtDesCollectivites]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.participationDuPublic]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.rapportDuConseilGeneralDeLeconomie_CGE_]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.rapportDuConseilDEtat]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
......@@ -354,7 +354,7 @@ const AdministrationsTitresTypesEtapesTypes: {
[ETAPES_TYPES.avisDeDemandeConcurrente]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.enregistrementDeLaDemande]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.demande]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.notificationAuPrefet]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.informationDuPrefetEtDesCollectivites]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.participationDuPublic]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.rapportDuConseilGeneralDeLeconomie_CGE_]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
[ETAPES_TYPES.saisineDeLautoriteSignataire]: { lectureInterdit: false, creationInterdit: true, modificationInterdit: true },
......
......@@ -35,7 +35,7 @@ export type PerimetreUploadType = z.infer<typeof perimetreFileUploadTypeValidato
export type FileUploadType = z.infer<typeof fileUploadTypeValidator>
// prettier-ignore
const IDS_WITHOUT_AUTRE = ["aac","acd","acg","acr","adr","aep","apd","apf","apu","arm","arp","arr","atf","avc","ave","avi","bil","cam","car","cco","cdc","cnr","cnt","cod","con","cou","csp","cur","dcl","deb","dec","dei","dep","doe","dom","dos","erd","fac","fic","fip","for","idm","jac","jcf","jct","jeg","jid","jpa","kbi","lac","lce","lcg","lcm","ldc","lem","let","lis","lpf","mes","met","mot","nas","ndd","nip","nir","noi","not","odr","ord","prg","pro","pub","pvr","rac","rad","rce","rcr","rdr","rec","ree","ref","rfe","rgr","rie","rse","sch","sir" ] as const
const IDS_WITHOUT_AUTRE = ["aac","acd","acg","acr","adr","aep","apd","apf","apu","arm","arp","arr","atf","avc","ave","avi","bil","cam","car","cco","cdc","cnp","cnr","cnt","cod","con","cou","csp","cur","dcl","deb","dec","dei","dep","doe","dom","dos","erd","fac","fic","fip","for","idm","jac","jcf","jct","jeg","jid","jpa","kbi","lac","lce","lcg","lcm","ldc","lem","let","lis","lpf","mes","met","mot","nas","ndd","nip","nir","noi","not","odr","ord","prg","pro","pub","pvr","rac","rad","rce","rcr","rdr","rec","ree","ref","rfe","rgr","rie","rse","sch","sir" ] as const
const AUTRE_IDS = ['aut'] as const
const IDS = [...IDS_WITHOUT_AUTRE, ...AUTRE_IDS] as const
......@@ -62,6 +62,7 @@ export const DOCUMENTS_TYPES_IDS = {
documentsCartographiques: 'car',
courrierDeDemandeDeComplements: 'cco',
cahierDesCharges: 'cdc',
courrierDeNotificationAuPrefet: 'cnp',
courrierDeNotificationDeLaRecevabilite: 'cnr',
contrat: 'cnt',
complementsAuDossierDeDemande: 'cod',
......@@ -190,6 +191,7 @@ export const DocumentsTypes: { [key in DocumentTypeId | AutreDocumentTypeId]: Do
car: { id: 'car', nom: 'Documents cartographiques' },
cco: { id: 'cco', nom: 'Courrier de demande de compléments' },
cdc: { id: 'cdc', nom: 'Cahier des charges' },
cnp: { id: 'cnp', nom: 'Courrier de notification au préfet' },
cnr: { id: 'cnr', nom: 'Courrier de notification de la recevabilité' },
cnt: { id: 'cnt', nom: 'Contrat' },
cod: { id: 'cod', nom: 'Compléments au dossier de demande' },
......
......@@ -83,7 +83,6 @@ test('isEtapeTypeIdFondamentale', () => {
"notificationAuDemandeur_InitiationDeLaDemarcheDeRetrait_": false,
"notificationAuDemandeur_SignatureDeLautorisationDeRechercheMiniere_": false,
"notificationAuDemandeur_SignatureDeLavenantALautorisationDeRechercheMiniere_": false,
"notificationAuPrefet": false,
"notificationDesCollectivitesLocales": false,
"paiementDesFraisDeDossier": false,
"paiementDesFraisDeDossierComplementaires": false,
......@@ -202,7 +201,6 @@ test('canBeBrouillon', () => {
"notificationAuDemandeur_InitiationDeLaDemarcheDeRetrait_": false,
"notificationAuDemandeur_SignatureDeLautorisationDeRechercheMiniere_": false,
"notificationAuDemandeur_SignatureDeLavenantALautorisationDeRechercheMiniere_": false,
"notificationAuPrefet": false,
"notificationDesCollectivitesLocales": false,
"paiementDesFraisDeDossier": false,
"paiementDesFraisDeDossierComplementaires": false,
......@@ -321,7 +319,6 @@ test('isEtapeDecision', () => {
"notificationAuDemandeur_InitiationDeLaDemarcheDeRetrait_": false,
"notificationAuDemandeur_SignatureDeLautorisationDeRechercheMiniere_": false,
"notificationAuDemandeur_SignatureDeLavenantALautorisationDeRechercheMiniere_": false,
"notificationAuPrefet": false,
"notificationDesCollectivitesLocales": false,
"paiementDesFraisDeDossier": false,
"paiementDesFraisDeDossierComplementaires": false,
......@@ -441,7 +438,6 @@ test('isEtapeWithAutomaticStatuts', () => {
"notificationAuDemandeur_InitiationDeLaDemarcheDeRetrait_": false,
"notificationAuDemandeur_SignatureDeLautorisationDeRechercheMiniere_": false,
"notificationAuDemandeur_SignatureDeLavenantALautorisationDeRechercheMiniere_": false,
"notificationAuPrefet": false,
"notificationDesCollectivitesLocales": false,
"paiementDesFraisDeDossier": false,
"paiementDesFraisDeDossierComplementaires": false,
......
......@@ -5,13 +5,13 @@ import { EtapeBrouillon } from '../etape'
// prettier-ignore
const IDS = ["abd", "aca","aco","and","anf","def","dex","dim", "dpu", "ihi", "mfr","mod","rca","rcb","rcd","rcm","rco","rcs","rie","rif","rim","rmc", "rpu","sco","acg","acf","apd","ape","apo","app","apu","cac","cim","css","dae","ddc","des","dma", "ede","edm","epu","esb", "ipc", "mca","mcb","mcd", "mci","mcm","mco","mcp","mcr","mcs","mec","men","meo","mie","mif","mim","mna","mnb","mnc","mnd","mni","mno","mns","mnv","mpb", "ncl","npp","pfc","pfd","ppu","pqr","rcg","rde","rno","rpe","sas","sca","scg","spe","spo","spp","vfc","vfd","wae","wao","war","wau","wda","wdc","wdd","wde","wfa","wfd","wfo","wmt","wpb","wpc","wpo","wpp","wps","wrc","wrt","wse","wtp", "asc", "adc"] as const
const IDS = ["abd", "aca","aco","and","anf","def","dex","dim", "dpu", "ihi", "mfr","mod","rca","rcb","rcd","rcm","rco","rcs","rie","rif","rim","rmc", "rpu","sco","acg","acf","apd","ape","apo","app","apu","cac","cim","css","dae","ddc","des","dma", "ede","edm","epu","esb", "ipc", "mca","mcb","mcd", "mci","mcm","mco","mcp","mcr","mcs","mec","men","meo","mie","mif","mim","mna","mnb","mnc","mnd","mni","mno","mns","mnv","mpb", "ncl","pfc","pfd","ppu","pqr","rcg","rde","rno","rpe","sas","sca","scg","spe","spo","spp","vfc","vfd","wae","wao","war","wau","wda","wdc","wdd","wde","wfa","wfd","wfo","wmt","wpb","wpc","wpo","wpp","wps","wrc","wrt","wse","wtp", "asc", "adc"] as const
// prettier-ignore
const FONDAMENTALES_IDS = ["abd", "aca","aco","and","anf","def","dex","dim", "dpu","ihi", "mfr","mod","rca","rcb","rcd","rcm","rco","rcs","rie","rif","rim","rmc", "rpu","sco"] as const satisfies Readonly<EtapeTypeIdFondamentaleArray>
// prettier-ignore
const NON_FONDAMENTALES_IDS = ["acg", "acf","apd","ape","apo","app","apu","cac","cim","css","dae","ddc","des","dma", "ede","edm","epu","esb","ipc", "mca","mcb","mcd","mci", "mcm","mco","mcp","mcr", "mcs","mec","men","meo","mie","mif","mim","mna","mnb","mnc","mnd","mni","mno","mns","mnv","mpb", "ncl","npp","pfc","pfd","ppu","pqr","rcg","rde","rno", "rpe","sas","sca","scg","spe","spo","spp","vfc","vfd","wae","wao","war","wau","wda","wdc","wdd","wde","wfa","wfd","wfo","wmt","wpb","wpc","wpo","wpp","wps","wrc","wrt","wse","wtp", "asc", "adc"] as const satisfies Readonly<EtapeTypeIdNonFondamentale[]>
const NON_FONDAMENTALES_IDS = ["acg", "acf","apd","ape","apo","app","apu","cac","cim","css","dae","ddc","des","dma", "ede","edm","epu","esb","ipc", "mca","mcb","mcd","mci", "mcm","mco","mcp","mcr", "mcs","mec","men","meo","mie","mif","mim","mna","mnb","mnc","mnd","mni","mno","mns","mnv","mpb", "ncl","pfc","pfd","ppu","pqr","rcg","rde","rno", "rpe","sas","sca","scg","spe","spo","spp","vfc","vfd","wae","wao","war","wau","wda","wdc","wdd","wde","wfa","wfd","wfo","wmt","wpb","wpc","wpo","wpp","wps","wrc","wrt","wse","wtp", "asc", "adc"] as const satisfies Readonly<EtapeTypeIdNonFondamentale[]>
// Ceci est un test :)
;[...FONDAMENTALES_IDS, ...NON_FONDAMENTALES_IDS] as const satisfies typeof IDS
......@@ -68,7 +68,6 @@ export const ETAPES_TYPES = {
notificationAuDemandeur_SignatureDeLavenantALautorisationDeRechercheMiniere_: 'mnv',
modificationDeLaDemande: 'mod',
notificationDesCollectivitesLocales: 'ncl',
notificationAuPrefet: 'npp',
paiementDesFraisDeDossierComplementaires: 'pfc',
paiementDesFraisDeDossier: 'pfd',
participationDuPublic: 'ppu',
......@@ -793,16 +792,6 @@ export const EtapesTypes = {
public_lecture: false,
entreprises_lecture: false,
},
npp: {
id: 'npp',
nom: 'notification au préfet',
description: "Note au préfet demandant de notifier la décision à l'intéressé et de prendre les mesures de publicité nécessaires.",
fondamentale: false,
unique: false,
date_fin: null,
public_lecture: false,
entreprises_lecture: false,
},
vfc: {
id: 'vfc',
nom: 'validation du paiement des frais de dossier complémentaires',
......
......@@ -156,7 +156,6 @@ export const EtapesTypesEtapesStatuts = {
notificationAuDemandeur_SignatureDeLavenantALautorisationDeRechercheMiniere_: { FAIT: { etapeTypeId: 'mnv', etapeStatutId: 'fai' } },
modificationDeLaDemande: { FAIT: { etapeTypeId: 'mod', etapeStatutId: 'fai' } },
notificationDesCollectivitesLocales: { FAIT: { etapeTypeId: 'ncl', etapeStatutId: 'fai' } },
notificationAuPrefet: { FAIT: { etapeTypeId: 'npp', etapeStatutId: 'fai' } },
paiementDesFraisDeDossierComplementaires: { FAIT: { etapeTypeId: 'pfc', etapeStatutId: 'fai' } },
paiementDesFraisDeDossier: { FAIT: { etapeTypeId: 'pfd', etapeStatutId: 'fai' } },
participationDuPublic: {
......
import { DEMARCHES_TYPES_IDS } from '../demarchesTypes'
import { ETAPES_TYPES } from '../etapesTypes'
import { TITRES_TYPES_IDS } from '../titresTypes'
import { getDocuments, toDocuments } from './documents'
import { test, expect } from 'vitest'
test('toDocuments', () => {
expect(toDocuments()).toHaveLength(211)
expect(toDocuments()).toHaveLength(212)
})
test('getDocuments erreurs', () => {
......@@ -61,3 +63,20 @@ test("la lettre des saisines est obligatoire pour l'avis des services et commiss
]
`)
})
test("le courrier de notification au préfet est obligatoire pour l'information du préfet et des collectivités", () => {
expect(getDocuments(TITRES_TYPES_IDS.PERMIS_EXCLUSIF_DE_RECHERCHES_METAUX, DEMARCHES_TYPES_IDS.Octroi, ETAPES_TYPES.informationDuPrefetEtDesCollectivites)).toMatchInlineSnapshot(`
[
{
"id": "cnp",
"nom": "Courrier de notification au préfet",
"optionnel": false,
},
{
"id": "aut",
"nom": "Autre document",
"optionnel": true,
},
]
`)
})
......@@ -309,6 +309,7 @@ const EtapesTypesDocumentsTypes = {
],
[ETAPES_TYPES.transmissionDuProjetDePrescriptionsAuDemandeur]: [{ documentTypeId: DOCUMENTS_TYPES_IDS.arretePrefectoral, optionnel: true }],
[ETAPES_TYPES.avisDesServicesEtCommissionsConsultatives]: [{ documentTypeId: DOCUMENTS_TYPES_IDS.lettreDeSaisineDesServicesCivilsEtMilitaires, optionnel: false }],
[ETAPES_TYPES.informationDuPrefetEtDesCollectivites]: [{ documentTypeId: DOCUMENTS_TYPES_IDS.courrierDeNotificationAuPrefet, optionnel: false }],
} as const satisfies { [key in EtapeTypeId]?: (DocumentTypeId | { documentTypeId: DocumentTypeId; optionnel: boolean })[] }
const isEtapesTypesEtapesTypesDocumentsTypes = (etapeTypeId?: EtapeTypeId): etapeTypeId is keyof typeof EtapesTypesDocumentsTypes => {
......
......@@ -119,7 +119,7 @@ const permisExploitationMetauxEtGranulatsMarinsProlongationsEtapes = [
ETAPES_TYPES.saisineDeLautoriteSignataire,
ETAPES_TYPES.decisionDeLAutoriteAdministrative,
ETAPES_TYPES.publicationDeDecisionAuJORF,
ETAPES_TYPES.notificationAuPrefet,
ETAPES_TYPES.informationDuPrefetEtDesCollectivites,
ETAPES_TYPES.notificationAuDemandeur,
ETAPES_TYPES.publicationDeDecisionAuRecueilDesActesAdministratifs,
ETAPES_TYPES.notificationDesCollectivitesLocales,
......@@ -783,7 +783,7 @@ const TDE = {
ETAPES_TYPES.decisionImplicite,
ETAPES_TYPES.decisionDeLAutoriteAdministrative,
ETAPES_TYPES.publicationDeDecisionAuJORF,
ETAPES_TYPES.notificationAuPrefet,
ETAPES_TYPES.informationDuPrefetEtDesCollectivites,
ETAPES_TYPES.publicationDeDecisionAuRecueilDesActesAdministratifs,
ETAPES_TYPES.notificationAuDemandeur,
ETAPES_TYPES.notificationDesCollectivitesLocales,
......@@ -892,7 +892,7 @@ const TDE = {
ETAPES_TYPES.decisionImplicite,
ETAPES_TYPES.decisionDeLAutoriteAdministrative,
ETAPES_TYPES.publicationDeDecisionAuJORF,
ETAPES_TYPES.notificationAuPrefet,
ETAPES_TYPES.informationDuPrefetEtDesCollectivites,
ETAPES_TYPES.publicationDeDecisionAuRecueilDesActesAdministratifs,
ETAPES_TYPES.notificationAuDemandeur,
ETAPES_TYPES.notificationDesCollectivitesLocales,
......@@ -1016,7 +1016,7 @@ const TDE = {
ETAPES_TYPES.decisionImplicite,
ETAPES_TYPES.decisionDeLAutoriteAdministrative,
ETAPES_TYPES.publicationDeDecisionAuJORF,
ETAPES_TYPES.notificationAuPrefet,
ETAPES_TYPES.informationDuPrefetEtDesCollectivites,
ETAPES_TYPES.publicationDeDecisionAuRecueilDesActesAdministratifs,
ETAPES_TYPES.notificationAuDemandeur,
ETAPES_TYPES.notificationDesCollectivitesLocales,
......@@ -1094,7 +1094,7 @@ const TDE = {
ETAPES_TYPES.saisineDeLautoriteSignataire,
ETAPES_TYPES.decisionDeLAutoriteAdministrative,
ETAPES_TYPES.publicationDeDecisionAuJORF,
ETAPES_TYPES.notificationAuPrefet,
ETAPES_TYPES.informationDuPrefetEtDesCollectivites,
ETAPES_TYPES.notificationAuDemandeur,
ETAPES_TYPES.publicationDeDecisionAuRecueilDesActesAdministratifs,
ETAPES_TYPES.notificationDesCollectivitesLocales,
......@@ -1134,7 +1134,7 @@ const TDE = {
ETAPES_TYPES.decisionImplicite,
ETAPES_TYPES.decisionDeLAutoriteAdministrative,
ETAPES_TYPES.publicationDeDecisionAuJORF,
ETAPES_TYPES.notificationAuPrefet,
ETAPES_TYPES.informationDuPrefetEtDesCollectivites,
ETAPES_TYPES.publicationDeDecisionAuRecueilDesActesAdministratifs,
ETAPES_TYPES.publicationDansUnJournalLocalOuNational,
ETAPES_TYPES.abrogationDeLaDecision,
......@@ -1168,7 +1168,7 @@ const TDE = {
ETAPES_TYPES.decisionImplicite,
ETAPES_TYPES.decisionDeLAutoriteAdministrative,
ETAPES_TYPES.publicationDeDecisionAuJORF,
ETAPES_TYPES.notificationAuPrefet,
ETAPES_TYPES.informationDuPrefetEtDesCollectivites,
ETAPES_TYPES.publicationDeDecisionAuRecueilDesActesAdministratifs,
ETAPES_TYPES.publicationDansUnJournalLocalOuNational,
ETAPES_TYPES.abrogationDeLaDecision,
......@@ -1286,7 +1286,7 @@ const TDE = {
ETAPES_TYPES.decisionImplicite,
ETAPES_TYPES.decisionDeLAutoriteAdministrative,
ETAPES_TYPES.publicationDeDecisionAuJORF,
ETAPES_TYPES.notificationAuPrefet,
ETAPES_TYPES.informationDuPrefetEtDesCollectivites,
ETAPES_TYPES.publicationDeDecisionAuRecueilDesActesAdministratifs,
ETAPES_TYPES.notificationAuDemandeur,
ETAPES_TYPES.notificationDesCollectivitesLocales,
......@@ -1374,7 +1374,7 @@ const TDE = {
ETAPES_TYPES.decisionImplicite,
ETAPES_TYPES.decisionDeLAutoriteAdministrative,
ETAPES_TYPES.publicationDeDecisionAuJORF,
ETAPES_TYPES.notificationAuPrefet,
ETAPES_TYPES.informationDuPrefetEtDesCollectivites,
ETAPES_TYPES.publicationDeDecisionAuRecueilDesActesAdministratifs,
ETAPES_TYPES.notificationAuDemandeur,
ETAPES_TYPES.notificationDesCollectivitesLocales,
......@@ -1472,7 +1472,7 @@ const TDE = {
ETAPES_TYPES.decisionImplicite,
ETAPES_TYPES.decisionDeLAutoriteAdministrative,
ETAPES_TYPES.publicationDeDecisionAuJORF,
ETAPES_TYPES.notificationAuPrefet,
ETAPES_TYPES.informationDuPrefetEtDesCollectivites,
ETAPES_TYPES.publicationDeDecisionAuRecueilDesActesAdministratifs,
ETAPES_TYPES.notificationAuDemandeur,
ETAPES_TYPES.notificationDesCollectivitesLocales,
......@@ -1574,7 +1574,7 @@ const TDE = {
ETAPES_TYPES.saisineDeLautoriteSignataire,
ETAPES_TYPES.decisionDeLAutoriteAdministrative,
ETAPES_TYPES.publicationDeDecisionAuJORF,
ETAPES_TYPES.notificationAuPrefet,
ETAPES_TYPES.informationDuPrefetEtDesCollectivites,
ETAPES_TYPES.notificationAuDemandeur,
ETAPES_TYPES.publicationDeDecisionAuRecueilDesActesAdministratifs,
ETAPES_TYPES.notificationDesCollectivitesLocales,
......@@ -1615,7 +1615,7 @@ const TDE = {
ETAPES_TYPES.saisineDeLautoriteSignataire,
ETAPES_TYPES.decisionDeLAutoriteAdministrative,
ETAPES_TYPES.publicationDeDecisionAuJORF,
ETAPES_TYPES.notificationAuPrefet,
ETAPES_TYPES.informationDuPrefetEtDesCollectivites,
ETAPES_TYPES.notificationAuDemandeur,
ETAPES_TYPES.publicationDeDecisionAuRecueilDesActesAdministratifs,
ETAPES_TYPES.notificationDesCollectivitesLocales,
......@@ -1838,7 +1838,7 @@ const TDE = {
ETAPES_TYPES.decisionImplicite,
ETAPES_TYPES.decisionDeLAutoriteAdministrative,
ETAPES_TYPES.publicationDeDecisionAuJORF,
ETAPES_TYPES.notificationAuPrefet,
ETAPES_TYPES.informationDuPrefetEtDesCollectivites,
ETAPES_TYPES.publicationDeDecisionAuRecueilDesActesAdministratifs,
ETAPES_TYPES.notificationAuDemandeur,
ETAPES_TYPES.notificationDesCollectivitesLocales,
......@@ -2367,7 +2367,7 @@ const TDE = {
ETAPES_TYPES.decisionImplicite,
ETAPES_TYPES.decisionDeLAutoriteAdministrative,
ETAPES_TYPES.publicationDeDecisionAuJORF,
ETAPES_TYPES.notificationAuPrefet,
ETAPES_TYPES.informationDuPrefetEtDesCollectivites,
ETAPES_TYPES.publicationDeDecisionAuRecueilDesActesAdministratifs,
ETAPES_TYPES.notificationAuDemandeur,
ETAPES_TYPES.notificationDesCollectivitesLocales,
......@@ -2449,7 +2449,7 @@ const TDE = {
ETAPES_TYPES.decisionImplicite,
ETAPES_TYPES.decisionDeLAutoriteAdministrative,
ETAPES_TYPES.publicationDeDecisionAuJORF,
ETAPES_TYPES.notificationAuPrefet,
ETAPES_TYPES.informationDuPrefetEtDesCollectivites,
ETAPES_TYPES.publicationDeDecisionAuRecueilDesActesAdministratifs,
ETAPES_TYPES.notificationAuDemandeur,
ETAPES_TYPES.notificationDesCollectivitesLocales,
......@@ -2613,7 +2613,7 @@ const TDE = {
ETAPES_TYPES.decisionImplicite,
ETAPES_TYPES.decisionDeLAutoriteAdministrative,
ETAPES_TYPES.publicationDeDecisionAuJORF,
ETAPES_TYPES.notificationAuPrefet,
ETAPES_TYPES.informationDuPrefetEtDesCollectivites,
ETAPES_TYPES.publicationDeDecisionAuRecueilDesActesAdministratifs,
ETAPES_TYPES.notificationAuDemandeur,
ETAPES_TYPES.notificationDesCollectivitesLocales,
......@@ -2735,7 +2735,7 @@ const TDE = {
ETAPES_TYPES.decisionImplicite,
ETAPES_TYPES.decisionDeLAutoriteAdministrative,
ETAPES_TYPES.publicationDeDecisionAuJORF,
ETAPES_TYPES.notificationAuPrefet,
ETAPES_TYPES.informationDuPrefetEtDesCollectivites,
ETAPES_TYPES.publicationDeDecisionAuRecueilDesActesAdministratifs,
ETAPES_TYPES.notificationAuDemandeur,
ETAPES_TYPES.notificationDesCollectivitesLocales,
......@@ -3186,7 +3186,7 @@ const TDE = {
ETAPES_TYPES.saisineDeLautoriteSignataire,
ETAPES_TYPES.decisionDeLAutoriteAdministrative,
ETAPES_TYPES.publicationDeDecisionAuJORF,
ETAPES_TYPES.notificationAuPrefet,
ETAPES_TYPES.informationDuPrefetEtDesCollectivites,
ETAPES_TYPES.notificationAuDemandeur,
ETAPES_TYPES.publicationDeDecisionAuRecueilDesActesAdministratifs,
ETAPES_TYPES.notificationDesCollectivitesLocales,
......
......@@ -161,15 +161,6 @@ const EtapesTypesSections = {
],
},
],
[ETAPES_TYPES.notificationAuPrefet]: [
{
id: 'nppx',
nom: 'Note au préfet',
elements: [
{ id: 'info', nom: 'Informations complémentaires', type: 'textarea', optionnel: true, description: 'Informations complémentaires accompagnant la notification de la décision au préfet' },
],
},
],
[ETAPES_TYPES.notificationAuDemandeur]: suiviDeLaDemarche,
[ETAPES_TYPES.notificationAuDemandeur_AjournementDeLaCARM_]: [
{ id: 'suivi', nom: 'Suivi de la démarche', elements: [{ id: 'dateReception', nom: 'Date de réception', type: 'date', optionnel: true, description: 'Date de réception de la notification' }] },
......
......@@ -103,7 +103,9 @@
],
"dependencies": {
"@codegouvfr/react-dsfr": "1.17.0",
"chartjs-plugin-chart2music": "^0.6.0",
"decimal.js": "^10.4.3",
"focus-trap": "^7.6.4",
"zod": "^3.23.8"
}
}
......@@ -11,6 +11,8 @@ import { MapPattern } from './components/_map/pattern'
import { RouterView, useRoute } from 'vue-router'
import { isNullOrUndefinedOrEmpty } from 'camino-common/src/typescript-tools'
import { userKey } from './moi'
import { FunctionalComponent } from 'vue'
import { PAGE_IDS } from './utils/page-ids'
export const App = defineComponent(() => {
const route = useRoute()
......@@ -33,18 +35,50 @@ export const App = defineComponent(() => {
return () => (
<div>
<Skiplink />
<MapPattern />
<Header user={user} currentMenuSection={currentMenuSection.value} routePath={route.fullPath} />
<main role="main">
<main role="main" id={PAGE_IDS.contenu.id}>
<div class={hasGutter.value ? ['fr-container', 'fr-py-3w'] : null}>{loaded.value ? <RouterView /> : null}</div>
</main>
<Footer version={version.value} />
</div>
)
})
const Skiplink: FunctionalComponent = () => {
return (
<div class="fr-skiplinks">
<nav role="navigation" aria-label="Accès rapide" class="fr-container">
<ul class="fr-skiplinks__list">
<li>
<a class="fr-link" href={`#${PAGE_IDS.contenu.id}`}>
{PAGE_IDS.contenu.label}
</a>
</li>
<li>
<a class="fr-link" href={`#${PAGE_IDS.menu.id}`}>
{PAGE_IDS.menu.label}
</a>
</li>
<li>
<a class="fr-link" href={`#${PAGE_IDS.search.id}`}>
{PAGE_IDS.search.label}
</a>
</li>
<li>
<a class="fr-link" href={`#${PAGE_IDS.footer.id}`}>
{PAGE_IDS.footer.label}
</a>
</li>
</ul>
</nav>
</div>
)
}
// @ts-ignore waiting for https://github.com/vuejs/core/issues/7833
App.props = ['user']
......@@ -6,10 +6,23 @@ import { defineAsyncComponent } from 'vue'
import type { JSX } from 'vue/jsx-runtime'
import { DsfrButtonIcon } from '../_ui/dsfr-button'
interface Props<T> {
type AutoyearlyDescription = {
a11yDescription: 'autoyearlytable'
description: string
}
type A11yDescription = {
a11yDescription: JSX.Element
}
type AriaHidden = {
ariaHidden: boolean
}
type Props<T> = {
data: AsyncData<T>
getConfiguration: (data: T) => ChartConfiguration
}
} & (A11yDescription | AriaHidden | AutoyearlyDescription)
const exportCsv = (conf: ChartConfiguration) => {
const title = conf.options?.plugins?.title?.text ?? 'export'
......@@ -37,7 +50,7 @@ export const ChartWithExport = <T,>(props: Props<T>): JSX.Element => {
renderItem={item => {
return (
<div style="position: relative">
<ConfigurableChart chartConfiguration={props.getConfiguration(item)} />
<ConfigurableChart chartConfiguration={props.getConfiguration(item)} {...props} />
<DsfrButtonIcon
icon="fr-icon-download-line"
onClick={() => exportCsv(props.getConfiguration(item))}
......
......@@ -16,12 +16,28 @@ import {
ArcElement,
ChartType,
} from 'chart.js'
import { ref, onMounted, onUnmounted, defineComponent } from 'vue'
import { JSX } from 'vue/jsx-runtime'
import chartjs2music from 'chartjs-plugin-chart2music'
type AutoyearlyDescription = {
a11yDescription: 'autoyearlytable'
description: string
}
type A11yDescription = {
a11yDescription: JSX.Element
}
type AriaHidden = {
ariaHidden: boolean
}
Chart.register(chartjs2music)
Chart.register(LinearScale, PieController, ArcElement, BarController, CategoryScale, BarElement, LineController, PointElement, LineElement, Filler, Legend, Tooltip, Title)
interface Props<TType extends ChartType> {
type Props<TType extends ChartType> = {
chartConfiguration: ChartConfiguration<TType>
}
} & (A11yDescription | AriaHidden | AutoyearlyDescription)
export const ConfigurableChart = defineComponent(<TType extends ChartType = ChartType>(props: Props<TType>) => {
const myCanvas = ref<HTMLCanvasElement | null>(null)
......@@ -31,7 +47,11 @@ export const ConfigurableChart = defineComponent(<TType extends ChartType = Char
if (!context) {
console.error('le canvas ne devrait pas être null')
} else {
chart = new Chart(context, props.chartConfiguration)
chart = new Chart<TType>(context, {
...props.chartConfiguration,
// @ts-ignore 2025-01-23 type multiverse :sad:
options: { ...props.chartConfiguration.options, plugins: { ...props.chartConfiguration.options?.plugins, chartjs2music: { lang: 'fr' } } },
})
}
})
......@@ -42,8 +62,38 @@ export const ConfigurableChart = defineComponent(<TType extends ChartType = Char
}
})
return () => <canvas ref={myCanvas} />
const getA11yDescription = <TType extends ChartType>(caption: string, configuration: ChartConfiguration<TType>): JSX.Element => {
return (
<table>
<caption>{caption}</caption>
<thead>
<tr>
<th>Année</th>
{configuration.data.datasets.map(d => (
<th>{d.label}</th>
))}
</tr>
</thead>
<tbody>
{configuration.data.labels?.map((label, index) => (
<tr>
<td>{label}</td>
{configuration.data.datasets.map(d => (
<th>{typeof d.data[index] === 'number' && Number.isNaN(d.data[index]) ? 'Pas de donnée' : d.data[index]}</th>
))}
</tr>
))}
</tbody>
</table>
)
}
return () => (
<canvas ref={myCanvas} aria-hidden={'ariaHidden' in props ? props.ariaHidden : false}>
{'a11yDescription' in props ? (props.a11yDescription === 'autoyearlytable' ? getA11yDescription(props.description, props.chartConfiguration) : props.a11yDescription) : null}
</canvas>
)
})
// @ts-ignore waiting for https://github.com/vuejs/core/issues/7833
ConfigurableChart.props = ['chartConfiguration']
ConfigurableChart.props = ['chartConfiguration', 'a11yDescription', 'ariaHidden', 'description']