PageSourceSearch

https://monespace.inufocad.edu.ht/build/assets/questionnaires-6EkE4gkO.js

js inufocad.edu.ht collected 2026-10-05 02:31:44 UTC 5,540 bytes, 1 lines download raw bytes

1import{m as h,r as b,j as e,L as f}from"./app-B_m3joBS.js";import{A as j}from"./admission-stepper-DEmrXZXt.js";import{P as y,I as x}from"./portail-layout-CKfgyXNv.js";import{L as g}from"./lock-K6bTvmA3.js";/* empty css            */import"./avatar-CvawFEC1.js";import"./createLucideIcon-DHXsDjhk.js";import"./button-6KLCsRxO.js";import"./input-CnkgP7J3.js";import"./index-1ro5RwMo.js";import"./index-rDLvzLl8.js";import"./index-BSa-1lXz.js";import"./index-9AWg2GUv.js";import"./pied-de-page-portail-mfjxe5zL.js";import"./use-identite-Dn5yAYLo.js";import"./dialog-BX4YwP5P.js";const u="var(--eta-interactif)";function N(s){const r={};return s.forEach(l=>l.questions.forEach(i=>{r[i.id]=i.valeur??(i.type==="choix_multiple"?[]:"")})),r}function v({question:s,valeur:r,lectureSeule:l,onChange:i,erreur:m}){const n=Array.isArray(r)?"":r,c=Array.isArray(r)?r:[];return e.jsxs("div",{className:"border-b border-neutral-100 py-3 last:border-0",children:[e.jsxs("label",{htmlFor:`question-${s.id}`,className:"mb-1 block text-sm font-medium",children:[s.libelle,s.obligatoire&&e.jsx("span",{className:"ml-1 text-red-600",children:"*"}),s.type==="choix_multiple"&&e.jsx(x,{texte:"Vous pouvez cocher plusieurs réponses à la fois."})]}),l?e.jsx("p",{className:"text-sm text-neutral-600 italic",children:Array.isArray(r)?r.length>0?r.join(", "):"–":r||"–"}):e.jsxs(e.Fragment,{children:[s.type==="texte_court"&&e.jsx("input",{id:`question-${s.id}`,type:"text",value:n,onChange:t=>i(t.target.value),className:"w-full rounded border border-neutral-300 px-3 py-2 text-sm"}),s.type==="texte_long"&&e.jsx("textarea",{id:`question-${s.id}`,value:n,onChange:t=>i(t.target.value),rows:3,className:"w-full rounded border border-neutral-300 px-3 py-2 text-sm"}),s.type==="date"&&e.jsx("input",{id:`question-${s.id}`,type:"date",value:n,onChange:t=>i(t.target.value),className:"rounded border border-neutral-300 px-3 py-2 text-sm"}),s.type==="oui_non"&&e.jsx("div",{className:"flex gap-4",children:["Oui","Non"].map(t=>e.jsxs("label",{className:"flex items-center gap-1 text-sm",children:[e.jsx("input",{type:"radio",name:`question-${s.id}`,checked:n===t,onChange:()=>i(t)}),t]},t))}),s.type==="choix_unique"&&e.jsx("div",{className:"space-y-1",children:(s.options??[]).map(t=>e.jsxs("label",{className:"flex items-center gap-1 text-sm",children:[e.jsx("input",{type:"radio",name:`question-${s.id}`,checked:n===t,onChange:()=>i(t)}),t]},t))}),s.type==="choix_multiple"&&e.jsx("div",{className:"space-y-1",children:(s.options??[]).map(t=>e.jsxs("label",{className:"flex items-center gap-1 text-sm",children:[e.jsx("input",{type:"checkbox",checked:c.includes(t),onChange:a=>i(a.target.checked?[...c,t]:c.filter(o=>o!==t))}),t]},t))})]}),m&&e.jsx("p",{className:"mt-1 text-xs text-red-600",children:m})]})}function P({demande:s,choix:r,erreursObligatoires:l}){const i=h({reponses:[]}),[m,n]=b.useState(()=>N(r)),c=(a,o)=>{n(d=>({...d,[a]:o}))},t=a=>{a.preventDefault();const o=r.flatMap(d=>d.questions.map(p=>({choix_programme_id:d.id,question_programme_id:p.id,valeur:m[p.id]??(p.type==="choix_multiple"?[]:"")})));i.transform(()=>({reponses:o})),i.post(`/portail/admission/demandes/${s.id}/questionnaires`)};return e.jsxs(y,{titre:"Questionnaires spécifiques",children:[e.jsx(f,{title:"Questionnaires spécifiques"}),e.jsx(j,{etapeActuelle:2,demandeId:s.id}),!s.peut_modifier&&e.jsxs("div",{className:"mb-4 flex items-start gap-2 rounded border border-neutral-300 bg-neutral-50 px-4 py-3 text-sm text-neutral-700",children:[e.jsx(g,{className:"size-4 shrink-0","aria-hidden":!0}),e.jsxs("p",{children:[e.jsx("span",{className:"font-semibold",children:"Décision rendue – votre dossier est figé."})," Vos réponses restent consultables mais ne peuvent plus être modifiées."]})]}),Object.keys(l).length>0&&e.jsx("div",{className:"mb-4 rounded border border-red-300 bg-red-50 px-4 py-3 text-sm text-red-800",children:"Veuillez répondre aux questions obligatoires manquantes ci-dessous avant de continuer."}),e.jsxs("form",{onSubmit:t,children:[e.jsxs("section",{className:"rounded-lg bg-white p-5 shadow-sm",children:[e.jsxs("h2",{className:"mb-1 font-semibold",children:["Questionnaires spécifiques – ",s.session,e.jsx(x,{texte:"Ces questions sont propres à chaque programme choisi ci-dessous. Vos réponses restent modifiables tant qu'aucune décision n'a été rendue sur votre dossier."})]}),e.jsx("p",{className:"mb-4 text-sm text-neutral-500",children:"Certains programmes peuvent demander de répondre à des questions supplémentaires."}),r.map(a=>e.jsxs("div",{className:"border-t border-neutral-100 py-3 first:border-0",children:[e.jsxs("p",{className:"mb-1 text-sm font-semibold",children:[a.ordre,a.ordre===1?"er":"e"," choix : ",a.programme]}),a.questions.length===0?e.jsx("p",{className:"text-sm text-neutral-400 italic",children:"Aucune question spécifique"}):a.questions.map(o=>e.jsx(v,{question:o,valeur:m[o.id]??(o.type==="choix_multiple"?[]:""),lectureSeule:!s.peut_modifier,onCh
1ange:d=>c(o.id,d),erreur:l[`question_${o.id}`]},o.id))]},a.id))]}),e.jsx("div",{className:"mt-5",children:s.peut_modifier?e.jsx("button",{type:"submit",disabled:i.processing,className:"rounded px-4 py-2 text-sm font-medium text-white disabled:opacity-40",style:{backgroundColor:u},children:"Continuer – Documents exigés"}):e.jsx("a",{href:`/portail/admission/demandes/${s.id}/documents`,className:"rounded px-4 py-2 text-sm font-medium text-white",style:{backgroundColor:u},children:"Continuer – Documents exigés"})})]})]})}export{P as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.