From 5f9cef0f2febb35d843fcf19972341b0dc816e9c Mon Sep 17 00:00:00 2001 From: David Mendy Date: Fri, 24 May 2024 12:12:11 +0200 Subject: [PATCH 1/4] parent edf06795aa4ce6405644162de7f90103fadf0051 author David Mendy 1716545531 +0200 committer David Mendy 1716942798 +0200 parent edf06795aa4ce6405644162de7f90103fadf0051 author David Mendy 1716545531 +0200 committer David Mendy 1716942769 +0200 refactor: :recycle: standardize securing steps on typologies files Move getDisclaimer from ResultPage to typology files fix: :pencil2: fix non-display securing weapons feat: :sparkles: fix revolver with hidden door display feat: :sparkles: display phone number depending on the time Use latest docker compose version and fix version warning refactor: :recycle: refactor revolver file refactor: :recycle: standardize securing steps on typologies files refactor: :recycle: refactor revolver file refactor: :recycle: refactor revolver file feat: :sparkles: display phone number depending on the time Use latest docker compose version and fix version warning refactor: :recycle: refactor typologies files refactor: :recycle: refactor typologies files refactor: :recycle: refactor typologies files refactor: :recycle: refactor typologies files refactor: :recycle: refactor typologies files --- frontend/src/icons.ts | 1 + .../utils/firearms-utils/autre-pistolet.ts | 58 ++-- .../epaule-a-levier-sous-garde.ts | 30 +- .../utils/firearms-utils/epaule-a-pompe.ts | 18 +- .../epaule-a-un-coup-par-canon.ts | 44 +-- .../utils/firearms-utils/epaule-a-verrou.ts | 10 +- .../get-next-route-after-result.ts | 6 +- .../pistolet-semi-auto-moderne.ts | 34 +- frontend/src/utils/firearms-utils/revolver.ts | 241 +++++++------- .../semi-auto-style-militaire-autre.ts | 78 ++--- .../SecuringSelectOptionContent.vue | 27 +- .../SecuringTutorialContent.vue | 312 ++++++++++-------- 12 files changed, 460 insertions(+), 399 deletions(-) diff --git a/frontend/src/icons.ts b/frontend/src/icons.ts index 9d3f9d0f..0d69ecd5 100644 --- a/frontend/src/icons.ts +++ b/frontend/src/icons.ts @@ -20,4 +20,5 @@ export { RiHome3Line, RiHome4Line, RiCheckboxCircleLine, + RiLockLine, } from 'oh-vue-icons/icons/ri/index.js' diff --git a/frontend/src/utils/firearms-utils/autre-pistolet.ts b/frontend/src/utils/firearms-utils/autre-pistolet.ts index 89465ba0..bfc035f6 100644 --- a/frontend/src/utils/firearms-utils/autre-pistolet.ts +++ b/frontend/src/utils/firearms-utils/autre-pistolet.ts @@ -19,56 +19,56 @@ export const autre_pistolet = { getCategory: () => 'A, B ou D', isDummyTypology: false, options_text: '', - options: { + securingSteps: { drulov: { label: 'Drulov', value: 'drulov', - text_steps: { - 1: 'Analyser l’arme en direction sécurisée', - 2: 'Pivoter l’arrière de la culasse légèrement vers la gauche', - 3: 'Tirer la glissière vers l’arrière pour extraire la munition éventuelle', - 4: 'Actionner la culasse d’avant en arrière', - 5: 'Contrôler visuellement que la chambre est bien vide', - }, + text_steps: [ + 'Analyser l’arme en direction sécurisée', + 'Pivoter l’arrière de la culasse légèrement vers la gauche', + 'Tirer la glissière vers l’arrière pour extraire la munition éventuelle', + 'Actionner la culasse d’avant en arrière', + 'Contrôler visuellement que la chambre est bien vide', + ], img: autrePistoletDrulovImg, video: autrePistoletDrulovVideo, }, derringer: { label: 'Derringer', value: 'derringer', - text_steps: { - 1: 'Analyser l’arme en direction sécurisée', - 2: 'Pivoter le levier de déverrouillage', - 3: 'Casser/Basculer les canons vers le haut', - 4: 'Pencher l’entrée des canons pour extraire les munitions éventuelles', - 5: 'Contrôler visuellement que la chambre est bien vide', - }, + text_steps: [ + 'Analyser l’arme en direction sécurisée', + 'Pivoter le levier de déverrouillage', + 'Casser/Basculer les canons vers le haut', + 'Pencher l’entrée des canons pour extraire les munitions éventuelles', + 'Contrôler visuellement que la chambre est bien vide', + ], img: autrePistoletDerringerImg, video: autrePistoletDerringerVideo, }, thompson_contender: { label: 'Thompson contender', value: 'thompson_contender', - text_steps: { - 1: 'Analyser l’arme en direction sécurisée ', - 2: 'Tirer sur le levier situé sous le pontet avec la main tenant la poignée', - 3: 'Casser/Basculer le canon vers le bas', - 4: 'Retourner l’arme pour extraire la munition éventuelle', - 5: 'Contrôler visuellement que la chambre est bien vide', - }, + text_steps: [ + 'Analyser l’arme en direction sécurisée ', + 'Tirer sur le levier situé sous le pontet avec la main tenant la poignée', + 'Casser/Basculer le canon vers le bas', + 'Retourner l’arme pour extraire la munition éventuelle', + 'Contrôler visuellement que la chambre est bien vide', + ], img: autrePistoletThompsonImg, video: autrePistoletThompsonVideo, }, fusil_crosse_cannon_scie: { label: 'Ancien fusil à crosse et canon scié', value: 'fusil_crosse_cannon_scie', - text_steps: { - 1: 'Analyser l’arme en direction sécurisée ', - 2: 'Pousser sur la clef avec le pouce tenant la poignée de l’arme', - 3: 'Casser/Basculer le canon de l’arme', - 4: 'Retirer les munitions éventuelles', - 5: 'Contrôler visuellement que les chambres sont bien vides', - }, + text_steps: [ + 'Analyser l’arme en direction sécurisée ', + 'Pousser sur la clef avec le pouce tenant la poignée de l’arme', + 'Casser/Basculer le canon de l’arme', + 'Retirer les munitions éventuelles', + 'Contrôler visuellement que les chambres sont bien vides', + ], img: autrePistoletFusilScieImg, video: autrePistoletFusilScieVideo, }, diff --git a/frontend/src/utils/firearms-utils/epaule-a-levier-sous-garde.ts b/frontend/src/utils/firearms-utils/epaule-a-levier-sous-garde.ts index 85aac5be..b3dfbd36 100644 --- a/frontend/src/utils/firearms-utils/epaule-a-levier-sous-garde.ts +++ b/frontend/src/utils/firearms-utils/epaule-a-levier-sous-garde.ts @@ -13,30 +13,30 @@ export const epaule_a_levier_sous_garde = { getCategory: getCommonCategory, isDummyTypology: false, options_text: 'En manipulant l’arme avec précaution dans une direction sans risque, inspectez l’extrémité du tube sous le canon. Sélectionnez ce que vous voyez :', - options: { + securingSteps: { front_magazine: { label: 'Embout rugueux', value: 'front_magazine', - text_steps: { - 1: 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution.', - 2: 'Faites très attention à ne pas déclencher l’arme durant cette manipulation. Dévisser la baguette à l’avant du tube magasin.', - 3: 'Retirer complètement la baguette du magasin.', - 4: 'Vider le magasin en tapotant l’arme orientée légèrement vers le bas.', - 5: 'Actionner le levier de sous garde jusqu’en position basse et retirer la munition éventuelle de la chambre.', - 6: 'Contrôler visuellement que la chambre est vide.', - }, + text_steps: [ + 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution.', + 'Faites très attention à ne pas déclencher l’arme durant cette manipulation. Dévisser la baguette à l’avant du tube magasin.', + 'Retirer complètement la baguette du magasin.', + 'Vider le magasin en tapotant l’arme orientée légèrement vers le bas.', + 'Actionner le levier de sous garde jusqu’en position basse et retirer la munition éventuelle de la chambre.', + 'Contrôler visuellement que la chambre est vide.', + ], img: levierSousGardeMagasinAvantImg, video: levierSousGardeMagasinAvantVideo, }, fixed_magazine: { label: 'Pas d’embout', value: 'fixed_magazine', - text_steps: { - 1: 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution.', - 2: 'Abaisser le levier de sous garde en position basse et retirer la munition éventuelle de la chambre.', - 3: 'Veiller à ne pas appuyer sur la queue de détente pendant cette manipulation !
Relever et abaisser le levier de sous garde tout en extrayant les munitions tant qu’il y a toujours des munitions présentes dans le tube magasin.', - 4: 'Contrôler visuellement que la chambre est vide.', - }, + text_steps: [ + 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution.', + 'Abaisser le levier de sous garde en position basse et retirer la munition éventuelle de la chambre.', + 'Veiller à ne pas appuyer sur la queue de détente pendant cette manipulation !
Relever et abaisser le levier de sous garde tout en extrayant les munitions tant qu’il y a toujours des munitions présentes dans le tube magasin.', + 'Contrôler visuellement que la chambre est vide.', + ], img: levierSousGardePasMagasinImg, video: levierSousGardePasMagasinVideo, }, diff --git a/frontend/src/utils/firearms-utils/epaule-a-pompe.ts b/frontend/src/utils/firearms-utils/epaule-a-pompe.ts index 10501001..d49b424a 100644 --- a/frontend/src/utils/firearms-utils/epaule-a-pompe.ts +++ b/frontend/src/utils/firearms-utils/epaule-a-pompe.ts @@ -11,15 +11,17 @@ export const epaule_a_pompe = { }, isDummyTypology: false, options_text: '', - text_steps: { - 1: 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', - 2: 'Si la pompe est bloquée, appuyer sur le bouton de déverrouillage situé à l’avant ou sous le pontet', - 3: 'Actionner la pompe doucement d’arrière en avant afin d’extraire toutes les munitions', - 4: 'Contrôler visuellement que la chambre est vide', - 5: 'Verrouiller l’arme en avançant légèrement la pompe vers l’avant', - 6: 'Contrôler l’orifice du tube magasin et constater que celui-ci est bien vide', + securingSteps: { + text_steps: [ + 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', + 'Si la pompe est bloquée, appuyer sur le bouton de déverrouillage situé à l’avant ou sous le pontet', + 'Actionner la pompe doucement d’arrière en avant afin d’extraire toutes les munitions', + 'Verrouiller l’arme en avançant légèrement la pompe vers l’avant', + 'Contrôler visuellement que la chambre est vide', + 'Contrôler l’orifice du tube magasin et constater que celui-ci est bien vide', + ], + video: epaulePompeSimpleVideo, }, - video: epaulePompeSimpleVideo, getDisclaimer: (category: string) => { if (category === 'B ou C') { return 'Catégorie B si la capacité maximale (chambre comprise) est supérieure à 5, ou si la crosse n’est pas fixe.' } if (category === 'C') { return 'Catégorie B si la capacité maximale (chambre comprise) est supérieure à 5, ou si la crosse n’est pas fixe, ou si le canon est lisse.' } diff --git a/frontend/src/utils/firearms-utils/epaule-a-un-coup-par-canon.ts b/frontend/src/utils/firearms-utils/epaule-a-un-coup-par-canon.ts index 492f7f79..321af3fc 100644 --- a/frontend/src/utils/firearms-utils/epaule-a-un-coup-par-canon.ts +++ b/frontend/src/utils/firearms-utils/epaule-a-un-coup-par-canon.ts @@ -17,43 +17,43 @@ export const epaule_a_un_coup_par_canon = { }, isDummyTypology: false, options_text: 'Sélectionnez ce que vous voyez sur la zone centrale de l’arme', - options: { + securingSteps: { cle_pouce: { label: 'Clé supérieure', value: 'cle_pouce', - text_steps: { - 1: 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', - 2: 'Pousser sur la clef d’ouverture à l’aide de votre pouce, et ouvrir l’arme en la cassant tout en restant appuyé sur la clef', - 3: 'Retirer les munitions éventuelles', - 4: 'Contrôler visuellement les chambres', - }, + text_steps: [ + 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', + 'Pousser sur la clef d’ouverture à l’aide de votre pouce, et ouvrir l’arme en la cassant tout en restant appuyé sur la clef', + 'Retirer les munitions éventuelles', + 'Contrôler visuellement les chambres', + ], img: epauleAUnCoupParCanonClePouceImg, video: epauleAUnCoupParCanonClePouceVideo, }, cle_lefaucheux: { label: 'Grande clé sous le canon', value: 'cle_lefaucheux', - text_steps: { - 1: 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', - 2: 'Repérer la clef présente sous les canons', - 3: 'Tourner la clef vers la droite', - 4: 'Ouvrir l’arme en la cassant', - 5: 'Retirer les munitions éventuelles', - 6: 'Contrôler visuellement les chambres', - }, + text_steps: [ + 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', + 'Repérer la clef présente sous les canons', + 'Tourner la clef vers la droite', + 'Ouvrir l’arme en la cassant', + 'Retirer les munitions éventuelles', + 'Contrôler visuellement les chambres', + ], img: epauleAUnCoupParCanonCleLechaufeuxImg, video: epauleAUnCoupParCanonCleLefaucheuxVideo, }, cle_darne: { label: 'Clé à oreilles', value: 'cle_darne', - text_steps: { - 1: 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', - 2: 'Tirer sur les oreilles vers l’arrière', - 3: 'Tirez pour faire coulisser la culasse vers l’arrière', - 4: 'Retirer les munitions éventuelles', - 5: 'Contrôler visuellement que la chambre est vide', - }, + text_steps: [ + 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', + 'Tirer sur les oreilles vers l’arrière', + 'Tirez pour faire coulisser la culasse vers l’arrière', + 'Retirer les munitions éventuelles', + 'Contrôler visuellement que la chambre est vide', + ], img: epauleAUnCoupParCanonCleDarneImg, video: epauleAUnCoupParCanonCleDarneVideo, }, diff --git a/frontend/src/utils/firearms-utils/epaule-a-verrou.ts b/frontend/src/utils/firearms-utils/epaule-a-verrou.ts index 0f3f8151..71025e2e 100644 --- a/frontend/src/utils/firearms-utils/epaule-a-verrou.ts +++ b/frontend/src/utils/firearms-utils/epaule-a-verrou.ts @@ -10,11 +10,13 @@ export const epaule_a_verrou = { displayLabel: 'Arme d’épaule à verrou', getCategory: getCommonCategory, isDummyTypology: true, - text_steps: { - 1: 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', - 2: 'Ouvrez la culasse en tirant le levier vers le haut puis en la tirant la culasse vers l’arrière', + securingSteps: { + text_steps: [ + 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', + 'Ouvrez la culasse en tirant le levier vers le haut puis en la tirant la culasse vers l’arrière', + ], + video: epauleAVerrouVideo, }, - video: epauleAVerrouVideo, guideFactice: { cartouches: { label: 'Balles', diff --git a/frontend/src/utils/firearms-utils/get-next-route-after-result.ts b/frontend/src/utils/firearms-utils/get-next-route-after-result.ts index 9789eea8..79e2bfb5 100644 --- a/frontend/src/utils/firearms-utils/get-next-route-after-result.ts +++ b/frontend/src/utils/firearms-utils/get-next-route-after-result.ts @@ -9,13 +9,13 @@ export const getNextRouteAfterResult = ({ securingTutorial, confidenceLevel, typ if (isCardDetected === false && isMeasuredGun === true) { return { name: 'MissingCard' } } else { return { name: 'IdentificationTypologyResult' } } } - const hasSecuringOptions = TYPOLOGIES[typology]?.options_step_1 || TYPOLOGIES[typology]?.options || TYPOLOGIES[typology]?.text_steps + const hasSecuringOptions = TYPOLOGIES[typology]?.securingSteps if (!hasSecuringOptions) { return { name: 'SecuringAchievement' } } - const hasMoreThanOneOptions = TYPOLOGIES[typology]?.options_step_1 || TYPOLOGIES[typology]?.options - if (hasMoreThanOneOptions) { + const hasMoreThanOneSteps = TYPOLOGIES[typology].securingSteps?.step_1 || !TYPOLOGIES[typology].securingSteps?.text_steps + if (hasMoreThanOneSteps) { return { name: 'SecuringSelectOption', params: { step: 1 } } } diff --git a/frontend/src/utils/firearms-utils/pistolet-semi-auto-moderne.ts b/frontend/src/utils/firearms-utils/pistolet-semi-auto-moderne.ts index 68145045..4254a829 100644 --- a/frontend/src/utils/firearms-utils/pistolet-semi-auto-moderne.ts +++ b/frontend/src/utils/firearms-utils/pistolet-semi-auto-moderne.ts @@ -15,32 +15,32 @@ export const pistolet_semi_auto_moderne = { isDummyTypology: true, pistolet_semi_auto_moderne_text_option: 'Sélectionner ce que vous voyez sur votre arme : bouton à proximité du pontet du côté gauche de la poignée, OU bouton sur le talon de la crosse.', textOptions: '', - options: { + securingSteps: { bouton_pontet: { label: 'Bouton à côté du pontet', value: 'bouton_pontet', - text_steps: { - 1: 'Analyser l’arme en direction sécurisée ', - 2: 'Appuyer sur le bouton de déverrouillage de chargeur situé à l’arrière du pontet', - 3: 'Retirer le chargeur de l’arme', - 4: 'Tirer la glissière vers l’arrière pour extraire la munition éventuelle', - 5: 'Actionner la culasse d’avant en arrière', - 6: 'Contrôler visuellement que la chambre est vide', - }, + text_steps: [ + 'Analyser l’arme en direction sécurisée ', + 'Appuyer sur le bouton de déverrouillage de chargeur situé à l’arrière du pontet', + 'Retirer le chargeur de l’arme', + 'Tirer la glissière vers l’arrière pour extraire la munition éventuelle', + 'Actionner la culasse d’avant en arrière', + 'Contrôler visuellement que la chambre est vide', + ], img: pistoletSemiAutoPontetImg, video: pistoletSemiAutoPontetVideo, }, poussoir_talon: { label: 'Poussoir sous le talon', value: 'poussoir_talon', - text_steps: { - 1: 'Analyser l’arme en direction sécurisée ', - 2: 'Appuyer sur le bouton de déverrouillage de chargeur situé sous la poignée', - 3: 'Retirer le chargeur de l’arme', - 4: 'Tirer la glissière vers l’arrière pour extraire la munition éventuelle', - 5: 'Actionner la culasse d’avant en arrière', - 6: 'Contrôler visuellement que la chambre est vide', - }, + text_steps: [ + 'Analyser l’arme en direction sécurisée ', + 'Appuyer sur le bouton de déverrouillage de chargeur situé sous la poignée', + 'Retirer le chargeur de l’arme', + 'Tirer la glissière vers l’arrière pour extraire la munition éventuelle', + 'Actionner la culasse d’avant en arrière', + 'Contrôler visuellement que la chambre est vide', + ], img: pistoletSemiAutoTalonImg, video: pistoletSemiAutoTalonVideo, }, diff --git a/frontend/src/utils/firearms-utils/revolver.ts b/frontend/src/utils/firearms-utils/revolver.ts index 374c4026..3de00a32 100644 --- a/frontend/src/utils/firearms-utils/revolver.ts +++ b/frontend/src/utils/firearms-utils/revolver.ts @@ -33,123 +33,131 @@ export const revolver = { getCategory: () => 'B', categoryWithoutSecuring: 'B ou D', isDummyTypology: true, - options_step_1_text: 'En maintenant l’arme dans une direction sécurisée , sélectionnez ce que vous voyez.', - options_step_1: { - black_powder: { - label: 'Petites Cheminées', - value: 'revolver_black_powder', - img: revolver1ChemineesImg, - }, - bullets: { - label: 'Arrière plat', - value: 'revolver_bullets', - img: revolver2CartouchesImg, - }, - }, - options_step_2_text: 'En maintenant l’arme dans une direction sécurisée, tournez-la pour observer l’arrière du barillet. Sélectionnez ce que vous voyez.', - options_step_2: { - revolver_bouton_barillet: { - label: 'Bouton à côté du barillet', - value: 'revolver_bouton_barillet', - text_steps: { - 1: 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', - 2: 'Tirer ou pousser le bouton de déverrouillage du barillet situé côté gauche vers l’avant', - 3: 'Basculer le barillet sur le côté', - 4: 'Pencher l’arme légèrement vers l’arrière', - 5: 'Vider les munitions éventuelles du barillet en appuyant sur la tige d’extraction située à l’avant du barillet', - 6: 'Contrôler visuellement que les chambres sont vides', + securingSteps: { + steps: [ + { + text: 'En maintenant l’arme dans une direction sécurisée , sélectionnez ce que vous voyez.', + options: [ + { + label: 'Petites Cheminées', + value: 'revolver_black_powder', + img: revolver1ChemineesImg, + }, + { + label: 'Arrière plat', + value: 'revolver_bullets', + img: revolver2CartouchesImg, + }, + ], }, - img: revolver2BoutoneBarilletImg, - video: revolver2BoutoneBarilletVideo, - }, - revolver_portiere: { - label: 'Portière qui cache le côté droit du barillet', - value: 'revolver_portiere', - img: revolver2PortiereImg, - }, - revolver_1873_us: { - label: 'Encoche près du chien sur côté droit barillet', - value: 'revolver_1873_us', - text_steps: { - 1: 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', - 2: 'Tirer légèrement le chien/marteau vers l’arrière jusqu’à entendre un premier clic', - 3: 'Ouvrir la portière pivotante sur la droite', - 4: 'Actionner la tringle d’extraction vers l’arrière pour chaque chambre du barillet', - 5: 'Contrôler que chaque chambre est bien vide en faisant tourner le barillet', + { + text: 'En maintenant l’arme dans une direction sécurisée, tournez-la pour observer l’arrière du barillet. Sélectionnez ce que vous voyez.', + options: [ + { + label: 'Bouton à côté du barillet', + value: 'revolver_bouton_barillet', + text_steps: [ + 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', + 'Tirer ou pousser le bouton de déverrouillage du barillet situé côté gauche vers l’avant', + 'Basculer le barillet sur le côté', + 'Pencher l’arme légèrement vers l’arrière', + 'Vider les munitions éventuelles du barillet en appuyant sur la tige d’extraction située à l’avant du barillet', + 'Contrôler visuellement que les chambres sont vides', + ], + img: revolver2BoutoneBarilletImg, + video: revolver2BoutoneBarilletVideo, + }, + { + label: 'Portière qui cache le côté droit du barillet', + value: 'revolver_portiere', + img: revolver2PortiereImg, + }, + { + label: 'Encoche près du chien sur côté droit barillet', + value: 'revolver_1873_us', + text_steps: [ + 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', + 'Tirer légèrement le chien/marteau vers l’arrière jusqu’à entendre un premier clic', + 'Ouvrir la portière pivotante sur la droite', + 'Actionner la tringle d’extraction vers l’arrière pour chaque chambre du barillet', + 'Contrôler que chaque chambre est bien vide en faisant tourner le barillet', + ], + img: revolver21873USImg, + video: revolver21873USVideo, + }, + { + label: 'Levier côté gauche du barillet', + value: 'revolver_enfield', + text_steps: [ + 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', + 'Appuyer sur le levier de déverrouillage côté gauche de l’arme', + 'Casser/basculer l’ensemble canon et barillet', + 'Retourner l’arme et vider les munitions éventuelles du barillet', + 'Contrôler visuellement que les chambres sont vides', + ], + img: revolver2EwBrisureImg, + video: revolver2EwBrisureVideo, + }, + { + label: 'Verrou en T à l’avant du chien', + value: 'revolver_ancien_brisure', + text_steps: [ + 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', + 'Soulever le verrou en appuyant sur son petit bouton poussoir et casser/basculer l’ensemble canon et barillet', + 'Retourner l’arme afin de disposer l’arrière du barillet vers le bas et vider les munitions', + 'Contrôler visuellement les chambres du barillet', + ], + img: revolver2SwBrisureImg, + video: revolver2SwBrisureVideo, + }, + { + label: 'Aucun des systèmes précédents', + value: 'revolver_axe_barillet', + text_steps: [ + 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', + 'Tirer l’axe du barillet vers l’avant et basculer le barillet sur le côté', + 'Pencher l’arme légèrement vers l’arrière', + 'Appuyer sur l’axe du barillet vers l’arrière pour extraire les cartouches', + 'Contrôler visuellement que les chambres sont bien vides', + ], + img: revolver2AxeBarilletImg, + video: revolver2AxeBarilletVideo, + }, + ], }, - img: revolver21873USImg, - video: revolver21873USVideo, - }, - revolver_enfield: { - label: 'Levier côté gauche du barillet', - value: 'revolver_enfield', - text_steps: { - 1: 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', - 2: 'Appuyer sur le levier de déverrouillage côté gauche de l’arme', - 3: 'Casser/basculer l’ensemble canon et barillet', - 4: 'Retourner l’arme et vider les munitions éventuelles du barillet', - 5: 'Contrôler visuellement que les chambres sont vides', + { + text: 'En maintenant l’arme dans une direction sécurisée, tirez la portière vers l’arrière avec le pouce, puis essayez de pousser sur un côté du barillet pour le faire basculer.', + video_post_text: 'Sélectionner le comportement de votre barillet : le barillet ne bascule pas, ou le barillet bascule.', + video_title: 'Titre de la vidéo', + video: revolver2PortiereVideo, + options: [ + { + label: 'Le barillet ne bascule pas', + value: 'revolver_1873_fr', + text_steps: [ + 'Faire tourner le barillet jusqu’à trouver une munition', + 'Déverrouiller la tringle d’éjection en tournant son extrémité d’un quart de tour', + 'Actionner la tringle d’extraction vers l’arrière pour chaque chambre du barillet contenant une munition', + 'Contrôler que chaque chambre est bien vide en faisant tourner le barillet', + ], + img: revolver3PortiereImg, + video: revolver2PortiereVideo, + }, + { + label: 'Le barillet bascule', + value: 'revolver_verrou_1892', + text_steps: [ + 'Basculer le barillet sur le côté', + 'Pencher l’arme légèrement vers l’arrière', + 'Vider les munitions éventuelles du barillet en appuyant sur la tige d’extraction située à l’avant du barillet', + 'Contrôler visuellement que les chambres sont vides', + ], + img: revolver31892Img, + video: revolver31892Video, + }, + ], }, - img: revolver2EwBrisureImg, - video: revolver2EwBrisureVideo, - }, - revolver_ancien_brisure: { - label: 'Verrou en T à l’avant du chien', - value: 'revolver_ancien_brisure', - text_steps: { - 1: 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', - 2: 'Tirer le chien légèrement vers l’arrière jusqu’à entendre un clic', - 3: 'Soulever le verrou en appuyant sur son petit bouton poussoir et casser/basculer l’ensemble canon et barillet', - 4: 'Retourner l’arme afin de disposer l’arrière du barillet vers le bas et vider les munitions éventuelles', - 5: 'Contrôler visuellement les chambres du barillet', - }, - img: revolver2SwBrisureImg, - video: revolver2SwBrisureVideo, - }, - revolver_axe_barillet: { - label: 'Aucun des systèmes précédents', - value: 'revolver_axe_barillet', - text_steps: { - 1: 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', - 2: 'Tirer l’axe du barillet vers l’avant et basculer le barillet sur le côté', - 3: 'Pencher l’arme légèrement vers l’arrière', - 4: 'Appuyer sur l’axe du barillet vers l’arrière pour extraire les cartouches', - 5: 'Contrôler visuellement que les chambres sont bien vides', - }, - img: revolver2AxeBarilletImg, - video: revolver2AxeBarilletVideo, - }, - }, - // options_step_3_text: 'En maintenant l’arme dans une direction sécurisée, tirez la portière vers l’arrière avec le pouce, puis essayez de pousser sur un côté du barillet pour le faire basculer.', - // options_step_3_video_pre_text: 'Texte à afficher avant la vidéo', - options_step_3_video_post_text: 'Sélectionner le comportement de votre barillet : le barillet ne bascule pas, ou le barillet bascule.', - options_step_3_video_title: 'Titre de la vidéo', - options_step_3_video: revolver2PortiereVideoDebut, - options_step_3: { - revolver_1873_fr: { - label: 'Le barillet ne bascule pas', - value: 'revolver_1873_fr', - text_steps: { - 1: 'Faire tourner le barillet jusqu’à trouver une munition', - 2: 'Déverrouiller la tringle d’éjection en tournant son extrémité d’un quart de tour', - 3: 'Actionner la tringle d’extraction vers l’arrière pour chaque chambre du barillet contenant une munition', - 4: 'Contrôler que chaque chambre est bien vide en faisant tourner le barillet', - }, - img: revolver3PortiereImg, - video: revolver2PortiereVideoFin, - }, - revolver_verrou_1892: { - label: 'Le barillet bascule', - value: 'revolver_verrou_1892', - text_steps: { - 1: 'Basculer le barillet sur le côté', - 2: 'Pencher l’arme légèrement vers l’arrière', - 3: 'Vider les munitions éventuelles du barillet en appuyant sur la tige d’extraction située à l’avant du barillet', - 4: 'Contrôler visuellement que les chambres sont vides', - }, - img: revolver31892Img, - video: revolver31892Video, - }, + ], }, guideFactice: { cartouches: { @@ -168,6 +176,11 @@ export const revolver = { return 'Les armes d’alarmes sont susceptibles d’être modifiées pour tirer des munitions létales. Pour des raisons de sécurité, faites si possible expertiser l’arme.' } }, + getDisclaimer: (category: string) => { + if (category === 'D') { + return 'Les armes d’alarmes sont susceptibles d’être modifiées pour tirer des munitions létales. Pour des raisons de sécurité, faites si possible expertiser l’arme.' + } + }, } as const export const revolver_black_powder = { diff --git a/frontend/src/utils/firearms-utils/semi-auto-style-militaire-autre.ts b/frontend/src/utils/firearms-utils/semi-auto-style-militaire-autre.ts index bdef162e..471dfbdb 100644 --- a/frontend/src/utils/firearms-utils/semi-auto-style-militaire-autre.ts +++ b/frontend/src/utils/firearms-utils/semi-auto-style-militaire-autre.ts @@ -23,72 +23,72 @@ export const semi_auto_style_militaire_autre = { getCategory: () => 'A ou B', isDummyTypology: true, options_text: 'Observez la position du chargeur et sélectionnez ce que vous voyez :', - options: { + securingSteps: { ar15: { label: 'Bouton au-dessus du chargeur', value: 'ar15', - text_steps: { - 1: 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', - 2: 'Appuyer avec l’index de la main droite sur le bouton poussoir situé côté droit de l’arme et extraire le chargeur de l’arme', - 3: 'Tirer le levier d’armement vers l’arrière', - 4: 'Retirer la munition éventuelle', - 5: 'Tout en maintenant le levier d’armement vers l’arrière, contrôler visuellement que la chambre est vide', - }, + text_steps: [ + 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', + 'Appuyer avec l’index de la main droite sur le bouton poussoir situé côté droit de l’arme et extraire le chargeur de l’arme', + 'Tirer le levier d’armement vers l’arrière', + 'Retirer la munition éventuelle', + 'Tout en maintenant le levier d’armement vers l’arrière, contrôler visuellement que la chambre est vide', + ], img: semiAutoMilitaireAr15Img, video: semiAutoMilitaireAr15Video, }, kalash: { label: 'Levier derrière le chargeur', value: 'kalash', - text_steps: { - 1: 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', - 2: 'Vérifier que le sélecteur de tir n’est pas en position haute, et le descendre si besoin', - 3: 'Appuyer sur le levier de déverrouillage du chargeur avec le pouce et extraire le chargeur en le faisant pivoter vers l’avant', - 4: 'Tirer le levier d’armement vers l’arrière', - 5: 'Retirer la munition éventuelle de la chambre', - 6: 'Tout en maintenant le levier d’armement vers l’arrière, contrôler visuellement que la chambre est vide', - }, + text_steps: [ + 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', + 'Vérifier que le sélecteur de tir n’est pas en position haute, et le descendre si besoin', + 'Appuyer sur le levier de déverrouillage du chargeur avec le pouce et extraire le chargeur en le faisant pivoter vers l’avant', + 'Tirer le levier d’armement vers l’arrière', + 'Retirer la munition éventuelle de la chambre', + 'Tout en maintenant le levier d’armement vers l’arrière, contrôler visuellement que la chambre est vide', + ], img: semiAutoMilitaireAkImg, video: semiAutoMilitaireAkVideo, }, sten: { label: 'Chargeur à angle droit', value: 'sten', - text_steps: { - 1: 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', - 2: 'Appuyer sur le bouton de verrouillage du chargeur', - 3: 'Retirer le chargeur', - 4: 'Tirer le levier d’armement vers l’arrière et bloquer le levier en position arrière dans le cran arrière, en extrayant la cartouche éventuelle s’il y en a une', - 5: 'Contrôler visuellement que la chambre est vide', - }, + text_steps: [ + 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', + 'Appuyer sur le bouton de verrouillage du chargeur', + 'Retirer le chargeur', + 'Tirer le levier d’armement vers l’arrière et bloquer le levier en position arrière dans le cran arrière, en extrayant la cartouche éventuelle s’il y en a une', + 'Contrôler visuellement que la chambre est vide', + ], img: semiAutoMilitaireStenImg, video: semiAutoMilitaireStenVideo, }, thompson: { label: 'Levier au-dessus du pontet', value: 'thompson', - text_steps: { - 1: 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', - 2: 'Retourner l’arme', - 3: 'Actionner le levier de verrouillage de chargeur', - 4: 'Retirer le chargeur', - 5: 'Retourner l’arme', - 6: 'Tirer le levier d’armement vers l’arrière et extraire la munition éventuelle', - 7: 'Contrôler visuellement que la chambre est vide', - }, + text_steps: [ + 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', + 'Retourner l’arme', + 'Actionner le levier de verrouillage de chargeur', + 'Retirer le chargeur', + 'Retourner l’arme', + 'Tirer le levier d’armement vers l’arrière et extraire la munition éventuelle', + 'Contrôler visuellement que la chambre est vide', + ], img: semiAutoMilitaireThompsonImg, video: semiAutoMilitaireThompsonVideo, }, uzi: { label: 'Bouton poussoir à la base de la poignée', value: 'uzi', - text_steps: { - 1: 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', - 2: 'Retourner l’arme', - 3: 'Appuyer sur le bouton de verrouillage du chargeur en bas de la poignée', - 4: 'Retirer le chargeur', - 5: 'Tirer le levier d’armement situé sur le dessus de l’arme vers l’arrière et retirer la munition éventuelle de la chambre', - }, + text_steps: [ + 'Observer l’arme en l’orientant dans une direction sans risque, en manipulant avec précaution', + 'Retourner l’arme', + 'Appuyer sur le bouton de verrouillage du chargeur en bas de la poignée', + 'Retirer le chargeur', + 'Tirer le levier d’armement situé sur le dessus de l’arme vers l’arrière et retirer la munition éventuelle de la chambre', + ], img: semiAutoMilitairePistoletMitralleurImg, video: semiAutoMilitairePistoletMitralleurVideo, }, diff --git a/frontend/src/views/GuideSecuringFirearm/SecuringSelectOptionContent.vue b/frontend/src/views/GuideSecuringFirearm/SecuringSelectOptionContent.vue index 354128fe..2191f157 100644 --- a/frontend/src/views/GuideSecuringFirearm/SecuringSelectOptionContent.vue +++ b/frontend/src/views/GuideSecuringFirearm/SecuringSelectOptionContent.vue @@ -89,6 +89,21 @@ const backTo = computed(() => { } return { name: 'InstructionsPage' } }) + +function getOptions (step, typology, TYPOLOGIES) { + if (step === 3) { + return TYPOLOGIES[typology]?.securingSteps?.steps[2]?.options || [] + } else if (step === 2) { + return TYPOLOGIES[typology]?.securingSteps?.steps[1]?.options || [] + } else { + if (typology !== 'revolver') { + return TYPOLOGIES[typology]?.securingSteps || [] + } else { + return TYPOLOGIES[typology]?.securingSteps?.steps[0]?.options || [] + } + } +} +