From 9952ce7fead6d43e01658d78025f8a0977faf965 Mon Sep 17 00:00:00 2001 From: Anis Safine Laget Date: Thu, 11 Mar 2021 00:17:06 +0100 Subject: [PATCH] =?UTF-8?q?=F0=9F=93=A6=20Release=20v0.14.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dist/css/{index.683f4cae.css => index.655d6121.css} | 2 +- dist/index.html | 2 +- dist/js/index.3111f46b.js | 2 -- dist/js/index.3111f46b.js.map | 1 - dist/js/index.de437acc.js | 2 ++ dist/js/index.de437acc.js.map | 1 + src/js/version.json | 2 +- 7 files changed, 6 insertions(+), 6 deletions(-) rename dist/css/{index.683f4cae.css => index.655d6121.css} (92%) delete mode 100644 dist/js/index.3111f46b.js delete mode 100644 dist/js/index.3111f46b.js.map create mode 100644 dist/js/index.de437acc.js create mode 100644 dist/js/index.de437acc.js.map diff --git a/dist/css/index.683f4cae.css b/dist/css/index.655d6121.css similarity index 92% rename from dist/css/index.683f4cae.css rename to dist/css/index.655d6121.css index fd1153db72..542e7b3d69 100644 --- a/dist/css/index.683f4cae.css +++ b/dist/css/index.655d6121.css @@ -1 +1 @@ -/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:rgba(0,0,0,0)}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;-moz-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}button{background-color:rgba(0,0,0,0);background-image:none}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}fieldset,ol,ul{margin:0;padding:0}ol,ul{list-style:none}html{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}*,:after,:before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;border-width:0;border-style:solid;border-color:#e2e8f0}hr{border-top-width:1px}img{border-style:solid}textarea{resize:vertical}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#a0aec0}input::-moz-placeholder,textarea::-moz-placeholder{color:#a0aec0}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#a0aec0}input::-ms-input-placeholder,textarea::-ms-input-placeholder{color:#a0aec0}input::placeholder,textarea::placeholder{color:#a0aec0}[role=button],button{cursor:pointer}table{border-collapse:collapse}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}button,input,optgroup,select,textarea{padding:0;line-height:inherit;color:inherit}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}body{font-size:1rem;line-height:1.5em;font-family:Marianne,arial,sans-serif;font-weight:400;--text-opacity:1;color:#383838;color:rgba(56,56,56,var(--text-opacity));overflow-y:scroll}@font-face{font-family:Marianne;font-weight:700;src:url(../fonts/Marianne-Bold.29cb4138.otf) format("opentype")}@font-face{font-family:Marianne;font-weight:400;src:url(../fonts/Marianne-Regular.e41d3f7e.otf) format("opentype")}@font-face{font-family:Marianne;font-weight:300;src:url(../fonts/Marianne-Light.5838fc59.otf) format("opentype")}.text-display-xl{font-size:3rem}.text-display-lg,.text-display-xl{line-height:1.25em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.text-display-lg{font-size:2rem}.text-display-md{font-size:1.5rem;line-height:1.25em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.text-display-sm{font-size:1.25rem}.text-display-sm,.text-display-xs{line-height:1.375em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.text-display-xs{font-size:1rem}.text-xl{font-size:1.5rem;line-height:1.5em}.text-lg{font-size:1.25rem;line-height:1.5em}.text-md{font-size:1rem;line-height:1.5em}.text-sm{font-size:.865rem;line-height:1.5em}.text-xs{font-size:.75rem;line-height:1em;font-weight:300}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.bg-black{--bg-opacity:1;background-color:#1e1e1e;background-color:rgba(30,30,30,var(--bg-opacity))}.bg-white{--bg-opacity:1;background-color:#fff;background-color:rgba(255,255,255,var(--bg-opacity))}.bg-gray-100{--bg-opacity:1;background-color:#f7fafc;background-color:rgba(247,250,252,var(--bg-opacity))}.bg-gray-200{--bg-opacity:1;background-color:#edf2f7;background-color:rgba(237,242,247,var(--bg-opacity))}.bg-gray-500{--bg-opacity:1;background-color:#a0aec0;background-color:rgba(160,174,192,var(--bg-opacity))}.bg-yellow-200{--bg-opacity:1;background-color:#fefcbf;background-color:rgba(254,252,191,var(--bg-opacity))}.bg-yellow-400{--bg-opacity:1;background-color:#f6e05e;background-color:rgba(246,224,94,var(--bg-opacity))}.bg-primary{--bg-opacity:1;background-color:#000091;background-color:rgba(0,0,145,var(--bg-opacity))}.bg-blue200{--bg-opacity:1;background-color:#e5e5f4;background-color:rgba(229,229,244,var(--bg-opacity))}.bg-blue100{--bg-opacity:1;background-color:#f2f2f9;background-color:rgba(242,242,249,var(--bg-opacity))}.bg-secondary{--bg-opacity:1;background-color:#ff6f4c;background-color:rgba(255,111,76,var(--bg-opacity))}.bg-orange300{--bg-opacity:1;background-color:#ffdbd2;background-color:rgba(255,219,210,var(--bg-opacity))}.bg-orange200{--bg-opacity:1;background-color:#fff0ed;background-color:rgba(255,240,237,var(--bg-opacity))}.bg-tertiary{--bg-opacity:1;background-color:#00ac8c;background-color:rgba(0,172,140,var(--bg-opacity))}.bg-red600{--bg-opacity:1;background-color:#e1000f;background-color:rgba(225,0,15,var(--bg-opacity))}.bg-red300{--bg-opacity:1;background-color:#f7bfc3;background-color:rgba(247,191,195,var(--bg-opacity))}.bg-red200{--bg-opacity:1;background-color:#fce5e7;background-color:rgba(252,229,231,var(--bg-opacity))}.bg-error{--bg-opacity:1;background-color:#b60000;background-color:rgba(182,0,0,var(--bg-opacity))}.bg-G200{--bg-opacity:1;background-color:#f0f0f0;background-color:rgba(240,240,240,var(--bg-opacity))}.bg-G100{--bg-opacity:1;background-color:#f8f8f8;background-color:rgba(248,248,248,var(--bg-opacity))}.bg-corail{--bg-opacity:1;background-color:#ff6f4c;background-color:rgba(255,111,76,var(--bg-opacity))}.hover\:bg-gray-100:hover{--bg-opacity:1;background-color:#f7fafc;background-color:rgba(247,250,252,var(--bg-opacity))}.hover\:bg-primary:hover{--bg-opacity:1;background-color:#000091;background-color:rgba(0,0,145,var(--bg-opacity))}.hover\:bg-blue200:hover{--bg-opacity:1;background-color:#e5e5f4;background-color:rgba(229,229,244,var(--bg-opacity))}.hover\:bg-secondary:hover{--bg-opacity:1;background-color:#ff6f4c;background-color:rgba(255,111,76,var(--bg-opacity))}.hover\:bg-G200:hover{--bg-opacity:1;background-color:#f0f0f0;background-color:rgba(240,240,240,var(--bg-opacity))}.hover\:bg-G100:hover{--bg-opacity:1;background-color:#f8f8f8;background-color:rgba(248,248,248,var(--bg-opacity))}.hover\:bg-primaryDark:hover{--bg-opacity:1;background-color:#00006c;background-color:rgba(0,0,108,var(--bg-opacity))}.hover\:bg-secondaryDark:hover{--bg-opacity:1;background-color:#fe542a;background-color:rgba(254,84,42,var(--bg-opacity))}.hover\:bg-tertiaryDark:hover{--bg-opacity:1;background-color:#008068;background-color:rgba(0,128,104,var(--bg-opacity))}.border-transparent{border-color:rgba(0,0,0,0)}.border-black{--border-opacity:1;border-color:#1e1e1e;border-color:rgba(30,30,30,var(--border-opacity))}.border-gray-200{--border-opacity:1;border-color:#edf2f7;border-color:rgba(237,242,247,var(--border-opacity))}.border-primary{--border-opacity:1;border-color:#000091;border-color:rgba(0,0,145,var(--border-opacity))}.border-blue200{--border-opacity:1;border-color:#e5e5f4;border-color:rgba(229,229,244,var(--border-opacity))}.border-secondary{--border-opacity:1;border-color:#ff6f4c;border-color:rgba(255,111,76,var(--border-opacity))}.border-tertiary{--border-opacity:1;border-color:#00ac8c;border-color:rgba(0,172,140,var(--border-opacity))}.border-error{--border-opacity:1;border-color:#b60000;border-color:rgba(182,0,0,var(--border-opacity))}.border-G400{--border-opacity:1;border-color:#cecece;border-color:rgba(206,206,206,var(--border-opacity))}.border-G200{--border-opacity:1;border-color:#f0f0f0;border-color:rgba(240,240,240,var(--border-opacity))}.border-G100{--border-opacity:1;border-color:#f8f8f8;border-color:rgba(248,248,248,var(--border-opacity))}.hover\:border-blue600:hover{--border-opacity:1;border-color:#000091;border-color:rgba(0,0,145,var(--border-opacity))}.hover\:border-inputHover:hover{--border-opacity:1;border-color:#d9d9e6;border-color:rgba(217,217,230,var(--border-opacity))}.hover\:border-tertiaryDark:hover{--border-opacity:1;border-color:#008068;border-color:rgba(0,128,104,var(--border-opacity))}.focus\:border-primary:focus{--border-opacity:1;border-color:#000091;border-color:rgba(0,0,145,var(--border-opacity))}.focus\:border-G400:focus{--border-opacity:1;border-color:#cecece;border-color:rgba(206,206,206,var(--border-opacity))}.rounded-sm{-webkit-border-radius:.125rem;-moz-border-radius:.125rem;border-radius:.125rem}.rounded{-webkit-border-radius:.25rem;-moz-border-radius:.25rem;border-radius:.25rem}.rounded-md{-webkit-border-radius:.375rem;-moz-border-radius:.375rem;border-radius:.375rem}.rounded-lg{-webkit-border-radius:.5rem;-moz-border-radius:.5rem;border-radius:.5rem}.rounded-full{-webkit-border-radius:9999px;-moz-border-radius:9999px;border-radius:9999px}.rounded-b-none{-webkit-border-bottom-right-radius:0;-moz-border-radius-bottomright:0;border-bottom-right-radius:0;-webkit-border-bottom-left-radius:0;-moz-border-radius-bottomleft:0;border-bottom-left-radius:0}.border-solid{border-style:solid}.border-2{border-width:2px}.border{border-width:1px}.border-r-2{border-right-width:2px}.border-b-2{border-bottom-width:2px}.border-l-4{border-left-width:4px}.border-t{border-top-width:1px}.border-r{border-right-width:1px}.border-b{border-bottom-width:1px}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.block{display:block}.inline-block{display:inline-block}.flex{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.inline-flex{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.flex-row{-webkit-box-direction:normal;-webkit-flex-direction:row;-moz-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.flex-row,.flex-row-reverse{-webkit-box-orient:horizontal;-moz-box-orient:horizontal}.flex-row-reverse{-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-moz-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.flex-col{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.flex-wrap{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.items-start{-webkit-box-align:start;-webkit-align-items:flex-start;-moz-box-align:start;-ms-flex-align:start;align-items:flex-start}.items-end{-webkit-box-align:end;-webkit-align-items:flex-end;-moz-box-align:end;-ms-flex-align:end;align-items:flex-end}.items-center{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}.items-baseline{-webkit-box-align:baseline;-webkit-align-items:baseline;-moz-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.justify-end{-webkit-box-pack:end;-webkit-justify-content:flex-end;-moz-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.justify-center{-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center}.justify-between{-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.flex-1{-webkit-box-flex:1;-webkit-flex:1 1 0%;-moz-box-flex:1;-ms-flex:1 1 0%;flex:1 1 0%}.flex-none{-webkit-box-flex:0;-webkit-flex:none;-moz-box-flex:0;-ms-flex:none;flex:none}.flex-grow{-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1}.flex-shrink-0{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.font-light{font-weight:300}.font-normal{font-weight:400}.font-bold{font-weight:700}.h-2{height:.5rem}.h-3{height:.75rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-16{height:4rem}.h-20{height:5rem}.h-24{height:6rem}.h-40{height:10rem}.h-64{height:16rem}.h-96{height:24rem}.h-128{height:32rem}.h-auto{height:auto}.h-px{height:1px}.h-full{height:100%}.leading-3{line-height:.75rem}.leading-6{line-height:1.5rem}.leading-none{line-height:1}.list-disc{list-style-type:disc}.m-2{margin:.5rem}.m-4{margin:1rem}.m-20{margin:5rem}.mx-1{margin-left:.25rem;margin-right:.25rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.my-4{margin-top:1rem;margin-bottom:1rem}.my-6{margin-top:1.5rem;margin-bottom:1.5rem}.my-8{margin-top:2rem;margin-bottom:2rem}.mx-8{margin-left:2rem;margin-right:2rem}.mx-auto{margin-left:auto;margin-right:auto}.-mx-4{margin-left:-1rem;margin-right:-1rem}.mr-0{margin-right:0}.mt-1{margin-top:.25rem}.mr-1{margin-right:.25rem}.mb-1{margin-bottom:.25rem}.ml-1{margin-left:.25rem}.mt-2{margin-top:.5rem}.mr-2{margin-right:.5rem}.mb-2{margin-bottom:.5rem}.ml-2{margin-left:.5rem}.mb-3{margin-bottom:.75rem}.mt-4{margin-top:1rem}.mr-4{margin-right:1rem}.mb-4{margin-bottom:1rem}.ml-4{margin-left:1rem}.mt-5{margin-top:1.25rem}.ml-5{margin-left:1.25rem}.mt-6{margin-top:1.5rem}.mr-6{margin-right:1.5rem}.mb-6{margin-bottom:1.5rem}.ml-6{margin-left:1.5rem}.mt-8{margin-top:2rem}.mr-8{margin-right:2rem}.mb-8{margin-bottom:2rem}.ml-8{margin-left:2rem}.mt-10{margin-top:2.5rem}.mb-10{margin-bottom:2.5rem}.ml-10{margin-left:2.5rem}.mt-12{margin-top:3rem}.mb-12{margin-bottom:3rem}.ml-12{margin-left:3rem}.mt-16{margin-top:4rem}.mb-16{margin-bottom:4rem}.ml-16{margin-left:4rem}.mt-20{margin-top:5rem}.mt-24{margin-top:6rem}.mt-32{margin-top:8rem}.mt-40{margin-top:10rem}.-mb-1{margin-bottom:-.25rem}.-ml-5{margin-left:-1.25rem}.-mt-6{margin-top:-1.5rem}.-mb-6{margin-bottom:-1.5rem}.-mt-8{margin-top:-2rem}.max-w-sm{max-width:24rem}.max-w-md{max-width:28rem}.max-w-xl{max-width:36rem}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-screen-sm{max-width:640px}.max-w-screen-md{max-width:768px}.max-w-screen-lg{max-width:1024px}.min-h-screen{min-height:100vh}.object-cover{-o-object-fit:cover;object-fit:cover}.object-center{-o-object-position:center;object-position:center}.object-top{-o-object-position:top;object-position:top}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.outline-none{outline:0}.focus\:outline-none:focus{outline:0}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.py-0{padding-top:0;padding-bottom:0}.py-1{padding-top:.25rem;padding-bottom:.25rem}.px-1{padding-left:.25rem;padding-right:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.px-3{padding-left:.75rem;padding-right:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.px-4{padding-left:1rem;padding-right:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.px-8{padding-left:2rem;padding-right:2rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-20{padding-top:5rem;padding-bottom:5rem}.pb-1{padding-bottom:.25rem}.pt-2{padding-top:.5rem}.pr-2{padding-right:.5rem}.pb-2{padding-bottom:.5rem}.pl-2{padding-left:.5rem}.pr-3{padding-right:.75rem}.pl-3{padding-left:.75rem}.pt-4{padding-top:1rem}.pr-4{padding-right:1rem}.pb-4{padding-bottom:1rem}.pt-6{padding-top:1.5rem}.pr-6{padding-right:1.5rem}.pl-6{padding-left:1.5rem}.pr-8{padding-right:2rem}.pb-8{padding-bottom:2rem}.pt-10{padding-top:2.5rem}.pr-10{padding-right:2.5rem}.pb-10{padding-bottom:2.5rem}.pl-10{padding-left:2.5rem}.pt-12{padding-top:3rem}.pr-12{padding-right:3rem}.pl-12{padding-left:3rem}.pb-16{padding-bottom:4rem}.pb-20{padding-bottom:5rem}.pb-32{padding-bottom:8rem}.pointer-events-none{pointer-events:none}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:-webkit-sticky;position:sticky}.inset-0{right:0;left:0}.inset-0,.inset-y-0{top:0;bottom:0}.top-0{top:0}.right-0{right:0}.bottom-0{bottom:0}.left-0{left:0}.resize{resize:both}.shadow-xs{-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.05);box-shadow:0 0 0 1px rgba(0,0,0,.05)}.shadow-sm{-webkit-box-shadow:0 1px 2px 0 rgba(0,0,0,.05);box-shadow:0 1px 2px 0 rgba(0,0,0,.05)}.shadow{-webkit-box-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px 0 rgba(0,0,0,.06);box-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px 0 rgba(0,0,0,.06)}.shadow-md{-webkit-box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}.shadow-lg{-webkit-box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)}.shadow-xl{-webkit-box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04)}.table-fixed{table-layout:fixed}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-black{--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.text-white{--text-opacity:1;color:#fff;color:rgba(255,255,255,var(--text-opacity))}.text-gray-500{--text-opacity:1;color:#a0aec0;color:rgba(160,174,192,var(--text-opacity))}.text-red{--text-opacity:1;color:#d63626;color:rgba(214,54,38,var(--text-opacity))}.text-green{color:#169b62}.text-primary{--text-opacity:1;color:#000091;color:rgba(0,0,145,var(--text-opacity))}.text-secondary{--text-opacity:1;color:#ff6f4c;color:rgba(255,111,76,var(--text-opacity))}.text-error{--text-opacity:1;color:#b60000;color:rgba(182,0,0,var(--text-opacity))}.text-G600{--text-opacity:1;color:#6a6a6a;color:rgba(106,106,106,var(--text-opacity))}.text-G400{--text-opacity:1;color:#cecece;color:rgba(206,206,206,var(--text-opacity))}.text-corail{--text-opacity:1;color:#ff6f4c;color:rgba(255,111,76,var(--text-opacity))}.hover\:text-white:hover{--text-opacity:1;color:#fff;color:rgba(255,255,255,var(--text-opacity))}.hover\:text-primary:hover{--text-opacity:1;color:#000091;color:rgba(0,0,145,var(--text-opacity))}.hover\:text-primaryDark:hover{--text-opacity:1;color:#00006c;color:rgba(0,0,108,var(--text-opacity))}.hover\:text-secondaryDark:hover{--text-opacity:1;color:#fe542a;color:rgba(254,84,42,var(--text-opacity))}.focus\:text-white:focus{--text-opacity:1;color:#fff;color:rgba(255,255,255,var(--text-opacity))}.italic{font-style:italic}.uppercase{text-transform:uppercase}.underline{text-decoration:underline}.line-through{text-decoration:line-through}.hover\:underline:hover{text-decoration:underline}.tracking-wide{letter-spacing:.025em}.align-top{vertical-align:top}.align-middle{vertical-align:middle}.visible{visibility:visible}.invisible{visibility:hidden}.whitespace-no-wrap{white-space:nowrap}.w-1{width:.25rem}.w-2{width:.5rem}.w-3{width:.75rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-8{width:2rem}.w-16{width:4rem}.w-24{width:6rem}.w-32{width:8rem}.w-48{width:12rem}.w-64{width:16rem}.w-96{width:24rem}.w-128{width:32rem}.w-1\/2{width:50%}.w-8\/12{width:66.666667%}.w-full{width:100%}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.z-50{z-index:50}.gap-0{grid-gap:0;gap:0}.gap-10{grid-gap:2.5rem;gap:2.5rem}.gap-16{grid-gap:4rem;gap:4rem}.gap-y-8{grid-row-gap:2rem;row-gap:2rem}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.transform{--transform-translate-x:0;--transform-translate-y:0;--transform-rotate:0;--transform-skew-x:0;--transform-skew-y:0;--transform-scale-x:1;--transform-scale-y:1;-webkit-transform:translateX(var(--transform-translate-x)) translateY(var(--transform-translate-y)) rotate(var(--transform-rotate)) skewX(var(--transform-skew-x)) skewY(var(--transform-skew-y)) scaleX(var(--transform-scale-x)) scaleY(var(--transform-scale-y));-moz-transform:translateX(var(--transform-translate-x)) translateY(var(--transform-translate-y)) rotate(var(--transform-rotate)) skewX(var(--transform-skew-x)) skewY(var(--transform-skew-y)) scaleX(var(--transform-scale-x)) scaleY(var(--transform-scale-y));-ms-transform:translateX(var(--transform-translate-x)) translateY(var(--transform-translate-y)) rotate(var(--transform-rotate)) skewX(var(--transform-skew-x)) skewY(var(--transform-skew-y)) scaleX(var(--transform-scale-x)) scaleY(var(--transform-scale-y));transform:translateX(var(--transform-translate-x)) translateY(var(--transform-translate-y)) rotate(var(--transform-rotate)) skewX(var(--transform-skew-x)) skewY(var(--transform-skew-y)) scaleX(var(--transform-scale-x)) scaleY(var(--transform-scale-y))}.origin-top-right{-webkit-transform-origin:top right;-moz-transform-origin:top right;-ms-transform-origin:top right;transform-origin:top right}.translate-x-0{--transform-translate-x:0}.translate-x-full{--transform-translate-x:100%}.transition{-webkit-transition-property:background-color,border-color,color,fill,stroke,opacity,-webkit-box-shadow,-webkit-transform;transition-property:background-color,border-color,color,fill,stroke,opacity,-webkit-box-shadow,-webkit-transform;-moz-transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform,-moz-transform;transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform;transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform,-webkit-box-shadow,-webkit-transform,-moz-transform}.ease-in-out{-webkit-transition-timing-function:cubic-bezier(.4,0,.2,1);-moz-transition-timing-function:cubic-bezier(.4,0,.2,1);transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{-webkit-transition-duration:.2s;-moz-transition-duration:.2s;transition-duration:.2s}.duration-300{-webkit-transition-duration:.3s;-moz-transition-duration:.3s;transition-duration:.3s}.duration-500{-webkit-transition-duration:.5s;-moz-transition-duration:.5s;transition-duration:.5s}@-webkit-keyframes spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@-moz-keyframes spin{to{-moz-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes spin{to{-webkit-transform:rotate(1turn);-moz-transform:rotate(1turn);transform:rotate(1turn)}}@-webkit-keyframes ping{75%,to{-webkit-transform:scale(2);transform:scale(2);opacity:0}}@-moz-keyframes ping{75%,to{-moz-transform:scale(2);transform:scale(2);opacity:0}}@keyframes ping{75%,to{-webkit-transform:scale(2);-moz-transform:scale(2);transform:scale(2);opacity:0}}@-webkit-keyframes pulse{50%{opacity:.5}}@-moz-keyframes pulse{50%{opacity:.5}}@keyframes pulse{50%{opacity:.5}}@-webkit-keyframes bounce{0%,to{-webkit-transform:translateY(-25%);transform:translateY(-25%);-webkit-animation-timing-function:cubic-bezier(.8,0,1,1);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{-webkit-transform:none;transform:none;-webkit-animation-timing-function:cubic-bezier(0,0,.2,1);animation-timing-function:cubic-bezier(0,0,.2,1)}}@-moz-keyframes bounce{0%,to{-moz-transform:translateY(-25%);transform:translateY(-25%);-moz-animation-timing-function:cubic-bezier(.8,0,1,1);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{-moz-transform:none;transform:none;-moz-animation-timing-function:cubic-bezier(0,0,.2,1);animation-timing-function:cubic-bezier(0,0,.2,1)}}@keyframes bounce{0%,to{-webkit-transform:translateY(-25%);-moz-transform:translateY(-25%);transform:translateY(-25%);-webkit-animation-timing-function:cubic-bezier(.8,0,1,1);-moz-animation-timing-function:cubic-bezier(.8,0,1,1);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{-webkit-transform:none;-moz-transform:none;transform:none;-webkit-animation-timing-function:cubic-bezier(0,0,.2,1);-moz-animation-timing-function:cubic-bezier(0,0,.2,1);animation-timing-function:cubic-bezier(0,0,.2,1)}}.link{--text-opacity:1;color:#000091;color:rgba(0,0,145,var(--text-opacity));text-decoration:underline}.fade-enter-active,.fade-leave-active{-webkit-transition:opacity .5s;-moz-transition:opacity .5s;transition:opacity .5s}.fade-enter,.fade-leave-to{opacity:0}@font-face{font-family:Source Sans Pro;src:url(../fonts/SourceSansPro-Regular.5e1d162e.otf);font-weight:400}@font-face{font-family:Source Sans Pro;src:url(../fonts/SourceSansPro-Bold.1a2a157b.otf);font-weight:800}@font-face{font-family:Source Sans Pro;src:url(../fonts/SourceSansPro-It.221e2885.otf);font-style:italic}@font-face{font-family:Evolventa;src:url(../fonts/Evolventa-Regular.2437b1f8.ttf);font-weight:400}@font-face{font-family:Evolventa;src:url(../fonts/Evolventa-Bold.18aff3ea.ttf);font-weight:800}:root{--blue:#0053b3;--light-blue:#006be6;--dark-blue:#003b80;--darker-blue:#00234d;--lighter-blue:#b4e1fa;--white:#fff;--lightest-grey:#fafbfc;--lighter-grey:#ebeff3;--light-grey:#c9d3df;--grey:#adb9c9;--dark-grey:#8393a7;--darker-grey:#53657d;--darkest-grey:#26353f;--black:#1c1c1c;--green:#03bd5b;--light-green:#daf5e7;--orange:#ff9947;--dark-orange:#cc5c00;--light-orange:#fff0e4;--red:#d63626;--dark-red:#ab2b1e;--light-red:rgba(239,172,166,0.45882);--mobile-min:400px;--mobile-max:549px;--phablet-min:550px;--phablet-max:749px;--tablet-min:750px;--tablet-max:999px;--desktop-min:1000px;--space-xxs:0.25em;--space-xs:0.5em;--space-s:1em;--space-m:1.5em;--space-l:2em;--space-xl:3em;--theme-primary:var(--blue);--theme-primary-light:var(--light-blue);--theme-primary-lighter:var(--lighter-blue);--theme-primary-dark:var(--dark-blue);--theme-primary-darker:var(--darker-blue);--theme-secondary:var(--blue);--theme-secondary-darken:var(--dark-blue);--theme-border:var(--grey);--theme-border-lighter:var(--light-grey);--theme-border-active:var(--light-blue);--theme-border-radius:3px;--theme-background-white:var(--white);--theme-background-grey:var(--lighter-grey);--theme-background-color:var(--blue);--theme-background-color-dark:var(--darker-blue);--theme-background-gradient:linear-gradient(270deg,var(--blue),var(--dark-blue));--theme-background-dark:var(--black);--theme-box-shadow:0 1px 2px rgba(201,211,223,0.2);--theme-label-text:var(--darker-grey);--theme-light-text:var(--white);--theme-dark-text:var(--darkest-grey);--theme-success-border:var(--green);--theme-success-bg:var(--light-green);--theme-warning-border:var(--orange);--theme-warning-bg:var(--light-orange);--theme-error-border:var(--red);--theme-error-bg:var(--light-red);--theme-info-border:var(--light-blue);--theme-info-bg:var(--lighter-blue)}.v1{font-family:Fira Sans,Arial,sans-serif}.v1,.v1 body{-webkit-font-smoothing:antialiased}.v1 body{font-family:Source Sans Pro,Arial,sans-serif;font-size:16px;line-height:1.5em;-moz-osx-font-smoothing:grayscale}.v1 h1,.v1 h2,.v1 h3,.v1 h4,.v1 h5,.v1 h6{font-family:Evolventa,Trebuchet MS,sans-serif;font-weight:700}.v1 h1:first-child,.v1 h2:first-child,.v1 h3:first-child,.v1 h4:first-child,.v1 h5:first-child,.v1 h6:first-child{margin-top:0}.v1 h1{font-size:2em;line-height:1.125em}.v1 h2{font-size:1.75em;line-height:1.25em}.v1 h3{font-size:1.5em;line-height:1.5em}.v1 h4{font-size:1.25em}.v1 h5{font-size:1.125em}.v1 h6{font-size:1em}.v1 .subtitle{font-weight:400;font-family:Source Sans Pro,Arial,sans-serif;color:#53657d;color:var(--darker-grey)}.v1 .lead-text{font-size:1.25em}.v1 .subtitle{color:#8393a7;color:var(--dark-grey)}.v1 .text-quote{background-color:#ebeff3;background-color:var(--theme-background-grey);border-left:8px solid #c9d3df;border-left:8px solid var(--theme-border-lighter);padding:4px 0 4px 25px}.v1 pre{display:block;margin-top:1em}.v1 code{background:#fafbfc;background:var(--lightest-grey);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-border-radius:var(--theme-border-radius);-moz-border-radius:var(--theme-border-radius);border-radius:var(--theme-border-radius);padding:0 .5em;font-family:Courier New;font-size:.9em;word-wrap:break-word;white-space:pre-wrap;vertical-align:middle;display:inline-block;max-width:100%;overflow-x:auto}.v1 pre code{padding:1em}.v1 *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.v1 body,.v1 html{height:100%;position:relative}.v1 body{color:#26353f;color:var(--theme-dark-text);padding:0;margin:0;overflow:auto}.v1 a,.v1 button{cursor:pointer}.v1 a,.v1 a:active,.v1 a:focus,.v1 a:visited{text-decoration:underline;color:#0053b3;color:var(--theme-primary)}.v1 a:hover{-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-border-radius:var(--theme-border-radius);-moz-border-radius:var(--theme-border-radius);border-radius:var(--theme-border-radius);color:#003b80;color:var(--dark-blue);background-color:#ebeff3;background-color:var(--lighter-grey);text-decoration:none}.v1 small{font-size:.875em}.v1 hr{border-top:0;border-bottom:#c9d3df;border-bottom:var(--theme-border-lighter);margin:2em 0;margin:var(--space-l) 0}.v1 dt{display:block;color:#53657d;color:var(--darker-grey)}.v1 dd{margin:0}.v1 dd+dt{margin-top:.5em;margin-top:var(--space-xs)}.v1 input,.v1 select,.v1 textarea{width:100%;outline:none;padding:.5em .875em;font:inherit;line-height:1.6;color:#1c1c1c;color:var(--black);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-border-radius:var(--theme-border-radius);-moz-border-radius:var(--theme-border-radius);border-radius:var(--theme-border-radius);border:1px solid #adb9c9;border:1px solid var(--theme-border);background:#fff;background:var(--theme-background-white);vertical-align:middle;position:relative}.v1 input:focus,.v1 select:focus,.v1 textarea:focus{border-color:#006be6;border-color:var(--theme-border-active);-webkit-transition:border-color .2s ease-out;-moz-transition:border-color .2s ease-out;transition:border-color .2s ease-out}.v1 input:disabled,.v1 select:disabled{background-color:#ebeff3;background-color:var(--theme-background-grey)}.v1 input[type=checkbox],.v1 input[type=radio]{margin:0;margin-right:.5em;margin-right:var(--space-xs)}.v1 input[type=radio]{height:1.25em;width:1.25em;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;display:inline-block;-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0}.v1 input[type=radio]:before{content:"";border-color:#0053b3;border-color:var(--theme-primary);-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;position:absolute;top:.3em;left:.35em;width:.5em;height:.5em;-webkit-transform:scale(0);-moz-transform:scale(0);-ms-transform:scale(0);transform:scale(0)}.v1 input[type=radio]:checked{background-color:#fff;background-color:var(--theme-background-white);border-color:#0053b3;border-color:var(--theme-primary);opacity:1}.v1 input[type=radio]:checked:before{background-color:#0053b3;background-color:var(--theme-primary);-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);transform:scale(1);-webkit-transition:-webkit-transform .2s ease-out;transition:-webkit-transform .2s ease-out;-moz-transition:transform .2s ease-out,-moz-transform .2s ease-out;transition:transform .2s ease-out;transition:transform .2s ease-out,-webkit-transform .2s ease-out,-moz-transform .2s ease-out;transition:transform .2s ease-out,-webkit-transform .2s ease-out}.v1 input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:1.4em;width:1.5em;padding:0}.v1 input[type=checkbox]:checked{background-color:#0053b3;background-color:var(--theme-primary);border-color:#0053b3;border-color:var(--theme-primary);opacity:1;-webkit-transition:border-color .2s ease-in,background-color .2s ease-out;-moz-transition:border-color .2s ease-in,background-color .2s ease-out;transition:border-color .2s ease-in,background-color .2s ease-out}.v1 input[type=checkbox]:before{-webkit-transform:scale(0);-moz-transform:scale(0);-ms-transform:scale(0);transform:scale(0);content:"";position:absolute;top:.2em;left:.15em;height:1em;width:1em;background:url('data:image/svg+xml;utf8,') 50% no-repeat}.v1 input[type=checkbox]:checked:before{color:#fff;color:var(--white);display:block;-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);transform:scale(1);-webkit-transition:-webkit-transform .2s ease-out;transition:-webkit-transform .2s ease-out;-moz-transition:transform .2s ease-out,-moz-transform .2s ease-out;transition:transform .2s ease-out;transition:transform .2s ease-out,-webkit-transform .2s ease-out,-moz-transform .2s ease-out;transition:transform .2s ease-out,-webkit-transform .2s ease-out}.v1 input[type=file]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:-webkit-inline-flex;display:-moz-inline-box;display:inline-flex}.v1 select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff url('data:image/svg+xml;utf8,') no-repeat;background:var(--theme-background-white) url('data:image/svg+xml;utf8,') no-repeat;background-position:top 1em right 0;-webkit-background-size:1.7em 1.7em;background-size:1.7em;padding-right:2.8em;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-border-radius:var(--theme-border-radius);-moz-border-radius:var(--theme-border-radius);border-radius:var(--theme-border-radius);width:auto}@-moz-document url-prefix(){.v1 select{padding-top:.438em;padding-bottom:.438em}}.v1 select:focus{outline:none}.v1 select:-moz-focusring{color:rgba(0,0,0,0);text-shadow:0 0 0 #000}.v1 label.required:before{content:"✱";color:#d63626;color:var(--red);font-weight:700;padding-right:.5em;padding-right:var(--space-xs);position:absolute;left:0;-webkit-transform:translateX(-100%);-moz-transform:translateX(-100%);-ms-transform:translateX(-100%);transform:translateX(-100%)}.v1 a.button,.v1 a.button:active,.v1 a.button:focus,.v1 a.button:visited,.v1 button.button,.v1 button.button:active,.v1 button.button:focus,.v1 button.button:visited,.v1 input[type=button],.v1 input[type=button]:active,.v1 input[type=button]:focus,.v1 input[type=button]:visited,.v1 input[type=submit],.v1 input[type=submit]:active,.v1 input[type=submit]:focus,.v1 input[type=submit]:visited{display:inline-block;padding:.5em 2em;padding:var(--space-xs) var(--space-l);color:#fff;color:var(--theme-light-text);background-color:#0053b3;background-color:var(--theme-primary);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-border-radius:var(--theme-border-radius);-moz-border-radius:var(--theme-border-radius);border-radius:var(--theme-border-radius);border:0;font-family:Source Sans Pro,Arial,sans-serif;font-size:1em;font-size:var(--space-s);position:relative;top:0;overflow:hidden;text-decoration:none;cursor:pointer;width:auto;margin:1em 1em 0 0}.v1 a.button:disabled,.v1 button.button:disabled{color:#fff;color:var(--white);background-color:#c9d3df;background-color:var(--light-grey)}.v1 a.button:hover,.v1 button.button:hover,.v1 input[type=button]:hover,.v1 input[type=submit]:hover{background:#003b80;background:var(--theme-secondary-darken)}.v1 a.button:disabled:hover,.v1 button.button:disabled:hover{cursor:auto;color:#fff;color:var(--white);background-color:#c9d3df;background-color:var(--light-grey)}.v1 a.button:active,.v1 button.button:active,.v1 input[type=button]:hover,.v1 input[type=submit]:hover{-webkit-transform:translateY(1px);-moz-transform:translateY(1px);-ms-transform:translateY(1px);transform:translateY(1px)}.v1 button::-moz-focus-inner{border:0}.v1 a.button-outline,.v1 a.button-outline:active,.v1 a.button-outline:focus,.v1 a.button-outline:visited,.v1 button.button-outline,.v1 button.button-outline:active,.v1 button.button-outline:focus,.v1 button.button-outline:visited{display:inline-block;padding:.5em 2em;padding:var(--space-xs) var(--space-l);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-border-radius:var(--theme-border-radius);-moz-border-radius:var(--theme-border-radius);border-radius:var(--theme-border-radius);font-family:Source Sans Pro,Arial,sans-serif;font-size:1em;font-size:var(--space-s);position:relative;top:0;overflow:hidden;text-decoration:none;background:rgba(0,0,0,0);border:1px solid #fff;border:1px solid var(--white);color:#fff;color:var(--white)}.v1 a.button-outline:disabled,.v1 button.button-outline:disabled{color:#c9d3df;color:var(--light-grey);border-color:#c9d3df;border-color:var(--light-grey)}.v1 a.button-outline:hover,.v1 button.button-outline:hover,.v1 input[type=button].button-outline:hover,.v1 input[type=submit].button-outline:hover{border-color:#c9d3df;border-color:var(--light-grey);color:#c9d3df;color:var(--light-grey)}.v1 a.button-outline:disabled:hover,.v1 button.button-outline:disabled:hover{cursor:auto;color:#c9d3df;color:var(--light-grey);border-color:#c9d3df;border-color:var(--light-grey)}.v1 .button-outline.primary,.v1 a.button-outline.primary{border-color:#0053b3;border-color:var(--blue);color:#0053b3;color:var(--blue)}.v1 .button-outline.primary:active,.v1 .button-outline.primary:focus,.v1 .button-outline.primary:hover{border-color:#003b80;border-color:var(--dark-blue);color:#003b80;color:var(--dark-blue)}.v1 .button-outline.warning,.v1 a.button-outline.warning{border-color:#d63626;border-color:var(--red);color:#d63626;color:var(--red)}.v1 .button-outline.warning:active,.v1 .button-outline.warning:focus,.v1 .button-outline.warning:hover{border-color:#ab2b1e;border-color:var(--dark-red);color:#ab2b1e;color:var(--dark-red)}.v1 .button-outline.secondary,.v1 a.button-outline.secondary{border-color:#53657d;border-color:var(--darker-grey);color:#53657d;color:var(--darker-grey)}.v1 .button-outline.secondary:active,.v1 .button-outline.secondary:focus,.v1 .button-outline.secondary:hover{border-color:#26353f;border-color:var(--darkest-grey);color:#26353f;color:var(--theme-dark-text)}.v1 a.button-outline.small,.v1 a.button.small,.v1 button.button-outline.small,.v1 button.button.small,.v1 input[type=button].small,.v1 input[type=submit].small{font-size:.825em;padding:.25em 1em}.v1 a.button-outline.large,.v1 a.button.large,.v1 button.button-outline.large,.v1 button.button.large,.v1 input[type=button].large,.v1 input[type=submit].large{font-size:1.25em}.v1 .button.warning,.v1 a.button.warning{background-color:#d63626;background-color:var(--red)}.v1 .button.warning:active,.v1 .button.warning:focus,.v1 .button.warning:hover{background-color:#ab2b1e;background-color:var(--dark-red)}.v1 .button.warning-light,.v1 a.button.warning-light{background-color:#ff9947;background-color:var(--orange)}.v1 .button.warning-light:active,.v1 .button.warning-light:focus,.v1 .button.warning-light:hover{background-color:#cc5c00;background-color:var(--dark-orange)}.v1 .button.secondary,.v1 a.button.secondary{background-color:#53657d;background-color:var(--darker-grey)}.v1 .button.secondary:active,.v1 .button.secondary:focus,.v1 .button.secondary:hover{background-color:#26353f;background-color:var(--darkest-grey)}@media(max-width:399px){.v1 a.button,.v1 button.button,.v1 input[type=button],.v1 input[type=submit]{width:100%;margin-right:0}}.v1 .table{background:#fff;background:var(--theme-background-white);border:1px solid #c9d3df;border:1px solid var(--theme-border-lighter);border-left:0;border-right:0;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;position:relative;width:100%;border-collapse:collapse}.v1 .table td,.v1 .table th{padding:1em;padding:var(--space-s);text-align:left}.v1 .table td{border-top:1px solid #ebeff3;border-top:1px solid var(--lighter-grey)}.v1 .table thead th{background:#fafbfc;background:var(--lightest-grey);border-bottom:1px solid #c9d3df;border-bottom:1px solid var(--theme-border-lighter);font-size:.875em;font-weight:700;text-transform:uppercase}.v1 .table thead th.ascending:after{font-size:.75em;content:"▲";margin-left:.5em;margin-left:var(--space-xs)}.v1 .table thead th.descending:after{font-size:.75em;content:"▼";margin-left:.5em;margin-left:var(--space-xs)}.v1 .table tr:hover{background:#fafbfc;background:var(--lightest-grey)}.v1 .table__filter{margin-bottom:1em;margin-bottom:var(--space-s);max-width:20em;float:right}.v1 .icon{display:inline-block;width:1em;height:1em;stroke-width:0;stroke:currentColor;fill:currentColor;font-size:16px}.v1 #icon-search{fill:#adb9c9;fill:var(--grey)}.v1 .label-list{padding:0;margin:0}.v1 .label{background-color:#ebeff3;background-color:var(--lighter-grey);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-border-radius:var(--theme-border-radius);-moz-border-radius:var(--theme-border-radius);border-radius:var(--theme-border-radius);display:inline-block;padding:.3em .8em;margin:.25em;font-size:.875em}.v1 .label a{text-decoration:none;color:#26353f;color:var(--theme-dark-text)}.v1 .label--active{background-color:#0053b3;background-color:var(--theme-primary);color:#fff;color:var(--white)}.v1 .label--inactive{background-color:#fff;background-color:var(--white);border:1px solid #adb9c9;border:1px solid var(--theme-border);color:#53657d;color:var(--darker-grey)}.v1 .label--inactive a{color:#53657d;color:var(--darker-grey);background:0}.v1 label.switch{position:relative;display:inline-block;padding-left:2.6em}.v1 label.switch-text input,.v1 label.switch input{position:absolute;top:0;opacity:0;width:0;height:0;border:0;display:none}.v1 label.switch input[type=checkbox]:before{display:none}.v1 label.switch-text .slider,.v1 label.switch .slider{position:absolute;cursor:pointer;width:2.5em;height:1.4em;top:0;left:0;right:0;bottom:0;background-color:#fff;border:1px solid #adb9c9;border:1px solid var(--theme-border);-webkit-transition:.4s;-moz-transition:.4s;transition:.4s;-webkit-border-radius:1em;-moz-border-radius:1em;border-radius:1em}.v1 label.switch-text .slider:before,.v1 label.switch .slider:before{position:absolute;content:"";height:1em;width:1em;-webkit-border-radius:1em;-moz-border-radius:1em;border-radius:1em;left:.2em;bottom:.2em;background-color:#0053b3;background-color:var(--theme-primary);-webkit-transition:.4s;-moz-transition:.4s;transition:.4s}.v1 label.switch-text input:disabled+.slider,.v1 label.switch input:disabled+.slider{border:1px solid #adb9c9;border:1px solid var(--theme-border);background-color:#ebeff3;background-color:var(--theme-background-grey)}.v1 label.switch input:checked+.slider{border-color:#0053b3;border-color:var(--theme-primary);background-color:#b4e1fa;background-color:var(--theme-primary-lighter)}.v1 label.switch input:focus+.slider{border-color:#006be6;border-color:var(--theme-border-active);-webkit-transition:border-color .2s ease-out;-moz-transition:border-color .2s ease-out;transition:border-color .2s ease-out}.v1 label.switch-text input:disabled+.slider:before,.v1 label.switch input:disabled+.slider:before{background-color:#1c1c1c;background-color:var(--black)}.v1 label.switch input:checked+.slider:before{-webkit-transform:translateX(1em);-moz-transform:translateX(1em);-ms-transform:translateX(1em);transform:translateX(1em)}.v1 label.switch-text{display:inline-block}.v1 label.switch-text .slider{position:relative;width:auto;height:auto;padding:0 .4em}.v1 label.switch-text .slider:before{display:inline-block;height:1.1em;width:48%;bottom:.1em}.v1 label.switch-text input:checked+.slider:before{-webkit-transform:translateX(-webkit-calc(100% - .2em));-moz-transform:translateX(-moz-calc(100% - .2em));-ms-transform:translateX(calc(100% - .2em));transform:translateX(calc(100% - .2em))}.v1 label.switch-text .first-option,.v1 label.switch-text .second-option{position:relative;color:#1c1c1c;color:var(--black);-webkit-transition:.4s;-moz-transition:.4s;transition:.4s}.v1 label.switch-text .second-option{padding-left:.2em}.v1 label.switch-text input+.slider .first-option{color:#fff;color:var(--white)}.v1 label.switch-text input:checked+.slider .first-option{color:#1c1c1c;color:var(--black)}.v1 label.switch-text input:checked+.slider .second-option{color:#fff;color:var(--white)}.v1 form{max-width:35em;margin:0 auto}.v1 label,.v1 legend{display:block;color:#26353f;color:var(--theme-dark-text)}.v1 legend{margin-bottom:.5em;margin-bottom:var(--space-xs)}.v1 label.label-inline{display:inline;color:#1c1c1c;color:var(--black)}.v1 .label-inline+input[type=checkbox],.v1 .label-inline+input[type=radio]{margin-left:1.5em;margin-left:var(--space-m);-ms-flex-negative:0;-webkit-flex-shrink:0;flex-shrink:0}.v1 .form__group{position:relative;display:block}.v1 .form__group+.form__group{margin-top:2em;margin-top:var(--space-l)}.v1 fieldset{border:none;margin:0;padding:0;width:100%}.v1 .overlay-button{position:absolute;right:2em;right:var(--space-l);top:-webkit-calc(1px + .8rem);top:-moz-calc(1px + .8rem);top:calc(1px + .8rem);background:0;border:0;width:1rem;height:1rem}.v1 .search__group{position:relative}.v1 .overlayed-button .icon-search{height:15px;width:15px}.v1 .input__group{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;-webkit-flex-direction:row;-moz-box-orient:horizontal;-moz-box-direction:normal;flex-direction:row}.v1 .input__group .icon-button,.v1 .input__group .icon-button:active{margin-left:1em;margin-left:var(--space-s);padding:0 .8em}.v1 .input__group .icon-button .icon{width:16px;height:16px}.v1 .input__group .button{-ms-flex-negative:0;-webkit-flex-shrink:0;flex-shrink:0;margin-left:1em;margin-left:var(--space-s)}@media(max-width:399px){.v1 .input__group{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;flex-direction:column}.v1 .input__group .button{margin-left:0;margin-top:1em;margin-top:var(--space-s)}}.v1 .card{background:#fff;background:var(--theme-background-white);-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;-webkit-box-shadow:0 1px 2px rgba(201,211,223,.2);box-shadow:0 1px 2px rgba(201,211,223,.2);-webkit-box-shadow:var(--theme-box-shadow);box-shadow:var(--theme-box-shadow);position:relative;overflow:hidden;display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-flex:1;-ms-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;flex-direction:column;width:100%;border:1px solid #c9d3df;border:1px solid var(--theme-border-lighter)}.v1 .row .card+.card{margin-left:1.5em;margin-left:var(--space-m)}@media(max-width:749px){.v1 .row>.card{margin:0}.v1 .row>.card+.card{margin-left:0;margin-top:1.5em;margin-top:var(--space-m)}}.v1 .card__cover{height:250px;width:100%;overflow:hidden;position:relative;display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;background-color:#0053b3;background-color:var(--theme-background-color)}.v1 .card__cover img{-o-object-fit:cover;object-fit:cover;height:100%;width:100%}.v1 .card__content{padding:1.5em;padding:var(--space-m);-webkit-box-flex:1;-ms-flex-positive:1;-webkit-flex-grow:1;-moz-box-flex:1;flex-grow:1}.v1 .card__content h3{margin:0}.v1 .card__content .card__meta{color:#53657d;color:var(--darker-grey)}.v1 .card__content .card__meta time:after{content:" • "}.v1 .card__content :last-child{margin-bottom:0}.v1 .card__extra{border-top:1px solid #adb9c9;border-top:1px solid var(--theme-border);padding:1em;padding:var(--space-s)}.v1 .panel{background:#fff;background:var(--theme-background-white);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-border-radius:var(--theme-border-radius);-moz-border-radius:var(--theme-border-radius);border-radius:var(--theme-border-radius);-webkit-box-shadow:0 1px 2px rgba(201,211,223,.2);box-shadow:0 1px 2px rgba(201,211,223,.2);-webkit-box-shadow:var(--theme-box-shadow);box-shadow:var(--theme-box-shadow);padding:1.5em;padding:var(--space-m);position:relative;border:1px solid #c9d3df;border:1px solid var(--theme-border-lighter)}.v1 .panel+*{margin-top:1.5em;margin-top:var(--space-m)}.v1 .panel>:last-child{margin-bottom:0}.v1 .panel__header:after{content:"";display:block;width:-webkit-calc(100% + 3em);width:-moz-calc(100% + 3em);width:calc(100% + 3em);width:-webkit-calc(100% + var(--space-m)*2);width:-moz-calc(100% + var(--space-m)*2);width:calc(100% + var(--space-m)*2);position:relative;left:-1.5em;border-bottom:1px solid #c9d3df;border-bottom:1px solid var(--theme-border-lighter);margin:1em 0 1.5em;margin:var(--space-s) 0 var(--space-m)}.v1 .panel__header h3{display:inline-block;margin:0}.v1 .panel__header-extra{margin-left:1em;margin-left:var(--space-s);color:#53657d;color:var(--theme-label-text);display:inline-block}@media(max-width:549px){.v1 .panel__header-extra{margin:0}}.v1 .dropdown{position:relative;display:inline-block}.v1 .dropdown-content{display:none;position:absolute;background-color:#fff;background-color:var(--white);min-width:110px;text-align:center;top:2em;top:var(--space-l);right:0;-webkit-box-shadow:0 8px 16px 0 rgba(0,0,0,.2);box-shadow:0 8px 16px 0 rgba(0,0,0,.2);z-index:1}.v1 .dropdown-content a{color:#000;padding:12px 16px;text-decoration:none;display:block}.v1 .dropdown-content a:hover{background-color:#c9d3df;background-color:var(--light-grey)}.v1 .dropdown:hover .dropdown-content{display:block}.v1 .modal__backdrop{position:fixed;top:0;left:0;background:rgba(0,0,0,.5);height:100%;width:100%;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:none;z-index:10}.v1 .modal__backdrop:target{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex}.v1 .modal{-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-border-radius:var(--theme-border-radius);-moz-border-radius:var(--theme-border-radius);border-radius:var(--theme-border-radius);-webkit-box-shadow:0 1px 2px rgba(201,211,223,.2);box-shadow:0 1px 2px rgba(201,211,223,.2);-webkit-box-shadow:var(--theme-box-shadow);box-shadow:var(--theme-box-shadow);background:#fff;background:var(--white);padding:1.5em;padding:var(--space-m);max-width:32em}.v1 .modal>:first-child{margin-top:0}.v1 .modal .button__group{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;justify-content:space-between;margin-top:1.5em;margin-top:var(--space-m)}.v1 .modal .button__group .button{margin:0}.v1 .modal .button__group .button+.button{margin-left:1em}.v1 .notification{background:#b4e1fa;background:var(--theme-info-bg);border:1px solid #006be6;border:1px solid var(--theme-info-border);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-border-radius:var(--theme-border-radius);-moz-border-radius:var(--theme-border-radius);border-radius:var(--theme-border-radius);padding:1em;padding:var(--space-s);margin-bottom:1em;position:relative}.v1 .notification .close{border:0;background:0;color:currentColor;position:absolute;right:1em;right:var(--space-s)}.v1 .notification .icon{fill:currentColor;width:20px;height:20px}.v1 .notification.closable{padding-right:3em;padding-right:var(--space-xl)}.v1 .notification.full-width{width:100%;margin-bottom:0;text-align:center;border:0}.v1 .notification.full-width.closable .close{right:unset}.v1 .notification.success{background:#daf5e7;background:var(--theme-success-bg);border-color:#03bd5b;border-color:var(--theme-success-border)}.v1 .notification.warning{background:#fff0e4;background:var(--theme-warning-bg);border-color:#ff9947;border-color:var(--theme-warning-border)}.v1 .notification.error{background:rgba(239,172,166,.45882);background:var(--theme-error-bg);border-color:#d63626;border-color:var(--theme-error-border)}.v1 .tile{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background-color:#fff;background-color:var(--theme-background-white);width:100%;padding:1em;padding:var(--space-s);-webkit-transform:none;-moz-transform:none;-ms-transform:none;transform:none;-webkit-transition:all .1s ease-in;-moz-transition:all .1s ease-in;transition:all .1s ease-in}.v1 .tile:hover{-webkit-transform:scale(1.03);-moz-transform:scale(1.03);-ms-transform:scale(1.03);transform:scale(1.03)}.v1 .tile-colored{background-color:#0053b3;background-color:var(--theme-background-color);color:#fff;color:var(--theme-light-text)}.v1 .tile h3{margin:0}.v1 .tile__icon{height:2em;height:var(--space-l)}.v1 .pagination{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;-webkit-flex-direction:row;-moz-box-orient:horizontal;-moz-box-direction:normal;flex-direction:row;-webkit-box-pack:justify;-ms-flex-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;-ms-flex-wrap:wrap;-webkit-flex-wrap:wrap;flex-wrap:wrap;margin-top:1.5em;margin-top:var(--space-m)}.v1 .pagination__display-group{margin:.5em;margin:var(--space-xs)}.v1 .pagination__display-label{display:inline}.v1 select.pagination__display{margin-left:.5em;margin-left:var(--space-xs);padding-top:.25em;padding-top:var(--space-xxs);padding-bottom:.25em;padding-bottom:var(--space-xxs)}.v1 .pagination__count{margin:.5em;margin:var(--space-xs)}.v1 .pagination__pages{list-style-type:none;margin:0;padding:0;overflow:hidden;display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;-webkit-justify-content:flex-end;-moz-box-pack:end;justify-content:flex-end}.v1 .pagination__pages li a{color:#0053b3;color:var(--theme-primary);background-color:#fff;background-color:var(--theme-background-white);margin:0 .25em;margin:0 var(--space-xxs);padding:.25em .5em;padding:var(--space-xxs) var(--space-xs);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-border-radius:var(--theme-border-radius);-moz-border-radius:var(--theme-border-radius);border-radius:var(--theme-border-radius);font-weight:700;pointer-events:inherit;text-decoration:none;display:block}.v1 .pagination__pages li a:hover{background-color:#b4e1fa;background-color:var(--lighter-blue)}.v1 .pagination__pages li.active a{color:#fff;color:var(--theme-light-text);background-color:#0053b3;background-color:var(--theme-background-color)}.v1 .pagination__pages li.disabled a{color:#8393a7;color:var(--dark-grey);background-color:#fafbfc;background-color:var(--lightest-grey);pointer-events:none}.v1 .steps-form{counter-reset:step;-webkit-box-orient:horizontal;-ms-flex-direction:row;-webkit-flex-direction:row;-moz-box-orient:horizontal;flex-direction:row}.v1 .steps-form,.v1 .steps-form li{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-direction:normal;-moz-box-direction:normal}.v1 .steps-form li{-ms-flex-preferred-size:100%;-webkit-flex-basis:100%;flex-basis:100%;-webkit-box-orient:vertical;-ms-flex-direction:column;-webkit-flex-direction:column;-moz-box-orient:vertical;flex-direction:column;list-style-type:none;position:relative;text-align:center}.v1 .steps-form li:before{font-size:2em;color:#c9d3df;color:var(--light-grey);width:40px;height:40px;line-height:40px;content:counter(step);counter-increment:step;border:7px solid #c9d3df;border:7px solid var(--light-grey);-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;margin:0 auto 10px;display:block;text-align:center;background-color:#fff;background-color:var(--white);z-index:1}.v1 .steps-form li.active:before,.v1 li.done:before{border-color:#0053b3;border-color:var(--blue);color:#0053b3;color:var(--blue)}.v1 .steps-form li.done:before{color:#fff;color:var(--white);background-color:#0053b3;background-color:var(--blue)}.v1 .steps-form li:after{width:100%;height:15px;content:"";position:absolute;background-color:#c9d3df;background-color:var(--light-grey);top:23px;left:-50%;z-index:0}.v1 .steps-form li.active:after,.v1 li.done:after{background-color:#0053b3;background-color:var(--blue)}.v1 .steps-form li:first-child:after{content:none}@media(max-width:749px){.v1 .steps-form{-webkit-box-orient:vertical;-ms-flex-direction:column;-webkit-flex-direction:column;-moz-box-orient:vertical;flex-direction:column;padding:0 0 0 2vw}.v1 .steps-form,.v1 .steps-form li{-webkit-box-direction:normal;-moz-box-direction:normal}.v1 .steps-form li{-webkit-box-orient:horizontal;-ms-flex-direction:row;-webkit-flex-direction:row;-moz-box-orient:horizontal;flex-direction:row}.v1 .steps-form>li>div{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;flex-direction:column;margin-left:2vw;-ms-flex-pack:distribute;-webkit-justify-content:space-around;justify-content:space-around;width:100%}.v1 .steps-form li:after{width:15px;height:100%;left:20px;top:-50%}.v1 .steps-form li:before{-ms-flex-negative:0;-webkit-flex-shrink:0;flex-shrink:0;margin:2vh 0 0}}.v1 .container{position:relative;width:100%;max-width:1200px;margin:0 auto;padding:0 20px}.v1 .container.container-medium{max-width:750px}.v1 .container.container-small{max-width:550px}.v1 .container.container-full{max-width:none}.v1 .article__container{max-width:35em}@media(min-width:400px){.v1 .container{width:85%;padding:0}}@media(min-width:550px){.v1 .container{width:80%}}.v1 .navbar{width:100%;background:#fff;background:var(--theme-background-white);z-index:100}.v1 .nav-fixed{position:fixed;top:0}.v1 .navbar__container{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;justify-content:space-between;-ms-flex-wrap:wrap;-webkit-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;padding:1em;padding:var(--space-s)}.v1 .navbar__home{height:40px}.v1 .navbar__logo{height:100%}.v1 .nav__links{margin:0;list-style-type:none}.v1 .nav__item,.v1 .nav__links{display:inline-block;padding:0}.v1 .nav__item .dropdown,.v1 .nav__item a{text-decoration:none;color:#1c1c1c;color:var(--black);padding:.4em .8em;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.v1 .nav__links a:after{content:none}.v1 .nav__item .dropdown:hover,.v1 .nav__item a:hover{background:#ebeff3;background:var(--lighter-grey)}.v1 .nav__item a.active{background:#0053b3;background:var(--theme-primary);color:#fff;color:var(--white)}.v1 a.navbar__home{font-family:Evolventa;display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;color:#26353f;color:var(--theme-dark-text);letter-spacing:.05em;text-decoration:none}.v1 .navbar__home img{vertical-align:middle}.v1 .navbar__logo{margin-right:.8em}.v1 .navbar__gouvfr{height:100%}.v1 span.navbar__domain{font-weight:400;color:#26353f;color:var(--theme-dark-text);-webkit-padding-after:3px}@media(max-width:749px){.v1 .navbar__container{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;-webkit-align-items:flex-start;-moz-box-align:start;align-items:flex-start}.v1 .nav__links{padding-top:1em;padding-top:var(--space-s)}}.v1 .hero{width:100%;background:#fff;background:var(--theme-background-white)}.v1 .hero-color{background:#0053b3;background:var(--theme-background-color)}.v1 .hero__container{min-height:25em;display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;padding:2em;padding:var(--space-l);max-width:1200px;margin:0 auto}.v1 .hero h1{margin-bottom:0}.v1 .hero-color h1{color:#fff;color:var(--theme-light-text)}.v1 .hero p{margin:1em auto;margin:var(--space-s) auto;color:#26353f;color:var(--theme-dark-text);font-size:1.5em}.v1 .hero-color p{color:#fff;color:var(--theme-light-text)}.v1 .footer{background:#1c1c1c;background:var(--theme-background-dark);color:#fff;color:var(--white);padding:2em 0;padding:var(--space-l) 0}.v1 .footer a:hover{background:0}.v1 .footer .container{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;-webkit-flex-flow:row wrap;-moz-box-orient:horizontal;-moz-box-direction:normal;flex-flow:row wrap;-webkit-box-pack:justify;-ms-flex-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;justify-content:space-between}.v1 .footer ul{list-style-type:none;padding:0}.v1 .footer__social{margin-top:1em;margin-top:var(--space-s)}.v1 .footer__social li{display:inline;margin-right:1em;margin-right:var(--space-s)}.v1 .footer__social .icon{width:35px;height:35px;fill:#fff;fill:var(--white)}.v1 .footer__links{margin:0;line-height:2em;line-height:var(--space-l)}.v1 .footer__links h2{margin-top:0;margin-bottom:.5em;margin-bottom:var(--space-xs)}.v1 .footer__links a{color:#fff;color:var(--white);text-decoration:none}.v1 .footer__links a:hover{background:#53657d;background:var(--darker-grey)}.v1 .footer__logo{width:300px;height:auto}.v1 .footer__logo img{max-height:60px}@media(max-width:999px){.v1 .footer .container{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;flex-direction:column}}.v1 .section{padding:5em 0}.v1 .section-white{background-color:#fff;background-color:var(--theme-background-white)}.v1 .section-grey{background-color:#ebeff3;background-color:var(--theme-background-grey)}.v1 .section-dark{background-color:#1c1c1c;background-color:var(--theme-background-dark);color:#fff}.v1 .section-color{background-image:-webkit-gradient(linear,right top,left top,from(#0053b3),to(#003b80));background-image:-webkit-linear-gradient(right,#0053b3,#003b80);background-image:-moz-linear-gradient(right,#0053b3,#003b80);background-image:linear-gradient(270deg,#0053b3,#003b80);background-image:var(--theme-background-gradient);color:#fff}.v1 .section-color-dark{background-color:#00234d;background-color:var(--theme-background-color-dark);color:#fff}.v1 .section__title:first-child{margin-top:0;margin-bottom:.5em;margin-bottom:var(--space-xs)}.v1 .section__subtitle{margin:0 auto;font-weight:400;font-size:1.25em;font-family:Source Sans Pro,Arial,sans-serif;color:#53657d;color:var(--darker-grey)}.v1 .section-color .section__subtitle,.v1 .section-color a,.v1 .section-dark .section__subtitle,.v1 .section-dark a{color:currentColor}.v1 .section-color a:hover,.v1 .section-dark a:hover{background:#53657d;background:var(--darker-grey)}.v1 .section__subtitle+.row,.v1 .section__title+.row{margin-top:3em;margin-top:var(--space-xl)}.v1 .section__subtitle,.v1 .section__title{text-align:center}.v1 .section__title+.section__subtitle{margin-top:-var(--space-s)}.v1 .article{text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-moz-font-feature-settings:"liga" on;padding:0;background:#fff;background:var(--white);color:#26353f;color:var(--theme-dark-text);line-height:1.5;margin:0 auto}.v1 .article__hero{height:38vh;width:100%;overflow:hidden;position:relative;display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center}.v1 .article__hero img{width:100%;-webkit-filter:brightness(.5);filter:brightness(.5);position:absolute;z-index:0}.v1 .article__hero .article__container{z-index:10;-webkit-box-align:start;-ms-flex-align:start;-webkit-align-items:start;-moz-box-align:start;align-items:start;width:100%}.v1 .article__content{margin:0}.v1 .article__content .article__container{margin:0 auto;padding:2em 0 4em;padding:var(--space-l) 0 -webkit-calc(var(--space-l)*2);padding:var(--space-l) 0 -moz-calc(var(--space-l)*2);padding:var(--space-l) 0 calc(var(--space-l)*2)}.v1 .richtext+.article__author{margin-top:1em;margin-top:var(--space-s)}.v1 .article__author-list{padding-top:1em;padding-top:var(--space-s);display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;-webkit-flex-direction:row;-moz-box-orient:horizontal;-moz-box-direction:normal;flex-direction:row;-webkit-box-pack:justify;-ms-flex-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;justify-content:space-between}.v1 .article__author{display:inline-block;max-width:270px;padding:1em;padding:var(--space-s);font-size:15px}.v1 .article__author+.article__author{margin-left:1em;margin-left:var(--space-s);margin-top:0}.v1 .article__author img{height:32px;width:32px;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;display:inline-block;float:right}.v1 .article__author-info{display:inline-block}.v1 .article__author-name{font-weight:700}.v1 .article__author-role{color:#53657d;color:var(--darker-grey);font-size:.9em;line-height:.8em}.v1 .article__author-description p:last-child{margin-bottom:0}.v1 .article__preview{margin:0 auto;padding:1.5em;padding:var(--space-m)}.v1 .article__preview+.article__preview{margin-top:2em}.v1 .article__preview .article__author{width:auto;padding:0;margin-bottom:1em;margin-bottom:var(--space-s)}.v1 .article__preview .article__author img{float:none;vertical-align:middle}.v1 .article__preview img+.article__author-name{margin-left:.5em;margin-left:var(--space-xs)}.v1 a.article__link{color:#26353f;color:var(--theme-dark-text);text-decoration:none}.v1 .article__title{margin-bottom:0}.v1 .article__full .article__meta,.v1 .article__full .article__title{color:#fff;color:var(--theme-light-text)}.v1 .article__thumbnail{width:100%;height:200px;overflow:hidden;position:relative;margin-top:1em;margin-top:var(--space-s)}.v1 .article__thumbnail img{width:100%;position:relative;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}@media(max-width:549px){.v1 .article__container,.v1 .article__hero .article__container{width:85%;padding:0}.v1 .article__author-list{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;flex-direction:column}.v1 .article__author-list .article__author{width:100%;margin-left:0}.v1 .article__author-list .article__author+.article__author{margin-top:1em;margin-top:var(--space-s);margin-left:0}}.v1 .dashboard{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;-webkit-flex-direction:row;-moz-box-orient:horizontal;-moz-box-direction:normal;flex-direction:row;min-height:-webkit-calc(100vh - 73px);min-height:-moz-calc(100vh - 73px);min-height:calc(100vh - 73px)}.v1 .dashboard,.v1 .dashboard .side-menu{-webkit-box-flex:1;-ms-flex:1 1 auto;-webkit-flex:1 1 auto;-moz-box-flex:1;flex:1 1 auto}.v1 .dashboard .side-menu{background:#fff;background:var(--white)}.v1 .dashboard .side-menu ul{margin-top:0;padding:0;list-style-type:none}.v1 .dashboard .side-menu a{padding:1em 2em;padding:var(--space-s) var(--space-l);display:block;width:100%;color:#26353f;color:var(--theme-dark-text);text-decoration:none}.v1 .dashboard .side-menu a.active{background:-webkit-linear-gradient(left,#0053b3,#0053b3 5px,#ebeff3 0,#ebeff3);background:-moz-linear-gradient(left,#0053b3,#0053b3 5px,#ebeff3 5px,#ebeff3);background:linear-gradient(90deg,#0053b3,#0053b3 5px,#ebeff3 0,#ebeff3);background:-webkit-linear-gradient(left,var(--theme-primary),var(--theme-primary) 5px,var(--lighter-grey) 0,var(--lighter-grey));background:-moz-linear-gradient(left,var(--theme-primary),var(--theme-primary) 5px,var(--lighter-grey) 5px,var(--lighter-grey));background:linear-gradient(90deg,var(--theme-primary),var(--theme-primary) 5px,var(--lighter-grey) 0,var(--lighter-grey))}.v1 .dashboard .side-menu a:hover{color:#0053b3;color:var(--theme-primary)}.v1 .dashboard .main{padding:2em;padding:var(--space-l);-webkit-box-flex:1;-ms-flex:1 1 75%;-webkit-flex:1 1 75%;-moz-box-flex:1;flex:1 1 75%;background:#ebeff3;background:var(--lighter-grey)}.v1 .dashboard .main>:first-child{margin-top:0}@media(max-width:749px){.v1 .dashboard{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;flex-direction:column}}.v1 .documentation{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex}.v1 .side-pane{padding:2em 0;padding:var(--space-l) 0;-webkit-box-flex:0;-ms-flex:0 0 25%;-webkit-flex:0 0 25%;-moz-box-flex:0;flex:0 0 25%;font-size:14px}.v1 .side-pane li{list-style-type:none}.v1 .side-pane h2{margin-top:0;padding:.5em;padding:var(--space-xs)}.v1 .side-pane .side-pane__menu{list-style-type:none;margin:0;padding:0;width:100%;float:right}.v1 .side-pane__title h3{font-family:Source Sans Pro;text-transform:uppercase;padding-bottom:1em;padding-bottom:var(--space-s);border-bottom:1px solid #adb9c9;border-bottom:1px solid var(--theme-border);font-weight:400;font-size:1em}.v1 .side-pane a{padding:.5em 0;padding:var(--space-xs) 0;display:block;width:100%;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-border-radius:var(--theme-border-radius);-moz-border-radius:var(--theme-border-radius);border-radius:var(--theme-border-radius);color:#26353f;color:var(--theme-dark-text);text-decoration:none}.v1 .side-pane a:hover{text-decoration:underline;background:0}.v1 .side-pane li.side-pane__dropdown>a{background:url(../img/arrow-right.2cfe70f5.svg) no-repeat;background-position:center right 1em;background-position:100% var(--space-s);-webkit-background-size:15px 15px;background-size:15px 15px}.v1 .side-pane li.side-pane__dropdown>a:hover{background:url(../img/arrow-right.2cfe70f5.svg) no-repeat;background-position:center right 1em;background-position:100% var(--space-s);-webkit-background-size:15px 15px;background-size:15px 15px;text-decoration:underline}.v1 .side-pane li.unfolded.side-pane__dropdown>a,.v1 .side-pane li.unfolded.side-pane__dropdown>a:hover{background-image:url(../img/arrow-down.c2d5c84a.svg)}.v1 .side-pane li.active.side-pane__dropdown a{font-weight:700}.v1 .side-pane__dropdown.unfolded .side-pane__submenu{display:block}.v1 .side-pane__submenu{padding-left:1em;padding-left:var(--space-s);display:none}.v1 .side-pane__submenu a,.v1 .side-pane__submenu a:visited{padding:.5em;padding:var(--space-xs);list-style-type:none;color:#53657d;color:var(--darker-grey);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-border-radius:var(--theme-border-radius);-moz-border-radius:var(--theme-border-radius);border-radius:var(--theme-border-radius);text-decoration:none;display:inline-block}.v1 .side-pane__submenu li.active,.v1 .side-pane__submenu li.active a{color:#0053b3;color:var(--theme-primary)}.v1 .side-pane__submenu li.active a{font-weight:700}.v1 .main-pane{padding:3em;padding:var(--space-xl);background:#fff;background:var(--white);-webkit-box-flex:1;-ms-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1}.v1 .main-pane h1:first-child{margin-top:0}@media(max-width:749px){.v1 .documentation{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;flex-direction:column}.v1 .side-pane{border-right:none;border-bottom:1px solid #c9d3df;border-bottom:1px solid var(--theme-border-lighter);-webkit-box-flex:1;-ms-flex:auto;-webkit-flex:auto;-moz-box-flex:1;flex:auto}.v1 .side-pane .side-pane__menu{max-width:unset;float:none}.v1 .main-pane,.v1 .side-pane{padding-left:0;padding-right:0}}@media(min-width:1000px){.v1 .main-pane .markdown{width:80%}.v1 .side-pane{padding:3em 0;padding:var(--space-xl) 0;-webkit-box-flex:0;-ms-flex:0 0 20rem;-webkit-flex:0 0 20rem;-moz-box-flex:0;flex:0 0 20rem}}.v1 .text-left{text-align:left}.v1 .text-center{text-align:center}.v1 .text-right{text-align:right}.v1 .text-blue{color:#0053b3;color:var(--blue)}.v1 .text-grey-lightest{color:#fafbfc;color:var(--lightest-grey)}.v1 .text-grey-lighter{color:#ebeff3;color:var(--lighter-grey)}.v1 .text-grey-light{color:#c9d3df;color:var(--light-grey)}.v1 .text-grey{color:#adb9c9;color:var(--grey)}.v1 .text-grey-dark{color:#8393a7;color:var(--dark-grey)}.v1 .text-grey-darker{color:#53657d;color:var(--darker-grey)}.v1 .text-grey-darkest{color:#26353f;color:var(--darkest-grey)}.v1 .text-black{color:#1c1c1c;color:var(--black)}.v1 .text-green{color:#03bd5b;color:var(--green)}.v1 .text-orange{color:#ff9947;color:var(--orange)}.v1 .text-red{color:#d63626;color:var(--red)}.v1 .row{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;justify-content:space-between;-webkit-box-align:stretch;-ms-flex-align:stretch;-webkit-align-items:stretch;-moz-box-align:stretch;align-items:stretch;margin-left:-var(--space-s);margin-right:-var(--space-s);-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;-webkit-flex-direction:row;-moz-box-orient:horizontal;-moz-box-direction:normal;flex-direction:row}.v1 .row>*{max-width:50em}.v1 .row>*+*{margin-left:1.5em;margin-left:var(--space-m)}@media(max-width:749px){.v1 .row{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;flex-direction:column}.v1 .row>*+*{margin-left:0;margin-top:1.5em;margin-top:var(--space-m)}}.v1 .grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:1em;grid-gap:var(--space-s);margin-top:1em;margin-top:var(--space-s);justify-items:center;-webkit-box-pack:space-evenly;-ms-flex-pack:space-evenly;-webkit-justify-content:space-evenly;-moz-box-pack:space-evenly;justify-content:space-evenly}.v1 .grid .card+.card,.v1 .grid .panel+.panel{margin:0}.v1 .alert-wrapper{position:absolute;margin-left:-500px;width:1000px;left:50%;top:100px;bottom:100px;overflow-y:auto;background:#fff;border:1px solid #929292}.v1 .alert-header{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:end;-webkit-align-items:flex-end;-moz-box-align:end;-ms-flex-align:end;align-items:flex-end;padding:30px 80px 25px;border-bottom:1px solid #929292}.v1 .alert-subtitle,.v1 .alert-title{margin:0;padding:0;font-size:20px}.v1 .alert-title{font-weight:400}.v1 .alert-body{padding:25px 80px 0}.v1 .alert-body>p{margin:0;color:#53657d}.v1 .alert-body ul{margin:0;color:#26353f;line-height:28px}.v1 .alert-options label,.v1 .alert-options ul,.v1 p.alert-options{color:#006be6;font-weight:700}.v1 p.alert-options{margin-top:45px}.v1 p.alert-options ul{margin-top:10px;padding:0;list-style:none}.v1 p.alert-options li{margin-bottom:15px}.v1 p.alert-options li>span{padding:6px;max-width:370px;border:1px solid #8393a7;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.v1 p.alert-options input{margin-top:-4px;vertical-align:middle;border-color:#006be6}.v1 p.alert-options label{display:inline-block;cursor:pointer}.v1 p.alert-options label>span{font-weight:400}.v1 .badge{display:inline-block;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;font-size:.7rem;text-align:center;color:#fff;background:#016be6;width:15px;line-height:15px;margin-left:5px}.v1 .block{padding:30px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;-webkit-box-shadow:0 0 5px 2px rgba(0,0,0,.1);box-shadow:0 0 5px 2px rgba(0,0,0,.1)}.v1 .block.block--dark{font-weight:700;color:#fff;background:#26353f;-webkit-box-shadow:none;box-shadow:none}.v1 table.block{width:100%;border-collapse:collapse}.v1 .carousel{margin-right:50px;width:500px;overflow:hidden}.v1 .carousel-container{white-space:nowrap}.v1 .carousel-container>img{width:100%}.v1 .carousel-container>img:first-of-type{-webkit-transition:margin-left .3s ease-in-out;-moz-transition:margin-left .3s ease-in-out;transition:margin-left .3s ease-in-out}.v1 .carousel-bullets{margin-top:10px;text-align:center}.v1 .carousel-bullets .carousel-bullet{margin:0 3px;display:inline-block;vertical-align:middle;width:8px;height:8px;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;background:#adb9c9}.v1 .carousel-bullets .carousel-bullet--active{background:#0053b3}.v1 .comment{background:#fff;-webkit-box-shadow:0 0 5px 5px rgba(0,0,0,.1);box-shadow:0 0 5px 5px rgba(0,0,0,.1)}.v1 .comment ul{margin:10px 0;padding:0;list-style:none}.v1 .comment ul>li{padding:2px 0;font-weight:700;color:#8393a7;font-style:italic}.v1 .comment ul>li>span{display:inline-block;width:25px;text-align:center}.v1 .comment ul>li.comment-author{color:#000;font-style:normal}.v1 .comment ul>li.comment-author img,.v1 .comment ul>li.comment-author svg{color:#8393a7}.v1 .comment-content{margin-top:5px;padding-top:10px;border-top:1px dotted #c9d3df}.v1 .changelog-name{font-weight:700;color:#16919f}.v1 .changelog-oldValue{position:relative;color:#8393a7}.v1 .changelog-oldValue:before{height:1px;width:100%;position:absolute;top:50%;left:0;background:#d63626;content:"";display:block}.v1 .changelog-newValue{color:#000}.v1 .changelog-value--unknown{color:#8393a7}.v1 .dataSection{margin-bottom:60px}.v1 .dataSection-header{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}.v1 .dataSection-title{margin:0;padding:0;font-size:1.75rem}.v1 .dataSection-header>p{margin-left:15px;padding-top:5px;-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1}.v1 .dataSection-actions{float:right;font-size:1.3rem;color:#0053b3}.v1 .dataSection-actions>svg{cursor:pointer}.v1 .dataSection-icon{position:absolute;margin-left:-50px;width:35px;height:35px;text-align:center;line-height:35px;color:#fff;background:#000;font-size:1rem;font-weight:400;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;vertical-align:middle}.v1 .dataSection-line{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;margin-bottom:30px;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}.v1 .dataSection-line:last-child{margin-bottom:0}.v1 .dataSection-line>.data{margin:0 50px 0 0}.v1 .data-label{font-weight:700;color:#16919f}.v1 .dataSection-schoolHeader th{width:120px}.v1 .list--circle{padding:0 0 0 19px;list-style:none;line-height:28px}.v1 .list--circle li:before{position:absolute;content:"";background-position:50%;background-repeat:no-repeat;-webkit-background-size:contain;background-size:contain;margin-top:10px;margin-left:-19px;width:8px;height:8px;background:#adb9c9;-webkit-mask:url(/img/circle.svg) no-repeat center;mask:url(/img/circle.svg) no-repeat center}.v1 .note{padding:15px 25px;-webkit-box-shadow:0 0 5px 0 rgba(0,0,0,.3);box-shadow:0 0 5px 0 rgba(0,0,0,.3);background:#fff0e4}.v1 .note-header{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}.v1 .note-title{margin:0;padding:0;font-size:1.2rem}.v1 .note-body{margin:0;padding:0 0 0 30px;text-align:center}.v1 .note-body>h1{font-size:1rem;color:#16919f}.v1 .notification--failure,.v1 .notification--loading{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}.v1 .notification--failure .notification-content,.v1 .notification--failure .notification-icon,.v1 .notification--loading .notification-content,.v1 .notification--loading .notification-icon{margin:0;padding:0}.v1 .notification--failure .notification-icon,.v1 .notification--loading .notification-icon{margin-right:10px}.v1 .notification--failure .notification-icon>img,.v1 .notification--failure .notification-icon>svg,.v1 .notification--loading .notification-icon>img,.v1 .notification--loading .notification-icon>svg{width:50px}.v1 .notification--failure .notification-content,.v1 .notification--loading .notification-content{text-align:left}.v1 .notification--failure .notification-title,.v1 .notification--loading .notification-title{font-weight:700;text-transform:uppercase}.v1 .notification--loading .notification-content{color:#003b7f}.v1 .page-header{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:50px}.v1 .page-title,.v1 .page-titleContainer{margin:0;padding:0}.v1 .page-title{font-size:2rem}.v1 .page-subtitle{margin:15px 0 0;padding:0;font-size:1rem;font-weight:400}.v1 .pageHeader{-webkit-box-shadow:0 10px 10px 0 rgba(0,0,0,.2);box-shadow:0 10px 10px 0 rgba(0,0,0,.2)}.v1 .pageHeader-wrapper{margin:0 auto;width:90%}.v1 .pageHeader-main{padding-top:20px;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.v1 .pageHeader-info{min-height:60px}.v1 .pageHeader-meta{margin:0;padding:6px 0}.v1 .pageHeader-meta .link:not(:last-child){margin-right:15px}.v1 .pageHeader-title{margin:0;padding:0;font-size:2.2rem}.v1 .pageHeader-anchors{padding-top:6px;border-top:1px solid #adb9c9}.v1 .pageHeader-anchors>ul{margin:0;padding:0;list-style:none}.v1 .pageHeader-anchorItem{display:inline-block;color:#0053b3;text-transform:uppercase;font-weight:700;cursor:pointer;border-bottom:4px solid rgba(0,0,0,0)}.v1 .pageHeader-anchorItem:not(:last-child){margin-right:20px}.v1 .pageHeader-anchorItem:hover:not(.pageHeader-anchorItem--active){border-bottom-color:rgba(0,83,179,.3)}.v1 .pageHeader-anchorItem--active{border-bottom-color:#0053b3}.v1 .rb-pagination{margin:20px 0 15px;text-align:right}.v1 .rb-pagination .pagination-pages{padding:0 15px;color:#596b82}.v1 .popin{position:fixed;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;z-index:4001;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.3)}.v1 .popin,.v1 .popin-wrapper{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.v1 .popin-wrapper{position:relative;padding:35px 70px;max-height:95%;width:1000px;overflow-y:auto;background:#ebeff3;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;-webkit-box-align:start;-webkit-align-items:flex-start;-moz-box-align:start;-ms-flex-align:start;align-items:flex-start}.v1 .popin-wrapper>div{-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1;padding-bottom:35px}.v1 .popin-header{margin-top:0;text-align:center}.v1 .popin-title{margin:10px 0;padding:0;font-size:1.5rem;font-weight:700;color:#26353f}.v1 .popin-h1{margin-top:30px;font-weight:700;color:#16919f;font-size:1rem}.v1 .popin-body{margin-top:40px}.v1 .popin-close{position:absolute;margin:0;top:35px;right:40px}.v1 .role{padding:3px 15px;border:1px solid #adb9c9;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.v1 .sidepanel{z-index:4000;position:fixed;top:0;left:0}.v1 .sidepanel-shadow{position:absolute;top:0;bottom:0;width:100%;background:rgba(0,0,0,.3);opacity:0;-moz-transition:opacity .4s linear;transition:opacity .4s linear;-webkit-transition:opacity .4s linear}.v1 .sidepanel-wrapper{position:fixed;z-index:7000;width:425px;top:0;bottom:0;right:-425px;color:#182b51;background:#c9d3df;-moz-transition:right .4s ease-in-out;transition:right .4s ease-in-out;-webkit-transition:right .4s ease-in-out;-webkit-box-shadow:0 5px 8px 0 rgba(0,0,0,.16);box-shadow:0 5px 8px 0 rgba(0,0,0,.16);overflow-y:scroll;padding:15px 0}.v1 .sidepanel-header{margin-bottom:15px}.v1 .sidepanel-title{margin:0;padding:0 35px;color:#26353f;font-size:1.2rem;line-height:40px}.v1 .sidepanel-actions{position:absolute;top:15px;padding:0 35px;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-webkit-justify-content:flex-end;-moz-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;width:100%;text-align:right;height:40px;color:#0053b3}.v1 .sidepanel-actions>span{cursor:pointer}.v1 .sidepanel-section{border-top:1px solid #8393a7;padding:20px 35px}.v1 .sidepanel--visible{bottom:0;right:0}.v1 .sidepanel--visible .sidepanel-wrapper{right:0}.v1 .sidepanel--visible .sidepanel-shadow{opacity:1}.v1 .switch button{padding:0 20px;font-weight:700;color:#53657d;background:#ebeff3;border:1px solid #b1bccb;line-height:35px;font-size:.8rem}.v1 .switch button.active{background:#016be6;color:#fff}.v1 .switch button:first-of-type{-webkit-border-top-left-radius:5px;-moz-border-radius-topleft:5px;border-top-left-radius:5px;-webkit-border-bottom-left-radius:5px;-moz-border-radius-bottomleft:5px;border-bottom-left-radius:5px}.v1 .switch button:last-of-type{border-left:none;-webkit-border-top-right-radius:5px;-moz-border-radius-topright:5px;border-top-right-radius:5px;-webkit-border-bottom-right-radius:5px;-moz-border-radius-bottomright:5px;border-bottom-right-radius:5px}.v1 .rb-table>table thead th.filterable>span{cursor:pointer;border:1px solid #fff;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;color:#fff}.v1 .rb-table>table thead th.filterable>span>img,.v1 .rb-table>table thead th.filterable>span>svg{margin-top:-10px;margin-left:5px}.v1 .rb-table>table thead th.filterable>span:hover{background:hsla(0,0%,100%,.2)}.v1 .rb-table>table thead th.filterable>span:hover.active{background:hsla(0,0%,100%,.8)}.v1 .rb-table>table thead th.filterable>span.active{background:#fff;color:#53657d}.v1 .rb-table>table tbody tr.odd{background:#ebeff3}.v1 .rb-table>table tbody tr.odd:hover{background:#dde1e5}.v1 .rb-table>table tbody tr.townRow--empty td{padding:50px 0;text-align:center;text-transform:uppercase;font-weight:700}.v1 .rb-table{overflow:auto;min-height:250px}.v1 .rb-table>table{table-layout:fixed}.v1 .rb-table>table thead th{position:relative;padding-top:7px;padding-bottom:7px;color:#adb9c8;background:#53657d;white-space:nowrap}.v1 .rb-table>table thead th>span{padding:3px 10px;border:1px solid rgba(0,0,0,0)}.v1 .rb-table>table thead th.table-col--filterable>span{cursor:pointer;border:1px solid #fff;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;color:#fff}.v1 .rb-table>table thead th.table-col--filterable>span>img,.v1 .rb-table>table thead th.table-col--filterable>span>svg{margin-top:-10px;margin-left:5px}.v1 .rb-table>table thead th.table-col--filterable>span:hover{background:hsla(0,0%,100%,.2)}.v1 .rb-table>table thead th.table-col--filterable.table-col--active>span{background:#fff;color:#53657d}.v1 .rb-table>table thead th.table-col--filterable.table-col--active>span:hover{background:hsla(0,0%,100%,.8)}.v1 .rb-table>table tbody tr{cursor:pointer}.v1 .rb-table>table tbody tr:hover{background:#dde1e5}.v1 .rb-table>table tbody tr.table-row--odd{background:#ebeff3}.v1 .rb-table>table tbody tr.table-row--odd:hover{background:#dde1e5}.v1 .rb-table>table tbody tr.table-row--empty td{padding:50px 0;text-align:center;text-transform:uppercase;font-weight:700}.v1 .rb-table-aside{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}.v1 .vgt-table td,.v1 .vgt-table th{padding:.75em!important}.v1 .userCard{padding:25px 25px 25px 50px;background:#fff;width:450px;-webkit-box-shadow:0 5px 5px 0 rgba(0,0,0,.1);box-shadow:0 5px 5px 0 rgba(0,0,0,.1)}.v1 .userCard>h1{margin:0;padding:0;font-size:1.2rem}.v1 .userCard>h2{margin:3px 0 0;padding:0;font-size:.9rem;color:#0e9faa}.v1 .userCard>h3{margin:0;padding:0;font-size:.9rem;font-weight:400}.v1 .userCard>h3.userCard-position--empty{font-style:italic;color:#53657d}.v1 .userCard-infoList{margin:10px 0 0;padding:0;list-style:none}.v1 .userCard-infoList>li{padding:2px 0}.v1 .userCard-infoList>li:before{position:absolute;content:"";margin-top:6px;margin-left:-25px;width:15px;height:15px;background-position:50%;background-repeat:no-repeat;-webkit-background-size:contain;background-size:contain;background:#adb9c9}.v1 .userCard-infoList>.userCard-info--email:before{-webkit-mask:url(/img/envelope.svg) no-repeat center;mask:url(/img/envelope.svg) no-repeat center}.v1 .userCard-infoList>.userCard-info--phone:before{-webkit-mask:url(/img/phone.svg) no-repeat center;mask:url(/img/phone.svg) no-repeat center}.v1 .userpost-date{margin:0;padding:0}.v1 .userpost-title{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;margin:5px 0 0;padding:0;font-size:1rem;color:#0053b3;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}.v1 .userpost-actions{visibility:hidden}.v1 .userpost-action--delete,.v1 .userpost-action--edit{cursor:pointer;margin-left:5px}.v1 .userpost-action--delete{color:#d63626}.v1 .userpost:hover .userpost-actions{visibility:visible}.v1 img{display:inline-block}.v1 .icon{vertical-align:initial}.v1 .leaflet-control-zoom a{width:30px;height:30px;line-height:30px;text-decoration:none;color:#000;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.v1 p{-webkit-margin-before:1em;margin-block-start:1em;-webkit-margin-after:1em;margin-block-end:1em}.v1 body,.v1 h1,.v1 h2,.v1 h3,.v1 h4,.v1 h5,.v1 h6{font-family:Fira Sans,Arial,sans-serif}.v1 .page--withMargin{padding-bottom:50px}.v1 .mandatory,.v1 label.error,.v1 span.error{color:#d63626;font-weight:700}.v1 p.error{margin-top:0}.v1 p.error>ul{margin-top:0;color:#d63626}.v1 label.error.message{font-weight:400;font-style:italic}.v1 .error>ul{color:#d63626}.v1 select{-webkit-background-size:15px 15px;background-size:15px 15px}.v1 .section{margin-top:50px;padding:0}.v1 .main-pane{padding:0}.v1 .notification>.spinner{vertical-align:middle;margin-right:10px}.v1 .panel__header>h3>a{color:inherit;text-decoration:underline}.v1 .panel__header>h3>a:hover{text-decoration:none}.v1 .actionButton{padding:3px 10px;color:#fff;background:#006be6;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;border:none;font-size:.8rem;text-transform:uppercase}.v1 button:disabled,.v1 button:disabled:hover{background-color:rgba(0,83,179,.5);cursor:default}.v1 .customNotifications .notification-wrapper{margin-top:50px}.v1 .customNotifications .vue-notification,.v1 .customNotifications .vue-notification-template{display:-webkit-flex;display:-moz-box;display:flex;display:-webkit-box;display:-ms-flexbox;font-size:1.1rem;padding:30px 10px;margin:0 5px 5px;width:400px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;text-align:center;color:#fff;background:#44a4fc;border-left:5px solid #187fe7}.v1 .customNotifications .vue-notification-template .notification-icon,.v1 .customNotifications .vue-notification .notification-icon{padding-left:20px;text-align:center}.v1 .customNotifications .vue-notification-template .notification-icon:before,.v1 .customNotifications .vue-notification .notification-icon:before{content:"";display:inline-block;width:70px;height:70px;background:#fff;-webkit-mask:url(/img/check.svg) no-repeat center;mask:url(/img/check.svg) no-repeat center}.v1 .customNotifications .vue-notification-template .notification-content,.v1 .customNotifications .vue-notification .notification-content{-webkit-flex-grow:1;-moz-box-flex:1;flex-grow:1;-webkit-box-flex:1;-ms-flex-positive:1;display:-webkit-flex;display:-moz-box;display:flex;display:-webkit-box;display:-ms-flexbox;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;flex-direction:column;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;-webkit-box-pack:center;-ms-flex-pack:center}.v1 .customNotifications .vue-notification-template.success,.v1 .customNotifications .vue-notification.success{background:#68cd86;border-left-color:#42a85f}.v1 .leaflet-marker-custom>span.address{display:block;position:relative;color:#fff;width:30px;height:30px;font-size:0;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;white-space:nowrap}.v1 .leaflet-marker-custom>span.address:after{position:absolute;top:50%;left:50%;margin-top:-10px;margin-left:-10px;content:"";width:20px;height:20px;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;background:#fff}.v1 .leaflet-marker-custom>span.address>i{border-left:10px solid rgba(0,0,0,0);border-right:10px solid rgba(0,0,0,0);border-top:10px solid rgba(0,0,0,0);position:absolute;bottom:-6px;left:5px}.v1 .leaflet-marker-custom>span.water>img{position:absolute;top:50%;left:50%;margin-left:-1px;width:20px}.v1 .mapPin{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}.v1 .mapPin .mapPin-wrapper{-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;text-align:center}.v1 .mapPin .mapPin-wrapper .mapPin-marker{display:inline-block;width:1.6rem;height:2.1rem;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;-webkit-mask-image:url(/img/map-marker.svg);mask-image:url(/img/map-marker.svg)}.v1 .mapPin .mapPin-wrapper .mapPin-water{position:absolute;z-index:10;margin-top:.2rem;margin-left:.2rem;width:1.25rem;height:1.25rem;background:#fff;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}.v1 .mapPin .mapPin-wrapper .mapPin-water>img{width:100%;height:auto}.v1 .mapPin .mapPin-address{visibility:hidden;text-align:left;margin-left:.3rem;font-size:1rem;padding:.1rem .5rem;background:hsla(0,0%,100%,.65);white-space:nowrap}.v1 .mapPin.mapPin--result.mapPin--street .mapPin-address{visibility:visible;color:red}.v1 .mapPin.mapPin--result.mapPin--shantytown .mapPin-address{visibility:visible}.v1 .mapPin.mapPin--result.mapPin--shantytown .mapPin-wrapper{padding-top:.5rem;width:3.5rem;height:3.5rem;border:3px solid red}.v1 .leaflet-address-toggler,.v1 .leaflet-legend{padding:5px 10px;background:#fff;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;border:2px solid rgba(0,0,0,.2)}.v1 .leaflet-legend>h1{margin:5px 0 0;padding:0;font-size:1rem}.v1 .leaflet-legend>p>span{display:inline-block;margin-right:5px;width:15px;height:15px;vertical-align:middle;background:red;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.v1 .alert{position:fixed;z-index:10000;top:0;left:0;bottom:0;right:0;background:rgba(0,0,0,.5)}.v1 .alert .wrapper{position:absolute;padding:0 40px 40px;left:100px;right:100px;top:100px;bottom:100px;overflow-y:auto;background:#fff}.v1 .link{text-decoration:none;font-weight:700;color:#0053b3;cursor:pointer}.v1 .link:hover{text-decoration:underline}.v1 .fieldType>i{display:inline-block;width:15px;height:15px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;vertical-align:middle}.v1 .fieldType>span{margin-left:5px;white-space:normal;display:inline-block;vertical-align:middle;max-width:90px;line-height:20px}.v1 .link--secondary{color:#8393a7}.v1 .link--disabled{cursor:default;color:#ccc;font-weight:400}.v1 .link--disabled:hover{text-decoration:none}.v1 .mail:after{content:attr(data-name) "@" attr(data-domain) "." attr(data-tld)}.v1 .subtitle{color:#16919f;font-weight:700}.v1 .background--gray{background:#ebeff3}.v1 .bordered--right{border-right:1px solid #adb9c9}.v1 .bordered--bottom{border-bottom:1px solid #adb9c9}.v1 table.bordered{margin:0;padding:0;border-collapse:collapse}.v1 table.bordered td,.v1 table.bordered th{padding:5px 0;border-bottom:1px solid #adb9c9}.v1 table.bordered th{text-align:left}.v1 table.bordered th:first-child{padding-right:30px}.v1 .rbTag{padding:0 10px;margin-right:5px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;font-weight:700;background:#dcf3ff}.v1 .rbTag--warning{background:#fff0e4}.v1 .rbTag--error{background:#e5aea8}.v1 .locationPoint{color:#0053b3;font-weight:700}.v1 .locationPoint:before{margin-right:7px;margin-bottom:5px;display:inline-block;content:"";width:20px;height:26px;background-position:50%;background-repeat:no-repeat;-webkit-background-size:contain;background-size:contain;background:#0053b3;-webkit-mask:url(/img/map-marker-alt.svg) no-repeat center;mask:url(/img/map-marker-alt.svg) no-repeat center;vertical-align:middle}.v1 .user{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;color:#0053b3;font-weight:700}.v1 .user:before{margin-right:7px;display:inline-block;content:"";width:20px;height:26px;background-position:50%;background-repeat:no-repeat;-webkit-background-size:contain;background-size:contain;background:#0053b3;-webkit-mask:url(/img/user.svg) no-repeat center;mask:url(/img/user.svg) no-repeat center}.v1 .divider{margin:10px 0;border-top:1px solid #adb9c9}.v1 .align--right{text-align:right}.leaflet-show-addresses .v1 .mapPin.mapPin--result.mapPin--shantytown .mapPin-address,.leaflet-show-addresses .v1 .mapPin:not(.mapPin--result) .mapPin-address{visibility:visible}.leaflet-show-addresses .v1 .leaflet-marker-custom>span.address{display:inline;font-size:14px;padding:5px 7px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.leaflet-show-addresses .v1 .leaflet-marker-custom>span.address:before{bottom:-10px;left:10px}.leaflet-show-addresses .v1 .leaflet-marker-custom>span.addess:after{display:none}@media (min-width:640px){.sm\:text-display-xl{font-size:3rem}.sm\:text-display-lg,.sm\:text-display-xl{line-height:1.25em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.sm\:text-display-lg{font-size:2rem}.sm\:text-display-md{font-size:1.5rem;line-height:1.25em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.sm\:text-display-sm{font-size:1.25rem}.sm\:text-display-sm,.sm\:text-display-xs{line-height:1.375em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.sm\:text-display-xs{font-size:1rem}.sm\:text-xl{font-size:1.5rem;line-height:1.5em}.sm\:text-lg{font-size:1.25rem;line-height:1.5em}.sm\:text-md{font-size:1rem;line-height:1.5em}.sm\:text-sm{font-size:.865rem;line-height:1.5em}.sm\:text-xs{font-size:.75rem;line-height:1em;font-weight:300}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width:768px){.md\:text-display-xl{font-size:3rem}.md\:text-display-lg,.md\:text-display-xl{line-height:1.25em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.md\:text-display-lg{font-size:2rem}.md\:text-display-md{font-size:1.5rem;line-height:1.25em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.md\:text-display-sm{font-size:1.25rem}.md\:text-display-sm,.md\:text-display-xs{line-height:1.375em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.md\:text-display-xs{font-size:1rem}.md\:text-xl{font-size:1.5rem;line-height:1.5em}.md\:text-lg{font-size:1.25rem;line-height:1.5em}.md\:text-md{font-size:1rem;line-height:1.5em}.md\:text-sm{font-size:.865rem;line-height:1.5em}.md\:text-xs{font-size:.75rem;line-height:1em;font-weight:300}.md\:block{display:block}.md\:flex{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.md\:grid{display:grid}.md\:hidden{display:none}.md\:flex-row{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-moz-box-orient:horizontal;-moz-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.md\:my-0{margin-bottom:0}.md\:mt-0,.md\:my-0{margin-top:0}.md\:mb-0{margin-bottom:0}.md\:mr-16{margin-right:4rem}.md\:w-1\/2{width:50%}.md\:gap-16{grid-gap:4rem;gap:4rem}.md\:gap-x-16{grid-column-gap:4rem;-webkit-column-gap:4rem;-moz-column-gap:4rem;column-gap:4rem}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1024px){.lg\:text-display-xl{font-size:3rem}.lg\:text-display-lg,.lg\:text-display-xl{line-height:1.25em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.lg\:text-display-lg{font-size:2rem}.lg\:text-display-md{font-size:1.5rem;line-height:1.25em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.lg\:text-display-sm{font-size:1.25rem}.lg\:text-display-sm,.lg\:text-display-xs{line-height:1.375em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.lg\:text-display-xs{font-size:1rem}.lg\:text-xl{font-size:1.5rem;line-height:1.5em}.lg\:text-lg{font-size:1.25rem;line-height:1.5em}.lg\:text-md{font-size:1rem;line-height:1.5em}.lg\:text-sm{font-size:.865rem;line-height:1.5em}.lg\:text-xs{font-size:.75rem;line-height:1em;font-weight:300}.lg\:flex{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.lg\:flex-shrink-0{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.lg\:flex-shrink{-webkit-flex-shrink:1;-ms-flex-negative:1;flex-shrink:1}.lg\:mx-auto{margin-left:auto;margin-right:auto}.lg\:p-8{padding:2rem}.lg\:px-4{padding-left:1rem;padding-right:1rem}.lg\:py-8{padding-top:2rem;padding-bottom:2rem}}@media (min-width:1280px){.xl\:text-display-xl{font-size:3rem}.xl\:text-display-lg,.xl\:text-display-xl{line-height:1.25em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.xl\:text-display-lg{font-size:2rem}.xl\:text-display-md{font-size:1.5rem;line-height:1.25em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.xl\:text-display-sm{font-size:1.25rem}.xl\:text-display-sm,.xl\:text-display-xs{line-height:1.375em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.xl\:text-display-xs{font-size:1rem}.xl\:text-xl{font-size:1.5rem;line-height:1.5em}.xl\:text-lg{font-size:1.25rem;line-height:1.5em}.xl\:text-md{font-size:1rem;line-height:1.5em}.xl\:text-sm{font-size:.865rem;line-height:1.5em}.xl\:text-xs{font-size:.75rem;line-height:1em;font-weight:300}}@media print{.print\:text-display-xl{font-size:3rem}.print\:text-display-lg,.print\:text-display-xl{line-height:1.25em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.print\:text-display-lg{font-size:2rem}.print\:text-display-md{font-size:1.5rem;line-height:1.25em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.print\:text-display-sm{font-size:1.25rem}.print\:text-display-sm,.print\:text-display-xs{line-height:1.375em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.print\:text-display-xs{font-size:1rem}.print\:text-xl{font-size:1.5rem;line-height:1.5em}.print\:text-lg{font-size:1.25rem;line-height:1.5em}.print\:text-md{font-size:1rem;line-height:1.5em}.print\:text-sm{font-size:.865rem;line-height:1.5em}.print\:text-xs{font-size:.75rem;line-height:1em;font-weight:300}.print\:grid{display:grid}.print\:hidden{display:none}.print\:max-w-none{max-width:none}.print\:px-0{padding-left:0;padding-right:0}}.inputWrapper-error{left:-16px}.checkbox-town-input{width:1.25rem;height:1.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-width:2px;--border-opacity:1;border-color:#f0f0f0;border-color:rgba(240,240,240,var(--border-opacity));position:relative;outline:0;cursor:pointer}.checkbox-town-input:checked{--bg-opacity:1;background-color:#000091;background-color:rgba(0,0,145,var(--bg-opacity));background-image:url(../img/check-solid.2e0a6702.svg);background-repeat:no-repeat;border:2px inset rgba(0,0,0,0);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.radio-town-input{width:1.25rem;height:1.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-width:2px;--border-opacity:1;border-color:#f0f0f0;border-color:rgba(240,240,240,var(--border-opacity));position:relative;outline:0;cursor:pointer;-webkit-border-radius:9999px;-moz-border-radius:9999px;border-radius:9999px}.radio-town-input:checked{--bg-opacity:1;background-color:#000091;background-color:rgba(0,0,145,var(--bg-opacity));background-image:url(../img/check-solid.2e0a6702.svg);background-repeat:no-repeat;border:4px inset rgba(0,0,0,0);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.vue-notification[data-v-7743ec3e]{background:#44a4fc;border-left:5px solid #187fe7}.vue-notification.warn[data-v-7743ec3e]{background:#ffb648;border-left-color:#f48a06}.vue-notification.error[data-v-7743ec3e]{background:#e54d42;border-left-color:#b82e24}.vue-notification.success[data-v-7743ec3e]{background:#68cd86;border-left-color:#42a85f}.z-backdrop{z-index:1000}.z-sidePanel{z-index:1001}.leftBorder[data-v-fe57aba0]{width:2px;left:-16px}.checkableGroup--horizontalLayout .checkbox-card,.checkableGroup--horizontalLayout .radio-card{margin-right:.25rem;margin-bottom:.25rem}.checkableGroup--horizontalLayout .checkbox-card:last-child,.checkableGroup--horizontalLayout .radio-card:last-child{margin-right:0}.checkableGroup--horizontalLayout .checkbox-default,.checkableGroup--horizontalLayout .radio-default{margin-right:1rem}.checkableGroup--horizontalLayout .checkbox-default:last-child,.checkableGroup--horizontalLayout .radio-default:last-child{margin-right:0;margin-bottom:0}.checkableGroup--verticalLayout .radio-card{margin-bottom:1.5rem}.checkableGroup--verticalLayout .radio-card:last-child{margin-bottom:0}.checkableGroup--verticalLayout .checkbox-card,.checkableGroup--verticalLayout .radio-card{margin-bottom:.5rem}.arrow[data-v-afec8fd8]{display:block;height:0;width:0;border-top:14px solid #fff;border-right:8px solid rgba(0,0,0,0);border-left:7px solid rgba(0,0,0,0)}.tooltip[data-v-e37a80c0]{visibility:hidden;position:absolute}.has-tooltip:hover .tooltip[data-v-e37a80c0]{visibility:visible;z-index:50}.marianne[data-v-07ee7c4c]{height:24px}.feedbackText[data-v-a695c1c4]:before{content:"«";position:absolute;left:-32px;top:-24px;--text-opacity:1;color:#ff6f4c;color:rgba(255,111,76,var(--text-opacity));font-size:3rem;line-height:1.25em}.feedbackText[data-v-a695c1c4]:after{content:"»";margin-left:.25rem;--text-opacity:1;color:#ff6f4c;color:rgba(255,111,76,var(--text-opacity));font-size:1.25rem;line-height:1.5em}.wrapper{position:relative;padding-top:25px;height:0}.wrapper iframe{position:absolute;top:0;left:0;width:100%;height:100%}.topbar .topbar-container[data-v-b24b83de]{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;background:#20396b;-webkit-box-pack:space-between;-ms-flex-pack:space-between;-webkit-justify-content:space-between;-moz-box-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;padding:5px;border-bottom:1px solid #294377}.topbar .topbar-container .topbar-home[data-v-b24b83de]{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;height:40px;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;letter-spacing:.05em;text-decoration:none;color:#fff;font-family:Evolventa;white-space:nowrap}.topbar .topbar-container .topbar-home>img[data-v-b24b83de]{height:30px}.topbar .topbar-container .topbar-home .topbar-marianne[data-v-b24b83de]{margin-right:5px;background:#fff}.topbar .topbar-container .topbar-home .topbar-domain[data-v-b24b83de]{font-size:.8em;-webkit-padding-after:3px}.topbar .topbar-container .topbar-menu[data-v-b24b83de]{color:#fff;font-size:.8em;letter-spacing:.05em;font-family:Evolventa;cursor:pointer;text-transform:uppercase}.topbar .topbar-container .nav__links[data-v-b24b83de]{display:none}.topbar .topbar-container .nav__links .nav__item .dropdown[data-v-b24b83de]{color:#8393a7;text-transform:uppercase;-moz-transition:background .1s linear;transition:background .1s linear;-webkit-transition:background .1s linear}.topbar .topbar-container .nav__links .nav__item .dropdown[data-v-b24b83de]:hover{background:#fff}.topbar .topbar-container .nav__links .nav__item .dropdown .dropdown-content[data-v-b24b83de]{z-index:6000;text-transform:none;white-space:nowrap}.topbar .topbar-container .nav__links .nav__item>a[data-v-b24b83de]{background:none;color:#8393a7;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;border-bottom:1px solid rgba(0,0,0,0);margin:0 .8em;padding:.2em 0;text-transform:uppercase;-moz-transition:color .2s linear;transition:color .2s linear;-webkit-transition:color .2s linear}.topbar .topbar-container .nav__links .nav__item>a.active[data-v-b24b83de]{color:#fff}.topbar .topbar-container .nav__links .nav__item>a.active[data-v-b24b83de]:before{display:inline-block;content:"";width:5px;height:5px;background:#fff;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;vertical-align:middle;margin-right:10px}.topbar .topbar-container .nav__links .nav__item>a[data-v-b24b83de]:hover{color:#fff}.topbar .topbar-container .nav__links .nav__item>a.router-link--covid[data-v-b24b83de]{background:#d63626;color:#fff;font-weight:700;padding-left:10px;padding-right:10px}.sidebar[data-v-b24b83de]{z-index:8000;position:fixed;top:0;bottom:0;right:-230px;background:#182b51;width:230px;-moz-transition:right .25s ease-in-out;transition:right .25s ease-in-out;-webkit-transition:right .25s ease-in-out}.sidebar .nav__links[data-v-b24b83de]{display:block;margin:20px 0 20px 30px}.sidebar .nav__links .nav__item[data-v-b24b83de]{display:block;margin-bottom:20px}.sidebar .nav__links .nav__item .dropdown[data-v-b24b83de]{color:#fff}.sidebar .nav__links .nav__item .dropdown[data-v-b24b83de]:hover{color:#8393a7}.sidebar .nav__links .nav__item .dropdown a[data-v-b24b83de]{color:#8393a7}.sidebar .nav__links .nav__item a[data-v-b24b83de]{color:#fff}.sidebar .nav__links .nav__item a[data-v-b24b83de]:hover{color:#003b80;background:#c9d3df}.sidebar .nav__links .nav__item a.active[data-v-b24b83de]{color:#003b80;background:#fff}.sidebar .nav__links .nav__item a.router-link--covid[data-v-b24b83de]{background:#d63626;color:#fff;font-weight:700;padding-left:10px;padding-right:10px}.sidebar.opened[data-v-b24b83de]{right:0}.sidebar .sidebar-cross[data-v-b24b83de]{padding:10px;text-align:right}.sidebar .sidebar-cross>img[data-v-b24b83de]{cursor:pointer;width:20px}@media(min-width:500px){.topbar .topbar-container .topbar-home .topbar-betagouv[data-v-b24b83de],.topbar .topbar-container .topbar-home .topbar-domain[data-v-b24b83de]{display:inline}}@media(min-width:630px){.topbar .topbar-container[data-v-b24b83de]{padding:15px}.topbar .topbar-container .topbar-home .topbar-marianne[data-v-b24b83de]{margin-right:10px}.topbar .topbar-container .topbar-home .topbar-domain[data-v-b24b83de]{font-size:1em}.topbar .topbar-container .topbar-home>img[data-v-b24b83de]{height:40px}.topbar .topbar-container .topbar-menu[data-v-b24b83de]{font-size:.9em}}@media(min-width:1150px){.topbar .topbar-container .topbar-menu[data-v-b24b83de]{display:none}.topbar .topbar-container .nav__links[data-v-b24b83de]{display:block}.sidebar.opened[data-v-b24b83de]{display:none}}.v1 .autocompleter-measure{position:absolute;color:rgba(0,0,0,0)}.v1 .autocompleter-textfield{position:relative;max-width:400px}.v1 .autocompleter-textfield>input{padding-left:40px;padding-right:80px}.v1 .autocompleter-prefixIcon{position:absolute;z-index:1;width:43px;height:43px;line-height:39px;text-align:center}.v1 .autocompleter-prefixIcon>img{width:25px;vertical-align:middle}.v1 .autocompleter-clearIcon{position:absolute;top:1px;right:0;z-index:1;display:inline-block;background:url(/img/delete.svg) no-repeat 50%;-webkit-background-size:50% 50%;background-size:50%;width:40px;height:40px;cursor:pointer}.v1 .autocompleter-spinner{top:9px;position:absolute;left:50px;margin-left:0;padding-right:40px}.v1 .autocompleter-spinner>img{width:25px}.v1 .autocompleter-error{margin:10px 0 0;padding:0;color:#d63626;font-weight:700}.v1 .autocompleter-error>img{width:25px;vertical-align:bottom}.v1 .autocompleter-suggestionContainer{display:block;border:1px solid #ccc;border-bottom:0;margin-top:8px;background:#fff;width:100%}.v1 .autocompleter-suggestionContainer--float{position:absolute;z-index:3000}.v1 .autocompleter-suggestionCategoryContainer{display:-webkit-flex;display:-moz-box;display:flex;display:-webkit-box;display:-ms-flexbox;line-height:42px}.v1 .autocompleter-suggestionCategory{padding-right:15px;width:150px;text-align:right;vertical-align:top;font-weight:700;text-transform:uppercase;font-size:.7rem;letter-spacing:.05em;font-family:Evolventa;background:#eee;border-bottom:1px solid #ccc;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.v1 .autocompleter-suggestionCategoryItems{-webkit-flex-grow:1;-moz-box-flex:1;flex-grow:1;-webkit-box-flex:1;-ms-flex-positive:1;margin:0;padding:0;list-style:none}.v1 .autocompleter-suggestionCategoryItem,.v1 .autocompleter-suggestionCategoryItem--empty,.v1 .autocompleter-suggestionCategoryItem--error{display:block;padding-left:15px;width:100%;border-bottom:1px solid #eee}.v1 .autocompleter-suggestionCategoryItem--empty:last-child,.v1 .autocompleter-suggestionCategoryItem--error:last-child,.v1 .autocompleter-suggestionCategoryItem:last-child{border-bottom:1px solid #ccc}.v1 .autocompleter-suggestionContainer--withoutCategories .autocompleter-suggestionCategoryContainer:not(:last-child) .autocompleter-suggestionCategoryItem:last-child{border-bottom:1px solid #eee}.v1 .autocompleter-suggestionCategoryItem{cursor:pointer}.v1 .autocompleter-suggestionCategoryItem:hover{background:#eee}.v1 .autocompleter-suggestionCategoryItem.active{color:#fff;background:#006be6}.v1 .autocompleter-suggestionCategoryItem.active:hover{background:#609ee5}.v1 .autocompleter-suggestionCategoryItem--empty{text-align:center;font-style:italic;cursor:default}.v1 .autocompleter-selectionContainer>p{margin:15px 0 5px;padding:0}.v1 .autocompleter-selectionContainer>table{max-width:400px}.v1 .autocompleter-removeItemIcon{cursor:pointer;width:20px}.v1 .autocompleter-suggestionCategoryItem--error{color:#d63626;font-weight:700;background:rgba(214,54,38,.15)}.v1 .autocompleter-suggestionCategoryItem--error>img{width:25px;vertical-align:middle}.v1 .error input{border:1px solid #d63626}.v1 .autocompleter-textfield{max-width:inherit}.v1 .location{position:relative;width:100%;height:500px}.v1 .location-map{width:100%;height:100%}.v1 .location-tutorial{position:absolute;z-index:2000;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.4)}.v1 .location-tutorial:before{display:inline-block;content:"";height:100%;vertical-align:middle}.v1 .location-tutorialWrapper{width:99%;display:inline-block;vertical-align:middle;text-align:center;color:#fff}.v1 .location-tutorialTitle{margin:0;padding:0;text-transform:uppercase;font-size:1.5rem}.v1 .location-tutorialDescription{margin:10px 0;padding:0}.v1 .location-tutorialDescription,.v1 .location-tutorialTitle{padding:4px 20px;display:inline-block;text-shadow:1px 1px 5px #000;background:rgba(0,83,179,.3)}.v1 .location-tutorialButton{margin:40px 0 0;padding:0}.v1 .autocompleter-suggestionContainer{margin-top:0}.v1 .tableFilter[data-v-cdbe4124]{display:none;z-index:10;min-width:200px;position:absolute;top:50px;padding:10px 20px;background:#fff;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;-webkit-box-shadow:0 0 10px 0 rgba(0,0,0,.2);box-shadow:0 0 10px 0 rgba(0,0,0,.2);text-transform:none;color:#26353f;font-weight:400}.v1 .tableFilter.active[data-v-cdbe4124]{display:block}.v1 .tableFilter ul[data-v-cdbe4124]{margin:0;padding:0;list-style:none}.v1 .tableFilter footer[data-v-cdbe4124]{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin:10px 0 0}.v1 .tableFilter label[data-v-cdbe4124]{display:inline;cursor:pointer}.v1 .table-col--checkbox{width:50px}.v1 span.secondary{font-style:italic;color:#53657d}.v1 .townList-search{margin-top:20px}img{cursor:pointer}.planFundingRow--disabled img{display:none}.v1 .table .planFunding-addRow{text-align:center;cursor:pointer;background-color:#0053b3;color:#fff}.v1 .table .planFunding-addRow:hover{background:#003b80}.v1 .table .planFunding-addRow--disabled,.v1 .table .planFunding-addRow--disabled:hover{cursor:default;background-color:rgba(0,83,179,.3)}.v1 .planFunding-header{font-size:1.5rem;font-weight:700;margin-bottom:10px}.v1 .planFunding-yearSwitch{color:#0053b3;cursor:pointer;line-height:30px}.v1 .planFunding-yearSwitch--disabled{color:#8393a7}.v1 .planFunding-type{min-width:200px}.v1 .planFunding-amount{min-width:150px}.v1 .planFunding-details{width:99%}.v1 .table thead th[data-v-0c9f54ed]:not(:first-of-type){text-align:center}.v1 .table tbody th[data-v-0c9f54ed]{font-weight:700}.v1 .table tbody th>span[data-v-0c9f54ed]{font-weight:400}.v1 .table[data-v-0c9f54ed]{max-width:40rem}.v1 .table th[data-v-0c9f54ed]:first-of-type{width:21rem}.v1 .table[data-v-0c9f54ed]:not(:first-of-type){margin-top:2rem}.v1 .etp-type{margin-right:20px;font-weight:700}.v1 .etp-total{max-width:70px}.v1 .etp-total:after{display:block;content:"ETP";color:red}.v1 .etp-removeButton{cursor:pointer;visibility:hidden;margin-left:20px;color:#0053b3}.v1 .etp-row:hover .etp-removeButton{visibility:visible}.v1 .etp-addButton{cursor:pointer;color:#0053b3;font-weight:700}.v1 .input--password,.v1 .input--text,.v1 .input--textarea{max-width:500px}.v1 .input--password-toggler{padding-left:10px;cursor:pointer}.v1 .input--number{max-width:350px}.v1 .input--date,.v1 .vdp-datepicker input{max-width:220px;padding-left:45px}.v1 .form__group .vdp-datepicker__calendar{z-index:5000}.v1 .vdp-datepicker__calendar-button{position:absolute;z-index:1000;height:100%;width:20px;font-size:0;margin-left:10px;background:#adb9c9;-webkit-mask:url(/img/calendar.svg) no-repeat center;mask:url(/img/calendar.svg) no-repeat center}.v1 .vdp-datepicker__clear-button{position:absolute;height:100%;margin-left:-45px;background:url(/img/remove.svg) no-repeat 50%;-webkit-background-size:40% 40%;background-size:40%;width:50px;text-align:center;font-size:0}.v1 input:disabled+.vdp-datepicker__clear-button{display:none}.v1 .input-label{font-weight:700}.v1 .input-description{margin:0 0 12px;padding:0;font-style:italic}.v1 .input-mandatory{font-weight:700;color:#d63626}.v1 .inputContainer.error .input-label{color:#d63626}.v1 .inputContainer.error .input{border:1px solid #d63626}.v1 .input--checkbox,.v1 .input--radio{display:inline-block;margin:8px 0 0;padding:0;list-style:none}.v1 .input--checkbox-option>label,.v1 .input--radio-option>label{display:block;margin-bottom:8px;padding:5px 10px;border:1px solid #c9d3df;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;background:#fff;color:#0053b3;font-weight:700}.note[data-v-569f8548],.v1 .slideNote[data-v-569f8548]{padding:15px 25px;-webkit-box-shadow:0 0 5px 0 rgba(0,0,0,.3);box-shadow:0 0 5px 0 rgba(0,0,0,.3);background:#fff0e4}.note-header[data-v-569f8548],.v1 .slideNote-header[data-v-569f8548]{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}.note-title[data-v-569f8548],.v1 .slideNote-title[data-v-569f8548]{margin:0;padding:0;font-size:1.2rem}.note-body[data-v-569f8548],.v1 .slideNote-body[data-v-569f8548]{margin:0;padding:0 0 0 30px;text-align:center}.note-body>h1[data-v-569f8548],.v1 .slideNote-body>h1[data-v-569f8548]{font-size:1rem;color:#16919f}.v1 .slideNote-title>img[data-v-569f8548],.v1 .slideNote-title>svg[data-v-569f8548]{margin-right:5px;color:#0053b3}.v1 .slideNote-toggle[data-v-569f8548]{cursor:pointer;color:#0053b3}.v1 .slideNote-body[data-v-569f8548]{text-align:left;-moz-transition:max-height .3s ease-out;transition:max-height .3s ease-out;-webkit-transition:max-height .3s ease-out;overflow-y:auto}.v1 .form{background:#ebeff3}.v1 .form-header{height:80px;line-height:80px;background:#fff;-webkit-box-shadow:0 10px 5px -5px rgba(0,0,0,.1);box-shadow:0 10px 5px -5px rgba(0,0,0,.1)}.v1 .form-titleGroup{margin:0 0 30px}.v1 .form-title{display:inline-block;margin:0 0 5px;padding:0;font-size:1.5rem;letter-spacing:.05em;font-family:Evolventa}.v1 .form-description{margin:0;padding:0;text-align:center}.v1 .form-breadcrumb{display:-webkit-flex;display:-moz-box;display:flex;display:-webkit-box;display:-ms-flexbox;-webkit-flex-direction:row;-moz-box-orient:horizontal;-moz-box-direction:normal;flex-direction:row;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;-webkit-box-pack:center;-ms-flex-pack:center;margin:60px 100px 100px;padding:0;list-style:none}.v1 .form-breadcrumbItem>a{display:block;cursor:default;width:50px;height:50px;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;background:#eee;text-align:center}.v1 .form-breadcrumbItem>a:before{content:"";display:inline-block;vertical-align:middle;height:100%}.v1 .form-breadcrumbItem>a>span{display:inline-block;vertical-align:middle;width:42px;height:42px;line-height:42px;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;color:#ccc;background:#eee;text-decoration:none;font-weight:700;font-size:1.4rem}.v1 .form-breadcrumbItem>p{position:absolute;margin:8px 0 0 -50px;width:150px;text-align:center;text-transform:uppercase;font-size:.8em;letter-spacing:.05em;font-family:Evolventa;color:#999}.v1 .form-breadcrumbItem--current>a>span{color:#fff;background:#006be6}.v1 .form-breadcrumbItem--current>p{color:#006be6}.v1 .form-breadcrumbItem--done>a>span{color:#fff;background:#9dd33f}.v1 .form-breadcrumbItem--done>p{color:#444}.v1 .form-breadcrumbSeparator{-webkit-flex-grow:1;-moz-box-flex:1;flex-grow:1;-webkit-box-flex:1;-ms-flex-positive:1;margin:0 -4px;line-height:47.5px}.v1 .form-breadcrumbSeparator:before{content:"";display:inline-block;vertical-align:middle;width:100%;height:5px;background:#eee}.v1 .form-stepNav{margin:30px 0 10px;text-align:right}.v1 .form-body{padding:50px 0}.v1 .form-body .slideNote{margin-bottom:50px}.v1 .formSection{margin-bottom:85px}.v1 .formSection-header{margin-bottom:10px}.v1 .formSection-title{margin:0;padding:0;font-size:1.5rem;font-family:Evolventa}.v1 .formSection-icon{position:absolute;margin-left:-45px;background:#000;color:#fff;width:30px;height:30px;text-align:center;line-height:30px;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;font-size:1rem}.v1 .formSection-description{margin:0;padding:0}.v1 .notification.error{color:#d63626}.v1 .notification.error ul{margin:0 0 0 20px;padding:0}.v1 .notification.error p{margin:10px 0;padding:0}.v1 .notification.error>span{font-weight:700}.v1 .signin{max-width:1080px;margin-left:auto;margin-right:auto}.contact .autocompleter-textfield input{border-width:2px;--border-opacity:1;border-color:#f0f0f0;border-color:rgba(240,240,240,var(--border-opacity));-webkit-border-radius:.375rem;-moz-border-radius:.375rem;border-radius:.375rem;padding-top:.5rem;padding-bottom:.5rem;outline:0}.contact .autocompleter-textfield input:focus{--border-opacity:1;border-color:#000091;border-color:rgba(0,0,145,var(--border-opacity))}.v1 .filterGroup{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;padding:20px 0;border-color:#13213f;border-style:solid;border-width:0 0 1px}.v1 .filterGroup>aside{padding:0 15px}.v1 .filterGroup>aside>img,.v1 .filterGroup>aside>svg{width:0;height:0}.v1 .filterGroup>main>h1{margin:0 0 10px;padding:0;font-size:.7em;font-weight:400;text-transform:uppercase;color:#8393a7;letter-spacing:.05em;cursor:pointer}.v1 .filterGroup>main label.label-inline{color:#fff;font-size:.95em}.v1 .filterGroup>main input[type=checkbox]{width:17px;height:17px;background-color:#fff}.v1 .filterGroup>main input[type=checkbox]:checked:before{top:1px;left:0;background:url('data:image/svg+xml;utf8,') 50% no-repeat}@media(min-width:1150px){.v1 .filterGroup>aside>img,.v1 .filterGroup>aside>svg.svg-inline--fa.fa-w-11{width:25px;height:25px;color:#adb9c9}}.v1 .autocomplete[data-v-6b423108]{position:absolute;z-index:1005;width:100%;background:#fff;border:1px solid #adb9c9;overflow:hidden;color:#182b51}.v1 .autocomplete-result[data-v-6b423108]{padding:0 15px;margin:0;cursor:pointer;line-height:40px}.v1 .autocomplete-result.active[data-v-6b423108]{background:#f4f8fc}.v1 .autocomplete-result[data-v-6b423108]:hover{background:#ccc}.v1 .autocomplete-result.active[data-v-6b423108]:hover{color:#fff;background:#006be6}#map[data-v-055bfb64]{width:100%;height:500px}.v1 .shadow[data-v-12c43bda]{visibility:hidden;z-index:6000;position:fixed;top:0;right:0;width:100%;height:100%;background:rgba(0,0,0,.3);opacity:0;-moz-transition:opacity .4s linear;transition:opacity .4s linear;-webkit-transition:opacity .4s linear}.v1 .quickview[data-v-12c43bda]{z-index:7000;position:fixed;top:71px;bottom:0;right:-300px;width:300px;color:#182b51;-moz-transition:right .4s ease-in-out;transition:right .4s ease-in-out;-webkit-transition:right .4s ease-in-out;background:#fff;border-left:1px solid #c9d3df}.v1 .quickview .quickview-header[data-v-12c43bda]{padding:15px 0;background:#f4f8fc}.v1 .quickview .quickview-header .quickview-title[data-v-12c43bda]{margin:0;font-weight:400;font-size:1.3rem;letter-spacing:.05em}.v1 .quickview .quickview-header .quickview-title>a[data-v-12c43bda]{color:#182b51;text-decoration:none}.v1 .quickview .quickview-header .quickview-title>a[data-v-12c43bda]:hover{text-decoration:underline}.v1 .quickview .quickview-header .quickview-name[data-v-12c43bda],.v1 .quickview .quickview-header .quickview-subtitle[data-v-12c43bda],.v1 .quickview .quickview-header .quickview-time[data-v-12c43bda]{margin:0;font-weight:400;font-size:.8rem;letter-spacing:.05em}.v1 .quickview .quickview-header .quickview-time[data-v-12c43bda]{margin-top:1rem;font-size:.7rem}.v1 .quickview .quickview-header .quickview-name[data-v-12c43bda]{margin-top:1rem;font-weight:400;font-size:1em}.v1 .quickview .quickview-header .quickview-name[data-v-12c43bda],.v1 .quickview .quickview-header .quickview-subtitle[data-v-12c43bda],.v1 .quickview .quickview-header .quickview-time[data-v-12c43bda],.v1 .quickview .quickview-header .quickview-title[data-v-12c43bda]{padding:0 25px}.v1 .quickview .quickview-header .quickview-actions[data-v-12c43bda]{margin-bottom:10px;padding-bottom:15px;padding-right:15px;text-align:right;border-bottom:1px solid #e1e4e8}.v1 .quickview .quickview-header .quickview-actions .icon[data-v-12c43bda]{width:20px;height:20px;color:#182b51;vertical-align:middle}.v1 .quickview section[data-v-12c43bda]{margin:0;padding:30px 25px;border-top:1px solid #e1e4e8}.v1 .quickview section.even[data-v-12c43bda]{background:#f4f8fc}.v1 .quickview section>header[data-v-12c43bda]{padding-bottom:15px}.v1 .quickview section>header>h1[data-v-12c43bda]{margin:0;padding:0;font-size:1rem;font-weight:400;color:#006be6}.v1 .quickview section>table[data-v-12c43bda]{width:100%;margin:0;padding:0;vertical-align:middle;border-collapse:collapse}.v1 .quickview section>table tr[data-v-12c43bda]{height:30px}.v1 .quickview section>table th[data-v-12c43bda]{text-align:left;font-weight:400;text-transform:uppercase;font-size:.8em;color:#53657d}.v1 .quickview section>table td[data-v-12c43bda]{text-align:right}.v1 .quickview .quickview-footer[data-v-12c43bda]{position:absolute;bottom:0;padding:0 0 50px;width:100%;text-align:center}.v1 .active .shadow[data-v-12c43bda]{visibility:visible;opacity:1}.v1 .active .quickview[data-v-12c43bda]{right:0}.v1 .shadow[data-v-263a7bb8]{visibility:hidden;z-index:6000;position:fixed;top:0;right:0;width:100%;height:100%;background:rgba(0,0,0,.3);opacity:0;-moz-transition:opacity .4s linear;transition:opacity .4s linear;-webkit-transition:opacity .4s linear}.v1 .quickview[data-v-263a7bb8]{z-index:7000;position:fixed;top:71px;bottom:0;right:-300px;width:300px;color:#182b51;-moz-transition:right .4s ease-in-out;transition:right .4s ease-in-out;-webkit-transition:right .4s ease-in-out;background:#fff;border-left:1px solid #c9d3df}.v1 .quickview .quickview-header[data-v-263a7bb8]{padding:15px 0;background:#f4f8fc}.v1 .quickview .quickview-header .quickview-title[data-v-263a7bb8]{margin:0;font-weight:400;font-size:1.3rem;letter-spacing:.05em}.v1 .quickview .quickview-header .quickview-title>a[data-v-263a7bb8]{color:#182b51;text-decoration:none}.v1 .quickview .quickview-header .quickview-title>a[data-v-263a7bb8]:hover{text-decoration:underline}.v1 .quickview .quickview-header .quickview-name[data-v-263a7bb8],.v1 .quickview .quickview-header .quickview-subtitle[data-v-263a7bb8],.v1 .quickview .quickview-header .quickview-time[data-v-263a7bb8]{margin:0;font-weight:400;font-size:.8rem;letter-spacing:.05em}.v1 .active .shadow[data-v-263a7bb8]{visibility:visible;opacity:1}.v1 .active .quickview[data-v-263a7bb8]{right:0}.v1 .dashboard{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex}.v1 .dashboard .filters{z-index:5000;width:280px;color:#fff;background:#182b51;-webkit-box-shadow:-2px 9px 5px 5px rgba(0,0,0,.5);box-shadow:-2px 9px 5px 5px rgba(0,0,0,.5)}.v1 .dashboard .filters .autocomplete-result{padding-top:10px;padding-bottom:10px;white-space:normal;line-height:25px}.v1 .dashboard .filters .autocomplete-result span{padding-bottom:25px}.v1 .dashboard .content{position:relative;width:200px;-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1;overflow:auto}.v1 .dashboard .content .map{position:absolute;width:100%;height:100%}.v1 .dashboard .content .map #map{height:100%}.v1 .dashboard .content .map .search__group{z-index:1000;left:15px;top:11px;right:150px;position:absolute}.v1 .dashboard .content .table>thead th span{cursor:pointer}.v1 .dashboard .content .table>tbody tr{cursor:pointer}.v1 .dashboard .autocomplete-result{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.v1 .dashboard .autocomplete-result>span{font-weight:700}.v1 .page--dashboard .dashboard{padding:0}.cardGridTemplateColumns[data-v-73342ee7]{grid-template-columns:160px 208px 164px 200px auto}@media print{.cardGridTemplateColumns[data-v-73342ee7]{grid-template-columns:160px 208px 164px 200px 236px}}.customAlign[data-v-73342ee7]{height:30px}@media print{.preventPrintBreak[data-v-73342ee7]{-webkit-column-break-inside:avoid;break-inside:avoid;page-break-inside:avoid}}.searchbox[data-v-6c3fad6c]{max-width:500px}.menuWidth[data-v-defa5cd8]{min-width:220px}.menuWidth[data-v-80dfc67a]{min-width:190px}.toggle-enter-active[data-v-640d947d],.toggle-leave-active[data-v-640d947d]{-webkit-transition:all .3s;-moz-transition:all .3s;transition:all .3s;max-height:500px}.toggle-enter[data-v-640d947d],.toggle-leave-to[data-v-640d947d]{opacity:0;max-height:0}.stickyColumn[data-v-3c84c0c2]{top:32px}.townPanelShadow[data-v-76d7e233]{-webkit-box-shadow:0 0 20px 0 rgba(0,0,0,.1),0 0 0 0 rgba(0,0,0,.06);box-shadow:0 0 20px 0 rgba(0,0,0,.1),0 0 0 0 rgba(0,0,0,.06);-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.leftColumnWidth[data-v-76d7e233]{min-width:300px;max-width:300px;padding-right:2.5rem}.stickyColumn[data-v-54e4861e]{top:32px}.townDetailsPanelShadow[data-v-1d97ba82]{-webkit-box-shadow:0 0 20px 0 rgba(0,0,0,.1),0 0 0 0 rgba(0,0,0,.06);box-shadow:0 0 20px 0 rgba(0,0,0,.1),0 0 0 0 rgba(0,0,0,.06);-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.customShadow[data-v-14c846be]{-webkit-box-shadow:0 0 20px 0 rgba(255,194,158,.3),0 0 0 0 rgba(0,0,0,.06);box-shadow:0 0 20px 0 rgba(255,194,158,.3),0 0 0 0 rgba(0,0,0,.06)}.changelogContent{margin-left:22px}.modalContainer{z-index:1000}.scrollableContainer{max-height:60vh;max-width:800px;overflow-y:auto}.modalWrapper[data-v-2c8fb903]{min-height:50vh;max-height:70vh;max-width:800px;overflow-y:auto}.leftColumnWidth[data-v-40e0e3b1]{min-width:300px;max-width:300px;padding-right:2.5rem}.v1 .form__group>label[data-v-dd1c1884]{font-weight:700}.v1 .form__group .error[data-v-dd1c1884]{color:#d63626}.v1 .alert-close[data-v-70f3cb96]{position:absolute;right:15px;top:15px;width:30px}.v1 .alert-close-wrapper[data-v-70f3cb96]{position:fixed;display:inline-block;cursor:pointer;width:30px;height:30px;background:#182b51;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;text-align:center}.v1 .alert-close-wrapper>img[data-v-70f3cb96]{margin-top:4px;width:20px;height:20px}.v1 table.vgt-table tr.userList-row--highlight{background:#fff0e4}.v1 .user-statusIcon,.v1 .user-validateIcon{color:#006be6}.v1 .user-validateIcon{font-size:16px;cursor:pointer}.v1 .user-statusIcon--flag{color:#ff9947}.v1 .userList-header{text-align:right;margin-bottom:20px}.v1 .userList-header>.button{margin-left:15px}.v1 .userList-header>a{vertical-align:middle}.v1 .userList-row--firstName,.v1 .userList-row--lastName{font-weight:700}.v1 .userList-column--role{text-align:center}.v1 label.inline[data-v-17835908]{display:inline-block}.userPermissions-sectionTitle{margin:0;padding:20px 0 3px;font-size:15px}.userOptionsList,.userPermissionsList{margin:0;padding:0;list-style:none}.userPermissionsList-item{font-style:italic}.userPermissionsList-item em{font-style:inherit;text-decoration:underline}.userPermissionsList-item--subsection{margin-top:20px;font-style:normal}.userPermissionsList-item--subsection:first-child{margin-top:0}.userPermissionsList-item:before{position:absolute;margin-top:3px;margin-left:-22px;width:15px;height:15px;content:"";background-position:50%;background-repeat:no-repeat;-webkit-background-size:contain;background-size:contain}.userPermissionsList-item--view:before{background-color:#00b84a;-webkit-mask:url(/img/permissions/view.svg) no-repeat center;mask:url(/img/permissions/view.svg) no-repeat center}.userPermissionsList-item--edit:before{background-color:#00b84a;-webkit-mask:url(/img/permissions/edit.svg) no-repeat center;mask:url(/img/permissions/edit.svg) no-repeat center}.userPermissionsList-item--deny:before{background-color:#e05656;-webkit-mask:url(/img/permissions/deny.svg) no-repeat center;mask:url(/img/permissions/deny.svg) no-repeat center}.userPermissionsList-comments{font-style:italic}.v1 .email{text-decoration:underline}.v1 .container--userValidation{text-align:center}.v1 .userValidation{display:-webkit-inline-flex;display:-moz-inline-box;display:inline-flex;display:-webkit-inline-box;display:-ms-inline-flexbox;-webkit-flex-direction:column;-moz-box-orient:vertical;flex-direction:column;-webkit-box-orient:vertical;-ms-flex-direction:column;text-align:left}.v1 .userValidation,.v1 .userValidation-main{-moz-box-direction:normal;-webkit-box-direction:normal}.v1 .userValidation-main{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;display:-ms-flexbox;-webkit-flex-direction:row;-moz-box-orient:horizontal;flex-direction:row;-webkit-box-orient:horizontal;-ms-flex-direction:row;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;-webkit-box-pack:center;-ms-flex-pack:center}.v1 .userInfo{width:345px;margin-right:60px;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;background:#ebeff3;font-size:16px}.v1 .userInfo-section{padding:20px 30px;border-bottom:1px solid #adb9c9}.v1 .userInfo-section h1,.v1 .userInfo-section h2,.v1 .userInfo-section h3{margin:0;padding:0}.v1 .userInfo-section h1{font-size:22px}.v1 .userInfo-section h3{margin-top:5px;font-size:12px;font-weight:400;text-transform:uppercase}.v1 .userInfo-section h2{font-size:16px}.v1 .userInfo-section p{margin:15px 0}.v1 .userInfo-section p.userHistory-item{margin:0 0 5px}.v1 .userHistory-item .user-statusIcon{margin-right:6px}.v1 .userInfo-section:first-of-type{padding-top:45px}.v1 .userInfo-section:last-of-type{padding-bottom:45px;border-bottom:none}.v1 .userPermissions{max-width:650px;font-size:16px}.v1 .userPermissions p{margin:0;padding:0}.v1 .userPermissions-header{margin-bottom:20px}.v1 .userPermissions-header h1,.v1 .userPermissions-header h2{margin:0;padding:0}.v1 .userPermissions-header h1{font-size:20px;margin-bottom:5px}.v1 .userPermissions-header h2{display:inline;padding:2px 20px;font-size:25px}.v1 .userValidation-error{margin:25px 0 0}.v1 .userValidationFooter{margin-top:20px;text-align:right}.v1 .userValidationFooter>p{display:inline-block;vertical-align:top}.v1 .userValidationFooter>p.userValidationFooter-deny,.v1 .userValidationFooter>p.userValidationFooter-remove{line-height:30px}.v1 .userValidationFooter>p.userValidationFooter-deny>span,.v1 .userValidationFooter>p.userValidationFooter-remove>span{text-decoration:none;font-weight:700;color:#0053b3;cursor:pointer}.v1 .userValidationFooter>p.userValidationFooter-allow{width:250px}.v1 .userValidationFooter>p.userValidationFooter-allow>.button{margin-bottom:10px}.v1 .userValidationFooter>p.userValidationFooter-allow>span{color:#707070;font-weight:700}.v1 .plansList-body[data-v-ca8ce470]{margin-top:50px}.v1 .plansList-geoFilter[data-v-ca8ce470]{margin-bottom:20px;width:400px}.v1 .container[data-v-23a8c2ae]{padding-top:60px}.v1 .slideNote[data-v-23a8c2ae]{margin-bottom:60px}.v1 .team-prefixTitle[data-v-23a8c2ae]{width:100px}.v1 .team-prefix[data-v-23a8c2ae]{padding:5px 5px 5px 0;text-align:right;vertical-align:top}.v1 .team-labelTitle[data-v-23a8c2ae]{padding-top:10px;vertical-align:top;text-align:center;font-weight:700;color:#16919f;width:250px}.v1 .team-label[data-v-23a8c2ae]{padding:5px 0;text-align:left}.v1 .team-label>span[data-v-23a8c2ae]{font-weight:400}.v1 .team-figuresTitle[data-v-23a8c2ae]{padding:10px 0 15px 15px}.v1 .team-figuresCol[data-v-23a8c2ae]{padding-right:20px;padding-bottom:5px;width:100px;text-align:right}.v1 .team-figures[data-v-23a8c2ae]{padding-right:20px;text-align:right}.v1 .input--date[data-v-23a8c2ae]{display:inline-block;padding-left:0}.v1 .dataSection-audienceDates[data-v-23a8c2ae]{margin-bottom:20px}.v1 .dataSection-audienceDates p[data-v-23a8c2ae]{margin:0;padding:0}.v1 .dataSection-audienceDates>div[data-v-23a8c2ae]{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.v1 .dataSection-audienceDates>div>p>span[data-v-23a8c2ae]{padding:0 10px;color:#adb9c9}.v1 .dataSection-audienceFormat[data-v-23a8c2ae]{font-size:1.5rem;color:#adb9c9}.v1 .dataSection-audienceFormat>svg[data-v-23a8c2ae]{cursor:pointer;margin-left:10px}.v1 .dataSection-audienceFormat .active[data-v-23a8c2ae]{color:#0053b3}.v1 .dataSection-audienceFormat>svg[data-v-23a8c2ae]:hover:not(.active){color:rgba(0,83,179,.4)}.v1 .block.block--dark[data-v-23a8c2ae]{font-size:1.75rem;margin-right:10px;margin-bottom:5px}.v1 .block.block--dark>span[data-v-23a8c2ae]{font-size:1rem}.v1 .dataSection-audience[data-v-23a8c2ae]{-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1}.v1 .dataSection-audience>p[data-v-23a8c2ae]:not(.divider){margin:0;padding:0}.v1 #input-goals{height:250px}.v1 .organization-body>h1[data-v-eb1c327e]{margin:0;padding:0;font-size:.9rem;font-weight:700}.v1 .organization-body>p[data-v-eb1c327e]{margin:0 0 15px 0;padding:0;font-size:1rem}.v1 .organization-body .primary[data-v-eb1c327e]{color:#0e9faa}.v1 .organization-users[data-v-eb1c327e]{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin-top:10px}.v1 .organization-users .userCard[data-v-eb1c327e]{width:48%;margin-bottom:25px}.v1 .directory-search{max-width:500px;margin-bottom:20px}.v1 .directoryColumn-role{white-space:nowrap}.v1 .directory-figures{margin:0;font-weight:700}.v1 .rb-table.directory{min-height:auto}.v1 .table .table-col--contacts{text-align:right}.v1 .table .table-col--contacts img,.v1 .table .table-col--contacts svg{color:#0053b3;margin-left:5px;vertical-align:middle}.v1 .popin-icon[data-v-38509d0a]{color:#d63626}.v1 .comment[data-v-38509d0a]{padding:30px}.v1 textarea[data-v-38509d0a]{min-height:100px}.v1 .commentDeletionButtons[data-v-38509d0a]{margin-top:30px;text-align:right}.v1 h3{margin:0;font-size:2rem}.v1 .userActivity-rule{margin:20px 0 30px;width:75%}.v1 .userActivity-rule .slideNote-body>h1{margin-top:10px}.v1 .userActivity .table td{vertical-align:top}.v1 .userActivity .table-col--date{width:120px}.v1 .userActivity .table-col--author{width:250px}.v1 .userActivity .changelog{padding-top:7px;margin:0 0 7px;border-top:1px dotted #8393a7}.v1 .userActivity .changelog:first-of-type{margin-top:7px}.v1 .userActivity-action{display:inline-block;font-weight:700;width:100%}.v1 .userActivity-action img,.v1 .userActivity-action svg{margin-right:5px;color:#8393a7}.v1 .userActivity-content{padding-top:7px;margin-top:7px;border-top:1px dotted #8393a7}.v1 .userActivity-remove{margin-top:10px;text-align:right;visibility:hidden;font-weight:700}.v1 .userActivity-remove span.link{color:#d63626}.v1 .userActivity .table td:hover .userActivity-remove{visibility:visible}.v1 .switch{margin-top:50px}.v1 .headerWithPdfLinks{text-align:right;margin-bottom:20px}.v1 .headerWithPdfLinks>.button{margin-left:15px}.v1 .headerWithPdfLinks>a{vertical-align:middle}.description p{margin-top:1rem} \ No newline at end of file +/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:rgba(0,0,0,0)}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;-moz-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}button{background-color:rgba(0,0,0,0);background-image:none}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}fieldset,ol,ul{margin:0;padding:0}ol,ul{list-style:none}html{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}*,:after,:before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;border-width:0;border-style:solid;border-color:#e2e8f0}hr{border-top-width:1px}img{border-style:solid}textarea{resize:vertical}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#a0aec0}input::-moz-placeholder,textarea::-moz-placeholder{color:#a0aec0}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#a0aec0}input::-ms-input-placeholder,textarea::-ms-input-placeholder{color:#a0aec0}input::placeholder,textarea::placeholder{color:#a0aec0}[role=button],button{cursor:pointer}table{border-collapse:collapse}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}button,input,optgroup,select,textarea{padding:0;line-height:inherit;color:inherit}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}body{font-size:1rem;line-height:1.5em;font-family:Marianne,arial,sans-serif;font-weight:400;--text-opacity:1;color:#383838;color:rgba(56,56,56,var(--text-opacity));overflow-y:scroll}@font-face{font-family:Marianne;font-weight:700;src:url(../fonts/Marianne-Bold.29cb4138.otf) format("opentype")}@font-face{font-family:Marianne;font-weight:400;src:url(../fonts/Marianne-Regular.e41d3f7e.otf) format("opentype")}@font-face{font-family:Marianne;font-weight:300;src:url(../fonts/Marianne-Light.5838fc59.otf) format("opentype")}.text-display-xl{font-size:3rem}.text-display-lg,.text-display-xl{line-height:1.25em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.text-display-lg{font-size:2rem}.text-display-md{font-size:1.5rem;line-height:1.25em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.text-display-sm{font-size:1.25rem}.text-display-sm,.text-display-xs{line-height:1.375em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.text-display-xs{font-size:1rem}.text-xl{font-size:1.5rem;line-height:1.5em}.text-lg{font-size:1.25rem;line-height:1.5em}.text-md{font-size:1rem;line-height:1.5em}.text-sm{font-size:.865rem;line-height:1.5em}.text-xs{font-size:.75rem;line-height:1em;font-weight:300}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.bg-black{--bg-opacity:1;background-color:#1e1e1e;background-color:rgba(30,30,30,var(--bg-opacity))}.bg-white{--bg-opacity:1;background-color:#fff;background-color:rgba(255,255,255,var(--bg-opacity))}.bg-gray-100{--bg-opacity:1;background-color:#f7fafc;background-color:rgba(247,250,252,var(--bg-opacity))}.bg-gray-200{--bg-opacity:1;background-color:#edf2f7;background-color:rgba(237,242,247,var(--bg-opacity))}.bg-gray-500{--bg-opacity:1;background-color:#a0aec0;background-color:rgba(160,174,192,var(--bg-opacity))}.bg-yellow-200{--bg-opacity:1;background-color:#fefcbf;background-color:rgba(254,252,191,var(--bg-opacity))}.bg-yellow-400{--bg-opacity:1;background-color:#f6e05e;background-color:rgba(246,224,94,var(--bg-opacity))}.bg-primary{--bg-opacity:1;background-color:#000091;background-color:rgba(0,0,145,var(--bg-opacity))}.bg-blue200{--bg-opacity:1;background-color:#e5e5f4;background-color:rgba(229,229,244,var(--bg-opacity))}.bg-blue100{--bg-opacity:1;background-color:#f2f2f9;background-color:rgba(242,242,249,var(--bg-opacity))}.bg-secondary{--bg-opacity:1;background-color:#ff6f4c;background-color:rgba(255,111,76,var(--bg-opacity))}.bg-orange300{--bg-opacity:1;background-color:#ffdbd2;background-color:rgba(255,219,210,var(--bg-opacity))}.bg-orange200{--bg-opacity:1;background-color:#fff0ed;background-color:rgba(255,240,237,var(--bg-opacity))}.bg-tertiary{--bg-opacity:1;background-color:#00ac8c;background-color:rgba(0,172,140,var(--bg-opacity))}.bg-red600{--bg-opacity:1;background-color:#e1000f;background-color:rgba(225,0,15,var(--bg-opacity))}.bg-red300{--bg-opacity:1;background-color:#f7bfc3;background-color:rgba(247,191,195,var(--bg-opacity))}.bg-red200{--bg-opacity:1;background-color:#fce5e7;background-color:rgba(252,229,231,var(--bg-opacity))}.bg-error{--bg-opacity:1;background-color:#b60000;background-color:rgba(182,0,0,var(--bg-opacity))}.bg-G200{--bg-opacity:1;background-color:#f0f0f0;background-color:rgba(240,240,240,var(--bg-opacity))}.bg-G100{--bg-opacity:1;background-color:#f8f8f8;background-color:rgba(248,248,248,var(--bg-opacity))}.bg-corail{--bg-opacity:1;background-color:#ff6f4c;background-color:rgba(255,111,76,var(--bg-opacity))}.hover\:bg-gray-100:hover{--bg-opacity:1;background-color:#f7fafc;background-color:rgba(247,250,252,var(--bg-opacity))}.hover\:bg-primary:hover{--bg-opacity:1;background-color:#000091;background-color:rgba(0,0,145,var(--bg-opacity))}.hover\:bg-blue200:hover{--bg-opacity:1;background-color:#e5e5f4;background-color:rgba(229,229,244,var(--bg-opacity))}.hover\:bg-secondary:hover{--bg-opacity:1;background-color:#ff6f4c;background-color:rgba(255,111,76,var(--bg-opacity))}.hover\:bg-G200:hover{--bg-opacity:1;background-color:#f0f0f0;background-color:rgba(240,240,240,var(--bg-opacity))}.hover\:bg-G100:hover{--bg-opacity:1;background-color:#f8f8f8;background-color:rgba(248,248,248,var(--bg-opacity))}.hover\:bg-primaryDark:hover{--bg-opacity:1;background-color:#00006c;background-color:rgba(0,0,108,var(--bg-opacity))}.hover\:bg-secondaryDark:hover{--bg-opacity:1;background-color:#fe542a;background-color:rgba(254,84,42,var(--bg-opacity))}.hover\:bg-tertiaryDark:hover{--bg-opacity:1;background-color:#008068;background-color:rgba(0,128,104,var(--bg-opacity))}.border-transparent{border-color:rgba(0,0,0,0)}.border-black{--border-opacity:1;border-color:#1e1e1e;border-color:rgba(30,30,30,var(--border-opacity))}.border-gray-200{--border-opacity:1;border-color:#edf2f7;border-color:rgba(237,242,247,var(--border-opacity))}.border-primary{--border-opacity:1;border-color:#000091;border-color:rgba(0,0,145,var(--border-opacity))}.border-blue200{--border-opacity:1;border-color:#e5e5f4;border-color:rgba(229,229,244,var(--border-opacity))}.border-secondary{--border-opacity:1;border-color:#ff6f4c;border-color:rgba(255,111,76,var(--border-opacity))}.border-tertiary{--border-opacity:1;border-color:#00ac8c;border-color:rgba(0,172,140,var(--border-opacity))}.border-error{--border-opacity:1;border-color:#b60000;border-color:rgba(182,0,0,var(--border-opacity))}.border-G400{--border-opacity:1;border-color:#cecece;border-color:rgba(206,206,206,var(--border-opacity))}.border-G200{--border-opacity:1;border-color:#f0f0f0;border-color:rgba(240,240,240,var(--border-opacity))}.border-G100{--border-opacity:1;border-color:#f8f8f8;border-color:rgba(248,248,248,var(--border-opacity))}.hover\:border-blue600:hover{--border-opacity:1;border-color:#000091;border-color:rgba(0,0,145,var(--border-opacity))}.hover\:border-inputHover:hover{--border-opacity:1;border-color:#d9d9e6;border-color:rgba(217,217,230,var(--border-opacity))}.hover\:border-tertiaryDark:hover{--border-opacity:1;border-color:#008068;border-color:rgba(0,128,104,var(--border-opacity))}.focus\:border-primary:focus{--border-opacity:1;border-color:#000091;border-color:rgba(0,0,145,var(--border-opacity))}.focus\:border-G400:focus{--border-opacity:1;border-color:#cecece;border-color:rgba(206,206,206,var(--border-opacity))}.rounded-sm{-webkit-border-radius:.125rem;-moz-border-radius:.125rem;border-radius:.125rem}.rounded{-webkit-border-radius:.25rem;-moz-border-radius:.25rem;border-radius:.25rem}.rounded-md{-webkit-border-radius:.375rem;-moz-border-radius:.375rem;border-radius:.375rem}.rounded-lg{-webkit-border-radius:.5rem;-moz-border-radius:.5rem;border-radius:.5rem}.rounded-full{-webkit-border-radius:9999px;-moz-border-radius:9999px;border-radius:9999px}.rounded-b-none{-webkit-border-bottom-right-radius:0;-moz-border-radius-bottomright:0;border-bottom-right-radius:0;-webkit-border-bottom-left-radius:0;-moz-border-radius-bottomleft:0;border-bottom-left-radius:0}.border-solid{border-style:solid}.border-2{border-width:2px}.border{border-width:1px}.border-r-2{border-right-width:2px}.border-b-2{border-bottom-width:2px}.border-l-4{border-left-width:4px}.border-t{border-top-width:1px}.border-r{border-right-width:1px}.border-b{border-bottom-width:1px}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.block{display:block}.inline-block{display:inline-block}.flex{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.inline-flex{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.flex-row{-webkit-box-direction:normal;-webkit-flex-direction:row;-moz-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.flex-row,.flex-row-reverse{-webkit-box-orient:horizontal;-moz-box-orient:horizontal}.flex-row-reverse{-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-moz-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.flex-col{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.flex-wrap{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.items-start{-webkit-box-align:start;-webkit-align-items:flex-start;-moz-box-align:start;-ms-flex-align:start;align-items:flex-start}.items-end{-webkit-box-align:end;-webkit-align-items:flex-end;-moz-box-align:end;-ms-flex-align:end;align-items:flex-end}.items-center{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}.items-baseline{-webkit-box-align:baseline;-webkit-align-items:baseline;-moz-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.justify-end{-webkit-box-pack:end;-webkit-justify-content:flex-end;-moz-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.justify-center{-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center}.justify-between{-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.flex-1{-webkit-box-flex:1;-webkit-flex:1 1 0%;-moz-box-flex:1;-ms-flex:1 1 0%;flex:1 1 0%}.flex-none{-webkit-box-flex:0;-webkit-flex:none;-moz-box-flex:0;-ms-flex:none;flex:none}.flex-grow{-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1}.flex-shrink-0{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.font-light{font-weight:300}.font-normal{font-weight:400}.font-bold{font-weight:700}.h-2{height:.5rem}.h-3{height:.75rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-16{height:4rem}.h-20{height:5rem}.h-24{height:6rem}.h-40{height:10rem}.h-64{height:16rem}.h-96{height:24rem}.h-128{height:32rem}.h-auto{height:auto}.h-px{height:1px}.h-full{height:100%}.leading-3{line-height:.75rem}.leading-6{line-height:1.5rem}.leading-none{line-height:1}.list-disc{list-style-type:disc}.m-2{margin:.5rem}.m-4{margin:1rem}.m-20{margin:5rem}.mx-1{margin-left:.25rem;margin-right:.25rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.my-4{margin-top:1rem;margin-bottom:1rem}.my-6{margin-top:1.5rem;margin-bottom:1.5rem}.my-8{margin-top:2rem;margin-bottom:2rem}.mx-8{margin-left:2rem;margin-right:2rem}.mx-auto{margin-left:auto;margin-right:auto}.-mx-4{margin-left:-1rem;margin-right:-1rem}.mr-0{margin-right:0}.mt-1{margin-top:.25rem}.mr-1{margin-right:.25rem}.mb-1{margin-bottom:.25rem}.ml-1{margin-left:.25rem}.mt-2{margin-top:.5rem}.mr-2{margin-right:.5rem}.mb-2{margin-bottom:.5rem}.ml-2{margin-left:.5rem}.mb-3{margin-bottom:.75rem}.mt-4{margin-top:1rem}.mr-4{margin-right:1rem}.mb-4{margin-bottom:1rem}.ml-4{margin-left:1rem}.mt-5{margin-top:1.25rem}.ml-5{margin-left:1.25rem}.mt-6{margin-top:1.5rem}.mr-6{margin-right:1.5rem}.mb-6{margin-bottom:1.5rem}.ml-6{margin-left:1.5rem}.mt-8{margin-top:2rem}.mr-8{margin-right:2rem}.mb-8{margin-bottom:2rem}.ml-8{margin-left:2rem}.mt-10{margin-top:2.5rem}.mb-10{margin-bottom:2.5rem}.ml-10{margin-left:2.5rem}.mt-12{margin-top:3rem}.mb-12{margin-bottom:3rem}.ml-12{margin-left:3rem}.mt-16{margin-top:4rem}.mb-16{margin-bottom:4rem}.ml-16{margin-left:4rem}.mt-20{margin-top:5rem}.mt-24{margin-top:6rem}.mt-32{margin-top:8rem}.mt-40{margin-top:10rem}.-mb-1{margin-bottom:-.25rem}.-ml-5{margin-left:-1.25rem}.-mt-6{margin-top:-1.5rem}.-mb-6{margin-bottom:-1.5rem}.-mt-8{margin-top:-2rem}.max-w-sm{max-width:24rem}.max-w-md{max-width:28rem}.max-w-xl{max-width:36rem}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-screen-sm{max-width:640px}.max-w-screen-md{max-width:768px}.max-w-screen-lg{max-width:1024px}.min-h-screen{min-height:100vh}.object-cover{-o-object-fit:cover;object-fit:cover}.object-center{-o-object-position:center;object-position:center}.object-top{-o-object-position:top;object-position:top}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.outline-none{outline:0}.focus\:outline-none:focus{outline:0}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.py-0{padding-top:0;padding-bottom:0}.py-1{padding-top:.25rem;padding-bottom:.25rem}.px-1{padding-left:.25rem;padding-right:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.px-3{padding-left:.75rem;padding-right:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.px-4{padding-left:1rem;padding-right:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.px-8{padding-left:2rem;padding-right:2rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-20{padding-top:5rem;padding-bottom:5rem}.pb-1{padding-bottom:.25rem}.pt-2{padding-top:.5rem}.pr-2{padding-right:.5rem}.pb-2{padding-bottom:.5rem}.pl-2{padding-left:.5rem}.pr-3{padding-right:.75rem}.pl-3{padding-left:.75rem}.pt-4{padding-top:1rem}.pr-4{padding-right:1rem}.pb-4{padding-bottom:1rem}.pt-6{padding-top:1.5rem}.pr-6{padding-right:1.5rem}.pl-6{padding-left:1.5rem}.pr-8{padding-right:2rem}.pb-8{padding-bottom:2rem}.pt-10{padding-top:2.5rem}.pr-10{padding-right:2.5rem}.pb-10{padding-bottom:2.5rem}.pl-10{padding-left:2.5rem}.pt-12{padding-top:3rem}.pr-12{padding-right:3rem}.pl-12{padding-left:3rem}.pb-16{padding-bottom:4rem}.pb-20{padding-bottom:5rem}.pb-32{padding-bottom:8rem}.pointer-events-none{pointer-events:none}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:-webkit-sticky;position:sticky}.inset-0{right:0;left:0}.inset-0,.inset-y-0{top:0;bottom:0}.top-0{top:0}.right-0{right:0}.bottom-0{bottom:0}.left-0{left:0}.resize{resize:both}.shadow-xs{-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.05);box-shadow:0 0 0 1px rgba(0,0,0,.05)}.shadow-sm{-webkit-box-shadow:0 1px 2px 0 rgba(0,0,0,.05);box-shadow:0 1px 2px 0 rgba(0,0,0,.05)}.shadow{-webkit-box-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px 0 rgba(0,0,0,.06);box-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px 0 rgba(0,0,0,.06)}.shadow-md{-webkit-box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}.shadow-lg{-webkit-box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)}.shadow-xl{-webkit-box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04)}.table-fixed{table-layout:fixed}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-black{--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.text-white{--text-opacity:1;color:#fff;color:rgba(255,255,255,var(--text-opacity))}.text-gray-500{--text-opacity:1;color:#a0aec0;color:rgba(160,174,192,var(--text-opacity))}.text-red{--text-opacity:1;color:#d63626;color:rgba(214,54,38,var(--text-opacity))}.text-green{color:#169b62}.text-primary{--text-opacity:1;color:#000091;color:rgba(0,0,145,var(--text-opacity))}.text-secondary{--text-opacity:1;color:#ff6f4c;color:rgba(255,111,76,var(--text-opacity))}.text-error{--text-opacity:1;color:#b60000;color:rgba(182,0,0,var(--text-opacity))}.text-G600{--text-opacity:1;color:#6a6a6a;color:rgba(106,106,106,var(--text-opacity))}.text-G400{--text-opacity:1;color:#cecece;color:rgba(206,206,206,var(--text-opacity))}.text-corail{--text-opacity:1;color:#ff6f4c;color:rgba(255,111,76,var(--text-opacity))}.hover\:text-white:hover{--text-opacity:1;color:#fff;color:rgba(255,255,255,var(--text-opacity))}.hover\:text-primary:hover{--text-opacity:1;color:#000091;color:rgba(0,0,145,var(--text-opacity))}.hover\:text-primaryDark:hover{--text-opacity:1;color:#00006c;color:rgba(0,0,108,var(--text-opacity))}.hover\:text-secondaryDark:hover{--text-opacity:1;color:#fe542a;color:rgba(254,84,42,var(--text-opacity))}.focus\:text-white:focus{--text-opacity:1;color:#fff;color:rgba(255,255,255,var(--text-opacity))}.italic{font-style:italic}.uppercase{text-transform:uppercase}.underline{text-decoration:underline}.line-through{text-decoration:line-through}.hover\:underline:hover{text-decoration:underline}.tracking-wide{letter-spacing:.025em}.align-top{vertical-align:top}.align-middle{vertical-align:middle}.visible{visibility:visible}.invisible{visibility:hidden}.whitespace-no-wrap{white-space:nowrap}.w-1{width:.25rem}.w-2{width:.5rem}.w-3{width:.75rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-8{width:2rem}.w-16{width:4rem}.w-24{width:6rem}.w-32{width:8rem}.w-48{width:12rem}.w-64{width:16rem}.w-96{width:24rem}.w-128{width:32rem}.w-1\/2{width:50%}.w-8\/12{width:66.666667%}.w-full{width:100%}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.z-50{z-index:50}.gap-0{grid-gap:0;gap:0}.gap-10{grid-gap:2.5rem;gap:2.5rem}.gap-16{grid-gap:4rem;gap:4rem}.gap-y-8{grid-row-gap:2rem;row-gap:2rem}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.transform{--transform-translate-x:0;--transform-translate-y:0;--transform-rotate:0;--transform-skew-x:0;--transform-skew-y:0;--transform-scale-x:1;--transform-scale-y:1;-webkit-transform:translateX(var(--transform-translate-x)) translateY(var(--transform-translate-y)) rotate(var(--transform-rotate)) skewX(var(--transform-skew-x)) skewY(var(--transform-skew-y)) scaleX(var(--transform-scale-x)) scaleY(var(--transform-scale-y));-moz-transform:translateX(var(--transform-translate-x)) translateY(var(--transform-translate-y)) rotate(var(--transform-rotate)) skewX(var(--transform-skew-x)) skewY(var(--transform-skew-y)) scaleX(var(--transform-scale-x)) scaleY(var(--transform-scale-y));-ms-transform:translateX(var(--transform-translate-x)) translateY(var(--transform-translate-y)) rotate(var(--transform-rotate)) skewX(var(--transform-skew-x)) skewY(var(--transform-skew-y)) scaleX(var(--transform-scale-x)) scaleY(var(--transform-scale-y));transform:translateX(var(--transform-translate-x)) translateY(var(--transform-translate-y)) rotate(var(--transform-rotate)) skewX(var(--transform-skew-x)) skewY(var(--transform-skew-y)) scaleX(var(--transform-scale-x)) scaleY(var(--transform-scale-y))}.origin-top-right{-webkit-transform-origin:top right;-moz-transform-origin:top right;-ms-transform-origin:top right;transform-origin:top right}.translate-x-0{--transform-translate-x:0}.translate-x-full{--transform-translate-x:100%}.transition{-webkit-transition-property:background-color,border-color,color,fill,stroke,opacity,-webkit-box-shadow,-webkit-transform;transition-property:background-color,border-color,color,fill,stroke,opacity,-webkit-box-shadow,-webkit-transform;-moz-transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform,-moz-transform;transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform;transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform,-webkit-box-shadow,-webkit-transform,-moz-transform}.ease-in-out{-webkit-transition-timing-function:cubic-bezier(.4,0,.2,1);-moz-transition-timing-function:cubic-bezier(.4,0,.2,1);transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{-webkit-transition-duration:.2s;-moz-transition-duration:.2s;transition-duration:.2s}.duration-300{-webkit-transition-duration:.3s;-moz-transition-duration:.3s;transition-duration:.3s}.duration-500{-webkit-transition-duration:.5s;-moz-transition-duration:.5s;transition-duration:.5s}@-webkit-keyframes spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@-moz-keyframes spin{to{-moz-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes spin{to{-webkit-transform:rotate(1turn);-moz-transform:rotate(1turn);transform:rotate(1turn)}}@-webkit-keyframes ping{75%,to{-webkit-transform:scale(2);transform:scale(2);opacity:0}}@-moz-keyframes ping{75%,to{-moz-transform:scale(2);transform:scale(2);opacity:0}}@keyframes ping{75%,to{-webkit-transform:scale(2);-moz-transform:scale(2);transform:scale(2);opacity:0}}@-webkit-keyframes pulse{50%{opacity:.5}}@-moz-keyframes pulse{50%{opacity:.5}}@keyframes pulse{50%{opacity:.5}}@-webkit-keyframes bounce{0%,to{-webkit-transform:translateY(-25%);transform:translateY(-25%);-webkit-animation-timing-function:cubic-bezier(.8,0,1,1);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{-webkit-transform:none;transform:none;-webkit-animation-timing-function:cubic-bezier(0,0,.2,1);animation-timing-function:cubic-bezier(0,0,.2,1)}}@-moz-keyframes bounce{0%,to{-moz-transform:translateY(-25%);transform:translateY(-25%);-moz-animation-timing-function:cubic-bezier(.8,0,1,1);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{-moz-transform:none;transform:none;-moz-animation-timing-function:cubic-bezier(0,0,.2,1);animation-timing-function:cubic-bezier(0,0,.2,1)}}@keyframes bounce{0%,to{-webkit-transform:translateY(-25%);-moz-transform:translateY(-25%);transform:translateY(-25%);-webkit-animation-timing-function:cubic-bezier(.8,0,1,1);-moz-animation-timing-function:cubic-bezier(.8,0,1,1);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{-webkit-transform:none;-moz-transform:none;transform:none;-webkit-animation-timing-function:cubic-bezier(0,0,.2,1);-moz-animation-timing-function:cubic-bezier(0,0,.2,1);animation-timing-function:cubic-bezier(0,0,.2,1)}}.link{--text-opacity:1;color:#000091;color:rgba(0,0,145,var(--text-opacity));text-decoration:underline}.fade-enter-active,.fade-leave-active{-webkit-transition:opacity .5s;-moz-transition:opacity .5s;transition:opacity .5s}.fade-enter,.fade-leave-to{opacity:0}@font-face{font-family:Source Sans Pro;src:url(../fonts/SourceSansPro-Regular.5e1d162e.otf);font-weight:400}@font-face{font-family:Source Sans Pro;src:url(../fonts/SourceSansPro-Bold.1a2a157b.otf);font-weight:800}@font-face{font-family:Source Sans Pro;src:url(../fonts/SourceSansPro-It.221e2885.otf);font-style:italic}@font-face{font-family:Evolventa;src:url(../fonts/Evolventa-Regular.2437b1f8.ttf);font-weight:400}@font-face{font-family:Evolventa;src:url(../fonts/Evolventa-Bold.18aff3ea.ttf);font-weight:800}:root{--blue:#0053b3;--light-blue:#006be6;--dark-blue:#003b80;--darker-blue:#00234d;--lighter-blue:#b4e1fa;--white:#fff;--lightest-grey:#fafbfc;--lighter-grey:#ebeff3;--light-grey:#c9d3df;--grey:#adb9c9;--dark-grey:#8393a7;--darker-grey:#53657d;--darkest-grey:#26353f;--black:#1c1c1c;--green:#03bd5b;--light-green:#daf5e7;--orange:#ff9947;--dark-orange:#cc5c00;--light-orange:#fff0e4;--red:#d63626;--dark-red:#ab2b1e;--light-red:rgba(239,172,166,0.45882);--mobile-min:400px;--mobile-max:549px;--phablet-min:550px;--phablet-max:749px;--tablet-min:750px;--tablet-max:999px;--desktop-min:1000px;--space-xxs:0.25em;--space-xs:0.5em;--space-s:1em;--space-m:1.5em;--space-l:2em;--space-xl:3em;--theme-primary:var(--blue);--theme-primary-light:var(--light-blue);--theme-primary-lighter:var(--lighter-blue);--theme-primary-dark:var(--dark-blue);--theme-primary-darker:var(--darker-blue);--theme-secondary:var(--blue);--theme-secondary-darken:var(--dark-blue);--theme-border:var(--grey);--theme-border-lighter:var(--light-grey);--theme-border-active:var(--light-blue);--theme-border-radius:3px;--theme-background-white:var(--white);--theme-background-grey:var(--lighter-grey);--theme-background-color:var(--blue);--theme-background-color-dark:var(--darker-blue);--theme-background-gradient:linear-gradient(270deg,var(--blue),var(--dark-blue));--theme-background-dark:var(--black);--theme-box-shadow:0 1px 2px rgba(201,211,223,0.2);--theme-label-text:var(--darker-grey);--theme-light-text:var(--white);--theme-dark-text:var(--darkest-grey);--theme-success-border:var(--green);--theme-success-bg:var(--light-green);--theme-warning-border:var(--orange);--theme-warning-bg:var(--light-orange);--theme-error-border:var(--red);--theme-error-bg:var(--light-red);--theme-info-border:var(--light-blue);--theme-info-bg:var(--lighter-blue)}.v1{font-family:Fira Sans,Arial,sans-serif}.v1,.v1 body{-webkit-font-smoothing:antialiased}.v1 body{font-family:Source Sans Pro,Arial,sans-serif;font-size:16px;line-height:1.5em;-moz-osx-font-smoothing:grayscale}.v1 h1,.v1 h2,.v1 h3,.v1 h4,.v1 h5,.v1 h6{font-family:Evolventa,Trebuchet MS,sans-serif;font-weight:700}.v1 h1:first-child,.v1 h2:first-child,.v1 h3:first-child,.v1 h4:first-child,.v1 h5:first-child,.v1 h6:first-child{margin-top:0}.v1 h1{font-size:2em;line-height:1.125em}.v1 h2{font-size:1.75em;line-height:1.25em}.v1 h3{font-size:1.5em;line-height:1.5em}.v1 h4{font-size:1.25em}.v1 h5{font-size:1.125em}.v1 h6{font-size:1em}.v1 .subtitle{font-weight:400;font-family:Source Sans Pro,Arial,sans-serif;color:#53657d;color:var(--darker-grey)}.v1 .lead-text{font-size:1.25em}.v1 .subtitle{color:#8393a7;color:var(--dark-grey)}.v1 .text-quote{background-color:#ebeff3;background-color:var(--theme-background-grey);border-left:8px solid #c9d3df;border-left:8px solid var(--theme-border-lighter);padding:4px 0 4px 25px}.v1 pre{display:block;margin-top:1em}.v1 code{background:#fafbfc;background:var(--lightest-grey);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-border-radius:var(--theme-border-radius);-moz-border-radius:var(--theme-border-radius);border-radius:var(--theme-border-radius);padding:0 .5em;font-family:Courier New;font-size:.9em;word-wrap:break-word;white-space:pre-wrap;vertical-align:middle;display:inline-block;max-width:100%;overflow-x:auto}.v1 pre code{padding:1em}.v1 *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.v1 body,.v1 html{height:100%;position:relative}.v1 body{color:#26353f;color:var(--theme-dark-text);padding:0;margin:0;overflow:auto}.v1 a,.v1 button{cursor:pointer}.v1 a,.v1 a:active,.v1 a:focus,.v1 a:visited{text-decoration:underline;color:#0053b3;color:var(--theme-primary)}.v1 a:hover{-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-border-radius:var(--theme-border-radius);-moz-border-radius:var(--theme-border-radius);border-radius:var(--theme-border-radius);color:#003b80;color:var(--dark-blue);background-color:#ebeff3;background-color:var(--lighter-grey);text-decoration:none}.v1 small{font-size:.875em}.v1 hr{border-top:0;border-bottom:#c9d3df;border-bottom:var(--theme-border-lighter);margin:2em 0;margin:var(--space-l) 0}.v1 dt{display:block;color:#53657d;color:var(--darker-grey)}.v1 dd{margin:0}.v1 dd+dt{margin-top:.5em;margin-top:var(--space-xs)}.v1 input,.v1 select,.v1 textarea{width:100%;outline:none;padding:.5em .875em;font:inherit;line-height:1.6;color:#1c1c1c;color:var(--black);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-border-radius:var(--theme-border-radius);-moz-border-radius:var(--theme-border-radius);border-radius:var(--theme-border-radius);border:1px solid #adb9c9;border:1px solid var(--theme-border);background:#fff;background:var(--theme-background-white);vertical-align:middle;position:relative}.v1 input:focus,.v1 select:focus,.v1 textarea:focus{border-color:#006be6;border-color:var(--theme-border-active);-webkit-transition:border-color .2s ease-out;-moz-transition:border-color .2s ease-out;transition:border-color .2s ease-out}.v1 input:disabled,.v1 select:disabled{background-color:#ebeff3;background-color:var(--theme-background-grey)}.v1 input[type=checkbox],.v1 input[type=radio]{margin:0;margin-right:.5em;margin-right:var(--space-xs)}.v1 input[type=radio]{height:1.25em;width:1.25em;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;display:inline-block;-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0}.v1 input[type=radio]:before{content:"";border-color:#0053b3;border-color:var(--theme-primary);-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;position:absolute;top:.3em;left:.35em;width:.5em;height:.5em;-webkit-transform:scale(0);-moz-transform:scale(0);-ms-transform:scale(0);transform:scale(0)}.v1 input[type=radio]:checked{background-color:#fff;background-color:var(--theme-background-white);border-color:#0053b3;border-color:var(--theme-primary);opacity:1}.v1 input[type=radio]:checked:before{background-color:#0053b3;background-color:var(--theme-primary);-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);transform:scale(1);-webkit-transition:-webkit-transform .2s ease-out;transition:-webkit-transform .2s ease-out;-moz-transition:transform .2s ease-out,-moz-transform .2s ease-out;transition:transform .2s ease-out;transition:transform .2s ease-out,-webkit-transform .2s ease-out,-moz-transform .2s ease-out;transition:transform .2s ease-out,-webkit-transform .2s ease-out}.v1 input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:1.4em;width:1.5em;padding:0}.v1 input[type=checkbox]:checked{background-color:#0053b3;background-color:var(--theme-primary);border-color:#0053b3;border-color:var(--theme-primary);opacity:1;-webkit-transition:border-color .2s ease-in,background-color .2s ease-out;-moz-transition:border-color .2s ease-in,background-color .2s ease-out;transition:border-color .2s ease-in,background-color .2s ease-out}.v1 input[type=checkbox]:before{-webkit-transform:scale(0);-moz-transform:scale(0);-ms-transform:scale(0);transform:scale(0);content:"";position:absolute;top:.2em;left:.15em;height:1em;width:1em;background:url('data:image/svg+xml;utf8,') 50% no-repeat}.v1 input[type=checkbox]:checked:before{color:#fff;color:var(--white);display:block;-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);transform:scale(1);-webkit-transition:-webkit-transform .2s ease-out;transition:-webkit-transform .2s ease-out;-moz-transition:transform .2s ease-out,-moz-transform .2s ease-out;transition:transform .2s ease-out;transition:transform .2s ease-out,-webkit-transform .2s ease-out,-moz-transform .2s ease-out;transition:transform .2s ease-out,-webkit-transform .2s ease-out}.v1 input[type=file]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:-webkit-inline-flex;display:-moz-inline-box;display:inline-flex}.v1 select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff url('data:image/svg+xml;utf8,') no-repeat;background:var(--theme-background-white) url('data:image/svg+xml;utf8,') no-repeat;background-position:top 1em right 0;-webkit-background-size:1.7em 1.7em;background-size:1.7em;padding-right:2.8em;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-border-radius:var(--theme-border-radius);-moz-border-radius:var(--theme-border-radius);border-radius:var(--theme-border-radius);width:auto}@-moz-document url-prefix(){.v1 select{padding-top:.438em;padding-bottom:.438em}}.v1 select:focus{outline:none}.v1 select:-moz-focusring{color:rgba(0,0,0,0);text-shadow:0 0 0 #000}.v1 label.required:before{content:"✱";color:#d63626;color:var(--red);font-weight:700;padding-right:.5em;padding-right:var(--space-xs);position:absolute;left:0;-webkit-transform:translateX(-100%);-moz-transform:translateX(-100%);-ms-transform:translateX(-100%);transform:translateX(-100%)}.v1 a.button,.v1 a.button:active,.v1 a.button:focus,.v1 a.button:visited,.v1 button.button,.v1 button.button:active,.v1 button.button:focus,.v1 button.button:visited,.v1 input[type=button],.v1 input[type=button]:active,.v1 input[type=button]:focus,.v1 input[type=button]:visited,.v1 input[type=submit],.v1 input[type=submit]:active,.v1 input[type=submit]:focus,.v1 input[type=submit]:visited{display:inline-block;padding:.5em 2em;padding:var(--space-xs) var(--space-l);color:#fff;color:var(--theme-light-text);background-color:#0053b3;background-color:var(--theme-primary);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-border-radius:var(--theme-border-radius);-moz-border-radius:var(--theme-border-radius);border-radius:var(--theme-border-radius);border:0;font-family:Source Sans Pro,Arial,sans-serif;font-size:1em;font-size:var(--space-s);position:relative;top:0;overflow:hidden;text-decoration:none;cursor:pointer;width:auto;margin:1em 1em 0 0}.v1 a.button:disabled,.v1 button.button:disabled{color:#fff;color:var(--white);background-color:#c9d3df;background-color:var(--light-grey)}.v1 a.button:hover,.v1 button.button:hover,.v1 input[type=button]:hover,.v1 input[type=submit]:hover{background:#003b80;background:var(--theme-secondary-darken)}.v1 a.button:disabled:hover,.v1 button.button:disabled:hover{cursor:auto;color:#fff;color:var(--white);background-color:#c9d3df;background-color:var(--light-grey)}.v1 a.button:active,.v1 button.button:active,.v1 input[type=button]:hover,.v1 input[type=submit]:hover{-webkit-transform:translateY(1px);-moz-transform:translateY(1px);-ms-transform:translateY(1px);transform:translateY(1px)}.v1 button::-moz-focus-inner{border:0}.v1 a.button-outline,.v1 a.button-outline:active,.v1 a.button-outline:focus,.v1 a.button-outline:visited,.v1 button.button-outline,.v1 button.button-outline:active,.v1 button.button-outline:focus,.v1 button.button-outline:visited{display:inline-block;padding:.5em 2em;padding:var(--space-xs) var(--space-l);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-border-radius:var(--theme-border-radius);-moz-border-radius:var(--theme-border-radius);border-radius:var(--theme-border-radius);font-family:Source Sans Pro,Arial,sans-serif;font-size:1em;font-size:var(--space-s);position:relative;top:0;overflow:hidden;text-decoration:none;background:rgba(0,0,0,0);border:1px solid #fff;border:1px solid var(--white);color:#fff;color:var(--white)}.v1 a.button-outline:disabled,.v1 button.button-outline:disabled{color:#c9d3df;color:var(--light-grey);border-color:#c9d3df;border-color:var(--light-grey)}.v1 a.button-outline:hover,.v1 button.button-outline:hover,.v1 input[type=button].button-outline:hover,.v1 input[type=submit].button-outline:hover{border-color:#c9d3df;border-color:var(--light-grey);color:#c9d3df;color:var(--light-grey)}.v1 a.button-outline:disabled:hover,.v1 button.button-outline:disabled:hover{cursor:auto;color:#c9d3df;color:var(--light-grey);border-color:#c9d3df;border-color:var(--light-grey)}.v1 .button-outline.primary,.v1 a.button-outline.primary{border-color:#0053b3;border-color:var(--blue);color:#0053b3;color:var(--blue)}.v1 .button-outline.primary:active,.v1 .button-outline.primary:focus,.v1 .button-outline.primary:hover{border-color:#003b80;border-color:var(--dark-blue);color:#003b80;color:var(--dark-blue)}.v1 .button-outline.warning,.v1 a.button-outline.warning{border-color:#d63626;border-color:var(--red);color:#d63626;color:var(--red)}.v1 .button-outline.warning:active,.v1 .button-outline.warning:focus,.v1 .button-outline.warning:hover{border-color:#ab2b1e;border-color:var(--dark-red);color:#ab2b1e;color:var(--dark-red)}.v1 .button-outline.secondary,.v1 a.button-outline.secondary{border-color:#53657d;border-color:var(--darker-grey);color:#53657d;color:var(--darker-grey)}.v1 .button-outline.secondary:active,.v1 .button-outline.secondary:focus,.v1 .button-outline.secondary:hover{border-color:#26353f;border-color:var(--darkest-grey);color:#26353f;color:var(--theme-dark-text)}.v1 a.button-outline.small,.v1 a.button.small,.v1 button.button-outline.small,.v1 button.button.small,.v1 input[type=button].small,.v1 input[type=submit].small{font-size:.825em;padding:.25em 1em}.v1 a.button-outline.large,.v1 a.button.large,.v1 button.button-outline.large,.v1 button.button.large,.v1 input[type=button].large,.v1 input[type=submit].large{font-size:1.25em}.v1 .button.warning,.v1 a.button.warning{background-color:#d63626;background-color:var(--red)}.v1 .button.warning:active,.v1 .button.warning:focus,.v1 .button.warning:hover{background-color:#ab2b1e;background-color:var(--dark-red)}.v1 .button.warning-light,.v1 a.button.warning-light{background-color:#ff9947;background-color:var(--orange)}.v1 .button.warning-light:active,.v1 .button.warning-light:focus,.v1 .button.warning-light:hover{background-color:#cc5c00;background-color:var(--dark-orange)}.v1 .button.secondary,.v1 a.button.secondary{background-color:#53657d;background-color:var(--darker-grey)}.v1 .button.secondary:active,.v1 .button.secondary:focus,.v1 .button.secondary:hover{background-color:#26353f;background-color:var(--darkest-grey)}@media(max-width:399px){.v1 a.button,.v1 button.button,.v1 input[type=button],.v1 input[type=submit]{width:100%;margin-right:0}}.v1 .table{background:#fff;background:var(--theme-background-white);border:1px solid #c9d3df;border:1px solid var(--theme-border-lighter);border-left:0;border-right:0;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;position:relative;width:100%;border-collapse:collapse}.v1 .table td,.v1 .table th{padding:1em;padding:var(--space-s);text-align:left}.v1 .table td{border-top:1px solid #ebeff3;border-top:1px solid var(--lighter-grey)}.v1 .table thead th{background:#fafbfc;background:var(--lightest-grey);border-bottom:1px solid #c9d3df;border-bottom:1px solid var(--theme-border-lighter);font-size:.875em;font-weight:700;text-transform:uppercase}.v1 .table thead th.ascending:after{font-size:.75em;content:"▲";margin-left:.5em;margin-left:var(--space-xs)}.v1 .table thead th.descending:after{font-size:.75em;content:"▼";margin-left:.5em;margin-left:var(--space-xs)}.v1 .table tr:hover{background:#fafbfc;background:var(--lightest-grey)}.v1 .table__filter{margin-bottom:1em;margin-bottom:var(--space-s);max-width:20em;float:right}.v1 .icon{display:inline-block;width:1em;height:1em;stroke-width:0;stroke:currentColor;fill:currentColor;font-size:16px}.v1 #icon-search{fill:#adb9c9;fill:var(--grey)}.v1 .label-list{padding:0;margin:0}.v1 .label{background-color:#ebeff3;background-color:var(--lighter-grey);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-border-radius:var(--theme-border-radius);-moz-border-radius:var(--theme-border-radius);border-radius:var(--theme-border-radius);display:inline-block;padding:.3em .8em;margin:.25em;font-size:.875em}.v1 .label a{text-decoration:none;color:#26353f;color:var(--theme-dark-text)}.v1 .label--active{background-color:#0053b3;background-color:var(--theme-primary);color:#fff;color:var(--white)}.v1 .label--inactive{background-color:#fff;background-color:var(--white);border:1px solid #adb9c9;border:1px solid var(--theme-border);color:#53657d;color:var(--darker-grey)}.v1 .label--inactive a{color:#53657d;color:var(--darker-grey);background:0}.v1 label.switch{position:relative;display:inline-block;padding-left:2.6em}.v1 label.switch-text input,.v1 label.switch input{position:absolute;top:0;opacity:0;width:0;height:0;border:0;display:none}.v1 label.switch input[type=checkbox]:before{display:none}.v1 label.switch-text .slider,.v1 label.switch .slider{position:absolute;cursor:pointer;width:2.5em;height:1.4em;top:0;left:0;right:0;bottom:0;background-color:#fff;border:1px solid #adb9c9;border:1px solid var(--theme-border);-webkit-transition:.4s;-moz-transition:.4s;transition:.4s;-webkit-border-radius:1em;-moz-border-radius:1em;border-radius:1em}.v1 label.switch-text .slider:before,.v1 label.switch .slider:before{position:absolute;content:"";height:1em;width:1em;-webkit-border-radius:1em;-moz-border-radius:1em;border-radius:1em;left:.2em;bottom:.2em;background-color:#0053b3;background-color:var(--theme-primary);-webkit-transition:.4s;-moz-transition:.4s;transition:.4s}.v1 label.switch-text input:disabled+.slider,.v1 label.switch input:disabled+.slider{border:1px solid #adb9c9;border:1px solid var(--theme-border);background-color:#ebeff3;background-color:var(--theme-background-grey)}.v1 label.switch input:checked+.slider{border-color:#0053b3;border-color:var(--theme-primary);background-color:#b4e1fa;background-color:var(--theme-primary-lighter)}.v1 label.switch input:focus+.slider{border-color:#006be6;border-color:var(--theme-border-active);-webkit-transition:border-color .2s ease-out;-moz-transition:border-color .2s ease-out;transition:border-color .2s ease-out}.v1 label.switch-text input:disabled+.slider:before,.v1 label.switch input:disabled+.slider:before{background-color:#1c1c1c;background-color:var(--black)}.v1 label.switch input:checked+.slider:before{-webkit-transform:translateX(1em);-moz-transform:translateX(1em);-ms-transform:translateX(1em);transform:translateX(1em)}.v1 label.switch-text{display:inline-block}.v1 label.switch-text .slider{position:relative;width:auto;height:auto;padding:0 .4em}.v1 label.switch-text .slider:before{display:inline-block;height:1.1em;width:48%;bottom:.1em}.v1 label.switch-text input:checked+.slider:before{-webkit-transform:translateX(-webkit-calc(100% - .2em));-moz-transform:translateX(-moz-calc(100% - .2em));-ms-transform:translateX(calc(100% - .2em));transform:translateX(calc(100% - .2em))}.v1 label.switch-text .first-option,.v1 label.switch-text .second-option{position:relative;color:#1c1c1c;color:var(--black);-webkit-transition:.4s;-moz-transition:.4s;transition:.4s}.v1 label.switch-text .second-option{padding-left:.2em}.v1 label.switch-text input+.slider .first-option{color:#fff;color:var(--white)}.v1 label.switch-text input:checked+.slider .first-option{color:#1c1c1c;color:var(--black)}.v1 label.switch-text input:checked+.slider .second-option{color:#fff;color:var(--white)}.v1 form{max-width:35em;margin:0 auto}.v1 label,.v1 legend{display:block;color:#26353f;color:var(--theme-dark-text)}.v1 legend{margin-bottom:.5em;margin-bottom:var(--space-xs)}.v1 label.label-inline{display:inline;color:#1c1c1c;color:var(--black)}.v1 .label-inline+input[type=checkbox],.v1 .label-inline+input[type=radio]{margin-left:1.5em;margin-left:var(--space-m);-ms-flex-negative:0;-webkit-flex-shrink:0;flex-shrink:0}.v1 .form__group{position:relative;display:block}.v1 .form__group+.form__group{margin-top:2em;margin-top:var(--space-l)}.v1 fieldset{border:none;margin:0;padding:0;width:100%}.v1 .overlay-button{position:absolute;right:2em;right:var(--space-l);top:-webkit-calc(1px + .8rem);top:-moz-calc(1px + .8rem);top:calc(1px + .8rem);background:0;border:0;width:1rem;height:1rem}.v1 .search__group{position:relative}.v1 .overlayed-button .icon-search{height:15px;width:15px}.v1 .input__group{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;-webkit-flex-direction:row;-moz-box-orient:horizontal;-moz-box-direction:normal;flex-direction:row}.v1 .input__group .icon-button,.v1 .input__group .icon-button:active{margin-left:1em;margin-left:var(--space-s);padding:0 .8em}.v1 .input__group .icon-button .icon{width:16px;height:16px}.v1 .input__group .button{-ms-flex-negative:0;-webkit-flex-shrink:0;flex-shrink:0;margin-left:1em;margin-left:var(--space-s)}@media(max-width:399px){.v1 .input__group{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;flex-direction:column}.v1 .input__group .button{margin-left:0;margin-top:1em;margin-top:var(--space-s)}}.v1 .card{background:#fff;background:var(--theme-background-white);-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;-webkit-box-shadow:0 1px 2px rgba(201,211,223,.2);box-shadow:0 1px 2px rgba(201,211,223,.2);-webkit-box-shadow:var(--theme-box-shadow);box-shadow:var(--theme-box-shadow);position:relative;overflow:hidden;display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-flex:1;-ms-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;flex-direction:column;width:100%;border:1px solid #c9d3df;border:1px solid var(--theme-border-lighter)}.v1 .row .card+.card{margin-left:1.5em;margin-left:var(--space-m)}@media(max-width:749px){.v1 .row>.card{margin:0}.v1 .row>.card+.card{margin-left:0;margin-top:1.5em;margin-top:var(--space-m)}}.v1 .card__cover{height:250px;width:100%;overflow:hidden;position:relative;display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;background-color:#0053b3;background-color:var(--theme-background-color)}.v1 .card__cover img{-o-object-fit:cover;object-fit:cover;height:100%;width:100%}.v1 .card__content{padding:1.5em;padding:var(--space-m);-webkit-box-flex:1;-ms-flex-positive:1;-webkit-flex-grow:1;-moz-box-flex:1;flex-grow:1}.v1 .card__content h3{margin:0}.v1 .card__content .card__meta{color:#53657d;color:var(--darker-grey)}.v1 .card__content .card__meta time:after{content:" • "}.v1 .card__content :last-child{margin-bottom:0}.v1 .card__extra{border-top:1px solid #adb9c9;border-top:1px solid var(--theme-border);padding:1em;padding:var(--space-s)}.v1 .panel{background:#fff;background:var(--theme-background-white);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-border-radius:var(--theme-border-radius);-moz-border-radius:var(--theme-border-radius);border-radius:var(--theme-border-radius);-webkit-box-shadow:0 1px 2px rgba(201,211,223,.2);box-shadow:0 1px 2px rgba(201,211,223,.2);-webkit-box-shadow:var(--theme-box-shadow);box-shadow:var(--theme-box-shadow);padding:1.5em;padding:var(--space-m);position:relative;border:1px solid #c9d3df;border:1px solid var(--theme-border-lighter)}.v1 .panel+*{margin-top:1.5em;margin-top:var(--space-m)}.v1 .panel>:last-child{margin-bottom:0}.v1 .panel__header:after{content:"";display:block;width:-webkit-calc(100% + 3em);width:-moz-calc(100% + 3em);width:calc(100% + 3em);width:-webkit-calc(100% + var(--space-m)*2);width:-moz-calc(100% + var(--space-m)*2);width:calc(100% + var(--space-m)*2);position:relative;left:-1.5em;border-bottom:1px solid #c9d3df;border-bottom:1px solid var(--theme-border-lighter);margin:1em 0 1.5em;margin:var(--space-s) 0 var(--space-m)}.v1 .panel__header h3{display:inline-block;margin:0}.v1 .panel__header-extra{margin-left:1em;margin-left:var(--space-s);color:#53657d;color:var(--theme-label-text);display:inline-block}@media(max-width:549px){.v1 .panel__header-extra{margin:0}}.v1 .dropdown{position:relative;display:inline-block}.v1 .dropdown-content{display:none;position:absolute;background-color:#fff;background-color:var(--white);min-width:110px;text-align:center;top:2em;top:var(--space-l);right:0;-webkit-box-shadow:0 8px 16px 0 rgba(0,0,0,.2);box-shadow:0 8px 16px 0 rgba(0,0,0,.2);z-index:1}.v1 .dropdown-content a{color:#000;padding:12px 16px;text-decoration:none;display:block}.v1 .dropdown-content a:hover{background-color:#c9d3df;background-color:var(--light-grey)}.v1 .dropdown:hover .dropdown-content{display:block}.v1 .modal__backdrop{position:fixed;top:0;left:0;background:rgba(0,0,0,.5);height:100%;width:100%;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:none;z-index:10}.v1 .modal__backdrop:target{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex}.v1 .modal{-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-border-radius:var(--theme-border-radius);-moz-border-radius:var(--theme-border-radius);border-radius:var(--theme-border-radius);-webkit-box-shadow:0 1px 2px rgba(201,211,223,.2);box-shadow:0 1px 2px rgba(201,211,223,.2);-webkit-box-shadow:var(--theme-box-shadow);box-shadow:var(--theme-box-shadow);background:#fff;background:var(--white);padding:1.5em;padding:var(--space-m);max-width:32em}.v1 .modal>:first-child{margin-top:0}.v1 .modal .button__group{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;justify-content:space-between;margin-top:1.5em;margin-top:var(--space-m)}.v1 .modal .button__group .button{margin:0}.v1 .modal .button__group .button+.button{margin-left:1em}.v1 .notification{background:#b4e1fa;background:var(--theme-info-bg);border:1px solid #006be6;border:1px solid var(--theme-info-border);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-border-radius:var(--theme-border-radius);-moz-border-radius:var(--theme-border-radius);border-radius:var(--theme-border-radius);padding:1em;padding:var(--space-s);margin-bottom:1em;position:relative}.v1 .notification .close{border:0;background:0;color:currentColor;position:absolute;right:1em;right:var(--space-s)}.v1 .notification .icon{fill:currentColor;width:20px;height:20px}.v1 .notification.closable{padding-right:3em;padding-right:var(--space-xl)}.v1 .notification.full-width{width:100%;margin-bottom:0;text-align:center;border:0}.v1 .notification.full-width.closable .close{right:unset}.v1 .notification.success{background:#daf5e7;background:var(--theme-success-bg);border-color:#03bd5b;border-color:var(--theme-success-border)}.v1 .notification.warning{background:#fff0e4;background:var(--theme-warning-bg);border-color:#ff9947;border-color:var(--theme-warning-border)}.v1 .notification.error{background:rgba(239,172,166,.45882);background:var(--theme-error-bg);border-color:#d63626;border-color:var(--theme-error-border)}.v1 .tile{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background-color:#fff;background-color:var(--theme-background-white);width:100%;padding:1em;padding:var(--space-s);-webkit-transform:none;-moz-transform:none;-ms-transform:none;transform:none;-webkit-transition:all .1s ease-in;-moz-transition:all .1s ease-in;transition:all .1s ease-in}.v1 .tile:hover{-webkit-transform:scale(1.03);-moz-transform:scale(1.03);-ms-transform:scale(1.03);transform:scale(1.03)}.v1 .tile-colored{background-color:#0053b3;background-color:var(--theme-background-color);color:#fff;color:var(--theme-light-text)}.v1 .tile h3{margin:0}.v1 .tile__icon{height:2em;height:var(--space-l)}.v1 .pagination{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;-webkit-flex-direction:row;-moz-box-orient:horizontal;-moz-box-direction:normal;flex-direction:row;-webkit-box-pack:justify;-ms-flex-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;-ms-flex-wrap:wrap;-webkit-flex-wrap:wrap;flex-wrap:wrap;margin-top:1.5em;margin-top:var(--space-m)}.v1 .pagination__display-group{margin:.5em;margin:var(--space-xs)}.v1 .pagination__display-label{display:inline}.v1 select.pagination__display{margin-left:.5em;margin-left:var(--space-xs);padding-top:.25em;padding-top:var(--space-xxs);padding-bottom:.25em;padding-bottom:var(--space-xxs)}.v1 .pagination__count{margin:.5em;margin:var(--space-xs)}.v1 .pagination__pages{list-style-type:none;margin:0;padding:0;overflow:hidden;display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;-webkit-justify-content:flex-end;-moz-box-pack:end;justify-content:flex-end}.v1 .pagination__pages li a{color:#0053b3;color:var(--theme-primary);background-color:#fff;background-color:var(--theme-background-white);margin:0 .25em;margin:0 var(--space-xxs);padding:.25em .5em;padding:var(--space-xxs) var(--space-xs);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-border-radius:var(--theme-border-radius);-moz-border-radius:var(--theme-border-radius);border-radius:var(--theme-border-radius);font-weight:700;pointer-events:inherit;text-decoration:none;display:block}.v1 .pagination__pages li a:hover{background-color:#b4e1fa;background-color:var(--lighter-blue)}.v1 .pagination__pages li.active a{color:#fff;color:var(--theme-light-text);background-color:#0053b3;background-color:var(--theme-background-color)}.v1 .pagination__pages li.disabled a{color:#8393a7;color:var(--dark-grey);background-color:#fafbfc;background-color:var(--lightest-grey);pointer-events:none}.v1 .steps-form{counter-reset:step;-webkit-box-orient:horizontal;-ms-flex-direction:row;-webkit-flex-direction:row;-moz-box-orient:horizontal;flex-direction:row}.v1 .steps-form,.v1 .steps-form li{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-direction:normal;-moz-box-direction:normal}.v1 .steps-form li{-ms-flex-preferred-size:100%;-webkit-flex-basis:100%;flex-basis:100%;-webkit-box-orient:vertical;-ms-flex-direction:column;-webkit-flex-direction:column;-moz-box-orient:vertical;flex-direction:column;list-style-type:none;position:relative;text-align:center}.v1 .steps-form li:before{font-size:2em;color:#c9d3df;color:var(--light-grey);width:40px;height:40px;line-height:40px;content:counter(step);counter-increment:step;border:7px solid #c9d3df;border:7px solid var(--light-grey);-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;margin:0 auto 10px;display:block;text-align:center;background-color:#fff;background-color:var(--white);z-index:1}.v1 .steps-form li.active:before,.v1 li.done:before{border-color:#0053b3;border-color:var(--blue);color:#0053b3;color:var(--blue)}.v1 .steps-form li.done:before{color:#fff;color:var(--white);background-color:#0053b3;background-color:var(--blue)}.v1 .steps-form li:after{width:100%;height:15px;content:"";position:absolute;background-color:#c9d3df;background-color:var(--light-grey);top:23px;left:-50%;z-index:0}.v1 .steps-form li.active:after,.v1 li.done:after{background-color:#0053b3;background-color:var(--blue)}.v1 .steps-form li:first-child:after{content:none}@media(max-width:749px){.v1 .steps-form{-webkit-box-orient:vertical;-ms-flex-direction:column;-webkit-flex-direction:column;-moz-box-orient:vertical;flex-direction:column;padding:0 0 0 2vw}.v1 .steps-form,.v1 .steps-form li{-webkit-box-direction:normal;-moz-box-direction:normal}.v1 .steps-form li{-webkit-box-orient:horizontal;-ms-flex-direction:row;-webkit-flex-direction:row;-moz-box-orient:horizontal;flex-direction:row}.v1 .steps-form>li>div{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;flex-direction:column;margin-left:2vw;-ms-flex-pack:distribute;-webkit-justify-content:space-around;justify-content:space-around;width:100%}.v1 .steps-form li:after{width:15px;height:100%;left:20px;top:-50%}.v1 .steps-form li:before{-ms-flex-negative:0;-webkit-flex-shrink:0;flex-shrink:0;margin:2vh 0 0}}.v1 .container{position:relative;width:100%;max-width:1200px;margin:0 auto;padding:0 20px}.v1 .container.container-medium{max-width:750px}.v1 .container.container-small{max-width:550px}.v1 .container.container-full{max-width:none}.v1 .article__container{max-width:35em}@media(min-width:400px){.v1 .container{width:85%;padding:0}}@media(min-width:550px){.v1 .container{width:80%}}.v1 .navbar{width:100%;background:#fff;background:var(--theme-background-white);z-index:100}.v1 .nav-fixed{position:fixed;top:0}.v1 .navbar__container{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;justify-content:space-between;-ms-flex-wrap:wrap;-webkit-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;padding:1em;padding:var(--space-s)}.v1 .navbar__home{height:40px}.v1 .navbar__logo{height:100%}.v1 .nav__links{margin:0;list-style-type:none}.v1 .nav__item,.v1 .nav__links{display:inline-block;padding:0}.v1 .nav__item .dropdown,.v1 .nav__item a{text-decoration:none;color:#1c1c1c;color:var(--black);padding:.4em .8em;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.v1 .nav__links a:after{content:none}.v1 .nav__item .dropdown:hover,.v1 .nav__item a:hover{background:#ebeff3;background:var(--lighter-grey)}.v1 .nav__item a.active{background:#0053b3;background:var(--theme-primary);color:#fff;color:var(--white)}.v1 a.navbar__home{font-family:Evolventa;display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;color:#26353f;color:var(--theme-dark-text);letter-spacing:.05em;text-decoration:none}.v1 .navbar__home img{vertical-align:middle}.v1 .navbar__logo{margin-right:.8em}.v1 .navbar__gouvfr{height:100%}.v1 span.navbar__domain{font-weight:400;color:#26353f;color:var(--theme-dark-text);-webkit-padding-after:3px}@media(max-width:749px){.v1 .navbar__container{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;-webkit-align-items:flex-start;-moz-box-align:start;align-items:flex-start}.v1 .nav__links{padding-top:1em;padding-top:var(--space-s)}}.v1 .hero{width:100%;background:#fff;background:var(--theme-background-white)}.v1 .hero-color{background:#0053b3;background:var(--theme-background-color)}.v1 .hero__container{min-height:25em;display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;padding:2em;padding:var(--space-l);max-width:1200px;margin:0 auto}.v1 .hero h1{margin-bottom:0}.v1 .hero-color h1{color:#fff;color:var(--theme-light-text)}.v1 .hero p{margin:1em auto;margin:var(--space-s) auto;color:#26353f;color:var(--theme-dark-text);font-size:1.5em}.v1 .hero-color p{color:#fff;color:var(--theme-light-text)}.v1 .footer{background:#1c1c1c;background:var(--theme-background-dark);color:#fff;color:var(--white);padding:2em 0;padding:var(--space-l) 0}.v1 .footer a:hover{background:0}.v1 .footer .container{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;-webkit-flex-flow:row wrap;-moz-box-orient:horizontal;-moz-box-direction:normal;flex-flow:row wrap;-webkit-box-pack:justify;-ms-flex-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;justify-content:space-between}.v1 .footer ul{list-style-type:none;padding:0}.v1 .footer__social{margin-top:1em;margin-top:var(--space-s)}.v1 .footer__social li{display:inline;margin-right:1em;margin-right:var(--space-s)}.v1 .footer__social .icon{width:35px;height:35px;fill:#fff;fill:var(--white)}.v1 .footer__links{margin:0;line-height:2em;line-height:var(--space-l)}.v1 .footer__links h2{margin-top:0;margin-bottom:.5em;margin-bottom:var(--space-xs)}.v1 .footer__links a{color:#fff;color:var(--white);text-decoration:none}.v1 .footer__links a:hover{background:#53657d;background:var(--darker-grey)}.v1 .footer__logo{width:300px;height:auto}.v1 .footer__logo img{max-height:60px}@media(max-width:999px){.v1 .footer .container{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;flex-direction:column}}.v1 .section{padding:5em 0}.v1 .section-white{background-color:#fff;background-color:var(--theme-background-white)}.v1 .section-grey{background-color:#ebeff3;background-color:var(--theme-background-grey)}.v1 .section-dark{background-color:#1c1c1c;background-color:var(--theme-background-dark);color:#fff}.v1 .section-color{background-image:-webkit-gradient(linear,right top,left top,from(#0053b3),to(#003b80));background-image:-webkit-linear-gradient(right,#0053b3,#003b80);background-image:-moz-linear-gradient(right,#0053b3,#003b80);background-image:linear-gradient(270deg,#0053b3,#003b80);background-image:var(--theme-background-gradient);color:#fff}.v1 .section-color-dark{background-color:#00234d;background-color:var(--theme-background-color-dark);color:#fff}.v1 .section__title:first-child{margin-top:0;margin-bottom:.5em;margin-bottom:var(--space-xs)}.v1 .section__subtitle{margin:0 auto;font-weight:400;font-size:1.25em;font-family:Source Sans Pro,Arial,sans-serif;color:#53657d;color:var(--darker-grey)}.v1 .section-color .section__subtitle,.v1 .section-color a,.v1 .section-dark .section__subtitle,.v1 .section-dark a{color:currentColor}.v1 .section-color a:hover,.v1 .section-dark a:hover{background:#53657d;background:var(--darker-grey)}.v1 .section__subtitle+.row,.v1 .section__title+.row{margin-top:3em;margin-top:var(--space-xl)}.v1 .section__subtitle,.v1 .section__title{text-align:center}.v1 .section__title+.section__subtitle{margin-top:-var(--space-s)}.v1 .article{text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-moz-font-feature-settings:"liga" on;padding:0;background:#fff;background:var(--white);color:#26353f;color:var(--theme-dark-text);line-height:1.5;margin:0 auto}.v1 .article__hero{height:38vh;width:100%;overflow:hidden;position:relative;display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center}.v1 .article__hero img{width:100%;-webkit-filter:brightness(.5);filter:brightness(.5);position:absolute;z-index:0}.v1 .article__hero .article__container{z-index:10;-webkit-box-align:start;-ms-flex-align:start;-webkit-align-items:start;-moz-box-align:start;align-items:start;width:100%}.v1 .article__content{margin:0}.v1 .article__content .article__container{margin:0 auto;padding:2em 0 4em;padding:var(--space-l) 0 -webkit-calc(var(--space-l)*2);padding:var(--space-l) 0 -moz-calc(var(--space-l)*2);padding:var(--space-l) 0 calc(var(--space-l)*2)}.v1 .richtext+.article__author{margin-top:1em;margin-top:var(--space-s)}.v1 .article__author-list{padding-top:1em;padding-top:var(--space-s);display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;-webkit-flex-direction:row;-moz-box-orient:horizontal;-moz-box-direction:normal;flex-direction:row;-webkit-box-pack:justify;-ms-flex-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;justify-content:space-between}.v1 .article__author{display:inline-block;max-width:270px;padding:1em;padding:var(--space-s);font-size:15px}.v1 .article__author+.article__author{margin-left:1em;margin-left:var(--space-s);margin-top:0}.v1 .article__author img{height:32px;width:32px;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;display:inline-block;float:right}.v1 .article__author-info{display:inline-block}.v1 .article__author-name{font-weight:700}.v1 .article__author-role{color:#53657d;color:var(--darker-grey);font-size:.9em;line-height:.8em}.v1 .article__author-description p:last-child{margin-bottom:0}.v1 .article__preview{margin:0 auto;padding:1.5em;padding:var(--space-m)}.v1 .article__preview+.article__preview{margin-top:2em}.v1 .article__preview .article__author{width:auto;padding:0;margin-bottom:1em;margin-bottom:var(--space-s)}.v1 .article__preview .article__author img{float:none;vertical-align:middle}.v1 .article__preview img+.article__author-name{margin-left:.5em;margin-left:var(--space-xs)}.v1 a.article__link{color:#26353f;color:var(--theme-dark-text);text-decoration:none}.v1 .article__title{margin-bottom:0}.v1 .article__full .article__meta,.v1 .article__full .article__title{color:#fff;color:var(--theme-light-text)}.v1 .article__thumbnail{width:100%;height:200px;overflow:hidden;position:relative;margin-top:1em;margin-top:var(--space-s)}.v1 .article__thumbnail img{width:100%;position:relative;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}@media(max-width:549px){.v1 .article__container,.v1 .article__hero .article__container{width:85%;padding:0}.v1 .article__author-list{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;flex-direction:column}.v1 .article__author-list .article__author{width:100%;margin-left:0}.v1 .article__author-list .article__author+.article__author{margin-top:1em;margin-top:var(--space-s);margin-left:0}}.v1 .dashboard{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;-webkit-flex-direction:row;-moz-box-orient:horizontal;-moz-box-direction:normal;flex-direction:row;min-height:-webkit-calc(100vh - 73px);min-height:-moz-calc(100vh - 73px);min-height:calc(100vh - 73px)}.v1 .dashboard,.v1 .dashboard .side-menu{-webkit-box-flex:1;-ms-flex:1 1 auto;-webkit-flex:1 1 auto;-moz-box-flex:1;flex:1 1 auto}.v1 .dashboard .side-menu{background:#fff;background:var(--white)}.v1 .dashboard .side-menu ul{margin-top:0;padding:0;list-style-type:none}.v1 .dashboard .side-menu a{padding:1em 2em;padding:var(--space-s) var(--space-l);display:block;width:100%;color:#26353f;color:var(--theme-dark-text);text-decoration:none}.v1 .dashboard .side-menu a.active{background:-webkit-linear-gradient(left,#0053b3,#0053b3 5px,#ebeff3 0,#ebeff3);background:-moz-linear-gradient(left,#0053b3,#0053b3 5px,#ebeff3 5px,#ebeff3);background:linear-gradient(90deg,#0053b3,#0053b3 5px,#ebeff3 0,#ebeff3);background:-webkit-linear-gradient(left,var(--theme-primary),var(--theme-primary) 5px,var(--lighter-grey) 0,var(--lighter-grey));background:-moz-linear-gradient(left,var(--theme-primary),var(--theme-primary) 5px,var(--lighter-grey) 5px,var(--lighter-grey));background:linear-gradient(90deg,var(--theme-primary),var(--theme-primary) 5px,var(--lighter-grey) 0,var(--lighter-grey))}.v1 .dashboard .side-menu a:hover{color:#0053b3;color:var(--theme-primary)}.v1 .dashboard .main{padding:2em;padding:var(--space-l);-webkit-box-flex:1;-ms-flex:1 1 75%;-webkit-flex:1 1 75%;-moz-box-flex:1;flex:1 1 75%;background:#ebeff3;background:var(--lighter-grey)}.v1 .dashboard .main>:first-child{margin-top:0}@media(max-width:749px){.v1 .dashboard{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;flex-direction:column}}.v1 .documentation{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex}.v1 .side-pane{padding:2em 0;padding:var(--space-l) 0;-webkit-box-flex:0;-ms-flex:0 0 25%;-webkit-flex:0 0 25%;-moz-box-flex:0;flex:0 0 25%;font-size:14px}.v1 .side-pane li{list-style-type:none}.v1 .side-pane h2{margin-top:0;padding:.5em;padding:var(--space-xs)}.v1 .side-pane .side-pane__menu{list-style-type:none;margin:0;padding:0;width:100%;float:right}.v1 .side-pane__title h3{font-family:Source Sans Pro;text-transform:uppercase;padding-bottom:1em;padding-bottom:var(--space-s);border-bottom:1px solid #adb9c9;border-bottom:1px solid var(--theme-border);font-weight:400;font-size:1em}.v1 .side-pane a{padding:.5em 0;padding:var(--space-xs) 0;display:block;width:100%;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-border-radius:var(--theme-border-radius);-moz-border-radius:var(--theme-border-radius);border-radius:var(--theme-border-radius);color:#26353f;color:var(--theme-dark-text);text-decoration:none}.v1 .side-pane a:hover{text-decoration:underline;background:0}.v1 .side-pane li.side-pane__dropdown>a{background:url(../img/arrow-right.2cfe70f5.svg) no-repeat;background-position:center right 1em;background-position:100% var(--space-s);-webkit-background-size:15px 15px;background-size:15px 15px}.v1 .side-pane li.side-pane__dropdown>a:hover{background:url(../img/arrow-right.2cfe70f5.svg) no-repeat;background-position:center right 1em;background-position:100% var(--space-s);-webkit-background-size:15px 15px;background-size:15px 15px;text-decoration:underline}.v1 .side-pane li.unfolded.side-pane__dropdown>a,.v1 .side-pane li.unfolded.side-pane__dropdown>a:hover{background-image:url(../img/arrow-down.c2d5c84a.svg)}.v1 .side-pane li.active.side-pane__dropdown a{font-weight:700}.v1 .side-pane__dropdown.unfolded .side-pane__submenu{display:block}.v1 .side-pane__submenu{padding-left:1em;padding-left:var(--space-s);display:none}.v1 .side-pane__submenu a,.v1 .side-pane__submenu a:visited{padding:.5em;padding:var(--space-xs);list-style-type:none;color:#53657d;color:var(--darker-grey);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-border-radius:var(--theme-border-radius);-moz-border-radius:var(--theme-border-radius);border-radius:var(--theme-border-radius);text-decoration:none;display:inline-block}.v1 .side-pane__submenu li.active,.v1 .side-pane__submenu li.active a{color:#0053b3;color:var(--theme-primary)}.v1 .side-pane__submenu li.active a{font-weight:700}.v1 .main-pane{padding:3em;padding:var(--space-xl);background:#fff;background:var(--white);-webkit-box-flex:1;-ms-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1}.v1 .main-pane h1:first-child{margin-top:0}@media(max-width:749px){.v1 .documentation{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;flex-direction:column}.v1 .side-pane{border-right:none;border-bottom:1px solid #c9d3df;border-bottom:1px solid var(--theme-border-lighter);-webkit-box-flex:1;-ms-flex:auto;-webkit-flex:auto;-moz-box-flex:1;flex:auto}.v1 .side-pane .side-pane__menu{max-width:unset;float:none}.v1 .main-pane,.v1 .side-pane{padding-left:0;padding-right:0}}@media(min-width:1000px){.v1 .main-pane .markdown{width:80%}.v1 .side-pane{padding:3em 0;padding:var(--space-xl) 0;-webkit-box-flex:0;-ms-flex:0 0 20rem;-webkit-flex:0 0 20rem;-moz-box-flex:0;flex:0 0 20rem}}.v1 .text-left{text-align:left}.v1 .text-center{text-align:center}.v1 .text-right{text-align:right}.v1 .text-blue{color:#0053b3;color:var(--blue)}.v1 .text-grey-lightest{color:#fafbfc;color:var(--lightest-grey)}.v1 .text-grey-lighter{color:#ebeff3;color:var(--lighter-grey)}.v1 .text-grey-light{color:#c9d3df;color:var(--light-grey)}.v1 .text-grey{color:#adb9c9;color:var(--grey)}.v1 .text-grey-dark{color:#8393a7;color:var(--dark-grey)}.v1 .text-grey-darker{color:#53657d;color:var(--darker-grey)}.v1 .text-grey-darkest{color:#26353f;color:var(--darkest-grey)}.v1 .text-black{color:#1c1c1c;color:var(--black)}.v1 .text-green{color:#03bd5b;color:var(--green)}.v1 .text-orange{color:#ff9947;color:var(--orange)}.v1 .text-red{color:#d63626;color:var(--red)}.v1 .row{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;justify-content:space-between;-webkit-box-align:stretch;-ms-flex-align:stretch;-webkit-align-items:stretch;-moz-box-align:stretch;align-items:stretch;margin-left:-var(--space-s);margin-right:-var(--space-s);-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;-webkit-flex-direction:row;-moz-box-orient:horizontal;-moz-box-direction:normal;flex-direction:row}.v1 .row>*{max-width:50em}.v1 .row>*+*{margin-left:1.5em;margin-left:var(--space-m)}@media(max-width:749px){.v1 .row{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;flex-direction:column}.v1 .row>*+*{margin-left:0;margin-top:1.5em;margin-top:var(--space-m)}}.v1 .grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:1em;grid-gap:var(--space-s);margin-top:1em;margin-top:var(--space-s);justify-items:center;-webkit-box-pack:space-evenly;-ms-flex-pack:space-evenly;-webkit-justify-content:space-evenly;-moz-box-pack:space-evenly;justify-content:space-evenly}.v1 .grid .card+.card,.v1 .grid .panel+.panel{margin:0}.v1 .alert-wrapper{position:absolute;margin-left:-500px;width:1000px;left:50%;top:100px;bottom:100px;overflow-y:auto;background:#fff;border:1px solid #929292}.v1 .alert-header{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:end;-webkit-align-items:flex-end;-moz-box-align:end;-ms-flex-align:end;align-items:flex-end;padding:30px 80px 25px;border-bottom:1px solid #929292}.v1 .alert-subtitle,.v1 .alert-title{margin:0;padding:0;font-size:20px}.v1 .alert-title{font-weight:400}.v1 .alert-body{padding:25px 80px 0}.v1 .alert-body>p{margin:0;color:#53657d}.v1 .alert-body ul{margin:0;color:#26353f;line-height:28px}.v1 .alert-options label,.v1 .alert-options ul,.v1 p.alert-options{color:#006be6;font-weight:700}.v1 p.alert-options{margin-top:45px}.v1 p.alert-options ul{margin-top:10px;padding:0;list-style:none}.v1 p.alert-options li{margin-bottom:15px}.v1 p.alert-options li>span{padding:6px;max-width:370px;border:1px solid #8393a7;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.v1 p.alert-options input{margin-top:-4px;vertical-align:middle;border-color:#006be6}.v1 p.alert-options label{display:inline-block;cursor:pointer}.v1 p.alert-options label>span{font-weight:400}.v1 .badge{display:inline-block;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;font-size:.7rem;text-align:center;color:#fff;background:#016be6;width:15px;line-height:15px;margin-left:5px}.v1 .block{padding:30px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;-webkit-box-shadow:0 0 5px 2px rgba(0,0,0,.1);box-shadow:0 0 5px 2px rgba(0,0,0,.1)}.v1 .block.block--dark{font-weight:700;color:#fff;background:#26353f;-webkit-box-shadow:none;box-shadow:none}.v1 table.block{width:100%;border-collapse:collapse}.v1 .carousel{margin-right:50px;width:500px;overflow:hidden}.v1 .carousel-container{white-space:nowrap}.v1 .carousel-container>img{width:100%}.v1 .carousel-container>img:first-of-type{-webkit-transition:margin-left .3s ease-in-out;-moz-transition:margin-left .3s ease-in-out;transition:margin-left .3s ease-in-out}.v1 .carousel-bullets{margin-top:10px;text-align:center}.v1 .carousel-bullets .carousel-bullet{margin:0 3px;display:inline-block;vertical-align:middle;width:8px;height:8px;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;background:#adb9c9}.v1 .carousel-bullets .carousel-bullet--active{background:#0053b3}.v1 .comment{background:#fff;-webkit-box-shadow:0 0 5px 5px rgba(0,0,0,.1);box-shadow:0 0 5px 5px rgba(0,0,0,.1)}.v1 .comment ul{margin:10px 0;padding:0;list-style:none}.v1 .comment ul>li{padding:2px 0;font-weight:700;color:#8393a7;font-style:italic}.v1 .comment ul>li>span{display:inline-block;width:25px;text-align:center}.v1 .comment ul>li.comment-author{color:#000;font-style:normal}.v1 .comment ul>li.comment-author img,.v1 .comment ul>li.comment-author svg{color:#8393a7}.v1 .comment-content{margin-top:5px;padding-top:10px;border-top:1px dotted #c9d3df}.v1 .changelog-name{font-weight:700;color:#16919f}.v1 .changelog-oldValue{position:relative;color:#8393a7}.v1 .changelog-oldValue:before{height:1px;width:100%;position:absolute;top:50%;left:0;background:#d63626;content:"";display:block}.v1 .changelog-newValue{color:#000}.v1 .changelog-value--unknown{color:#8393a7}.v1 .dataSection{margin-bottom:60px}.v1 .dataSection-header{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}.v1 .dataSection-title{margin:0;padding:0;font-size:1.75rem}.v1 .dataSection-header>p{margin-left:15px;padding-top:5px;-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1}.v1 .dataSection-actions{float:right;font-size:1.3rem;color:#0053b3}.v1 .dataSection-actions>svg{cursor:pointer}.v1 .dataSection-icon{position:absolute;margin-left:-50px;width:35px;height:35px;text-align:center;line-height:35px;color:#fff;background:#000;font-size:1rem;font-weight:400;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;vertical-align:middle}.v1 .dataSection-line{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;margin-bottom:30px;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}.v1 .dataSection-line:last-child{margin-bottom:0}.v1 .dataSection-line>.data{margin:0 50px 0 0}.v1 .data-label{font-weight:700;color:#16919f}.v1 .dataSection-schoolHeader th{width:120px}.v1 .list--circle{padding:0 0 0 19px;list-style:none;line-height:28px}.v1 .list--circle li:before{position:absolute;content:"";background-position:50%;background-repeat:no-repeat;-webkit-background-size:contain;background-size:contain;margin-top:10px;margin-left:-19px;width:8px;height:8px;background:#adb9c9;-webkit-mask:url(/img/circle.svg) no-repeat center;mask:url(/img/circle.svg) no-repeat center}.v1 .note{padding:15px 25px;-webkit-box-shadow:0 0 5px 0 rgba(0,0,0,.3);box-shadow:0 0 5px 0 rgba(0,0,0,.3);background:#fff0e4}.v1 .note-header{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}.v1 .note-title{margin:0;padding:0;font-size:1.2rem}.v1 .note-body{margin:0;padding:0 0 0 30px;text-align:center}.v1 .note-body>h1{font-size:1rem;color:#16919f}.v1 .notification--failure,.v1 .notification--loading{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}.v1 .notification--failure .notification-content,.v1 .notification--failure .notification-icon,.v1 .notification--loading .notification-content,.v1 .notification--loading .notification-icon{margin:0;padding:0}.v1 .notification--failure .notification-icon,.v1 .notification--loading .notification-icon{margin-right:10px}.v1 .notification--failure .notification-icon>img,.v1 .notification--failure .notification-icon>svg,.v1 .notification--loading .notification-icon>img,.v1 .notification--loading .notification-icon>svg{width:50px}.v1 .notification--failure .notification-content,.v1 .notification--loading .notification-content{text-align:left}.v1 .notification--failure .notification-title,.v1 .notification--loading .notification-title{font-weight:700;text-transform:uppercase}.v1 .notification--loading .notification-content{color:#003b7f}.v1 .page-header{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:50px}.v1 .page-title,.v1 .page-titleContainer{margin:0;padding:0}.v1 .page-title{font-size:2rem}.v1 .page-subtitle{margin:15px 0 0;padding:0;font-size:1rem;font-weight:400}.v1 .pageHeader{-webkit-box-shadow:0 10px 10px 0 rgba(0,0,0,.2);box-shadow:0 10px 10px 0 rgba(0,0,0,.2)}.v1 .pageHeader-wrapper{margin:0 auto;width:90%}.v1 .pageHeader-main{padding-top:20px;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.v1 .pageHeader-info{min-height:60px}.v1 .pageHeader-meta{margin:0;padding:6px 0}.v1 .pageHeader-meta .link:not(:last-child){margin-right:15px}.v1 .pageHeader-title{margin:0;padding:0;font-size:2.2rem}.v1 .pageHeader-anchors{padding-top:6px;border-top:1px solid #adb9c9}.v1 .pageHeader-anchors>ul{margin:0;padding:0;list-style:none}.v1 .pageHeader-anchorItem{display:inline-block;color:#0053b3;text-transform:uppercase;font-weight:700;cursor:pointer;border-bottom:4px solid rgba(0,0,0,0)}.v1 .pageHeader-anchorItem:not(:last-child){margin-right:20px}.v1 .pageHeader-anchorItem:hover:not(.pageHeader-anchorItem--active){border-bottom-color:rgba(0,83,179,.3)}.v1 .pageHeader-anchorItem--active{border-bottom-color:#0053b3}.v1 .rb-pagination{margin:20px 0 15px;text-align:right}.v1 .rb-pagination .pagination-pages{padding:0 15px;color:#596b82}.v1 .popin{position:fixed;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;z-index:4001;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.3)}.v1 .popin,.v1 .popin-wrapper{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.v1 .popin-wrapper{position:relative;padding:35px 70px;max-height:95%;width:1000px;overflow-y:auto;background:#ebeff3;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;-webkit-box-align:start;-webkit-align-items:flex-start;-moz-box-align:start;-ms-flex-align:start;align-items:flex-start}.v1 .popin-wrapper>div{-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1;padding-bottom:35px}.v1 .popin-header{margin-top:0;text-align:center}.v1 .popin-title{margin:10px 0;padding:0;font-size:1.5rem;font-weight:700;color:#26353f}.v1 .popin-h1{margin-top:30px;font-weight:700;color:#16919f;font-size:1rem}.v1 .popin-body{margin-top:40px}.v1 .popin-close{position:absolute;margin:0;top:35px;right:40px}.v1 .role{padding:3px 15px;border:1px solid #adb9c9;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.v1 .sidepanel{z-index:4000;position:fixed;top:0;left:0}.v1 .sidepanel-shadow{position:absolute;top:0;bottom:0;width:100%;background:rgba(0,0,0,.3);opacity:0;-moz-transition:opacity .4s linear;transition:opacity .4s linear;-webkit-transition:opacity .4s linear}.v1 .sidepanel-wrapper{position:fixed;z-index:7000;width:425px;top:0;bottom:0;right:-425px;color:#182b51;background:#c9d3df;-moz-transition:right .4s ease-in-out;transition:right .4s ease-in-out;-webkit-transition:right .4s ease-in-out;-webkit-box-shadow:0 5px 8px 0 rgba(0,0,0,.16);box-shadow:0 5px 8px 0 rgba(0,0,0,.16);overflow-y:scroll;padding:15px 0}.v1 .sidepanel-header{margin-bottom:15px}.v1 .sidepanel-title{margin:0;padding:0 35px;color:#26353f;font-size:1.2rem;line-height:40px}.v1 .sidepanel-actions{position:absolute;top:15px;padding:0 35px;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-webkit-justify-content:flex-end;-moz-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;width:100%;text-align:right;height:40px;color:#0053b3}.v1 .sidepanel-actions>span{cursor:pointer}.v1 .sidepanel-section{border-top:1px solid #8393a7;padding:20px 35px}.v1 .sidepanel--visible{bottom:0;right:0}.v1 .sidepanel--visible .sidepanel-wrapper{right:0}.v1 .sidepanel--visible .sidepanel-shadow{opacity:1}.v1 .switch button{padding:0 20px;font-weight:700;color:#53657d;background:#ebeff3;border:1px solid #b1bccb;line-height:35px;font-size:.8rem}.v1 .switch button.active{background:#016be6;color:#fff}.v1 .switch button:first-of-type{-webkit-border-top-left-radius:5px;-moz-border-radius-topleft:5px;border-top-left-radius:5px;-webkit-border-bottom-left-radius:5px;-moz-border-radius-bottomleft:5px;border-bottom-left-radius:5px}.v1 .switch button:last-of-type{border-left:none;-webkit-border-top-right-radius:5px;-moz-border-radius-topright:5px;border-top-right-radius:5px;-webkit-border-bottom-right-radius:5px;-moz-border-radius-bottomright:5px;border-bottom-right-radius:5px}.v1 .rb-table>table thead th.filterable>span{cursor:pointer;border:1px solid #fff;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;color:#fff}.v1 .rb-table>table thead th.filterable>span>img,.v1 .rb-table>table thead th.filterable>span>svg{margin-top:-10px;margin-left:5px}.v1 .rb-table>table thead th.filterable>span:hover{background:hsla(0,0%,100%,.2)}.v1 .rb-table>table thead th.filterable>span:hover.active{background:hsla(0,0%,100%,.8)}.v1 .rb-table>table thead th.filterable>span.active{background:#fff;color:#53657d}.v1 .rb-table>table tbody tr.odd{background:#ebeff3}.v1 .rb-table>table tbody tr.odd:hover{background:#dde1e5}.v1 .rb-table>table tbody tr.townRow--empty td{padding:50px 0;text-align:center;text-transform:uppercase;font-weight:700}.v1 .rb-table{overflow:auto;min-height:250px}.v1 .rb-table>table{table-layout:fixed}.v1 .rb-table>table thead th{position:relative;padding-top:7px;padding-bottom:7px;color:#adb9c8;background:#53657d;white-space:nowrap}.v1 .rb-table>table thead th>span{padding:3px 10px;border:1px solid rgba(0,0,0,0)}.v1 .rb-table>table thead th.table-col--filterable>span{cursor:pointer;border:1px solid #fff;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;color:#fff}.v1 .rb-table>table thead th.table-col--filterable>span>img,.v1 .rb-table>table thead th.table-col--filterable>span>svg{margin-top:-10px;margin-left:5px}.v1 .rb-table>table thead th.table-col--filterable>span:hover{background:hsla(0,0%,100%,.2)}.v1 .rb-table>table thead th.table-col--filterable.table-col--active>span{background:#fff;color:#53657d}.v1 .rb-table>table thead th.table-col--filterable.table-col--active>span:hover{background:hsla(0,0%,100%,.8)}.v1 .rb-table>table tbody tr{cursor:pointer}.v1 .rb-table>table tbody tr:hover{background:#dde1e5}.v1 .rb-table>table tbody tr.table-row--odd{background:#ebeff3}.v1 .rb-table>table tbody tr.table-row--odd:hover{background:#dde1e5}.v1 .rb-table>table tbody tr.table-row--empty td{padding:50px 0;text-align:center;text-transform:uppercase;font-weight:700}.v1 .rb-table-aside{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}.v1 .vgt-table td,.v1 .vgt-table th{padding:.75em!important}.v1 .userCard{padding:25px 25px 25px 50px;background:#fff;width:450px;-webkit-box-shadow:0 5px 5px 0 rgba(0,0,0,.1);box-shadow:0 5px 5px 0 rgba(0,0,0,.1)}.v1 .userCard>h1{margin:0;padding:0;font-size:1.2rem}.v1 .userCard>h2{margin:3px 0 0;padding:0;font-size:.9rem;color:#0e9faa}.v1 .userCard>h3{margin:0;padding:0;font-size:.9rem;font-weight:400}.v1 .userCard>h3.userCard-position--empty{font-style:italic;color:#53657d}.v1 .userCard-infoList{margin:10px 0 0;padding:0;list-style:none}.v1 .userCard-infoList>li{padding:2px 0}.v1 .userCard-infoList>li:before{position:absolute;content:"";margin-top:6px;margin-left:-25px;width:15px;height:15px;background-position:50%;background-repeat:no-repeat;-webkit-background-size:contain;background-size:contain;background:#adb9c9}.v1 .userCard-infoList>.userCard-info--email:before{-webkit-mask:url(/img/envelope.svg) no-repeat center;mask:url(/img/envelope.svg) no-repeat center}.v1 .userCard-infoList>.userCard-info--phone:before{-webkit-mask:url(/img/phone.svg) no-repeat center;mask:url(/img/phone.svg) no-repeat center}.v1 .userpost-date{margin:0;padding:0}.v1 .userpost-title{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;margin:5px 0 0;padding:0;font-size:1rem;color:#0053b3;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}.v1 .userpost-actions{visibility:hidden}.v1 .userpost-action--delete,.v1 .userpost-action--edit{cursor:pointer;margin-left:5px}.v1 .userpost-action--delete{color:#d63626}.v1 .userpost:hover .userpost-actions{visibility:visible}.v1 img{display:inline-block}.v1 .icon{vertical-align:initial}.v1 .leaflet-control-zoom a{width:30px;height:30px;line-height:30px;text-decoration:none;color:#000;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.v1 p{-webkit-margin-before:1em;margin-block-start:1em;-webkit-margin-after:1em;margin-block-end:1em}.v1 body,.v1 h1,.v1 h2,.v1 h3,.v1 h4,.v1 h5,.v1 h6{font-family:Fira Sans,Arial,sans-serif}.v1 .page--withMargin{padding-bottom:50px}.v1 .mandatory,.v1 label.error,.v1 span.error{color:#d63626;font-weight:700}.v1 p.error{margin-top:0}.v1 p.error>ul{margin-top:0;color:#d63626}.v1 label.error.message{font-weight:400;font-style:italic}.v1 .error>ul{color:#d63626}.v1 select{-webkit-background-size:15px 15px;background-size:15px 15px}.v1 .section{margin-top:50px;padding:0}.v1 .main-pane{padding:0}.v1 .notification>.spinner{vertical-align:middle;margin-right:10px}.v1 .panel__header>h3>a{color:inherit;text-decoration:underline}.v1 .panel__header>h3>a:hover{text-decoration:none}.v1 .actionButton{padding:3px 10px;color:#fff;background:#006be6;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;border:none;font-size:.8rem;text-transform:uppercase}.v1 button:disabled,.v1 button:disabled:hover{background-color:rgba(0,83,179,.5);cursor:default}.v1 .customNotifications .notification-wrapper{margin-top:50px}.v1 .customNotifications .vue-notification,.v1 .customNotifications .vue-notification-template{display:-webkit-flex;display:-moz-box;display:flex;display:-webkit-box;display:-ms-flexbox;font-size:1.1rem;padding:30px 10px;margin:0 5px 5px;width:400px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;text-align:center;color:#fff;background:#44a4fc;border-left:5px solid #187fe7}.v1 .customNotifications .vue-notification-template .notification-icon,.v1 .customNotifications .vue-notification .notification-icon{padding-left:20px;text-align:center}.v1 .customNotifications .vue-notification-template .notification-icon:before,.v1 .customNotifications .vue-notification .notification-icon:before{content:"";display:inline-block;width:70px;height:70px;background:#fff;-webkit-mask:url(/img/check.svg) no-repeat center;mask:url(/img/check.svg) no-repeat center}.v1 .customNotifications .vue-notification-template .notification-content,.v1 .customNotifications .vue-notification .notification-content{-webkit-flex-grow:1;-moz-box-flex:1;flex-grow:1;-webkit-box-flex:1;-ms-flex-positive:1;display:-webkit-flex;display:-moz-box;display:flex;display:-webkit-box;display:-ms-flexbox;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;flex-direction:column;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;-webkit-box-pack:center;-ms-flex-pack:center}.v1 .customNotifications .vue-notification-template.success,.v1 .customNotifications .vue-notification.success{background:#68cd86;border-left-color:#42a85f}.v1 .leaflet-marker-custom>span.address{display:block;position:relative;color:#fff;width:30px;height:30px;font-size:0;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;white-space:nowrap}.v1 .leaflet-marker-custom>span.address:after{position:absolute;top:50%;left:50%;margin-top:-10px;margin-left:-10px;content:"";width:20px;height:20px;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;background:#fff}.v1 .leaflet-marker-custom>span.address>i{border-left:10px solid rgba(0,0,0,0);border-right:10px solid rgba(0,0,0,0);border-top:10px solid rgba(0,0,0,0);position:absolute;bottom:-6px;left:5px}.v1 .leaflet-marker-custom>span.water>img{position:absolute;top:50%;left:50%;margin-left:-1px;width:20px}.v1 .mapPin{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}.v1 .mapPin .mapPin-wrapper{-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;text-align:center}.v1 .mapPin .mapPin-wrapper .mapPin-marker{display:inline-block;width:1.6rem;height:2.1rem;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;-webkit-mask-image:url(/img/map-marker.svg);mask-image:url(/img/map-marker.svg)}.v1 .mapPin .mapPin-wrapper .mapPin-water{position:absolute;z-index:10;margin-top:.2rem;margin-left:.2rem;width:1.25rem;height:1.25rem;background:#fff;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}.v1 .mapPin .mapPin-wrapper .mapPin-water>img{width:100%;height:auto}.v1 .mapPin .mapPin-address{visibility:hidden;text-align:left;margin-left:.3rem;font-size:1rem;padding:.1rem .5rem;background:hsla(0,0%,100%,.65);white-space:nowrap}.v1 .mapPin.mapPin--result.mapPin--street .mapPin-address{visibility:visible;color:red}.v1 .mapPin.mapPin--result.mapPin--shantytown .mapPin-address{visibility:visible}.v1 .mapPin.mapPin--result.mapPin--shantytown .mapPin-wrapper{padding-top:.5rem;width:3.5rem;height:3.5rem;border:3px solid red}.v1 .leaflet-address-toggler,.v1 .leaflet-legend{padding:5px 10px;background:#fff;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;border:2px solid rgba(0,0,0,.2)}.v1 .leaflet-legend>h1{margin:5px 0 0;padding:0;font-size:1rem}.v1 .leaflet-legend>p>span{display:inline-block;margin-right:5px;width:15px;height:15px;vertical-align:middle;background:red;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.v1 .alert{position:fixed;z-index:10000;top:0;left:0;bottom:0;right:0;background:rgba(0,0,0,.5)}.v1 .alert .wrapper{position:absolute;padding:0 40px 40px;left:100px;right:100px;top:100px;bottom:100px;overflow-y:auto;background:#fff}.v1 .link{text-decoration:none;font-weight:700;color:#0053b3;cursor:pointer}.v1 .link:hover{text-decoration:underline}.v1 .fieldType>i{display:inline-block;width:15px;height:15px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;vertical-align:middle}.v1 .fieldType>span{margin-left:5px;white-space:normal;display:inline-block;vertical-align:middle;max-width:90px;line-height:20px}.v1 .link--secondary{color:#8393a7}.v1 .link--disabled{cursor:default;color:#ccc;font-weight:400}.v1 .link--disabled:hover{text-decoration:none}.v1 .mail:after{content:attr(data-name) "@" attr(data-domain) "." attr(data-tld)}.v1 .subtitle{color:#16919f;font-weight:700}.v1 .background--gray{background:#ebeff3}.v1 .bordered--right{border-right:1px solid #adb9c9}.v1 .bordered--bottom{border-bottom:1px solid #adb9c9}.v1 table.bordered{margin:0;padding:0;border-collapse:collapse}.v1 table.bordered td,.v1 table.bordered th{padding:5px 0;border-bottom:1px solid #adb9c9}.v1 table.bordered th{text-align:left}.v1 table.bordered th:first-child{padding-right:30px}.v1 .rbTag{padding:0 10px;margin-right:5px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;font-weight:700;background:#dcf3ff}.v1 .rbTag--warning{background:#fff0e4}.v1 .rbTag--error{background:#e5aea8}.v1 .locationPoint{color:#0053b3;font-weight:700}.v1 .locationPoint:before{margin-right:7px;margin-bottom:5px;display:inline-block;content:"";width:20px;height:26px;background-position:50%;background-repeat:no-repeat;-webkit-background-size:contain;background-size:contain;background:#0053b3;-webkit-mask:url(/img/map-marker-alt.svg) no-repeat center;mask:url(/img/map-marker-alt.svg) no-repeat center;vertical-align:middle}.v1 .user{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;color:#0053b3;font-weight:700}.v1 .user:before{margin-right:7px;display:inline-block;content:"";width:20px;height:26px;background-position:50%;background-repeat:no-repeat;-webkit-background-size:contain;background-size:contain;background:#0053b3;-webkit-mask:url(/img/user.svg) no-repeat center;mask:url(/img/user.svg) no-repeat center}.v1 .divider{margin:10px 0;border-top:1px solid #adb9c9}.v1 .align--right{text-align:right}.leaflet-show-addresses .v1 .mapPin.mapPin--result.mapPin--shantytown .mapPin-address,.leaflet-show-addresses .v1 .mapPin:not(.mapPin--result) .mapPin-address{visibility:visible}.leaflet-show-addresses .v1 .leaflet-marker-custom>span.address{display:inline;font-size:14px;padding:5px 7px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.leaflet-show-addresses .v1 .leaflet-marker-custom>span.address:before{bottom:-10px;left:10px}.leaflet-show-addresses .v1 .leaflet-marker-custom>span.addess:after{display:none}@media (min-width:640px){.sm\:text-display-xl{font-size:3rem}.sm\:text-display-lg,.sm\:text-display-xl{line-height:1.25em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.sm\:text-display-lg{font-size:2rem}.sm\:text-display-md{font-size:1.5rem;line-height:1.25em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.sm\:text-display-sm{font-size:1.25rem}.sm\:text-display-sm,.sm\:text-display-xs{line-height:1.375em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.sm\:text-display-xs{font-size:1rem}.sm\:text-xl{font-size:1.5rem;line-height:1.5em}.sm\:text-lg{font-size:1.25rem;line-height:1.5em}.sm\:text-md{font-size:1rem;line-height:1.5em}.sm\:text-sm{font-size:.865rem;line-height:1.5em}.sm\:text-xs{font-size:.75rem;line-height:1em;font-weight:300}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width:768px){.md\:text-display-xl{font-size:3rem}.md\:text-display-lg,.md\:text-display-xl{line-height:1.25em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.md\:text-display-lg{font-size:2rem}.md\:text-display-md{font-size:1.5rem;line-height:1.25em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.md\:text-display-sm{font-size:1.25rem}.md\:text-display-sm,.md\:text-display-xs{line-height:1.375em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.md\:text-display-xs{font-size:1rem}.md\:text-xl{font-size:1.5rem;line-height:1.5em}.md\:text-lg{font-size:1.25rem;line-height:1.5em}.md\:text-md{font-size:1rem;line-height:1.5em}.md\:text-sm{font-size:.865rem;line-height:1.5em}.md\:text-xs{font-size:.75rem;line-height:1em;font-weight:300}.md\:block{display:block}.md\:flex{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.md\:grid{display:grid}.md\:hidden{display:none}.md\:flex-row{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-moz-box-orient:horizontal;-moz-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.md\:my-0{margin-bottom:0}.md\:mt-0,.md\:my-0{margin-top:0}.md\:mb-0{margin-bottom:0}.md\:mr-16{margin-right:4rem}.md\:w-1\/2{width:50%}.md\:gap-16{grid-gap:4rem;gap:4rem}.md\:gap-x-16{grid-column-gap:4rem;-webkit-column-gap:4rem;-moz-column-gap:4rem;column-gap:4rem}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1024px){.lg\:text-display-xl{font-size:3rem}.lg\:text-display-lg,.lg\:text-display-xl{line-height:1.25em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.lg\:text-display-lg{font-size:2rem}.lg\:text-display-md{font-size:1.5rem;line-height:1.25em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.lg\:text-display-sm{font-size:1.25rem}.lg\:text-display-sm,.lg\:text-display-xs{line-height:1.375em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.lg\:text-display-xs{font-size:1rem}.lg\:text-xl{font-size:1.5rem;line-height:1.5em}.lg\:text-lg{font-size:1.25rem;line-height:1.5em}.lg\:text-md{font-size:1rem;line-height:1.5em}.lg\:text-sm{font-size:.865rem;line-height:1.5em}.lg\:text-xs{font-size:.75rem;line-height:1em;font-weight:300}.lg\:flex{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.lg\:flex-shrink-0{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.lg\:flex-shrink{-webkit-flex-shrink:1;-ms-flex-negative:1;flex-shrink:1}.lg\:mx-auto{margin-left:auto;margin-right:auto}.lg\:p-8{padding:2rem}.lg\:px-4{padding-left:1rem;padding-right:1rem}.lg\:py-8{padding-top:2rem;padding-bottom:2rem}}@media (min-width:1280px){.xl\:text-display-xl{font-size:3rem}.xl\:text-display-lg,.xl\:text-display-xl{line-height:1.25em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.xl\:text-display-lg{font-size:2rem}.xl\:text-display-md{font-size:1.5rem;line-height:1.25em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.xl\:text-display-sm{font-size:1.25rem}.xl\:text-display-sm,.xl\:text-display-xs{line-height:1.375em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.xl\:text-display-xs{font-size:1rem}.xl\:text-xl{font-size:1.5rem;line-height:1.5em}.xl\:text-lg{font-size:1.25rem;line-height:1.5em}.xl\:text-md{font-size:1rem;line-height:1.5em}.xl\:text-sm{font-size:.865rem;line-height:1.5em}.xl\:text-xs{font-size:.75rem;line-height:1em;font-weight:300}}@media print{.print\:text-display-xl{font-size:3rem}.print\:text-display-lg,.print\:text-display-xl{line-height:1.25em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.print\:text-display-lg{font-size:2rem}.print\:text-display-md{font-size:1.5rem;line-height:1.25em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.print\:text-display-sm{font-size:1.25rem}.print\:text-display-sm,.print\:text-display-xs{line-height:1.375em;font-weight:700;--text-opacity:1;color:#1e1e1e;color:rgba(30,30,30,var(--text-opacity))}.print\:text-display-xs{font-size:1rem}.print\:text-xl{font-size:1.5rem;line-height:1.5em}.print\:text-lg{font-size:1.25rem;line-height:1.5em}.print\:text-md{font-size:1rem;line-height:1.5em}.print\:text-sm{font-size:.865rem;line-height:1.5em}.print\:text-xs{font-size:.75rem;line-height:1em;font-weight:300}.print\:grid{display:grid}.print\:hidden{display:none}.print\:max-w-none{max-width:none}.print\:px-0{padding-left:0;padding-right:0}}.inputWrapper-error{left:-16px}.checkbox-town-input{width:1.25rem;height:1.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-width:2px;--border-opacity:1;border-color:#f0f0f0;border-color:rgba(240,240,240,var(--border-opacity));position:relative;outline:0;cursor:pointer}.checkbox-town-input:checked{--bg-opacity:1;background-color:#000091;background-color:rgba(0,0,145,var(--bg-opacity));background-image:url(../img/check-solid.2e0a6702.svg);background-repeat:no-repeat;border:2px inset rgba(0,0,0,0);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.radio-town-input{width:1.25rem;height:1.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-width:2px;--border-opacity:1;border-color:#f0f0f0;border-color:rgba(240,240,240,var(--border-opacity));position:relative;outline:0;cursor:pointer;-webkit-border-radius:9999px;-moz-border-radius:9999px;border-radius:9999px}.radio-town-input:checked{--bg-opacity:1;background-color:#000091;background-color:rgba(0,0,145,var(--bg-opacity));background-image:url(../img/check-solid.2e0a6702.svg);background-repeat:no-repeat;border:4px inset rgba(0,0,0,0);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.vue-notification[data-v-7743ec3e]{background:#44a4fc;border-left:5px solid #187fe7}.vue-notification.warn[data-v-7743ec3e]{background:#ffb648;border-left-color:#f48a06}.vue-notification.error[data-v-7743ec3e]{background:#e54d42;border-left-color:#b82e24}.vue-notification.success[data-v-7743ec3e]{background:#68cd86;border-left-color:#42a85f}.z-backdrop{z-index:1000}.z-sidePanel{z-index:1001}.leftBorder[data-v-fe57aba0]{width:2px;left:-16px}.checkableGroup--horizontalLayout .checkbox-card,.checkableGroup--horizontalLayout .radio-card{margin-right:.25rem;margin-bottom:.25rem}.checkableGroup--horizontalLayout .checkbox-card:last-child,.checkableGroup--horizontalLayout .radio-card:last-child{margin-right:0}.checkableGroup--horizontalLayout .checkbox-default,.checkableGroup--horizontalLayout .radio-default{margin-right:1rem}.checkableGroup--horizontalLayout .checkbox-default:last-child,.checkableGroup--horizontalLayout .radio-default:last-child{margin-right:0;margin-bottom:0}.checkableGroup--verticalLayout .radio-card{margin-bottom:1.5rem}.checkableGroup--verticalLayout .radio-card:last-child{margin-bottom:0}.checkableGroup--verticalLayout .checkbox-card,.checkableGroup--verticalLayout .radio-card{margin-bottom:.5rem}.arrow[data-v-afec8fd8]{display:block;height:0;width:0;border-top:14px solid #fff;border-right:8px solid rgba(0,0,0,0);border-left:7px solid rgba(0,0,0,0)}.tooltip[data-v-e37a80c0]{visibility:hidden;position:absolute}.has-tooltip:hover .tooltip[data-v-e37a80c0]{visibility:visible;z-index:50}.marianne[data-v-07ee7c4c]{height:24px}.feedbackText[data-v-a695c1c4]:before{content:"«";position:absolute;left:-32px;top:-24px;--text-opacity:1;color:#ff6f4c;color:rgba(255,111,76,var(--text-opacity));font-size:3rem;line-height:1.25em}.feedbackText[data-v-a695c1c4]:after{content:"»";margin-left:.25rem;--text-opacity:1;color:#ff6f4c;color:rgba(255,111,76,var(--text-opacity));font-size:1.25rem;line-height:1.5em}.wrapper{position:relative;padding-top:25px;height:0}.wrapper iframe{position:absolute;top:0;left:0;width:100%;height:100%}.topbar .topbar-container[data-v-b24b83de]{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;background:#20396b;-webkit-box-pack:space-between;-ms-flex-pack:space-between;-webkit-justify-content:space-between;-moz-box-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;padding:5px;border-bottom:1px solid #294377}.topbar .topbar-container .topbar-home[data-v-b24b83de]{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;height:40px;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;letter-spacing:.05em;text-decoration:none;color:#fff;font-family:Evolventa;white-space:nowrap}.topbar .topbar-container .topbar-home>img[data-v-b24b83de]{height:30px}.topbar .topbar-container .topbar-home .topbar-marianne[data-v-b24b83de]{margin-right:5px;background:#fff}.topbar .topbar-container .topbar-home .topbar-domain[data-v-b24b83de]{font-size:.8em;-webkit-padding-after:3px}.topbar .topbar-container .topbar-menu[data-v-b24b83de]{color:#fff;font-size:.8em;letter-spacing:.05em;font-family:Evolventa;cursor:pointer;text-transform:uppercase}.topbar .topbar-container .nav__links[data-v-b24b83de]{display:none}.topbar .topbar-container .nav__links .nav__item .dropdown[data-v-b24b83de]{color:#8393a7;text-transform:uppercase;-moz-transition:background .1s linear;transition:background .1s linear;-webkit-transition:background .1s linear}.topbar .topbar-container .nav__links .nav__item .dropdown[data-v-b24b83de]:hover{background:#fff}.topbar .topbar-container .nav__links .nav__item .dropdown .dropdown-content[data-v-b24b83de]{z-index:6000;text-transform:none;white-space:nowrap}.topbar .topbar-container .nav__links .nav__item>a[data-v-b24b83de]{background:none;color:#8393a7;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;border-bottom:1px solid rgba(0,0,0,0);margin:0 .8em;padding:.2em 0;text-transform:uppercase;-moz-transition:color .2s linear;transition:color .2s linear;-webkit-transition:color .2s linear}.topbar .topbar-container .nav__links .nav__item>a.active[data-v-b24b83de]{color:#fff}.topbar .topbar-container .nav__links .nav__item>a.active[data-v-b24b83de]:before{display:inline-block;content:"";width:5px;height:5px;background:#fff;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;vertical-align:middle;margin-right:10px}.topbar .topbar-container .nav__links .nav__item>a[data-v-b24b83de]:hover{color:#fff}.topbar .topbar-container .nav__links .nav__item>a.router-link--covid[data-v-b24b83de]{background:#d63626;color:#fff;font-weight:700;padding-left:10px;padding-right:10px}.sidebar[data-v-b24b83de]{z-index:8000;position:fixed;top:0;bottom:0;right:-230px;background:#182b51;width:230px;-moz-transition:right .25s ease-in-out;transition:right .25s ease-in-out;-webkit-transition:right .25s ease-in-out}.sidebar .nav__links[data-v-b24b83de]{display:block;margin:20px 0 20px 30px}.sidebar .nav__links .nav__item[data-v-b24b83de]{display:block;margin-bottom:20px}.sidebar .nav__links .nav__item .dropdown[data-v-b24b83de]{color:#fff}.sidebar .nav__links .nav__item .dropdown[data-v-b24b83de]:hover{color:#8393a7}.sidebar .nav__links .nav__item .dropdown a[data-v-b24b83de]{color:#8393a7}.sidebar .nav__links .nav__item a[data-v-b24b83de]{color:#fff}.sidebar .nav__links .nav__item a[data-v-b24b83de]:hover{color:#003b80;background:#c9d3df}.sidebar .nav__links .nav__item a.active[data-v-b24b83de]{color:#003b80;background:#fff}.sidebar .nav__links .nav__item a.router-link--covid[data-v-b24b83de]{background:#d63626;color:#fff;font-weight:700;padding-left:10px;padding-right:10px}.sidebar.opened[data-v-b24b83de]{right:0}.sidebar .sidebar-cross[data-v-b24b83de]{padding:10px;text-align:right}.sidebar .sidebar-cross>img[data-v-b24b83de]{cursor:pointer;width:20px}@media(min-width:500px){.topbar .topbar-container .topbar-home .topbar-betagouv[data-v-b24b83de],.topbar .topbar-container .topbar-home .topbar-domain[data-v-b24b83de]{display:inline}}@media(min-width:630px){.topbar .topbar-container[data-v-b24b83de]{padding:15px}.topbar .topbar-container .topbar-home .topbar-marianne[data-v-b24b83de]{margin-right:10px}.topbar .topbar-container .topbar-home .topbar-domain[data-v-b24b83de]{font-size:1em}.topbar .topbar-container .topbar-home>img[data-v-b24b83de]{height:40px}.topbar .topbar-container .topbar-menu[data-v-b24b83de]{font-size:.9em}}@media(min-width:1150px){.topbar .topbar-container .topbar-menu[data-v-b24b83de]{display:none}.topbar .topbar-container .nav__links[data-v-b24b83de]{display:block}.sidebar.opened[data-v-b24b83de]{display:none}}.v1 .autocompleter-measure{position:absolute;color:rgba(0,0,0,0)}.v1 .autocompleter-textfield{position:relative;max-width:400px}.v1 .autocompleter-textfield>input{padding-left:40px;padding-right:80px}.v1 .autocompleter-prefixIcon{position:absolute;z-index:1;width:43px;height:43px;line-height:39px;text-align:center}.v1 .autocompleter-prefixIcon>img{width:25px;vertical-align:middle}.v1 .autocompleter-clearIcon{position:absolute;top:1px;right:0;z-index:1;display:inline-block;background:url(/img/delete.svg) no-repeat 50%;-webkit-background-size:50% 50%;background-size:50%;width:40px;height:40px;cursor:pointer}.v1 .autocompleter-spinner{top:9px;position:absolute;left:50px;margin-left:0;padding-right:40px}.v1 .autocompleter-spinner>img{width:25px}.v1 .autocompleter-error{margin:10px 0 0;padding:0;color:#d63626;font-weight:700}.v1 .autocompleter-error>img{width:25px;vertical-align:bottom}.v1 .autocompleter-suggestionContainer{display:block;border:1px solid #ccc;border-bottom:0;margin-top:8px;background:#fff;width:100%}.v1 .autocompleter-suggestionContainer--float{position:absolute;z-index:3000}.v1 .autocompleter-suggestionCategoryContainer{display:-webkit-flex;display:-moz-box;display:flex;display:-webkit-box;display:-ms-flexbox;line-height:42px}.v1 .autocompleter-suggestionCategory{padding-right:15px;width:150px;text-align:right;vertical-align:top;font-weight:700;text-transform:uppercase;font-size:.7rem;letter-spacing:.05em;font-family:Evolventa;background:#eee;border-bottom:1px solid #ccc;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.v1 .autocompleter-suggestionCategoryItems{-webkit-flex-grow:1;-moz-box-flex:1;flex-grow:1;-webkit-box-flex:1;-ms-flex-positive:1;margin:0;padding:0;list-style:none}.v1 .autocompleter-suggestionCategoryItem,.v1 .autocompleter-suggestionCategoryItem--empty,.v1 .autocompleter-suggestionCategoryItem--error{display:block;padding-left:15px;width:100%;border-bottom:1px solid #eee}.v1 .autocompleter-suggestionCategoryItem--empty:last-child,.v1 .autocompleter-suggestionCategoryItem--error:last-child,.v1 .autocompleter-suggestionCategoryItem:last-child{border-bottom:1px solid #ccc}.v1 .autocompleter-suggestionContainer--withoutCategories .autocompleter-suggestionCategoryContainer:not(:last-child) .autocompleter-suggestionCategoryItem:last-child{border-bottom:1px solid #eee}.v1 .autocompleter-suggestionCategoryItem{cursor:pointer}.v1 .autocompleter-suggestionCategoryItem:hover{background:#eee}.v1 .autocompleter-suggestionCategoryItem.active{color:#fff;background:#006be6}.v1 .autocompleter-suggestionCategoryItem.active:hover{background:#609ee5}.v1 .autocompleter-suggestionCategoryItem--empty{text-align:center;font-style:italic;cursor:default}.v1 .autocompleter-selectionContainer>p{margin:15px 0 5px;padding:0}.v1 .autocompleter-selectionContainer>table{max-width:400px}.v1 .autocompleter-removeItemIcon{cursor:pointer;width:20px}.v1 .autocompleter-suggestionCategoryItem--error{color:#d63626;font-weight:700;background:rgba(214,54,38,.15)}.v1 .autocompleter-suggestionCategoryItem--error>img{width:25px;vertical-align:middle}.v1 .error input{border:1px solid #d63626}.v1 .autocompleter-textfield{max-width:inherit}.v1 .location{position:relative;width:100%;height:500px}.v1 .location-map{width:100%;height:100%}.v1 .location-tutorial{position:absolute;z-index:2000;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.4)}.v1 .location-tutorial:before{display:inline-block;content:"";height:100%;vertical-align:middle}.v1 .location-tutorialWrapper{width:99%;display:inline-block;vertical-align:middle;text-align:center;color:#fff}.v1 .location-tutorialTitle{margin:0;padding:0;text-transform:uppercase;font-size:1.5rem}.v1 .location-tutorialDescription{margin:10px 0;padding:0}.v1 .location-tutorialDescription,.v1 .location-tutorialTitle{padding:4px 20px;display:inline-block;text-shadow:1px 1px 5px #000;background:rgba(0,83,179,.3)}.v1 .location-tutorialButton{margin:40px 0 0;padding:0}.v1 .autocompleter-suggestionContainer{margin-top:0}.v1 .tableFilter[data-v-cdbe4124]{display:none;z-index:10;min-width:200px;position:absolute;top:50px;padding:10px 20px;background:#fff;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;-webkit-box-shadow:0 0 10px 0 rgba(0,0,0,.2);box-shadow:0 0 10px 0 rgba(0,0,0,.2);text-transform:none;color:#26353f;font-weight:400}.v1 .tableFilter.active[data-v-cdbe4124]{display:block}.v1 .tableFilter ul[data-v-cdbe4124]{margin:0;padding:0;list-style:none}.v1 .tableFilter footer[data-v-cdbe4124]{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin:10px 0 0}.v1 .tableFilter label[data-v-cdbe4124]{display:inline;cursor:pointer}.v1 .table-col--checkbox{width:50px}.v1 span.secondary{font-style:italic;color:#53657d}.v1 .townList-search{margin-top:20px}img{cursor:pointer}.planFundingRow--disabled img{display:none}.v1 .table .planFunding-addRow{text-align:center;cursor:pointer;background-color:#0053b3;color:#fff}.v1 .table .planFunding-addRow:hover{background:#003b80}.v1 .table .planFunding-addRow--disabled,.v1 .table .planFunding-addRow--disabled:hover{cursor:default;background-color:rgba(0,83,179,.3)}.v1 .planFunding-header{font-size:1.5rem;font-weight:700;margin-bottom:10px}.v1 .planFunding-yearSwitch{color:#0053b3;cursor:pointer;line-height:30px}.v1 .planFunding-yearSwitch--disabled{color:#8393a7}.v1 .planFunding-type{min-width:200px}.v1 .planFunding-amount{min-width:150px}.v1 .planFunding-details{width:99%}.v1 .table thead th[data-v-0c9f54ed]:not(:first-of-type){text-align:center}.v1 .table tbody th[data-v-0c9f54ed]{font-weight:700}.v1 .table tbody th>span[data-v-0c9f54ed]{font-weight:400}.v1 .table[data-v-0c9f54ed]{max-width:40rem}.v1 .table th[data-v-0c9f54ed]:first-of-type{width:21rem}.v1 .table[data-v-0c9f54ed]:not(:first-of-type){margin-top:2rem}.v1 .etp-type{margin-right:20px;font-weight:700}.v1 .etp-total{max-width:70px}.v1 .etp-total:after{display:block;content:"ETP";color:red}.v1 .etp-removeButton{cursor:pointer;visibility:hidden;margin-left:20px;color:#0053b3}.v1 .etp-row:hover .etp-removeButton{visibility:visible}.v1 .etp-addButton{cursor:pointer;color:#0053b3;font-weight:700}.v1 .input--password,.v1 .input--text,.v1 .input--textarea{max-width:500px}.v1 .input--password-toggler{padding-left:10px;cursor:pointer}.v1 .input--number{max-width:350px}.v1 .input--date,.v1 .vdp-datepicker input{max-width:220px;padding-left:45px}.v1 .form__group .vdp-datepicker__calendar{z-index:5000}.v1 .vdp-datepicker__calendar-button{position:absolute;z-index:1000;height:100%;width:20px;font-size:0;margin-left:10px;background:#adb9c9;-webkit-mask:url(/img/calendar.svg) no-repeat center;mask:url(/img/calendar.svg) no-repeat center}.v1 .vdp-datepicker__clear-button{position:absolute;height:100%;margin-left:-45px;background:url(/img/remove.svg) no-repeat 50%;-webkit-background-size:40% 40%;background-size:40%;width:50px;text-align:center;font-size:0}.v1 input:disabled+.vdp-datepicker__clear-button{display:none}.v1 .input-label{font-weight:700}.v1 .input-description{margin:0 0 12px;padding:0;font-style:italic}.v1 .input-mandatory{font-weight:700;color:#d63626}.v1 .inputContainer.error .input-label{color:#d63626}.v1 .inputContainer.error .input{border:1px solid #d63626}.v1 .input--checkbox,.v1 .input--radio{display:inline-block;margin:8px 0 0;padding:0;list-style:none}.v1 .input--checkbox-option>label,.v1 .input--radio-option>label{display:block;margin-bottom:8px;padding:5px 10px;border:1px solid #c9d3df;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;background:#fff;color:#0053b3;font-weight:700}.note[data-v-569f8548],.v1 .slideNote[data-v-569f8548]{padding:15px 25px;-webkit-box-shadow:0 0 5px 0 rgba(0,0,0,.3);box-shadow:0 0 5px 0 rgba(0,0,0,.3);background:#fff0e4}.note-header[data-v-569f8548],.v1 .slideNote-header[data-v-569f8548]{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}.note-title[data-v-569f8548],.v1 .slideNote-title[data-v-569f8548]{margin:0;padding:0;font-size:1.2rem}.note-body[data-v-569f8548],.v1 .slideNote-body[data-v-569f8548]{margin:0;padding:0 0 0 30px;text-align:center}.note-body>h1[data-v-569f8548],.v1 .slideNote-body>h1[data-v-569f8548]{font-size:1rem;color:#16919f}.v1 .slideNote-title>img[data-v-569f8548],.v1 .slideNote-title>svg[data-v-569f8548]{margin-right:5px;color:#0053b3}.v1 .slideNote-toggle[data-v-569f8548]{cursor:pointer;color:#0053b3}.v1 .slideNote-body[data-v-569f8548]{text-align:left;-moz-transition:max-height .3s ease-out;transition:max-height .3s ease-out;-webkit-transition:max-height .3s ease-out;overflow-y:auto}.v1 .form{background:#ebeff3}.v1 .form-header{height:80px;line-height:80px;background:#fff;-webkit-box-shadow:0 10px 5px -5px rgba(0,0,0,.1);box-shadow:0 10px 5px -5px rgba(0,0,0,.1)}.v1 .form-titleGroup{margin:0 0 30px}.v1 .form-title{display:inline-block;margin:0 0 5px;padding:0;font-size:1.5rem;letter-spacing:.05em;font-family:Evolventa}.v1 .form-description{margin:0;padding:0;text-align:center}.v1 .form-breadcrumb{display:-webkit-flex;display:-moz-box;display:flex;display:-webkit-box;display:-ms-flexbox;-webkit-flex-direction:row;-moz-box-orient:horizontal;-moz-box-direction:normal;flex-direction:row;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;-webkit-box-pack:center;-ms-flex-pack:center;margin:60px 100px 100px;padding:0;list-style:none}.v1 .form-breadcrumbItem>a{display:block;cursor:default;width:50px;height:50px;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;background:#eee;text-align:center}.v1 .form-breadcrumbItem>a:before{content:"";display:inline-block;vertical-align:middle;height:100%}.v1 .form-breadcrumbItem>a>span{display:inline-block;vertical-align:middle;width:42px;height:42px;line-height:42px;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;color:#ccc;background:#eee;text-decoration:none;font-weight:700;font-size:1.4rem}.v1 .form-breadcrumbItem>p{position:absolute;margin:8px 0 0 -50px;width:150px;text-align:center;text-transform:uppercase;font-size:.8em;letter-spacing:.05em;font-family:Evolventa;color:#999}.v1 .form-breadcrumbItem--current>a>span{color:#fff;background:#006be6}.v1 .form-breadcrumbItem--current>p{color:#006be6}.v1 .form-breadcrumbItem--done>a>span{color:#fff;background:#9dd33f}.v1 .form-breadcrumbItem--done>p{color:#444}.v1 .form-breadcrumbSeparator{-webkit-flex-grow:1;-moz-box-flex:1;flex-grow:1;-webkit-box-flex:1;-ms-flex-positive:1;margin:0 -4px;line-height:47.5px}.v1 .form-breadcrumbSeparator:before{content:"";display:inline-block;vertical-align:middle;width:100%;height:5px;background:#eee}.v1 .form-stepNav{margin:30px 0 10px;text-align:right}.v1 .form-body{padding:50px 0}.v1 .form-body .slideNote{margin-bottom:50px}.v1 .formSection{margin-bottom:85px}.v1 .formSection-header{margin-bottom:10px}.v1 .formSection-title{margin:0;padding:0;font-size:1.5rem;font-family:Evolventa}.v1 .formSection-icon{position:absolute;margin-left:-45px;background:#000;color:#fff;width:30px;height:30px;text-align:center;line-height:30px;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;font-size:1rem}.v1 .formSection-description{margin:0;padding:0}.v1 .notification.error{color:#d63626}.v1 .notification.error ul{margin:0 0 0 20px;padding:0}.v1 .notification.error p{margin:10px 0;padding:0}.v1 .notification.error>span{font-weight:700}.v1 .signin{max-width:1080px;margin-left:auto;margin-right:auto}.contact .autocompleter-textfield input{border-width:2px;--border-opacity:1;border-color:#f0f0f0;border-color:rgba(240,240,240,var(--border-opacity));-webkit-border-radius:.375rem;-moz-border-radius:.375rem;border-radius:.375rem;padding-top:.5rem;padding-bottom:.5rem;outline:0}.contact .autocompleter-textfield input:focus{--border-opacity:1;border-color:#000091;border-color:rgba(0,0,145,var(--border-opacity))}.v1 .filterGroup{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex;padding:20px 0;border-color:#13213f;border-style:solid;border-width:0 0 1px}.v1 .filterGroup>aside{padding:0 15px}.v1 .filterGroup>aside>img,.v1 .filterGroup>aside>svg{width:0;height:0}.v1 .filterGroup>main>h1{margin:0 0 10px;padding:0;font-size:.7em;font-weight:400;text-transform:uppercase;color:#8393a7;letter-spacing:.05em;cursor:pointer}.v1 .filterGroup>main label.label-inline{color:#fff;font-size:.95em}.v1 .filterGroup>main input[type=checkbox]{width:17px;height:17px;background-color:#fff}.v1 .filterGroup>main input[type=checkbox]:checked:before{top:1px;left:0;background:url('data:image/svg+xml;utf8,') 50% no-repeat}@media(min-width:1150px){.v1 .filterGroup>aside>img,.v1 .filterGroup>aside>svg.svg-inline--fa.fa-w-11{width:25px;height:25px;color:#adb9c9}}.v1 .autocomplete[data-v-6b423108]{position:absolute;z-index:1005;width:100%;background:#fff;border:1px solid #adb9c9;overflow:hidden;color:#182b51}.v1 .autocomplete-result[data-v-6b423108]{padding:0 15px;margin:0;cursor:pointer;line-height:40px}.v1 .autocomplete-result.active[data-v-6b423108]{background:#f4f8fc}.v1 .autocomplete-result[data-v-6b423108]:hover{background:#ccc}.v1 .autocomplete-result.active[data-v-6b423108]:hover{color:#fff;background:#006be6}#map[data-v-055bfb64]{width:100%;height:500px}.v1 .shadow[data-v-12c43bda]{visibility:hidden;z-index:6000;position:fixed;top:0;right:0;width:100%;height:100%;background:rgba(0,0,0,.3);opacity:0;-moz-transition:opacity .4s linear;transition:opacity .4s linear;-webkit-transition:opacity .4s linear}.v1 .quickview[data-v-12c43bda]{z-index:7000;position:fixed;top:71px;bottom:0;right:-300px;width:300px;color:#182b51;-moz-transition:right .4s ease-in-out;transition:right .4s ease-in-out;-webkit-transition:right .4s ease-in-out;background:#fff;border-left:1px solid #c9d3df}.v1 .quickview .quickview-header[data-v-12c43bda]{padding:15px 0;background:#f4f8fc}.v1 .quickview .quickview-header .quickview-title[data-v-12c43bda]{margin:0;font-weight:400;font-size:1.3rem;letter-spacing:.05em}.v1 .quickview .quickview-header .quickview-title>a[data-v-12c43bda]{color:#182b51;text-decoration:none}.v1 .quickview .quickview-header .quickview-title>a[data-v-12c43bda]:hover{text-decoration:underline}.v1 .quickview .quickview-header .quickview-name[data-v-12c43bda],.v1 .quickview .quickview-header .quickview-subtitle[data-v-12c43bda],.v1 .quickview .quickview-header .quickview-time[data-v-12c43bda]{margin:0;font-weight:400;font-size:.8rem;letter-spacing:.05em}.v1 .quickview .quickview-header .quickview-time[data-v-12c43bda]{margin-top:1rem;font-size:.7rem}.v1 .quickview .quickview-header .quickview-name[data-v-12c43bda]{margin-top:1rem;font-weight:400;font-size:1em}.v1 .quickview .quickview-header .quickview-name[data-v-12c43bda],.v1 .quickview .quickview-header .quickview-subtitle[data-v-12c43bda],.v1 .quickview .quickview-header .quickview-time[data-v-12c43bda],.v1 .quickview .quickview-header .quickview-title[data-v-12c43bda]{padding:0 25px}.v1 .quickview .quickview-header .quickview-actions[data-v-12c43bda]{margin-bottom:10px;padding-bottom:15px;padding-right:15px;text-align:right;border-bottom:1px solid #e1e4e8}.v1 .quickview .quickview-header .quickview-actions .icon[data-v-12c43bda]{width:20px;height:20px;color:#182b51;vertical-align:middle}.v1 .quickview section[data-v-12c43bda]{margin:0;padding:30px 25px;border-top:1px solid #e1e4e8}.v1 .quickview section.even[data-v-12c43bda]{background:#f4f8fc}.v1 .quickview section>header[data-v-12c43bda]{padding-bottom:15px}.v1 .quickview section>header>h1[data-v-12c43bda]{margin:0;padding:0;font-size:1rem;font-weight:400;color:#006be6}.v1 .quickview section>table[data-v-12c43bda]{width:100%;margin:0;padding:0;vertical-align:middle;border-collapse:collapse}.v1 .quickview section>table tr[data-v-12c43bda]{height:30px}.v1 .quickview section>table th[data-v-12c43bda]{text-align:left;font-weight:400;text-transform:uppercase;font-size:.8em;color:#53657d}.v1 .quickview section>table td[data-v-12c43bda]{text-align:right}.v1 .quickview .quickview-footer[data-v-12c43bda]{position:absolute;bottom:0;padding:0 0 50px;width:100%;text-align:center}.v1 .active .shadow[data-v-12c43bda]{visibility:visible;opacity:1}.v1 .active .quickview[data-v-12c43bda]{right:0}.v1 .shadow[data-v-263a7bb8]{visibility:hidden;z-index:6000;position:fixed;top:0;right:0;width:100%;height:100%;background:rgba(0,0,0,.3);opacity:0;-moz-transition:opacity .4s linear;transition:opacity .4s linear;-webkit-transition:opacity .4s linear}.v1 .quickview[data-v-263a7bb8]{z-index:7000;position:fixed;top:71px;bottom:0;right:-300px;width:300px;color:#182b51;-moz-transition:right .4s ease-in-out;transition:right .4s ease-in-out;-webkit-transition:right .4s ease-in-out;background:#fff;border-left:1px solid #c9d3df}.v1 .quickview .quickview-header[data-v-263a7bb8]{padding:15px 0;background:#f4f8fc}.v1 .quickview .quickview-header .quickview-title[data-v-263a7bb8]{margin:0;font-weight:400;font-size:1.3rem;letter-spacing:.05em}.v1 .quickview .quickview-header .quickview-title>a[data-v-263a7bb8]{color:#182b51;text-decoration:none}.v1 .quickview .quickview-header .quickview-title>a[data-v-263a7bb8]:hover{text-decoration:underline}.v1 .quickview .quickview-header .quickview-name[data-v-263a7bb8],.v1 .quickview .quickview-header .quickview-subtitle[data-v-263a7bb8],.v1 .quickview .quickview-header .quickview-time[data-v-263a7bb8]{margin:0;font-weight:400;font-size:.8rem;letter-spacing:.05em}.v1 .active .shadow[data-v-263a7bb8]{visibility:visible;opacity:1}.v1 .active .quickview[data-v-263a7bb8]{right:0}.v1 .dashboard{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:-moz-box;display:flex}.v1 .dashboard .filters{z-index:5000;width:280px;color:#fff;background:#182b51;-webkit-box-shadow:-2px 9px 5px 5px rgba(0,0,0,.5);box-shadow:-2px 9px 5px 5px rgba(0,0,0,.5)}.v1 .dashboard .filters .autocomplete-result{padding-top:10px;padding-bottom:10px;white-space:normal;line-height:25px}.v1 .dashboard .filters .autocomplete-result span{padding-bottom:25px}.v1 .dashboard .content{position:relative;width:200px;-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1;overflow:auto}.v1 .dashboard .content .map{position:absolute;width:100%;height:100%}.v1 .dashboard .content .map #map{height:100%}.v1 .dashboard .content .map .search__group{z-index:1000;left:15px;top:11px;right:150px;position:absolute}.v1 .dashboard .content .table>thead th span{cursor:pointer}.v1 .dashboard .content .table>tbody tr{cursor:pointer}.v1 .dashboard .autocomplete-result{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.v1 .dashboard .autocomplete-result>span{font-weight:700}.v1 .page--dashboard .dashboard{padding:0}.cardGridTemplateColumns[data-v-092149e9]{grid-template-columns:160px 208px 164px 200px auto}@media print{.cardGridTemplateColumns[data-v-092149e9]{grid-template-columns:160px 208px 164px 200px 236px}}.customAlign[data-v-092149e9]{height:30px}@media print{.preventPrintBreak[data-v-092149e9]{-webkit-column-break-inside:avoid;break-inside:avoid;page-break-inside:avoid}}.searchbox[data-v-6c3fad6c]{max-width:500px}.menuWidth[data-v-defa5cd8]{min-width:220px}.menuWidth[data-v-80dfc67a]{min-width:190px}.toggle-enter-active[data-v-640d947d],.toggle-leave-active[data-v-640d947d]{-webkit-transition:all .3s;-moz-transition:all .3s;transition:all .3s;max-height:500px}.toggle-enter[data-v-640d947d],.toggle-leave-to[data-v-640d947d]{opacity:0;max-height:0}.stickyColumn[data-v-3c84c0c2]{top:32px}.townPanelShadow[data-v-76d7e233]{-webkit-box-shadow:0 0 20px 0 rgba(0,0,0,.1),0 0 0 0 rgba(0,0,0,.06);box-shadow:0 0 20px 0 rgba(0,0,0,.1),0 0 0 0 rgba(0,0,0,.06);-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.leftColumnWidth[data-v-76d7e233]{min-width:300px;max-width:300px;padding-right:2.5rem}.stickyColumn[data-v-3d4f402c]{top:32px}.townDetailsPanelShadow[data-v-1d97ba82]{-webkit-box-shadow:0 0 20px 0 rgba(0,0,0,.1),0 0 0 0 rgba(0,0,0,.06);box-shadow:0 0 20px 0 rgba(0,0,0,.1),0 0 0 0 rgba(0,0,0,.06);-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.changelogContent{margin-left:22px}.modalContainer{z-index:1000}.scrollableContainer{max-height:60vh;max-width:800px;overflow-y:auto}.modalWrapper[data-v-2c8fb903]{min-height:50vh;max-height:70vh;max-width:800px;overflow-y:auto}.leftColumnWidth[data-v-c18f9482]{min-width:300px;max-width:300px;padding-right:2.5rem}.v1 .form__group>label[data-v-dd1c1884]{font-weight:700}.v1 .form__group .error[data-v-dd1c1884]{color:#d63626}.v1 .alert-close[data-v-70f3cb96]{position:absolute;right:15px;top:15px;width:30px}.v1 .alert-close-wrapper[data-v-70f3cb96]{position:fixed;display:inline-block;cursor:pointer;width:30px;height:30px;background:#182b51;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;text-align:center}.v1 .alert-close-wrapper>img[data-v-70f3cb96]{margin-top:4px;width:20px;height:20px}.v1 table.vgt-table tr.userList-row--highlight{background:#fff0e4}.v1 .user-statusIcon,.v1 .user-validateIcon{color:#006be6}.v1 .user-validateIcon{font-size:16px;cursor:pointer}.v1 .user-statusIcon--flag{color:#ff9947}.v1 .userList-header{text-align:right;margin-bottom:20px}.v1 .userList-header>.button{margin-left:15px}.v1 .userList-header>a{vertical-align:middle}.v1 .userList-row--firstName,.v1 .userList-row--lastName{font-weight:700}.v1 .userList-column--role{text-align:center}.v1 label.inline[data-v-17835908]{display:inline-block}.userPermissions-sectionTitle{margin:0;padding:20px 0 3px;font-size:15px}.userOptionsList,.userPermissionsList{margin:0;padding:0;list-style:none}.userPermissionsList-item{font-style:italic}.userPermissionsList-item em{font-style:inherit;text-decoration:underline}.userPermissionsList-item--subsection{margin-top:20px;font-style:normal}.userPermissionsList-item--subsection:first-child{margin-top:0}.userPermissionsList-item:before{position:absolute;margin-top:3px;margin-left:-22px;width:15px;height:15px;content:"";background-position:50%;background-repeat:no-repeat;-webkit-background-size:contain;background-size:contain}.userPermissionsList-item--view:before{background-color:#00b84a;-webkit-mask:url(/img/permissions/view.svg) no-repeat center;mask:url(/img/permissions/view.svg) no-repeat center}.userPermissionsList-item--edit:before{background-color:#00b84a;-webkit-mask:url(/img/permissions/edit.svg) no-repeat center;mask:url(/img/permissions/edit.svg) no-repeat center}.userPermissionsList-item--deny:before{background-color:#e05656;-webkit-mask:url(/img/permissions/deny.svg) no-repeat center;mask:url(/img/permissions/deny.svg) no-repeat center}.userPermissionsList-comments{font-style:italic}.v1 .email{text-decoration:underline}.v1 .container--userValidation{text-align:center}.v1 .userValidation{display:-webkit-inline-flex;display:-moz-inline-box;display:inline-flex;display:-webkit-inline-box;display:-ms-inline-flexbox;-webkit-flex-direction:column;-moz-box-orient:vertical;flex-direction:column;-webkit-box-orient:vertical;-ms-flex-direction:column;text-align:left}.v1 .userValidation,.v1 .userValidation-main{-moz-box-direction:normal;-webkit-box-direction:normal}.v1 .userValidation-main{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;display:-ms-flexbox;-webkit-flex-direction:row;-moz-box-orient:horizontal;flex-direction:row;-webkit-box-orient:horizontal;-ms-flex-direction:row;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;-webkit-box-pack:center;-ms-flex-pack:center}.v1 .userInfo{width:345px;margin-right:60px;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;background:#ebeff3;font-size:16px}.v1 .userInfo-section{padding:20px 30px;border-bottom:1px solid #adb9c9}.v1 .userInfo-section h1,.v1 .userInfo-section h2,.v1 .userInfo-section h3{margin:0;padding:0}.v1 .userInfo-section h1{font-size:22px}.v1 .userInfo-section h3{margin-top:5px;font-size:12px;font-weight:400;text-transform:uppercase}.v1 .userInfo-section h2{font-size:16px}.v1 .userInfo-section p{margin:15px 0}.v1 .userInfo-section p.userHistory-item{margin:0 0 5px}.v1 .userHistory-item .user-statusIcon{margin-right:6px}.v1 .userInfo-section:first-of-type{padding-top:45px}.v1 .userInfo-section:last-of-type{padding-bottom:45px;border-bottom:none}.v1 .userPermissions{max-width:650px;font-size:16px}.v1 .userPermissions p{margin:0;padding:0}.v1 .userPermissions-header{margin-bottom:20px}.v1 .userPermissions-header h1,.v1 .userPermissions-header h2{margin:0;padding:0}.v1 .userPermissions-header h1{font-size:20px;margin-bottom:5px}.v1 .userPermissions-header h2{display:inline;padding:2px 20px;font-size:25px}.v1 .userValidation-error{margin:25px 0 0}.v1 .userValidationFooter{margin-top:20px;text-align:right}.v1 .userValidationFooter>p{display:inline-block;vertical-align:top}.v1 .userValidationFooter>p.userValidationFooter-deny,.v1 .userValidationFooter>p.userValidationFooter-remove{line-height:30px}.v1 .userValidationFooter>p.userValidationFooter-deny>span,.v1 .userValidationFooter>p.userValidationFooter-remove>span{text-decoration:none;font-weight:700;color:#0053b3;cursor:pointer}.v1 .userValidationFooter>p.userValidationFooter-allow{width:250px}.v1 .userValidationFooter>p.userValidationFooter-allow>.button{margin-bottom:10px}.v1 .userValidationFooter>p.userValidationFooter-allow>span{color:#707070;font-weight:700}.v1 .plansList-body[data-v-ca8ce470]{margin-top:50px}.v1 .plansList-geoFilter[data-v-ca8ce470]{margin-bottom:20px;width:400px}.v1 .container[data-v-23a8c2ae]{padding-top:60px}.v1 .slideNote[data-v-23a8c2ae]{margin-bottom:60px}.v1 .team-prefixTitle[data-v-23a8c2ae]{width:100px}.v1 .team-prefix[data-v-23a8c2ae]{padding:5px 5px 5px 0;text-align:right;vertical-align:top}.v1 .team-labelTitle[data-v-23a8c2ae]{padding-top:10px;vertical-align:top;text-align:center;font-weight:700;color:#16919f;width:250px}.v1 .team-label[data-v-23a8c2ae]{padding:5px 0;text-align:left}.v1 .team-label>span[data-v-23a8c2ae]{font-weight:400}.v1 .team-figuresTitle[data-v-23a8c2ae]{padding:10px 0 15px 15px}.v1 .team-figuresCol[data-v-23a8c2ae]{padding-right:20px;padding-bottom:5px;width:100px;text-align:right}.v1 .team-figures[data-v-23a8c2ae]{padding-right:20px;text-align:right}.v1 .input--date[data-v-23a8c2ae]{display:inline-block;padding-left:0}.v1 .dataSection-audienceDates[data-v-23a8c2ae]{margin-bottom:20px}.v1 .dataSection-audienceDates p[data-v-23a8c2ae]{margin:0;padding:0}.v1 .dataSection-audienceDates>div[data-v-23a8c2ae]{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.v1 .dataSection-audienceDates>div>p>span[data-v-23a8c2ae]{padding:0 10px;color:#adb9c9}.v1 .dataSection-audienceFormat[data-v-23a8c2ae]{font-size:1.5rem;color:#adb9c9}.v1 .dataSection-audienceFormat>svg[data-v-23a8c2ae]{cursor:pointer;margin-left:10px}.v1 .dataSection-audienceFormat .active[data-v-23a8c2ae]{color:#0053b3}.v1 .dataSection-audienceFormat>svg[data-v-23a8c2ae]:hover:not(.active){color:rgba(0,83,179,.4)}.v1 .block.block--dark[data-v-23a8c2ae]{font-size:1.75rem;margin-right:10px;margin-bottom:5px}.v1 .block.block--dark>span[data-v-23a8c2ae]{font-size:1rem}.v1 .dataSection-audience[data-v-23a8c2ae]{-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1}.v1 .dataSection-audience>p[data-v-23a8c2ae]:not(.divider){margin:0;padding:0}.v1 #input-goals{height:250px}.v1 .organization-body>h1[data-v-eb1c327e]{margin:0;padding:0;font-size:.9rem;font-weight:700}.v1 .organization-body>p[data-v-eb1c327e]{margin:0 0 15px 0;padding:0;font-size:1rem}.v1 .organization-body .primary[data-v-eb1c327e]{color:#0e9faa}.v1 .organization-users[data-v-eb1c327e]{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin-top:10px}.v1 .organization-users .userCard[data-v-eb1c327e]{width:48%;margin-bottom:25px}.v1 .directory-search{max-width:500px;margin-bottom:20px}.v1 .directoryColumn-role{white-space:nowrap}.v1 .directory-figures{margin:0;font-weight:700}.v1 .rb-table.directory{min-height:auto}.v1 .table .table-col--contacts{text-align:right}.v1 .table .table-col--contacts img,.v1 .table .table-col--contacts svg{color:#0053b3;margin-left:5px;vertical-align:middle}.v1 .popin-icon[data-v-38509d0a]{color:#d63626}.v1 .comment[data-v-38509d0a]{padding:30px}.v1 textarea[data-v-38509d0a]{min-height:100px}.v1 .commentDeletionButtons[data-v-38509d0a]{margin-top:30px;text-align:right}.v1 h3{margin:0;font-size:2rem}.v1 .userActivity-rule{margin:20px 0 30px;width:75%}.v1 .userActivity-rule .slideNote-body>h1{margin-top:10px}.v1 .userActivity .table td{vertical-align:top}.v1 .userActivity .table-col--date{width:120px}.v1 .userActivity .table-col--author{width:250px}.v1 .userActivity .changelog{padding-top:7px;margin:0 0 7px;border-top:1px dotted #8393a7}.v1 .userActivity .changelog:first-of-type{margin-top:7px}.v1 .userActivity-action{display:inline-block;font-weight:700;width:100%}.v1 .userActivity-action img,.v1 .userActivity-action svg{margin-right:5px;color:#8393a7}.v1 .userActivity-content{padding-top:7px;margin-top:7px;border-top:1px dotted #8393a7}.v1 .userActivity-remove{margin-top:10px;text-align:right;visibility:hidden;font-weight:700}.v1 .userActivity-remove span.link{color:#d63626}.v1 .userActivity .table td:hover .userActivity-remove{visibility:visible}.v1 .switch{margin-top:50px}.v1 .headerWithPdfLinks{text-align:right;margin-bottom:20px}.v1 .headerWithPdfLinks>.button{margin-left:15px}.v1 .headerWithPdfLinks>a{vertical-align:middle}.description p{margin-top:1rem} \ No newline at end of file diff --git a/dist/index.html b/dist/index.html index 06ba6eb695..dd8249e8d8 100644 --- a/dist/index.html +++ b/dist/index.html @@ -1 +1 @@ -Résorption Bidonvilles
\ No newline at end of file +Résorption Bidonvilles
\ No newline at end of file diff --git a/dist/js/index.3111f46b.js b/dist/js/index.3111f46b.js deleted file mode 100644 index 9b2f3afe2e..0000000000 --- a/dist/js/index.3111f46b.js +++ /dev/null @@ -1,2 +0,0 @@ -(function(e){function t(t){for(var a,o,r=t[0],l=t[1],c=t[2],d=0,p=[];d{void 0===e[t]&&delete e[t]}),e}}},se=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[e.label?i("div",{staticClass:"font-bold"},[e._v(" "+e._s(e.label)+" "),e.showMandatoryStar?i("MandatoryStar"):e._e()],1):e._e(),e.info?i("div",{staticClass:"mb-3 text-G600"},[e._v(e._s(e.info))]):e._e()])},ne=[],oe={props:{label:{type:String},info:{type:String},showMandatoryStar:{required:!1,type:Boolean,default:!1}}},re=oe,le=Object(u["a"])(re,se,ne,!1,null,null,null),ce=le.exports,ue=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{class:["relative",e.withoutMargin?"":"mb-6"]},[e.hasErrors?i("div",{staticClass:"absolute inputWrapper-error w-1 h-full bg-red600"}):e._e(),e._t("default")],2)},de=[],pe={props:{hasErrors:{type:Boolean},withoutMargin:{required:!1,type:Boolean,default:!1}}},me=pe,he=(i("bc14"),Object(u["a"])(me,ue,de,!1,null,null,null)),ve=he.exports,fe=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"text-error mt-2"},[e._t("default")],2)},ge=[],be={},_e=Object(u["a"])(be,fe,ge,!1,null,null,null),ye=_e.exports,we=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{class:["absolute inset-y-0 flex items-center",e.positionClasses]},[e._t("default",[e.icon?i("Icon",{attrs:{icon:e.icon}}):e._e()])],2)},Ce=[],ke={props:{icon:{type:String},position:{type:String}},computed:{positionClasses(){return"after"===this.position?"right-0 pr-3 ":"left-0 pl-3 "}}},xe=ke,Se=Object(u["a"])(xe,we,Ce,!1,null,null,null),$e=Se.exports;function Pe(e,t){const{error:i,prefixIcon:a,suffixIcon:s,size:n}=t;return{state:["bg-G200 border-b-2 border-black rounded rounded-b-none w-full py-2 ",i&&"border-error",a&&"pl-10",s&&"pr-10"],classic:["border border-G200 rounded-md w-full py-2 px-4 outline-none focus:border-primary",i&&"border-error",a&&"pl-10",s&&"pr-10"],default:["border-2 border-blue200 py-1 px-4 w-full outline-none focus:border-primary hover:border-inputHover","sm"===n?"text-xs":"",a&&"pl-10",s&&"pr-10"]}[e]}var Te={name:"TextInput",mixins:[ae],props:{label:{type:String},info:{type:String},placeholder:{type:String},type:{type:String,default:"text"},validationName:{type:String},rules:{type:String},value:{type:String},id:{type:String},variant:{type:String,default:"default"},prefixIcon:{type:String},suffixIcon:{type:String},cypressName:{type:String},showMandatoryStar:{required:!1,type:Boolean,default:!1},size:{type:String},width:{required:!1,type:String,default:void 0}},computed:{classes(){const e={size:this.size,error:this.error,prefixIcon:this.prefixIcon,suffixIcon:this.suffixIcon};return{state:[...Pe("state",e)],default:Pe("default",e)}[this.variant]}},components:{InputLabel:ce,InputWrapper:ve,InputError:ye,InputIcon:$e}},Ie=Te,Oe=Object(u["a"])(Ie,te,ie,!1,null,null,null),Ae=Oe.exports,Ne=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"flex items-center"},[e.label?i("div",{staticClass:"mr-2"},[e.label?i("div",{staticClass:"mb-2 text-sm italic"},[e._v(e._s(e.label))]):e._e()]):e._e(),i("ValidationProvider",{attrs:{rules:e.rules,name:e.validationName||e.label,vid:e.id},scopedSlots:e._u([{key:"default",fn:function(t){var a=t.errors;return[i("div",{staticClass:"relative"},[e.prefixIcon?i("InputIcon",{attrs:{position:"before",icon:e.prefixIcon}}):e._e(),i("input",e._b({class:e.classes,attrs:{id:e.id,"data-cy-field":e.cypressName},on:{input:function(t){return e.$emit("input",t.target.value)}}},"input",e.filteredProps,!1)),e.suffixIcon?i("InputIcon",{attrs:{position:"after",icon:e.suffixIcon}}):e._e()],1),a[0]?i("InputError",[e._v(e._s(a[0]))]):e._e()]}}])})],1)},Ee=[],je={name:"InlineTextInput",mixins:[ae],props:{label:{type:String},placeholder:{type:String},type:{type:[String,Number],default:"text"},validationName:{type:String},rules:{type:String},value:{type:[String,Number]},id:{type:String},variant:{type:String,default:"default"},prefixIcon:{type:String},suffixIcon:{type:String},size:{type:String},cypressName:{type:String}},computed:{classes(){const e={error:this.error,prefixIcon:this.prefixIcon,suffixIcon:this.suffixIcon,size:this.size};return{state:[...Pe("state",e)],default:Pe("default",e),town:Pe("town",e)}[this.variant]}},components:{InputError:ye,InputIcon:$e}},De=je,qe=Object(u["a"])(De,Ne,Ee,!1,null,null,null),Me=qe.exports,Le=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("ValidationProvider",{attrs:{rules:e.rules,name:e.validationName||e.label,vid:e.id},scopedSlots:e._u([{key:"default",fn:function(t){var a=t.errors;return[i("InputWrapper",{attrs:{hasErrors:!!a.length}},[i("InputLabel",{attrs:{label:e.label,info:e.info}}),i("div",{staticClass:"relative"},[e.prefixIcon?i("InputIcon",{attrs:{position:"before",icon:e.prefixIcon}}):e._e(),i("textarea",e._b({class:e.classes,attrs:{id:e.id,"data-cy-field":e.cypressName},on:{input:function(t){return e.$emit("input",t.target.value)}}},"textarea",e.filteredProps,!1)),e._v(" "),e.suffixIcon?i("InputIcon",{attrs:{position:"after",icon:e.suffixIcon}}):e._e()],1),i("InputError",[e._v(e._s(a[0]))])],1)]}}])})},Fe=[],ze={name:"TextArea",mixins:[ae],props:{label:{type:String},info:{type:String},placeholder:{type:String},type:{type:String,default:"text"},value:{type:String},rules:{type:String},validationName:{type:String},id:{type:String},variant:{type:String,default:"default"},prefixIcon:{type:String},suffixIcon:{type:String},rows:{type:String},cols:{type:String},cypressName:{type:String}},computed:{classes(){const e={error:this.error,prefixIcon:this.prefixIcon,suffixIcon:this.suffixIcon};return{state:[...Pe("state",e)],default:Pe("default",e)}[this.variant]}},components:{InputLabel:ce,InputWrapper:ve,InputError:ye,InputIcon:$e}},Be=ze,Re=Object(u["a"])(Be,Le,Fe,!1,null,null,null),Ve=Re.exports,Ue=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{class:["checkbox-"+e.variant].concat(e.containerClasses)},["card"===e.variant||"townCard"===e.variant?i("CheckableCard",{attrs:{variant:e.variant,isChecked:e.isChecked,"data-cy-field":e.cypressName,"data-cy-label":e.label,"data-cy-checked":e.isChecked}},[i("input",e._b({staticClass:"appearance-none absolute invisible",attrs:{type:"checkbox"},domProps:{checked:e.isChecked},on:{change:e.onChange}},"input",e.filteredProps,!1)),i("div",[e._v(e._s(e.label))])]):i("label",{class:["inline-flex cursor-pointer",e.info?"items-start":"items-center"].concat(e.labelClasses)},[i("input",e._b({class:e.checkboxClasses,attrs:{type:"checkbox"},domProps:{checked:e.isChecked},on:{change:e.onChange}},"input",e.filteredProps,!1)),e._t("default",[i("div",{staticClass:"ml-2"},[i("div",{staticClass:"text-sm"},[e._v(e._s(e.label))]),e.info?i("div",{staticClass:"text-xs"},[e._v(e._s(e.info))]):e._e()])],{isChecked:e.isChecked})],2)],1)},He=[],Ge=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("label",{class:e.checkboxClasses},[e._t("default")],2)},We=[],Je={props:{isChecked:{type:Boolean},variant:{type:String}},computed:{checkboxClasses(){return{card:["inline-flex cursor-pointer px-8 py-1 border border-transparent hover:border-blue600",this.isChecked?"bg-primary text-white":" bg-blue200 text-primary"]}[this.variant]}}},Qe=Je,Ye=Object(u["a"])(Qe,Ge,We,!1,null,null,null),Ze=Ye.exports,Ke={name:"Checkbox",mixins:[ae],components:{CheckableCard:Ze},props:{checkValue:{type:[String,Boolean,Number]},label:{type:String},containerClasses:{type:[Array,String]},labelClasses:{type:[Array,String]},value:{type:Array},info:{type:String},variant:{type:String,default:"default"},cypressName:{type:String}},methods:{onChange(e){let t=[...this.value];e.target.checked?t.push(this.checkValue):t=t.filter(e=>e!==this.checkValue),this.$emit("input",t)}},computed:{isChecked(){return this.value&&this.value.includes(this.checkValue)},checkboxClasses(){return{classic:"form-checkbox h-5 w-5",invisible:"appearance-none absolute invisible",default:"checkbox-town-input"}[this.variant]}}},Xe=Ke,et=(i("edfe"),Object(u["a"])(Xe,Ue,He,!1,null,null,null)),tt=et.exports,it=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{class:["radio-"+e.variant].concat(e.containerClasses)},["card"===e.variant||"townCard"===e.variant?i("CheckableCard",{attrs:{variant:e.variant,isChecked:e.isChecked,"data-cy-field":e.cypressName,"data-cy-label":e.label,"data-cy-checked":""+e.isChecked}},[i("input",e._b({staticClass:"appearance-none absolute invisible",attrs:{type:e.type},domProps:{checked:e.isChecked},on:{change:e.onChange}},"input",e.filteredProps,!1)),i("div",[e._v(e._s(e.label))])]):i("label",{class:["inline-flex cursor-pointer",e.info?"items-start":"items-center"].concat(e.labelClasses)},[i("input",e._b({class:e.radioClasses,attrs:{type:e.type,"data-cy-field":e.cypressName,"data-cy-label":e.label,"data-cy-checked":""+e.isChecked},domProps:{checked:e.isChecked},on:{change:e.onChange}},"input",e.filteredProps,!1)),e._t("default",[i("div",{staticClass:"ml-2"},[i("div",[e._v(e._s(e.label))]),e.info?i("div",{staticClass:"text-xs"},[e._v(e._s(e.info))]):e._e()])],{isChecked:e.isChecked})],2)],1)},at=[],st={name:"Radio",mixins:[ae],components:{CheckableCard:Ze},props:{checkValue:{type:[String,Boolean,Number]},label:{type:String},containerClasses:{type:[Array,String]},labelClasses:{type:[Array,String]},value:{type:[String,Boolean,Number]},info:{type:String},variant:{type:String,default:"default"},cypressName:{type:String},type:{type:String,default:"radio"}},methods:{onChange(e){"checkbox"===this.type?this.$emit("input",e.target.checked?this.checkValue:null):this.$emit("input",this.checkValue)}},computed:{isChecked(){return this.value===this.checkValue},radioClasses(){return{classic:"form-checkbox h-5 w-5",invisible:"appearance-none absolute invisible",default:"radio-town-input"}[this.variant]}}},nt=st,ot=(i("93aa"),Object(u["a"])(nt,it,at,!1,null,null,null)),rt=ot.exports,lt=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("ValidationProvider",{attrs:{rules:e.rules,name:e.validationName||e.label,vid:e.id},scopedSlots:e._u([{key:"default",fn:function(t){var a=t.errors;return[i("InputWrapper",{attrs:{hasErrors:!!a.length}},[i("InputLabel",{attrs:{label:e.label,info:e.info}}),i("div",{staticClass:"relative"},[i("InputIcon",{attrs:{position:"before",icon:e.icon}}),i("select",e._b({class:e.classes,attrs:{id:e.id},on:{change:function(t){return e.$emit("input",t.target.value)}}},"select",e.filteredProps,!1),[e._t("default")],2),i("InputIcon",{attrs:{position:"after",icon:"chevron-down"}})],1),i("InputError",[e._v(e._s(a[0]))])],1)]}}],null,!0)})},ct=[],ut={name:"Select",mixins:[ae],props:{label:{type:String},info:{type:String},error:{type:String},value:{type:String},validationName:{type:String},rules:{type:String},id:{type:String},variant:{type:String,default:"default"},icon:{type:String}},computed:{classes(){const e={error:this.error,prefixIcon:this.icon,suffixIcon:!0};return{state:["appearance-none",...Pe("state",e)],default:["appearance-none",...Pe("default",e)]}[this.variant]}},components:{InputWrapper:ve,InputLabel:ce,InputError:ye,InputIcon:$e}},dt=ut,pt=Object(u["a"])(dt,lt,ct,!1,null,null,null),mt=pt.exports,ht=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("option",e._b({},"option",e.$props,!1),[e._t("default")],2)},vt=[],ft={name:"SelectOption",props:{}},gt=ft,bt=Object(u["a"])(gt,ht,vt,!1,null,null,null),_t=bt.exports,yt=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"shadow py-5 px-6"},[i("div",{staticClass:"text-primary text-display-lg pb-4 border-b-2"},[e._v(" "+e._s(e.title)+" ")]),i("div",{staticClass:"pt-4"},[e._t("default")],2)])},wt=[],Ct={props:{title:{type:String}}},kt=Ct,xt=Object(u["a"])(kt,yt,wt,!1,null,null,null),St=xt.exports,$t=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"mb-12"},[i("div",{staticClass:"font-bold mb-4"},[e._v(e._s(e.title))]),i("div",{staticClass:"text-sm mb-4"},[e._v(e._s(e.info))]),e._t("default")],2)},Pt=[],Tt={props:{title:{type:String},info:{type:String}}},It=Tt,Ot=Object(u["a"])(It,$t,Pt,!1,null,null,null),At=Ot.exports,Nt=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("span",{staticClass:"text-red text-md"},[e._v("*")])},Et=[],jt={},Dt=Object(u["a"])(jt,Nt,Et,!1,null,null,null),qt=Dt.exports,Mt=i("22df"),Lt=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",e._g(e._b({class:["rounded-md bg-white shadow-xs min-w-48"].concat(e.classes),attrs:{role:"menu","aria-orientation":"vertical","aria-labelledby":"user-menu"}},"div",e.$attrs,!1),e.$listeners),[e._t("default")],2)},Ft=[],zt={props:{variant:String,default:()=>"default"},computed:{classes(){return{withoutPadding:"py-0",default:"py-1"}[this.variant]}}},Bt=zt,Rt=Object(u["a"])(Bt,Lt,Ft,!1,null,null,null),Vt=Rt.exports,Ut=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",e._g(e._b({staticClass:"block px-4 py-2 text-md hover:bg-gray-100 cursor-pointer",attrs:{role:"menuitem"}},"div",e.$attrs,!1),e.$listeners),[e._t("default")],2)},Ht=[],Gt={},Wt=Object(u["a"])(Gt,Ut,Ht,!1,null,null,null),Jt=Wt.exports,Qt=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"relative"},[i("div",{on:{click:e.toggleMenu}},[e._t("button",null,{isOpen:e.isOpen})],2),i("div",{class:["origin-top-left-10 absolute z-10 left-0 mt-2 rounded-md shadow-lg transform transition ease-in-out duration-200",e.isOpen?"opacity-100":"opacity-0 hidden"]},[e._t("menu",null,{closeMenu:e.closeMenu})],2)])},Yt=[],Zt={data(){return{isOpen:!1}},methods:{checkOutsideClick(e){this.$el.contains(e.target)||this.closeMenu()},openMenu(){this.isOpen=!0},closeMenu(){this.isOpen=!1},toggleMenu(){this.isOpen=!this.isOpen}},mounted(){setTimeout(()=>{document.addEventListener("click",this.checkOutsideClick)},0)},destroyed(){document.removeEventListener("click",this.checkOutsideClick)}},Kt=Zt,Xt=Object(u["a"])(Kt,Qt,Yt,!1,null,null,null),ei=Xt.exports,ti=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("notifications",{staticClass:"fixed top-0 z-20 w-64",staticStyle:{width:"410px"},attrs:{group:"notifications",position:"top center"},scopedSlots:e._u([{key:"body",fn:function(t){return[i("div",{class:["text-white p-2 m-2","vue-notification",t.item.type],on:{click:t.close}},[i("div",{staticClass:"notification-icon"}),i("div",{staticClass:"text-white"},[i("div",{staticClass:"text-lg"},[e._v(e._s(t.item.title))]),i("div",{staticClass:"text-sm",domProps:{innerHTML:e._s(t.item.text)}})])])]}}])})},ii=[],ai=(i("efa2"),{}),si=Object(u["a"])(ai,ti,ii,!1,null,"7743ec3e",null),ni=si.exports,oi=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{class:["fixed z-40 inset-0 transform transition ease-in-out duration-300",e.isOpen?"opacity-100":"opacity-0 pointer-events-none"]},[i("div",{staticClass:"absolute w-full h-full bg-gray-500 opacity-75"}),i("div",{class:["flex items-center justify-center min-h-screen ",e.containerClasses]},[i("div",{ref:"dialog",staticClass:"opacity-100 z-50 shadow-xl overflow-hidden ",attrs:{role:"dialog","aria-modal":"true","aria-labelledby":"modal-headline"}},[i("div",{staticClass:"bg-white"},[e._t("header",[i("div",{staticClass:"pt-10 px-10 pb-4 "},[i("div",{staticClass:"flex justify-between border-b border-G400"},[i("div",{staticClass:"text-display-md text-primary"},[e._t("title")],2),i("Button",{attrs:{variant:"primaryText",icon:"times",size:"lg"},on:{click:e.closeModal}})],1)])]),i("div",{staticClass:"px-10 pt-6 pb-10"},[e._t("body")],2),e.$slots.footer?i("div",{staticClass:"px-4 pb-8 sm:px-6 flex justify-end"},[e._t("footer")],2):e._e()],2)])])])},ri=[],li={props:{closeModal:{type:Function},isOpen:{type:Boolean},closeClickOutside:{type:Boolean,default:!1},containerClasses:{type:Array}},methods:{checkOutsideClick(e){this.isOpen&&this.closeModal&&!this.$refs.dialog.contains(e.target)&&this.closeModal()}},mounted(){this.closeClickOutside&&document.addEventListener("click",this.checkOutsideClick)},destroyed(){this.closeClickOutside&&document.removeEventListener("click",this.checkOutsideClick)}},ci=li,ui=Object(u["a"])(ci,oi,ri,!1,null,null,null),di=ui.exports,pi=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"bg-G200 py-8 px-8 border-l-4 border-primary"},[i("div",{staticClass:"text-display-md mb-4"},[e._v(e._s(e.title))]),i("div",[e._t("default")],2)])},mi=[],hi={props:{title:{type:String}}},vi=hi,fi=Object(u["a"])(vi,pi,mi,!1,null,null,null),gi=fi.exports,bi=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[e.isOpen?i("div",{ref:"backdrop",staticClass:"fixed inset-0 bg-gray-500 opacity-75 z-backdrop",on:{click:e.clickBackdrop}}):e._e(),i("div",{class:["fixed z-sidePanel top-0 bottom-0 right-0 overflow-y-auto full-height transform transition ease-in-out duration-500",e.isOpen?"translate-x-0":"translate-x-full"]},[i("div",{class:["min-h-screen w-128 bg-white"]},[e._t("default")],2)])])},_i=[],yi={props:{closePanel:{type:Function},isOpen:{type:Boolean},closeClickOutside:{type:Boolean,default:!1}},methods:{clickBackdrop(){this.isOpen&&this.closeClickOutside&&this.closePanel()}}},wi=yi,Ci=(i("d694"),Object(u["a"])(wi,bi,_i,!1,null,null,null)),ki=Ci.exports,xi=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("ValidationProvider",{ref:"provider",attrs:{rules:e.rules,name:e.validationName||e.label,vid:e.id},scopedSlots:e._u([{key:"default",fn:function(t){var a=t.errors;return[i("InputWrapper",{attrs:{hasErrors:!!a.length}},[i("InputLabel",{attrs:{label:e.label,info:e.info}}),i("AutocompleteVue",{attrs:{search:e.search,"default-value":e.searchInput,placeholder:e.placeholder,"aria-label":e.placeholder,getResultValue:e.getResultValue,debounceTime:e.debounceTime},on:{submit:e.onItemSelect},scopedSlots:e._u([{key:"default",fn:function(t){var a=t.rootProps,s=t.inputProps,n=t.inputListeners,o=t.resultListProps,r=t.resultListListeners,l=t.results,c=t.resultProps;return[i("div",e._b({},"div",a,!1),[i("div",{staticClass:"relative"},[e.prefixIcon?i("InputIcon",{staticClass:"text-primary pl-6",attrs:{position:"before",icon:e.prefixIcon}}):e._e(),"checkbox"===s.type?i("input",e._g(e._b({directives:[{name:"model",rawName:"v-model",value:e.searchInput,expression:"searchInput"}],ref:"searchInput",staticClass:"pl-12 pr-12",class:e.classes,attrs:{type:"checkbox"},domProps:{checked:Array.isArray(e.searchInput)?e._i(e.searchInput,null)>-1:e.searchInput},on:{focus:e.handleFocus,blur:e.handleBlur,change:function(t){var i=e.searchInput,a=t.target,s=!!a.checked;if(Array.isArray(i)){var n=null,o=e._i(i,n);a.checked?o<0&&(e.searchInput=i.concat([n])):o>-1&&(e.searchInput=i.slice(0,o).concat(i.slice(o+1)))}else e.searchInput=s}}},"input",s,!1),n)):"radio"===s.type?i("input",e._g(e._b({directives:[{name:"model",rawName:"v-model",value:e.searchInput,expression:"searchInput"}],ref:"searchInput",staticClass:"pl-12 pr-12",class:e.classes,attrs:{type:"radio"},domProps:{checked:e._q(e.searchInput,null)},on:{focus:e.handleFocus,blur:e.handleBlur,change:function(t){e.searchInput=null}}},"input",s,!1),n)):i("input",e._g(e._b({directives:[{name:"model",rawName:"v-model",value:e.searchInput,expression:"searchInput"}],ref:"searchInput",staticClass:"pl-12 pr-12",class:e.classes,attrs:{type:s.type},domProps:{value:e.searchInput},on:{focus:e.handleFocus,blur:e.handleBlur,input:function(t){t.target.composing||(e.searchInput=t.target.value)}}},"input",s,!1),n)),i("InputIcon",{staticClass:"pr-6",attrs:{position:"after"}},[e.loading?i("Spinner"):e._e(),i("div",{staticClass:"cursor-pointer ",on:{click:e.removeItem}},[!e.loading&&e.value&&e.getResultValue(e.value)===e.searchInput?i("Icon",{staticClass:"text-primary text-display-sm",attrs:{icon:"times","data-cy-button":"clear"}}):e._e()],1)],1)],1),i("transition",{attrs:{name:"fade"}},[e.focused&&e.searchInput?i("div",{class:["origin-top-left-10 absolute z-10 left-0 mt-2 w-full rounded-md shadow-lg"]},[e._t("default",[l.length?i("Menu",e._g(e._b({},"Menu",o,!1),r),e._l(l,(function(t,a){return i("MenuItem",e._b({key:c[a].id,class:["cursor-pointer",c[a]["aria-selected"]&&"bg-gray-100"]},"MenuItem",c[a],!1),[i("div",[e._v(" "+e._s(e.getResultValue(t))+" ")])])})),1):i("Menu",[i("MenuItem",[e._v(" Aucun résultat ")])],1)],{results:l,resultListProps:o,resultListListeners:r,resultProps:c,getResultValue:e.getResultValue})],2):e._e()]),i("div",[e._t("extra",null,{removeItem:e.removeItem})],2)],1)]}}],null,!0)}),i("InputError",[e._v(e._s(a[0]))])],1)]}}])})},Si=[],$i={components:{InputLabel:ce,InputWrapper:ve,InputError:ye,InputIcon:$e},props:{loading:{type:Boolean},label:{type:String},info:{type:String},validationName:{type:String},rules:{type:String},id:{type:String},inputClasses:{type:Array,default:()=>[]},search:{type:Function,required:!0},defaultValue:{type:Object,required:!1},placeholder:{type:String},getResultValue:{type:Function,default:e=>e},debounceTime:{type:Number,default:0},variant:{type:String,default:"default"},prefixIcon:{type:String}},computed:{classes(){const e={error:this.error,prefixIcon:this.prefixIcon},t={state:[...Pe("state",e)],default:Pe("default",e)}[this.variant];return[...this.inputClasses,...t]}},data(){return{show:!0,focused:!1,value:this.defaultValue||null,searchInput:this.defaultValue?this.getResultValue(this.defaultValue):"",results:[]}},methods:{removeItem(){this.value=null,this.searchInput="",this.$emit("submit",null),this.$emit("input",null),this.$refs.provider.syncValue(null),this.$refs.provider.validate()},onItemSelect(e){this.value=e,e&&(this.searchInput=this.getResultValue(e)),this.$emit("submit",e),this.$emit("input",e),this.$refs.provider.syncValue(e),this.$refs.provider.validate(),this.$refs.searchInput.blur()},handleFocus(){this.focused=!0},handleBlur(){this.value?this.searchInput=this.getResultValue(this.value):this.onItemSelect(null),this.focused=!1}}},Pi=$i,Ti=Object(u["a"])(Pi,xi,Si,!1,null,null,null),Ii=Ti.exports,Oi=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("Icon",e._g(e._b({attrs:{icon:"spinner",spin:""}},"Icon",e.$attrs,!1),e.$listeners))},Ai=[],Ni={},Ei=Object(u["a"])(Ni,Oi,Ai,!1,null,null,null),ji=Ei.exports,Di=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("ValidationProvider",{attrs:{rules:e.rules,name:e.validationName||e.label,vid:e.id},scopedSlots:e._u([{key:"default",fn:function(t){var a=t.errors;return[i("InputWrapper",{attrs:{withoutMargin:e.withoutMargin}},[i("InputLabel",{attrs:{label:e.label,info:e.info,id:e.id,showMandatoryStar:e.showMandatoryStar}}),i("div",{class:"flex flex-col relative"},[e.error?i("div",{staticClass:"absolute h-full bg-error leftBorder"}):e._e(),i("div",{class:["flex","vertical"===e.direction?"flex-col checkableGroup--verticalLayout":"flex-row flex-wrap checkableGroup--horizontalLayout"]},[e._t("default")],2)]),a[0]?i("InputError",[e._v(e._s(a[0]))]):e._e()],1)]}}],null,!0)})},qi=[],Mi={props:{label:{type:String},info:{type:String},error:{type:String},direction:{type:String,default:"vertical"},validationName:{type:String},rules:{type:String},id:{type:String},withoutMargin:{required:!1,type:Boolean,default:!1},showMandatoryStar:{required:!1,type:Boolean,default:!1}},components:{InputError:ye,InputLabel:ce,InputWrapper:ve}},Li=Mi,Fi=(i("cb4e"),i("8324"),Object(u["a"])(Li,Di,qi,!1,null,"fe57aba0",null)),zi=Fi.exports,Bi=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("ValidationProvider",{ref:"provider",attrs:{rules:e.rules,name:e.validationName||e.label,vid:e.id},scopedSlots:e._u([{key:"default",fn:function(t){var a=t.errors;return[i("InputWrapper",{attrs:{hasErrors:!!a.length}},[i("InputLabel",{attrs:{label:e.label,info:e.info,showMandatoryStar:e.showMandatoryStar,id:e.id}}),i("div",{staticClass:"relative"},[i("InputIcon",{staticClass:"z-10 text-G400",attrs:{position:"before",icon:"calendar"}}),i(e.dynamicComponent,e._g(e._b({ref:"datepicker",tag:"component",attrs:{"input-class":e.inputClasses,language:e.dateLanguage,"monday-first":!0,"data-cy-field":e.cypressName}},"component",e.$attrs,!1),e.$listeners)),e.$attrs.value?i("InputIcon",{staticClass:"text-primary text-display-sm cursor-pointer",attrs:{position:"after",icon:"times","data-cy-button":"clear"},nativeOn:{click:function(t){return e.clear(t)}}}):e._e()],1),i("InputError",[e._v(e._s(a[0]))])],1)]}}])})},Ri=[],Vi=i("2430"),Ui=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"mb-1 text-xs"},[e._t("default")],2)},Hi=[],Gi={},Wi=Object(u["a"])(Gi,Ui,Hi,!1,null,null,null),Ji=Wi.exports,Qi={props:{label:{type:String},info:{type:String},id:{type:String},validationName:{type:String},variant:{type:String,default:"default"},rules:{type:String},cypressName:{type:String},showMandatoryStar:{required:!1,type:Boolean,default:!1}},components:{InputLabel:ce,InputWrapper:ve,InputError:ye,InputInfo:Ji,InputIcon:$e},data(){return{dateLanguage:Vi["fr"],dynamicComponent:null}},mounted(){Promise.resolve().then(i.bind(null,"fa33")).then(e=>{this.dynamicComponent=e.default})},computed:{inputClasses(){const e={error:this.error,prefixIcon:"default"===this.variant};return{state:[...Pe("state",e)],default:Pe("default",e),town:Pe("town",e)}[this.variant]}},methods:{clear(){this.$refs.datepicker.clearDate()}}},Yi=Qi,Zi=Object(u["a"])(Yi,Bi,Ri,!1,null,null,null),Ki=Zi.exports,Xi=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{class:[e.color,"inline-flex text-sm px-4 py-1 flex-row items-center"]},[e._t("default"),e.onDelete?i("span",{staticClass:"ml-2 cursor-pointer",on:{click:e.onDelete}},[i("Icon",{attrs:{icon:"times"}})],1):e._e()],2)},ea=[],ta={props:{onDelete:{type:Function},color:{type:String,default:"bg-G200"}}},ia=ta,aa=Object(u["a"])(ia,Xi,ea,!1,null,null,null),sa=aa.exports,na=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"flex flex-row items-center"},[i("Button",{staticClass:"hover:bg-G200 rounded-full px-4 py-1 mx-2 focus:outline-none ",attrs:{icon:"chevron-left",iconPosition:"left",variant:"custom",size:"custom",disabled:1===e.currentPage},on:{click:e.onPrevious}},[e._v("Précédent")]),e.currentPage>1?i("div",{staticClass:"h-8 w-8 hover:bg-G200 flex justify-center items-center rounded-full cursor-pointer",on:{click:function(){return e.onChangePage(1)}}},[e._v(" 1 ")]):e._e(),i("div",{class:["h-8 w-8 bg-primary text-white flex justify-center items-center rounded-full",1===e.currentPage?"":"ml-4",e.currentPage===e.nbPages?"":"mr-4"]},[e._v(" "+e._s(e.currentPage)+" ")]),e.currentPage!==e.nbPages?i("div",{staticClass:"h-8 w-8 hover:bg-G200 flex justify-center items-center rounded-full cursor-pointer",on:{click:function(){return e.onChangePage(e.nbPages)}}},[e._v(" "+e._s(e.nbPages)+" ")]):e._e(),i("Button",{staticClass:"hover:bg-G200 rounded-full px-4 py-1 mx-2 focus:outline-none",attrs:{icon:"chevron-right",iconPosition:"right",variant:"custom",size:"custom",disabled:e.currentPage===e.nbPages},on:{click:e.onNext}},[e._v("Suivant")])],1)},oa=[],ra={props:{currentPage:{type:Number},nbPages:{type:Number},onChangePage:{type:Function}},methods:{onPrevious(){this.onChangePage(Math.max(1,this.currentPage-1))},onNext(){this.onChangePage(Math.min(this.currentPage+1,this.nbPages))}}},la=ra,ca=Object(u["a"])(la,na,oa,!1,null,null,null),ua=ca.exports,da=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"w-full h-full relative"},[i("Tooltip"),i("div",{ref:"container",staticClass:"w-full h-full",attrs:{id:"map"}})],1)},pa=[],ma=i("e11e"),ha=i.n(ma),va=function(){var e=this,t=e.$createElement,i=e._self._c||t;return e.isVisible?i("div",[i("div",{staticClass:"absolute w-full h-full opacity-50 bg-black",staticStyle:{"z-index":"1001"}}),i("div",{staticClass:"absolute w-full",staticStyle:{"z-index":"1002"}},[i("div",{staticClass:"mx-auto mt-6 w-8/12 text-sm bg-white p-3"},[i("p",[e._v(" Si besoin, préciser la localisation en déplaçant le pointeur bleu sur la carte. ")]),i("p",{staticClass:"font-bold text-right cursor-pointer text-primary",on:{click:e.hide}},[e._v(" J'ai compris ")])]),i("div",{staticClass:"arrow mx-auto"})])]):e._e()},fa=[],ga={data(){return{isVisible:!0}},methods:{hide(){this.isVisible=!1}}},ba=ga,_a=(i("8974"),Object(u["a"])(ba,va,fa,!1,null,"afec8fd8",null)),ya=_a.exports;i("e5e0");const wa=[46.7755829,2.0497727];var Ca={components:{Tooltip:ya},props:{value:{type:Array,required:!1},zoom:{type:Number,required:!1,default:5}},data(){return{map:null,marker:null,clickTimeout:null}},computed:{coordinates(){if(null===this.marker)return;const{lat:e,lng:t}=this.marker.getLatLng();return[e,t]},view(){return{center:this.coordinates||wa,zoom:this.zoom}},mapLayers(){return{Satellite:ha.a.tileLayer.provider("Esri.WorldImagery"),Dessin:ha.a.tileLayer.provider("OpenStreetMap.Mapnik")}}},watch:{value(){this.syncMarker(),this.refreshView()}},mounted(){this.createMap(),this.syncMarker(),this.refreshView()},methods:{createMap(){this.map=ha.a.map("map",{layers:this.mapLayers.Dessin})},refreshView(e=!1){const{center:t,zoom:i}=this.view;this.map.setView(t,this.map&&this.map.getZoom()||i),!0===e&&this.$emit("input",this.coordinates)},syncMarker(){void 0===this.value?this.removeMarker():null===this.marker?this.createMarker():this.marker.setLatLng(this.value)},createMarker(){null!==this.marker&&void 0!==this.value||(this.marker=ha.a.marker(this.value,{draggable:!0}),this.map.addEventListener("click",e=>{clearTimeout(this.clickTimeout),this.clickTimeout=setTimeout(this.handleClick.bind(this,e),200)}),this.map.addEventListener("dblclick",()=>{clearTimeout(this.clickTimeout),this.clickTimeout=null}),this.marker.addEventListener("dragend",()=>{this.refreshView(!0)}),this.marker.addTo(this.map))},removeMarker(){null!==this.marker&&(this.marker.remove(),this.marker=null)},handleClick({latlng:{lat:e,lng:t}}){null!==this.marker&&(this.marker.setLatLng([e,t]),this.refreshView(!0),clearTimeout(this.clickTimeout),this.clickTimeout=null)}}},ka=Ca,xa=Object(u["a"])(ka,da,pa,!1,null,null,null),Sa=xa.exports,$a=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"bg-yellow-200 px-4 flex items-center justify-between"},[i("div",[e.icon?i("div",{staticClass:"rounded-full inline-block bg-yellow-400 w-6 h-6 text-center text-xs align-middle leading-6"},[i("Icon",{attrs:{icon:e.icon}})],1):e._e(),e._t("body")],2),i("div",[e._t("button",[i("Button",{on:{click:e.click}},[e._v(e._s(e.buttonLabel))])]),e.closable?i("span",{staticClass:"ml-2",on:{click:e.close}},[i("Icon",{staticClass:"cursor-pointer",attrs:{icon:"times"}})],1):e._e()],2)])},Pa=[],Ta={props:{buttonLabel:{type:String,required:!1},icon:{type:String,required:!1},closable:{type:Boolean,required:!1,default:!1}},methods:{click(){this.$emit("click")},close(){this.$emit("close")}}},Ia=Ta,Oa=Object(u["a"])(Ia,$a,Pa,!1,null,null,null),Aa=Oa.exports,Na=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"has-tooltip inline-block"},[i("div",{staticClass:"tooltip mt-10 ml-5 bg-yellow-200 shadow-md text-black py-4 px-6"},[e._v(" "+e._s(e.text)+" ")]),e._t("default")],2)},Ea=[],ja={props:{text:{type:String}}},Da=ja,qa=(i("1d5e"),Object(u["a"])(Da,Na,Ea,!1,null,"e37a80c0",null)),Ma=qa.exports,La=function(e){e.component("Button",ee),e.component("TextInput",Ae),e.component("InlineTextInput",Me),e.component("TextArea",Ve),e.component("Icon",Y),e.component("Menu",Vt),e.component("MenuItem",Jt),e.component("Checkbox",tt),e.component("Radio",rt),e.component("Select",mt),e.component("SelectOption",_t),e.component("FormGroup",St),e.component("MandatoryStar",qt),e.component("Dropdown",ei),e.component("Modal",di),e.component("SidePanel",ki),e.component("CheckableGroup",zi),e.component("InputGroup",At),e.component("FormParagraph",Mt["default"]),e.component("Callout",gi),e.component("Spinner",ji),e.component("AutocompleteV2",Ii),e.component("DatepickerV2",Ki),e.component("Tag",sa),e.component("Pagination",ua),e.component("MapV2",Sa),e.component("InfoBanner",Aa),e.component("Tooltip",Ma),e.use(R.a),e.component("NotificationsGroup",ni),e.component("ValidationProvider",D["b"]),e.component("ValidationObserver",D["a"]),e.component("AutocompleteVue",j["a"]),Object(D["d"])({en:L,fr:M,bg:z,ro:F}),Object.keys(q).forEach(e=>{Object(D["c"])(e,{...q[e]})}),Object(D["d"])("fr")};const Fa={debug:!1,enableLinkTracking:!0,requireConsent:!1,trackInitialView:!0,trackerFileName:"piwik"};function za(e){const t=new Promise((t,i)=>{const a=document.createElement("script");a.async=!0,a.defer=!0,a.src=e;const s=document.head||document.getElementsByTagName("head")[0];s.appendChild(a),a.onload=t,a.onerror=i});return t.catch(e=>{const t=`[vue-matomo] An error occurred trying to load ${e.target.src}. `;console.error(t)}),t}function Ba(e,t){const{host:i,siteId:a,trackerFileName:s,trackerUrl:n}=t,o=n||`${i}/${s}.php`,r=window.Piwik.getTracker(o,a);e.prototype.$piwik=r,e.prototype.$matomo=r,t.requireConsent&&r.requireConsent(),t.trackInitialView&&r.trackPageView(),t.enableLinkTracking&&r.enableLinkTracking(),t.router&&t.router.afterEach(e=>{const i=window.location;let{protocol:a}=i;":"!==a.slice(-1)&&(a+=":");const s="hash"===t.router.mode?"/#":"",n=`${a}//${i.host}${s}${e.fullPath}`;e.meta.analyticsIgnore||(t.debug&&console.debug("[vue-matomo] Tracking "+n),r.setCustomUrl(n),r.trackPageView())})}function Ra(e,t={}){const i={...Fa,...t},{host:a,trackerFileName:s}=i,n=`${a}/${s}.js`;za(n).then(()=>Ba(e,i))}var Va=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("PublicLayout",{attrs:{displayLanguagePicker:!0}},[a("PublicContainer",[a("div",{staticClass:"pt-4"},[a("div",{staticClass:"max-w-screen-lg mx-auto pb-20"},[a("LandingPageHero",{staticClass:"mt-20"}),a("LandingPageFirstSection")],1)])]),a("LandingPageBanner",{attrs:{cta:e.$t("landingPage.firstBanner.cta")}},[e._v(" "+e._s(e.$t("landingPage.firstBanner.text"))+" ")]),a("CreditWrapper",{attrs:{credit:"© Diego Inglez de Souza"}},[a("img",{staticClass:"h-128 w-full object-cover object-center",attrs:{src:i("dce0")}})]),a("PublicContainer",[a("div",{staticClass:"max-w-screen-lg mx-auto py-20"},[a("LandingPageSecondSection")],1)]),a("LandingPageBanner",{attrs:{cta:e.$t("landingPage.secondBanner.cta")}},[e._v(" "+e._s(e.$t("landingPage.secondBanner.text"))+" ")]),a("CreditWrapper",{attrs:{credit:"© Ville de Strasbourg"}},[a("img",{staticClass:"h-128 w-full object-cover object-top",attrs:{src:i("8503")}})]),a("PublicContainer",[a("div",{staticClass:"max-w-screen-lg mx-auto py-20"},[a("LandingPageThirdSection"),a("div",{staticClass:"text-center mt-40"},[a("h2",{staticClass:"text-display-lg text-secondary"},[e._v(" "+e._s(e.$t("landingPage.hero.subtitle"))+" ")]),a("LandingPageContactForm",{staticClass:"mx-auto"})],1)],1)]),a("CreditWrapper",{attrs:{credit:"© Ville de Strasbourg"}},[a("div",{staticClass:"grid grid-cols-3 w-full gap-0"},[a("img",{staticClass:"h-64 w-full object-cover object-top",attrs:{src:i("da0f")}}),a("img",{staticClass:"h-64 w-full object-cover object-top",attrs:{src:i("1676")}}),a("img",{staticClass:"h-64 w-full object-cover object-top",attrs:{src:i("8b2f")}})])])],1)},Ua=[],Ha=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("NavBar",{attrs:{stickyHeader:e.stickyHeader,displayLanguagePicker:e.displayLanguagePicker}}),e._t("default"),i("PublicFooter")],2)},Ga=[],Wa=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("div",{class:!e.sticky&&"hidden"},[i("NavBarSticky",{attrs:{menuDisplayed:e.menuDisplayed,toggleMenu:e.toggleMenu}})],1),i("div",{class:e.sticky&&"hidden"},[i("PublicContainer",[i("header",{staticClass:"py-4 flex flex-row justify-between items-center",attrs:{role:"navigation"}},[i("NavBarLogo"),i("div",{staticClass:"hidden md:flex flex-row"},[i("div",[i("router-link",{attrs:{to:"/connexion"}},[i("Button",{attrs:{variant:"primary"}},[e._v(e._s(e.$t("landingPage.header.connect")))])],1)],1),e.displayLanguagePicker?i("LanguagePicker",{staticClass:"ml-2"}):e._e()],1),i("NavBarMobileButton",{staticClass:"md:hidden",attrs:{onClick:e.toggleMenu}})],1)])],1),e.menuDisplayed?i("NavBarMobileMenu",{staticClass:"fixed top-0 right-0 mt-16 z-10",attrs:{closeMenu:e.closeMenu,displayLanguagePicker:e.displayLanguagePicker}}):e._e()],1)},Ja=[],Qa=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",[a("router-link",{attrs:{to:"/landing"}},[a("div",{staticClass:"flex flex-row align-items"},[a("img",{staticClass:"marianne",attrs:{src:i("37bc"),alt:"france"}}),a("div",{staticClass:"ml-2 text-display-xs md:text-display-sm text-black"},[e._v(" Résorption-bidonvilles ")])])])],1)},Ya=[],Za=(i("4316"),{}),Ka=Object(u["a"])(Za,Qa,Ya,!1,null,"07ee7c4c",null),Xa=Ka.exports,es=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"fixed z-10 top-0 left-0 w-full bg-white shadow"},[i("PublicContainer",[i("header",{staticClass:"py-4 flex flex-row justify-between items-center",attrs:{role:"navigation"}},[i("NavBarLogo"),i("div",{staticClass:"hidden md:block"},[i("router-link",{staticClass:"mr-2",attrs:{to:"/contact"}},[i("Button",{attrs:{variant:"secondary"}},[e._v(e._s(e.$t("landingPage.header.contact")))])],1),i("router-link",{attrs:{to:"/connexion"}},[i("Button",{attrs:{variant:"primary"}},[e._v(e._s(e.$t("landingPage.header.connect")))])],1)],1),i("NavBarMobileButton",{staticClass:"md:hidden",attrs:{onClick:e.toggleMenu}})],1)])],1)},ts=[],is=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("button",{staticClass:"focus:outline-none",on:{click:e.onClick}},[i("svg",{staticClass:"block h-6 w-6",attrs:{stroke:"currentColor",fill:"none",viewBox:"0 0 24 24"}},[i("path",{attrs:{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 6h16M4 12h16M4 18h16"}})])])},as=[],ss={props:{onClick:{type:Function,required:!0}}},ns=ss,os=Object(u["a"])(ns,is,as,!1,null,null,null),rs=os.exports,ls=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"container px-10 mx-auto"},[e._t("default")],2)},cs=[],us={},ds=Object(u["a"])(us,ls,cs,!1,null,null,null),ps=ds.exports,ms={props:{menuDisplayed:{type:Boolean,required:!0},toggleMenu:{type:Function,required:!0}},components:{NavBarLogo:Xa,Button:ee,NavBarMobileButton:rs,PublicContainer:ps}},hs=ms,vs=Object(u["a"])(hs,es,ts,!1,null,null,null),fs=vs.exports,gs=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("Dropdown",{scopedSlots:e._u([{key:"button",fn:function(){return[a("Button",{attrs:{variant:"primaryOutline",icon:"chevron-down"}},["fr"===e.$i18n.locale?a("img",{staticClass:"inline-block h-6",attrs:{src:i("3229")}}):e._e(),"en"===e.$i18n.locale?a("img",{staticClass:"inline-block h-6",attrs:{src:i("2361")}}):e._e(),"ro"===e.$i18n.locale?a("img",{staticClass:"inline-block h-6",attrs:{src:i("9d64")}}):e._e(),"bg"===e.$i18n.locale?a("img",{staticClass:"inline-block h-6",attrs:{src:i("ac65")}}):e._e(),e._v(" "+e._s(" ")+" "),a("span",{staticClass:"uppercase"},[e._v(e._s(e.$i18n.locale))])])]},proxy:!0},{key:"menu",fn:function(t){var s=t.closeMenu;return[a("Menu",{on:{click:s}},[a("MenuItem",{on:{click:function(t){return e.pickLang("fr")}}},[a("img",{staticClass:"inline-block h-6",attrs:{src:i("3229")}}),e._v(" FR ")]),a("MenuItem",{on:{click:function(t){return e.pickLang("en")}}},[a("img",{staticClass:"inline-block h-6",attrs:{src:i("2361")}}),e._v(" EN ")]),a("MenuItem",{on:{click:function(t){return e.pickLang("ro")}}},[a("img",{staticClass:"inline-block h-6",attrs:{src:i("9d64")}}),e._v(" RO ")]),a("MenuItem",{on:{click:function(t){return e.pickLang("bg")}}},[a("img",{staticClass:"inline-block h-6",attrs:{src:i("ac65")}}),e._v(" BG ")])],1)]}}])})},bs=[],_s={methods:{pickLang(e){this.$i18n.locale=e,Object(D["d"])(e)}}},ys=_s,ws=Object(u["a"])(ys,gs,bs,!1,null,null,null),Cs=ws.exports,ks=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"origin-top-right right-0 mt-2 w-48 rounded-md shadow-lg"},[i("Menu",[i("MenuItem",[i("router-link",{attrs:{to:"/connexion"}},[e._v(" "+e._s(e.$t("landingPage.header.connect"))+" ")])],1),i("MenuItem",[i("router-link",{attrs:{to:"/contact"}},[e._v(" "+e._s(e.$t("landingPage.header.contact"))+" ")])],1),i("MenuItem",[i("LanguagePicker")],1)],1)],1)},xs=[],Ss={props:{closeMenu:{required:!0,type:Function},displayLanguagePicker:{type:Boolean}},components:{LanguagePicker:Cs,Menu:Vt,MenuItem:Jt},mounted(){setTimeout(()=>{document.addEventListener("click",this.checkOutsideClick)},0)},destroyed(){document.removeEventListener("click",this.checkOutsideClick)},methods:{checkOutsideClick(e){this.$el.contains(e.target)||this.closeMenu()}}},$s=Ss,Ps=Object(u["a"])($s,ks,xs,!1,null,null,null),Ts=Ps.exports,Is={props:{stickyHeader:{type:Boolean},displayLanguagePicker:{type:Boolean,default:!1}},components:{NavBarLogo:Xa,NavBarSticky:fs,Button:ee,NavBarMobileMenu:Ts,NavBarMobileButton:rs,PublicContainer:ps,LanguagePicker:Cs},data(){return{scrollTop:0,menuDisplayed:!1}},methods:{handleScroll(){const e=this.$el.offsetHeight;this.scrollTop=window.scrollY-e},openMenu(){this.menuDisplayed=!0},closeMenu(){this.menuDisplayed=!1},toggleMenu(){this.menuDisplayed=!this.menuDisplayed}},computed:{sticky(){return this.scrollTop>200&&this.stickyHeader}},mounted(){window.addEventListener("scroll",this.handleScroll)},destroyed(){window.removeEventListener("scroll",this.handleScroll)}},Os=Is,As=Object(u["a"])(Os,Wa,Ja,!1,null,null,null),Ns=As.exports,Es=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("footer",{staticClass:"bg-black text-white py-8",attrs:{role:"contentinfo"}},[i("PublicContainer",[i("div",{staticClass:"max-w-screen-lg mx-auto"},[i("div",{staticClass:"md:flex flex-row justify-between"},[i("ul",[i("li",[i("font-awesome-icon",{attrs:{icon:"envelope"}})],1),i("li",[i("h4",[e._v(e._s(e.$t("footer.contact")))])]),i("li",[i("h4",[i("a",{staticClass:"underline",attrs:{href:"mailto:contact@resorption-bidonvilles.beta.gouv.fr"}},[e._v("contact@resorption-bidonvilles.beta.gouv.fr")])])])]),i("ul",[i("li",[i("router-link",{attrs:{to:"/statistiques-publiques"}},[e._v(e._s(e.$t("footer.statistics")))])],1),i("li",[i("router-link",{attrs:{to:"/mentions-legales"}},[e._v(e._s(e.$t("footer.legal")))])],1)])])])])],1)},js=[],Ds={components:{PublicContainer:ps}},qs=Ds,Ms=Object(u["a"])(qs,Es,js,!1,null,null,null),Ls=Ms.exports,Fs={props:{stickyHeader:{type:Boolean,default:!0},displayLanguagePicker:{type:Boolean,default:!1}},components:{NavBar:Ns,PublicFooter:Ls}},zs=Fs,Bs=Object(u["a"])(zs,Ha,Ga,!1,null,null,null),Rs=Bs.exports,Vs=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"text-center"},[i("h1",{staticClass:"text-display-xl font"},[e._v(e._s(e.$t("landingPage.hero.title")))]),i("h2",{staticClass:"text-display-lg text-secondary mt-2"},[e._v(" "+e._s(e.$t("landingPage.hero.subtitle"))+" ")]),i("LandingPageContactForm",{staticClass:"mx-auto"})],1)},Us=[],Hs=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("form",{staticClass:"flex flex-row justify-center mt-4 w-full max-w-md",on:{submit:function(t){return t.preventDefault(),e.onSubmit(t)}}},[i("input",{directives:[{name:"model",rawName:"v-model",value:e.email,expression:"email"}],staticClass:"hidden md:block border-2 border-G200 rounded-md flex-1 py-2 px-4 outline-none focus:border-G400",attrs:{placeholder:e.$t("landingPage.contactForm.email")},domProps:{value:e.email},on:{input:function(t){t.target.composing||(e.email=t.target.value)}}}),i("Button",{staticClass:"ml-1",attrs:{type:"submit",variant:"secondary"}},[e._v(e._s(e.$t("landingPage.contactForm.cta")))])],1)},Gs=[],Ws={data(){return{email:""}},methods:{onSubmit(){this.$router.push("/contact"+(this.email?"?email="+encodeURIComponent(this.email):""))}}},Js=Ws,Qs=Object(u["a"])(Js,Hs,Gs,!1,null,null,null),Ys=Qs.exports,Zs={components:{LandingPageContactForm:Ys}},Ks=Zs,Xs=Object(u["a"])(Ks,Vs,Us,!1,null,null,null),en=Xs.exports,tn=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",[a("img",{staticClass:"full-width mx-auto",attrs:{src:i("8973")}}),"fr"===e.$i18n.locale?a("EventTutorial"):e._e(),a("div",{staticClass:"max-w-screen-sm mx-auto mt-8"},[a("LandingPageResponsiveEmbed",[a("iframe",{attrs:{src:"https://www.youtube.com/embed/AAD0QoOzIHM?modestbranding=1&autohide=1&showinfo=0",frameborder:"0",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowfullscreen:""}})])],1),a("div",[a("div",{staticClass:"mt-24"},[a("div",{staticClass:"max-w-screen-sm mx-auto"},[a("div",{staticClass:"text-display-lg font-normal"},[e._v(" "+e._s(e.$t("landingPage.firstSection.context.title"))+" ")]),a("div",{staticClass:"text-display-lg"},[e._v(" "+e._s(e.$t("landingPage.firstSection.context.subtitle"))+" ")]),a("div",{staticClass:"mt-4"},[e._v(" "+e._s(e.$t("landingPage.firstSection.context.text"))+" ")])])]),a("div",{staticClass:"md:grid md:grid-cols-3 gap-16 mt-16"},[a("LandingPageFeatureBlock",{attrs:{icon:"map-marked-alt"}},[e._v(e._s(e.$t("landingPage.firstSection.features.position")))]),a("LandingPageFeatureBlock",{staticClass:"my-8 md:my-0",attrs:{icon:"chart-line"}},[e._v(e._s(e.$t("landingPage.firstSection.features.actions")))]),a("LandingPageFeatureBlock",{attrs:{icon:"comments"}},[e._v(e._s(e.$t("landingPage.firstSection.features.exchange")))])],1),a("div",{staticClass:"md:flex md:flex-row mt-16"},[a("LandingPageContextImage",{attrs:{label:e.$t("landingPage.firstSection.before")}},["fr"===e.$i18n.locale?a("img",{attrs:{src:i("dd94")}}):e._e(),"en"===e.$i18n.locale?a("img",{attrs:{src:i("f20a")}}):e._e(),"bg"===e.$i18n.locale?a("img",{attrs:{src:i("7b7b")}}):e._e(),"ro"===e.$i18n.locale?a("img",{attrs:{src:i("a8ac")}}):e._e()]),a("div",{staticClass:"hidden md:block border-solid border-r-2 border-gray-200 m-20"}),a("LandingPageContextImage",{attrs:{label:e.$t("landingPage.firstSection.after")}},["fr"===e.$i18n.locale?a("img",{attrs:{src:i("cbe6")}}):e._e(),"en"===e.$i18n.locale?a("img",{attrs:{src:i("9aab")}}):e._e(),"bg"===e.$i18n.locale?a("img",{attrs:{src:i("e2e4")}}):e._e(),"ro"===e.$i18n.locale?a("img",{attrs:{src:i("64d6")}}):e._e()])],1),a("LandingPageUserFeedback",{staticClass:"mt-32"})],1)],1)},an=[],sn=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("font-awesome-icon",{attrs:{icon:e.icon,size:"3x"}}),i("h3",{staticClass:"text-display-lg font-normal mt-2"},[e._t("default")],2)],1)},nn=[],on={name:"LandingPageFeatureBlock",props:{icon:{type:String,required:!0}}},rn=on,ln=Object(u["a"])(rn,sn,nn,!1,null,null,null),cn=ln.exports,un=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("div",{staticClass:"text-secondary text-display-md"},[e._v(e._s(e.label))]),e._t("default")],2)},dn=[],pn={props:{label:{type:String,required:!0}}},mn=pn,hn=Object(u["a"])(mn,un,dn,!1,null,null,null),vn=hn.exports,fn=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("div",{staticClass:"max-w-screen-sm mx-auto relative mt-16"},[i("LandingPageUserFeedbackSection",{attrs:{active:1===e.active,text:e.$t("landingPage.firstSection.feedback.1.text"),author:e.$t("landingPage.firstSection.feedback.1.author")}}),i("LandingPageUserFeedbackSection",{attrs:{active:2===e.active,text:e.$t("landingPage.firstSection.feedback.2.text"),author:e.$t("landingPage.firstSection.feedback.2.author")}}),i("LandingPageUserFeedbackSection",{attrs:{active:3===e.active,text:e.$t("landingPage.firstSection.feedback.3.text"),author:e.$t("landingPage.firstSection.feedback.3.author")}})],1),i("div",{staticClass:"mt-2 text-center"},[i("LandingPageUserFeedbackBullet",{attrs:{onClick:function(){return e.setSection(1)},active:1===e.active}}),i("LandingPageUserFeedbackBullet",{attrs:{onClick:function(){return e.setSection(2)},active:2===e.active}}),i("LandingPageUserFeedbackBullet",{attrs:{onClick:function(){return e.setSection(3)},active:3===e.active}})],1)])},gn=[],bn=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("input",{class:["appearance-none h-3 w-3 mx-1 cursor-pointer rounded-full border border-black outline-none",e.active&&"bg-black border-transparent"],attrs:{type:"radio"},domProps:{checked:e.active},on:{click:e.onClick}})},_n=[],yn={props:{active:{type:Boolean},onClick:{type:Function}}},wn=yn,Cn=Object(u["a"])(wn,bn,_n,!1,null,null,null),kn=Cn.exports,xn=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{class:e.active?"transition duration-500 block opacity-100 visible":"invisible opacity-0 absolute"},[i("div",{staticClass:"relative text-xl feedbackText"},[e._v(e._s(e.text))]),i("div",{staticClass:"text-lg font-light"},[e._v(e._s(e.author))])])},Sn=[],$n={props:{text:{type:String},author:{type:String},active:{type:Boolean}}},Pn=$n,Tn=(i("1210"),Object(u["a"])(Pn,xn,Sn,!1,null,"a695c1c4",null)),In=Tn.exports,On={data(){return{active:1,interval:null}},methods:{setNextSection(){1===this.active?this.active=2:2===this.active?this.active=3:3===this.active&&(this.active=1)},setSection(e){this.active=e,clearInterval(this.interval),this.interval=setInterval(this.setNextSection,8e3)}},mounted(){this.interval=setInterval(this.setNextSection,8e3)},beforeDestroy(){clearInterval(this.interval)},components:{LandingPageUserFeedbackBullet:kn,LandingPageUserFeedbackSection:In}},An=On,Nn=Object(u["a"])(An,fn,gn,!1,null,null,null),En=Nn.exports,jn=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"wrapper",style:e.paddingStyle},[e._t("default")],2)},Dn=[],qn={props:{videoRatio:{type:String,default:"56.25%"}},computed:{paddingStyle(){return"padding-bottom: "+this.videoRatio}}},Mn=qn,Ln=(i("379b"),Object(u["a"])(Mn,jn,Dn,!1,null,null,null)),Fn=Ln.exports,zn=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"full-width h-auto mx-auto mt-8 mb-16 bg-orange300 rounded-lg overflow-hidden"},[i("div",{staticClass:"lg:flex"},[e._m(0),e._m(1),i("div",{staticClass:"px-8 py-2 lg:p-8"},[i("a",{attrs:{href:"https://app.evalandgo.com/s/index.php?a=JTk2cCU5N2slOUElQjA=&id=JTk4ayU5QW4lOTYlQUY=",target:"_blank"}},[i("Button",{staticClass:"my-2",attrs:{variant:"secondary"}},[e._v("S'inscrire")])],1),i("p",{staticClass:"text-sm font-bold"},[e._v("Les jeudi à 10h")]),i("p",{staticClass:"text-sm font-bold"},[e._v("et vendredi à 14h - 45 min")])])])])},Bn=[function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"lg:flex-shrink-0 justify-center"},[a("img",{staticClass:"m-4 h-40",attrs:{src:i("d4e4"),alt:""}})])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"flex-shrink-0 lg:flex-shrink px-8 py-2 lg:py-8 lg:px-4"},[i("div",{staticClass:"tracking-wide text-display-md text-primary"},[e._v(" Formation personnalisée ")]),i("p",{staticClass:"mt-2 text-md"},[e._v(" Prenez en main rapidement la plateforme "),i("em",[e._v("Résorption-bidonvilles")]),e._v(" grâce à une présentation personnalisée. Nous répondrons à toutes vos questions. ")])])}],Rn={},Vn=Object(u["a"])(Rn,zn,Bn,!1,null,null,null),Un=Vn.exports,Hn={components:{LandingPageContextImage:vn,LandingPageFeatureBlock:cn,LandingPageUserFeedback:En,LandingPageResponsiveEmbed:Fn,EventTutorial:Un}},Gn=Hn,Wn=Object(u["a"])(Gn,tn,an,!1,null,null,null),Jn=Wn.exports,Qn=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",[a("div",{staticClass:"md:grid md:grid-cols-3 md:gap-16"},[a("LandingPageDataBlock",{attrs:{line1:e.$t("landingPage.secondSection.data.1.line1"),line2:e.$t("landingPage.secondSection.data.1.line2"),line3:e.$t("landingPage.secondSection.data.1.line3")}}),a("LandingPageDataBlock",{staticClass:"my-4 md:my-0",attrs:{line1:e.$t("landingPage.secondSection.data.2.line1"),line2:e.$t("landingPage.secondSection.data.2.line2"),line3:e.$t("landingPage.secondSection.data.2.line3")}}),a("LandingPageDataBlock",{attrs:{line1:e.$t("landingPage.secondSection.data.3.line1"),line2:e.$t("landingPage.secondSection.data.3.line2"),line3:e.$t("landingPage.secondSection.data.3.line3")}})],1),a("div",{staticClass:"max-w-screen-sm mx-auto "},[a("h2",{staticClass:"mt-16"},[a("span",{staticClass:"text-display-lg font-normal"},[e._v(e._s(e.$t("landingPage.secondSection.title")))]),a("span",{staticClass:"text-display-lg block"},[e._v(e._s(e.$t("landingPage.secondSection.subtitle")))])]),a("div",{staticClass:"mt-8"},[e._v(" "+e._s(e.$t("landingPage.secondSection.firstParagraph"))+" ")]),a("div",{staticClass:"mt-8"},[a("span",{staticClass:"font-bold"},[e._v(e._s(e.$t("landingPage.secondSection.secondParagraph.bold")))]),e._v(" "+e._s(e.$t("landingPage.secondSection.secondParagraph.normal"))+" ")]),a("div",[a("a",{staticClass:"link",attrs:{href:"https://www.ecologie.gouv.fr/resorption-des-campements-illicites-et-des-bidonvilles"}},[e._v(e._s(e.$t("landingPage.secondSection.secondParagraph.link")))])]),"fr"===e.$i18n.locale?a("img",{staticClass:"mt-20 w-full",attrs:{src:i("d67e")}}):e._e(),"en"===e.$i18n.locale?a("img",{staticClass:"mt-20 w-full",attrs:{src:i("1239")}}):e._e(),"bg"===e.$i18n.locale?a("img",{staticClass:"mt-20 w-full",attrs:{src:i("5549")}}):e._e(),"ro"===e.$i18n.locale?a("img",{staticClass:"mt-20 w-full",attrs:{src:i("cfd5")}}):e._e()]),a("div",{staticClass:"mt-20 md:flex md:flex-row items-center"},[a("div",{staticClass:"block md:hidden mb-4 text-display-lg"},[e._v(" "+e._s(e.$t("landingPage.secondSection.video.text"))+" ")]),a("div",{staticClass:"md:w-1/2 md:mr-16 bg-gray-500"},[a("LandingPageResponsiveEmbed",[a("iframe",{attrs:{src:"https://www.dailymotion.com/embed/video/x7mf87e",allowfullscreen:"",allow:"autoplay; fullscreen"}})])],1),a("div",{staticClass:"hidden md:blockw-1/2 text-display-lg"},[e._v(" "+e._s(e.$t("landingPage.secondSection.video.text"))+" ")])])])},Yn=[],Zn=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("div",{staticClass:"text-md"},[e._v(e._s(e.line1))]),i("div",{staticClass:"text-display-xl leading-none"},[e._v(e._s(e.line2))]),i("div",{staticClass:"text-md"},[e._v(e._s(e.line3))])])},Kn=[],Xn={name:"LandingPageDataBlock",props:{line1:{type:String,required:!0},line2:{type:String,required:!0},line3:{type:String,required:!0}}},eo=Xn,to=Object(u["a"])(eo,Zn,Kn,!1,null,null,null),io=to.exports,ao={components:{LandingPageDataBlock:io,LandingPageResponsiveEmbed:Fn}},so=ao,no=Object(u["a"])(so,Qn,Yn,!1,null,null,null),oo=no.exports,ro=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("div",{staticClass:"max-w-screen-sm mx-auto"},[i("h2",{staticClass:"text-display-lg"},[e._v(" "+e._s(e.$t("landingPage.thirdSection.title"))+" ")]),i("div",{staticClass:" mt-8"},[i("span",{staticClass:"font-bold"},[e._v(e._s(e.$t("landingPage.thirdSection.firstParagraph.bold")))]),e._v(" "+e._s(e.$t("landingPage.thirdSection.firstParagraph.normal"))+" ")]),e._m(0),i("div",{staticClass:"grid grid-cols-1 md:grid-cols-2 gap-y-8 md:gap-x-16"},[i("LandingPageBilanBlock",{attrs:{icon:"users",text:e.$t("landingPage.thirdSection.bilan.1.text")}}),i("LandingPageBilanBlock",{attrs:{icon:"hand-holding-medical",text:e.$t("landingPage.thirdSection.bilan.3.text")}}),i("LandingPageBilanBlock",{attrs:{icon:"map-marker-alt",text:e.$t("landingPage.thirdSection.bilan.4.text")}}),i("LandingPageBilanBlock",{attrs:{icon:"file-signature",text:e.$t("landingPage.thirdSection.bilan.6.text")}}),i("LandingPageBilanBlock",{attrs:{icon:"book",text:e.$t("landingPage.thirdSection.bilan.5.text"),info:e.$t("landingPage.thirdSection.bilan.5.info")}})],1),i("div",{staticClass:"text-center mt-8"},[i("a",{attrs:{href:"https://www.gouvernement.fr/sites/default/files/contenu/piece-jointe/2019/09/bilan_campements_2018_vecran.pdf"}},[i("Button",{attrs:{variant:"secondary"}},[e._v(" "+e._s(e.$t("landingPage.thirdSection.cta"))+" ")])],1)])]),i("div",{staticClass:"mt-32"},[i("div",{staticClass:"max-w-screen-sm mx-auto"},[i("h2",{staticClass:"text-display-lg"},[e._v(" "+e._s(e.$t("landingPage.thirdSection.secondParagraph.title"))+" ")]),i("div",{staticClass:"mt-4"},[e._v(" "+e._s(e.$t("landingPage.thirdSection.secondParagraph.body.text1"))+" "),i("a",{staticClass:"link",attrs:{href:"https://www.ecologie.gouv.fr/resorption-des-campements-illicites-et-des-bidonvilles"}},[e._v(e._s(e.$t("landingPage.thirdSection.secondParagraph.body.link1")))]),e._v(", "+e._s(e.$t("landingPage.thirdSection.secondParagraph.body.text2"))+". "),i("span",{staticClass:"font-bold"},[e._v(" "+e._s(e.$t("landingPage.thirdSection.secondParagraph.body.text3"))+" ")]),e._v(" "+e._s(e.$t("landingPage.thirdSection.secondParagraph.body.text4"))+" "),i("a",{staticClass:"link",attrs:{href:"https://beta.gouv.fr/startups/resorption-bidonvilles.html"}},[e._v(e._s(e.$t("landingPage.thirdSection.secondParagraph.body.link2"))+".")])]),i("div",{staticClass:"mt-8"},[i("div",[e._v(" "+e._s(e.$t("landingPage.thirdSection.secondParagraph.items.title"))+" ")]),i("ul",{staticClass:"list-disc ml-8"},[i("li",[i("a",{staticClass:"link",attrs:{href:"https://entrepreneur-interet-general.etalab.gouv.fr/defis/2019/resorption-bidonvilles.html"}},[e._v(e._s(e.$t("landingPage.thirdSection.secondParagraph.items.1.link")))]),e._v(" "+e._s(e.$t("landingPage.thirdSection.secondParagraph.items.1.text"))+" ")]),i("li",[i("a",{staticClass:"link",attrs:{href:"https://ec.europa.eu/info/funding-tenders/opportunities/portal/screen/how-to-participate/org-details/999999999/project/881989/program/31076817/details"}},[e._v(e._s(e.$t("landingPage.thirdSection.secondParagraph.items.2.link")))]),e._v(e._s(e.$t("landingPage.thirdSection.secondParagraph.items.2.text"))+" ")]),i("li",[i("a",{staticClass:"link",attrs:{href:"https://beta.gouv.fr/approche/fast/03-fast.html"}},[e._v(e._s(e.$t("landingPage.thirdSection.secondParagraph.items.3.link")))]),e._v(" "+e._s(e.$t("landingPage.thirdSection.secondParagraph.items.3.text"))+" ")]),i("li",[i("a",{staticClass:"link",attrs:{href:"https://www.modernisation.gouv.fr/action-publique-2022/fonds-pour-la-transformation-de-laction-publique/ftap-112-millions-deuros-pour-les-19-projets-laureats"}},[e._v(e._s(e.$t("landingPage.thirdSection.secondParagraph.items.4.link")))]),e._v(" "+e._s(e.$t("landingPage.thirdSection.secondParagraph.items.4.text"))+" ")])])]),e._m(1),e._m(2)])])])},lo=[function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"flex flex-row items-center my-8"},[i("div",{staticClass:"bg-gray-500 h-px flex-1"}),i("div",{staticClass:"inline-block bg-black text-white text-display-md px-4"},[e._v(" 2019 ")]),i("div",{staticClass:"bg-gray-500 h-px flex-1"})])},function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"flex flex-row flex-wrap items-center justify-between mt-8"},[a("a",{attrs:{href:"https://solidarites-sante.gouv.fr/"}},[a("img",{staticClass:"h-24 m-2",attrs:{src:i("6ead")}})]),a("a",{attrs:{href:"https://ec.europa.eu/info/index_en"}},[a("img",{staticClass:"h-24 my-2",attrs:{src:i("e61f")}})])])},function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"flex flex-row flex-wrap items-center justify-between mt-8"},[a("a",{attrs:{href:"https://beta.gouv.fr/approche/incubateurs/mtes.html"}},[a("img",{staticClass:"h-24 m-2",attrs:{src:i("0f88")}})]),a("a",{attrs:{href:"https://beta.gouv.fr/"}},[a("img",{staticClass:"h-20 m-2",attrs:{src:i("3b8a")}})]),a("a",{attrs:{href:"https://entrepreneur-interet-general.etalab.gouv.fr/defis/2019/resorption-bidonvilles.html"}},[a("img",{staticClass:"h-16 m-2",attrs:{src:i("77c5")}})])])}],co=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"flex flex-row"},[i("div",[i("font-awesome-icon",{staticClass:"text-secondary",attrs:{icon:e.icon,size:"2x"}})],1),i("div",{staticClass:"ml-2"},[i("span",{staticClass:"font-bold text-display-md"},[e._v(e._s(e.text))]),i("span",[e._v(e._s(e.info))])])])},uo=[],po={name:"LandingPageBilanBlock",props:{icon:{required:!0},text:{type:String,required:!0},info:{type:String}}},mo=po,ho=Object(u["a"])(mo,co,uo,!1,null,null,null),vo=ho.exports,fo={components:{LandingPageBilanBlock:vo,Button:ee}},go=fo,bo=Object(u["a"])(go,ro,lo,!1,null,null,null),_o=bo.exports,yo=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"bg-corail text-white full-width text-center py-8"},[i("PublicContainer",[i("div",{staticClass:"max-w-screen-md mx-auto"},[i("h2",{staticClass:"text-display-lg text-white "},[e._t("default")],2),i("div",{staticClass:"pt-4"},[i("router-link",{attrs:{to:"/contact"}},[i("Button",{attrs:{variant:"primary"}},[e._v(e._s(e.cta))])],1)],1)])])],1)},wo=[],Co={components:{Button:ee,PublicContainer:ps},props:{cta:{type:String,required:!0}}},ko=Co,xo=Object(u["a"])(ko,yo,wo,!1,null,null,null),So=xo.exports,$o=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"relative"},[e._t("default"),i("div",{staticClass:"absolute bottom-0 right-0 mr-4 text-white"},[e._v(" "+e._s(e.credit)+" ")])],2)},Po=[],To={props:{credit:{type:String}}},Io=To,Oo=Object(u["a"])(Io,$o,Po,!1,null,null,null),Ao=Oo.exports,No={components:{CreditWrapper:Ao,PublicContainer:ps,PublicLayout:Rs,LandingPageHero:en,LandingPageFirstSection:Jn,LandingPageSecondSection:oo,LandingPageThirdSection:_o,LandingPageBanner:So,LandingPageContactForm:Ys}},Eo=No,jo=Object(u["a"])(Eo,Va,Ua,!1,null,null,null),Do=jo.exports,qo=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"v1"},[i("div",{staticClass:"page--withMargin"},[i("NavBar"),i("Form",e._b({on:{complete:e.onComplete},model:{value:e.formData,callback:function(t){e.formData=t},expression:"formData"}},"Form",e.formDefinition,!1))],1)])},Mo=[],Lo=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("header",{attrs:{role:"navigation"}},[i("div",{staticClass:"topbar"},[i("div",{staticClass:"topbar-container"},[i("router-link",{staticClass:"topbar-home",attrs:{to:"/landing"}},[i("img",{staticClass:"topbar-marianne",attrs:{src:"/img/logo-marianne.svg",alt:"france"}}),i("span",{staticClass:"topbar-domain"},[e._v("resorption-bidonvilles.")]),i("img",{staticClass:"topbar-betagouv",attrs:{src:"/img/betagouvfr.svg",alt:"beta.gouv.fr"}})]),i("span",{ref:"menu",staticClass:"topbar-menu",on:{click:e.showSidebar}},[e._v("Menu")]),i("ul",{staticClass:"nav__links"},e._l(e.items,(function(t){return i("li",{key:t.target,staticClass:"nav__item"},[t.items?i("div",{staticClass:"dropdown"},[e._v(e._s(t.label)+" "),i("div",{staticClass:"dropdown-content"},e._l(t.items,(function(t){return i("router-link",{key:t.target,class:Object.assign(t.classes||{},t.group?{active:e.isCurrentRouteAMemberOf(t.group)}:{}),attrs:{to:t.target}},[e._v(e._s(t.label))])})),1)]):i("router-link",{class:Object.assign(t.classes||{},t.group?{active:e.isCurrentRouteAMemberOf(t.group)}:{}),attrs:{to:t.target}},[e._v(e._s(t.label))])],1)})),0)],1)]),i("div",{ref:"sidebar",staticClass:"sidebar",class:{opened:e.isSidebarOpened}},[i("div",{staticClass:"sidebar-cross",on:{click:e.hideSidebar}},[i("img",{attrs:{src:"/img/cross.svg",alt:"Fermer"}})]),i("ul",{staticClass:"nav__links"},e._l(e.items,(function(t){return i("li",{key:t.target,staticClass:"nav__item"},[t.items?i("div",{staticClass:"dropdown"},[e._v(e._s(t.label)+" "),i("div",{staticClass:"dropdown-content"},e._l(t.items,(function(t){return i("router-link",{key:t.target,class:Object.assign(t.classes||{},t.group?{active:e.isCurrentRouteAMemberOf(t.group)}:{}),attrs:{to:t.target}},[e._v(e._s(t.label))])})),1)]):i("router-link",{class:Object.assign(t.classes||{},t.group?{active:e.isCurrentRouteAMemberOf(t.group)}:{}),attrs:{to:t.target}},[e._v(e._s(t.label))])],1)})),0)])])},Fo=[];let zo=null;function Bo(e){null===zo||zo.closed?zo=window.open(e,"_blank"):(zo.location=e,zo.location.reload(),zo.focus())}var Ro=i("227c");const Vo={MISSING_TOKEN:1,EXPIRED_OR_INVALID_TOKEN:2};function Uo(e,t){let i=null;try{i=this.responseText?JSON.parse(this.responseText):this.responseText}catch(s){return void t({user_message:"Une erreur inconnue est survenue",developer_message:"Failed to parsed the server's response"})}if(!0!==i.success||void 0===i.response)if(this.status/200<1||this.status/200>=1.5){const e=i&&i.error||i||{};switch(e.code){case Vo.MISSING_TOKEN:case Vo.EXPIRED_OR_INVALID_TOKEN:dr(a["default"].prototype.$piwik),DT.push("/");break;default:t(e.user_message?e:{user_message:"Une erreur inconnue est survenue",developer_message:"The server responded with an error status but did not provide error details"})}}else e(i);else e(i.response)}function Ho(e){e()}function Go(e,t,i,a={}){const s=new XMLHttpRequest,n=new Promise((n,o)=>{if(s.open(e,"https://api.resorption-bidonvilles.beta.gouv.fr"+t),Object.keys(a).forEach(e=>{s.setRequestHeader(e,a[e])}),!Object.prototype.hasOwnProperty.call(a,"x-access-token")){const e=hr();null!==e&&s.setRequestHeader("x-access-token",e)}s.setRequestHeader("x-app-version",Ro),s.onload=Uo.bind(s,n,o),s.onerror=Ho.bind(s,o),s.ontimeout=Ho.bind(s,o),void 0!==i?(Object.prototype.hasOwnProperty.call(a,"Content-Type")||s.setRequestHeader("Content-Type","application/json"),s.send(JSON.stringify(i))):s.send()});return n.abort=()=>{s.abort()},n}function Wo(e,t,i){return Go("GET",e,t,i)}function Jo(e,t,i){return Go("POST",e,t,i)}function Qo(e,t,i){return Go("DELETE",e,t,i)}function Yo(e,t,i){return Go("PATCH",e,t,i)}function Zo(e,t,i){return Go("PUT",e,t,i)}function Ko(e){return Bo(`${e}${-1===e.indexOf("?")?"?":"&"}accessToken=${encodeURIComponent(hr())}`)}let Xo=null;function er(){return null!==Xo}function tr(){return Wo("/config").then(e=>(ur(),Xo=e,e))}function ir(){Xo=null}function ar(){return Xo}function sr(e,t){if(null===Xo)return;const i=e.split(".");let a=Xo;while(i.length>1){if(void 0===a)return;a=a[i.shift()]}a[i[0]]=t}function nr(e){if(null===Xo||null===Xo.user)return null;const[t,i]=e.split(".");if(!Object.prototype.hasOwnProperty.call(Xo.user.permissions,t)||!Object.prototype.hasOwnProperty.call(Xo.user.permissions[t],i))return null;const a=Xo.user.permissions[t][i];return!0!==a.allowed?null:a}function or(e){const[t,i,a]=e.split("."),s=nr(`${t}.${i}`);return null!==s&&(void 0===a||!0===s[a])}function rr(e){return Jo("/changelog",{version:e})}function lr(){return null!==Xo&&Xo.user.charte_engagement_a_jour}function cr(e,t){return Jo("/signin",{email:e,password:t}).then(e=>(localStorage.setItem("token",e.token),e))}function ur(){return Wo("/refreshToken").then(e=>{localStorage.setItem("token",e.token)})}function dr(e){ir(),localStorage.removeItem("token"),e&&(e.resetUserId(),e.setCustomVariable(1,"superuser",null),e.setCustomVariable(2,"structure",null),e.setCustomVariable(3,"niveau_geo",null),e.setCustomVariable(4,"geo_nom",null))}function pr(){return null!==localStorage.getItem("token")}function mr(){return!0===localStorage.getItem("logged_once")}function hr(){return localStorage.getItem("token")}function vr(e){return Jo("/users",e)}function fr(){return Wo("/me")}function gr(e){return Jo("/me",e)}function br(){return Wo("/users")}function _r(e){return Wo("/users/"+e)}function yr(e,t){return Jo(`/users/${e}/sendActivationLink`,t)}function wr(e){return Jo(`/users/${e}/denyAccess`)}function Cr(e){return Wo(`/activation-tokens/${encodeURIComponent(e)}/check`)}function kr(e){return Wo(`/password-tokens/${encodeURIComponent(e)}/check`)}function xr(e,t){return Jo(`/users/${e}/activate`,t)}function Sr(e,t){return Jo(`/users/${e}/newPassword`,t)}function $r(e,t){return Jo(`/users/${e}/upgrade`,t)}function Pr(e){return Qo("/users/"+e)}function Tr(e){return Jo("/users/new-password",{email:e})}function Ir(){return Wo("/directory")}function Or(e){return Wo("/organizations/search?query="+encodeURIComponent(e))}function Ar(e,t,i,a){return Zo(`/users/${e}/charte_engagement`,{version_de_charte:t,charte_agreement:i,confidentiality_agreement:a})}var Nr={anonymous:[{label:"Connexion",target:"/connexion"},{label:"Demander un accès",target:"/contact"},{label:"Aide",items:[{label:"Nous contacter",target:"/feedback"},{label:"Mentions légales",target:"/mentions-legales"},{label:"CGUs",target:"/conditions-d-utilisation"}]}],loading:[{label:"Aide",items:[{label:"Nous contacter",target:"/feedback"},{label:"Mentions légales",target:"/mentions-legales"},{label:"CGUs",target:"/conditions-d-utilisation"}]},{label:"Déconnexion",target:"/deconnexion"}],loaded:[{label:"Covid-19",target:"/covid-19",classes:{"router-link--covid":!0}},{label:"Sites",items:[{label:"Liste des sites",target:"/liste-des-sites",group:"townList"},{label:"Déclarer un site",target:"/nouveau-site",group:"townCreation"}]},{label:"Dispositifs",items:[{label:"Liste des dispositifs",target:"/liste-des-dispositifs"},{label:"Déclarer un dispositif",target:"/nouveau-dispositif"}]},{label:"Annuaire",target:"/annuaire",group:"directory"},{label:"Administration",items:[{label:"Liste des utilisateurs",target:"/liste-des-utilisateurs",group:"users"},{label:"Créer un utilisateur",target:"/nouvel-utilisateur",group:"userCreation"},{label:"Statistiques",target:"/statistiques",group:"stats"},{label:"Historique des activités",target:"/historique-des-activites",group:"admin"}]},{label:"Mon compte",items:[{label:"Gérer mon compte",target:"/mon-compte",group:"me"},{label:"Déconnexion",target:"/deconnexion"}]},{label:"Aide",items:[{label:"Nous contacter",target:"/feedback"},{label:"Mentions légales",target:"/mentions-legales"},{label:"CGUs",target:"/conditions-d-utilisation"}]}]},Er={data(){return{isSidebarOpened:!1}},computed:{items(){return!0!==pr()?Nr.anonymous:!0!==er()||!0!==lr()?Nr.loading:this.filterItems(Nr.loaded)}},methods:{filterItems(e){return e.map(e=>e.items?Object.assign(e,{items:e.items.filter(e=>this.isItemAllowed(e))}):e).filter(e=>e.items?e.items.length>0:this.isItemAllowed(e))},isItemAllowed(e){const t=this.$router.resolve({path:e.target}).route.meta.permissions;return!t||t.every(e=>or(e))},isCurrentRouteAMemberOf(e){return this.$route.matched.some(t=>t.meta.group===e)},showSidebar(){this.isSidebarOpened=!0},hideSidebar(){this.isSidebarOpened=!1},checkClickOutsideSidebar(e){this.$refs.sidebar.contains(e.target)||e.target===this.$refs.menu||this.hideSidebar()}},mounted(){document.addEventListener("click",this.checkClickOutsideSidebar)},destroyed(){document.removeEventListener("click",this.checkClickOutsideSidebar)}},jr=Er,Dr=jr,qr=(i("17d9"),Object(u["a"])(Dr,Lo,Fo,!1,null,"b24b83de",null)),Mr=qr.exports,Lr=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"form",attrs:{id:"top"}},[i("header",{staticClass:"form-header"},[i("div",{staticClass:"container"},[i("h1",{staticClass:"form-title"},[e._v(e._s(e.title||"Formulaire"))])])]),i("div",{staticClass:"container"},[i("div",{staticClass:"form-body"},[i("div",{staticClass:"container"},[e.description?i("SlideNote",{attrs:{title:e.descriptionTitle,content:e.description}}):e._e(),e._l(e.fullSections,(function(t){return i("section",{staticClass:"formSection"},[i("header",{staticClass:"formSection-header"},[t.title?i("h1",{staticClass:"formSection-title"},[i("span",{staticClass:"formSection-icon"},[i("font-awesome-icon",{attrs:{icon:t.icon||"flag"}})],1),e._v(" "+e._s(t.title)+" ")]):e._e(),t.description?i("p",{staticClass:"formSection-description",domProps:{innerHTML:e._s(t.description)}}):e._e()]),i("div",[i("span",{staticStyle:{display:"none"}},[e._v(e._s(e.refreshId))]),e._l(t.inputs,(function(t,a){return e.isInputVisible(t)?i("Input",e._b({key:a,attrs:{id:a,errors:e.errors&&e.errors.fields&&e.errors.fields[a]||void 0,disabled:e.isInputDisabled(t),alertMessage:e.getInputAlert(t)},on:{change:e.onDataChange},model:{value:e.data[a],callback:function(t){e.$set(e.data,a,t)},expression:"data[inputId]"}},"Input",t,!1)):e._e()}))],2)])})),e.errors&&e.errors.main?i("div",{staticClass:"notification error"},[i("span",[e._v(e._s(e.wording.error+" : "+e.errors.main))]),e.numberOfFilteredErrors>0?i("p",[e._v("Les champs en erreur sont : "),i("ul",e._l(e.filteredErrors,(function(t,a){return i("li",[i("a",{on:{click:function(t){e.$router.replace("#top",(function(){return e.$router.replace("#"+a)}))}}},[e._v(e._s((e.getInputById(a)||{}).label||"inconnu"))])])})),0)]):e._e()]):e._e(),i("section",{staticClass:"form-stepNav"},[e.submitPrefix?i("p",{domProps:{innerHTML:e._s(e.submitPrefix)}}):e._e(),i("button",{staticClass:"form-stepButton button",attrs:{"data-cy-button":"submit",disabled:e.pending},on:{click:e.submit}},[e.pending?i("img",{attrs:{src:"/img/spinner_light.svg",width:"20"}}):i("span",[e._v(e._s(e.wording.submit))])])])],2)])])])},Fr=[],zr=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"form__group inputContainer",class:{error:e.errors.length>0},attrs:{id:e.id}},[i("label",{staticClass:"input-label"},[e._v(e._s(e.label)),e.mandatory?i("sup",{staticClass:"input-mandatory"},[e._v(" (*)")]):e._e()]),e.alertMessage?i("p",{staticClass:"notification warning"},[e._v(e._s(e.alertMessage))]):i("div",[e.description?i("p",{staticClass:"input-description",domProps:{innerHTML:e._s(e.description)}}):e._e(),e.errors.length>0?i("div",{staticClass:"notification error"},e._l(e.errors,(function(t){return i("ul",[i("li",[e._v(e._s(t))])])})),0):e._e(),"text"===e.type?i("input",e._b({directives:[{name:"model",rawName:"v-model",value:e.data,expression:"data"}],staticClass:"input input--text",attrs:{"data-cy-field":e.id,type:"text",id:"input-"+e.id,disabled:e.disabled,readonly:e.disabled},domProps:{value:e.data},on:{input:function(t){t.target.composing||(e.data=t.target.value)}}},"input",e.props,!1)):e._e(),"hidden"===e.type?i("input",e._b({directives:[{name:"model",rawName:"v-model",value:e.data,expression:"data"}],staticClass:"input input--hidden",attrs:{"data-cy-field":e.id,type:"hidden",id:"input-"+e.id,disabled:e.disabled,readonly:e.disabled},domProps:{value:e.data},on:{input:function(t){t.target.composing||(e.data=t.target.value)}}},"input",e.props,!1)):e._e(),"checkbox"===(e.showPassword?"text":"password")&&"password"===e.type?i("input",e._b({directives:[{name:"model",rawName:"v-model",value:e.data,expression:"data"}],staticClass:"input input--password",attrs:{"data-cy-field":e.id,id:"input-"+e.id,disabled:e.disabled,readonly:e.disabled,type:"checkbox"},domProps:{checked:Array.isArray(e.data)?e._i(e.data,null)>-1:e.data},on:{change:function(t){var i=e.data,a=t.target,s=!!a.checked;if(Array.isArray(i)){var n=null,o=e._i(i,n);a.checked?o<0&&(e.data=i.concat([n])):o>-1&&(e.data=i.slice(0,o).concat(i.slice(o+1)))}else e.data=s}}},"input",e.props,!1)):"radio"===(e.showPassword?"text":"password")&&"password"===e.type?i("input",e._b({directives:[{name:"model",rawName:"v-model",value:e.data,expression:"data"}],staticClass:"input input--password",attrs:{"data-cy-field":e.id,id:"input-"+e.id,disabled:e.disabled,readonly:e.disabled,type:"radio"},domProps:{checked:e._q(e.data,null)},on:{change:function(t){e.data=null}}},"input",e.props,!1)):"password"===e.type?i("input",e._b({directives:[{name:"model",rawName:"v-model",value:e.data,expression:"data"}],staticClass:"input input--password",attrs:{"data-cy-field":e.id,id:"input-"+e.id,disabled:e.disabled,readonly:e.disabled,type:e.showPassword?"text":"password"},domProps:{value:e.data},on:{input:function(t){t.target.composing||(e.data=t.target.value)}}},"input",e.props,!1)):e._e(),"password"===e.type?i("span",{staticClass:"input--password-toggler",on:{click:function(t){e.showPassword=!e.showPassword}}},[i("font-awesome-icon",{attrs:{icon:e.showPassword?"eye":"eye-slash"}})],1):e._e(),"textarea"===e.type?i("textarea",e._b({directives:[{name:"model",rawName:"v-model",value:e.data,expression:"data"}],staticClass:"input input--textarea",attrs:{"data-cy-field":e.id,id:"input-"+e.id,disabled:e.disabled,readonly:e.disabled},domProps:{value:e.data},on:{input:function(t){t.target.composing||(e.data=t.target.value)}}},"textarea",e.props,!1)):e._e(),"number"===e.type?i("input",e._b({directives:[{name:"model",rawName:"v-model",value:e.data,expression:"data"}],staticClass:"input input--number",attrs:{"data-cy-field":e.id,type:"number",id:"input-"+e.id,disabled:e.disabled,readonly:e.disabled},domProps:{value:e.data},on:{input:function(t){t.target.composing||(e.data=t.target.value)}}},"input",e.props,!1)):e._e(),"select"===e.type||"selectMultiple"===e.type?i("select",e._b({directives:[{name:"model",rawName:"v-model",value:e.data,expression:"data"}],staticClass:"input input--select",attrs:{"data-cy-field":e.id,id:"input-"+e.id,multiple:"selectMultiple"===e.type,disabled:e.disabled},on:{change:function(t){var i=Array.prototype.filter.call(t.target.options,(function(e){return e.selected})).map((function(e){var t="_value"in e?e._value:e.value;return t}));e.data=t.target.multiple?i:i[0]}}},"select",e.props,!1),[e._l(Object.keys(e.options),(function(t){return e.optionsAreGrouped?i("optgroup",{attrs:{label:e.options[t].label}},e._l(e.options[t].options,(function(t){return i("option",{domProps:{value:t.value}},[e._v(e._s(t.label))])})),0):e._e()})),e._l(e.options,(function(t){return e.optionsAreGrouped?e._e():i("option",{domProps:{value:t.value}},[e._v(e._s(t.label))])}))],2):e._e(),"radio"===e.type?i("ul",{staticClass:"input input--radio",attrs:{id:"input-"+e.id}},e._l(e.options,(function(t,a){return i("li",{staticClass:"input--radio-option"},[i("label",{attrs:{for:"input"+e._uid+"-"+a}},[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data,expression:"data"}],staticClass:"input input--radio",attrs:{type:"radio","data-cy-field":e.id,"data-cy-label":t.label,id:"input"+e._uid+"-"+a,name:"input"+e._uid,disabled:e.disabled},domProps:{value:t.value,checked:e._q(e.data,t.value)},on:{change:function(i){e.data=t.value}}}),e._v(" "+e._s(t.label)+" ")])])})),0):e._e(),"checkbox"===e.type?i("ul",{staticClass:"input--checkbox",attrs:{id:"input-"+e.id}},e._l(e.options,(function(t,a){return i("li",{staticClass:"input--checkbox-option"},[i("label",{attrs:{for:"input"+e._uid+"-"+a}},[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data,expression:"data"}],staticClass:"input input--checkbox",attrs:{type:"checkbox","data-cy-field":e.id,"data-cy-label":t.label,id:"input"+e._uid+"-"+a,name:"input"+e._uid,disabled:e.disabled},domProps:{value:t.value,checked:Array.isArray(e.data)?e._i(e.data,t.value)>-1:e.data},on:{change:function(i){var a=e.data,s=i.target,n=!!s.checked;if(Array.isArray(a)){var o=t.value,r=e._i(a,o);s.checked?r<0&&(e.data=a.concat([o])):r>-1&&(e.data=a.slice(0,r).concat(a.slice(r+1)))}else e.data=n}}}),e._v(" "+e._s(t.label)+" ")])])})),0):e._e(),"date"===e.type?i("Datepicker",e._b({attrs:{"data-cy-field":e.id,"input-class":"input input--date",disabled:e.disabled},model:{value:e.data,callback:function(t){e.data=t},expression:"data"}},"Datepicker",e.props,!1)):e._e(),"autocompleter"===e.type?i("Autocompleter",e._b({attrs:{disabled:e.disabled},model:{value:e.data,callback:function(t){e.data=t},expression:"data"}},"Autocompleter",e.props,!1)):e._e(),"address"===e.type?i("Address",e._b({attrs:{disabled:e.disabled},model:{value:e.data,callback:function(t){e.data=t},expression:"data"}},"Address",e.props,!1)):e._e(),"location"===e.type?i("Location",e._b({attrs:{disabled:e.disabled},model:{value:e.data,callback:function(t){e.data=t},expression:"data"}},"Location",e.props,!1)):e._e(),"addressWithLocation"===e.type?i("AddressWithLocation",e._b({attrs:{"data-cy-field":e.id,disabled:e.disabled},model:{value:e.data,callback:function(t){e.data=t},expression:"data"}},"AddressWithLocation",e.props,!1)):e._e(),"townList"===e.type?i("TownList",e._b({attrs:{disabled:e.disabled},model:{value:e.data,callback:function(t){e.data=t},expression:"data"}},"TownList",e.props,!1)):e._e(),"planFunding"===e.type?i("PlanFunding",e._b({attrs:{disabled:e.disabled},model:{value:e.data,callback:function(t){e.data=t},expression:"data"}},"PlanFunding",e.props,!1)):e._e(),"collectivity"===e.type?i("Collectivity",e._b({attrs:{disabled:e.disabled},model:{value:e.data,callback:function(t){e.data=t},expression:"data"}},"Collectivity",e.props,!1)):e._e(),"organization"===e.type?i("Organization",e._b({attrs:{disabled:e.disabled},model:{value:e.data,callback:function(t){e.data=t},expression:"data"}},"Organization",e.props,!1)):e._e(),"etp"===e.type?i("Etp",e._b({attrs:{disabled:e.disabled},model:{value:e.data,callback:function(t){e.data=t},expression:"data"}},"Etp",e.props,!1)):e._e(),"audience"===e.type?i("Audience",e._b({attrs:{disabled:e.disabled},model:{value:e.data,callback:function(t){e.data=t},expression:"data"}},"Audience",e.props,!1)):e._e(),"planHousing"===e.type?i("PlanHousing",e._b({attrs:{disabled:e.disabled},model:{value:e.data,callback:function(t){e.data=t},expression:"data"}},"PlanHousing",e.props,!1)):e._e()],1)])},Br=[],Rr=i("fa33"),Vr=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"autocompleter"},[i("div",{ref:"measure",staticClass:"autocompleter-measure"},[e._v(e._s(e.currentLabel))]),i("div",{staticClass:"autocompleter-textfield"},[i("div",{ref:"prefixIcon",staticClass:"autocompleter-prefixIcon"},[i("img",{attrs:{src:"/img/search.svg"}})]),i("input",{directives:[{name:"model",rawName:"v-model",value:e.currentLabel,expression:"currentLabel"}],ref:"input",attrs:{type:"text",disabled:e.disabled,readonly:e.disabled,placeholder:e.placeholder},domProps:{value:e.currentLabel},on:{keydown:e.onNavigation,keyup:e.onType,focus:function(t){e.focused=!0},blur:function(t){e.focused=!1},input:function(t){t.target.composing||(e.currentLabel=t.target.value)}}}),i("div",{ref:"spinner",staticClass:"autocompleter-spinner",style:{visibility:e.suggestionRequest.pending?"visible":"hidden"}},[i("img",{attrs:{src:"/img/spinner_dark.svg"}})]),e.currentLabel&&!e.disabled?i("span",{ref:"suffixIcon",staticClass:"autocompleter-clearIcon",on:{click:e.clearLabel}}):e._e(),null!==e.suggestions?i("div",{ref:"suggestionContainer",staticClass:"autocompleter-suggestionContainer",class:{"autocompleter-suggestionContainer--float":e.float,"autocompleter-suggestionContainer--withoutCategories":!e.showCategory}},e._l(e.nonEmptyCategories,(function(t){return e.nonEmptyCategories.length>0?i("div",{staticClass:"autocompleter-suggestionCategoryContainer"},[e.showCategory?i("div",{staticClass:"autocompleter-suggestionCategory"},[e._v(e._s(t))]):e._e(),i("ul",{staticClass:"autocompleter-suggestionCategoryItems"},e._l(e.unselectedSuggestions[t],(function(t){return i("li",{staticClass:"autocompleter-suggestionCategoryItem",class:{"autocompleter-suggestionCategoryItem--empty":t.isExtra,active:t.id===e.idOfHighlightedItem},on:{click:function(i){return e.selectItem(t)}}},[e._v(e._s(t.label))])})),0)]):e._e()})),0):e._e(),null===e.suggestions&&e.suggestionRequest.error&&e.float?i("div",{staticClass:"autocompleter-suggestionContainer autocompleter-suggestionContainer--float autocompleter-suggestionContainer--withoutCategories"},[i("div",{staticClass:"autocompleter-suggestionCategoryContainer"},[i("ul",{staticClass:"autocompleter-suggestionCategoryItems"},[i("li",{staticClass:"autocompleter-suggestionCategoryItem autocompleter-suggestionCategoryItem--error"},[i("img",{attrs:{src:"/img/warning.svg"}}),e._v(" "+e._s(e.suggestionRequest.error))])])])]):e._e()]),e.suggestionRequest.error&&!e.float?i("p",{staticClass:"autocompleter-error"},[i("img",{attrs:{src:"/img/warning.svg"}}),i("span",[e._v(e._s(e.suggestionRequest.error))])]):e._e(),e.allowMultiple&&e.selectedItems.length>0?i("div",{staticClass:"autocompleter-selectionContainer"},[i("p",[e._v(e._s(e.wording.selectedItems)+" :")]),i("table",{staticClass:"table"},[i("thead",[i("tr",[i("th",[e._v(e._s(e.wording.label))]),i("th",[e._v("Actions")])])]),i("tbody",e._l(e.selectedItems,(function(t){return i("tr",[i("td",[e._v(e._s(t.label))]),i("td",[e.disabled?e._e():i("img",{staticClass:"autocompleter-removeItemIcon",attrs:{src:"/img/remove.svg"},on:{click:function(i){return e.unselectItem(t)}}})])])})),0)])]):e._e()])},Ur=[];const Hr=200;var Gr={props:{autocompleter:{type:Function,required:!0},showCategory:{type:Boolean,required:!1,default:!1},allowMultiple:{type:Boolean,required:!1,default:!1},float:{type:Boolean,required:!1,default:!0},wording:{type:Object,required:!1,default(){return{selectedItems:"Éléments sélectionnés",label:"Label"}}},createNew:{type:Function,required:!1,default:null},value:{type:Array,required:!1,default(){return[]}},disabled:{type:Boolean,required:!1,default:!1},placeholder:{type:String,required:!1}},data(){let e="";return this.allowMultiple||1!==this.value.length||([{label:e}]=this.value),{selectedItems:this.value,currentLabel:e,previousLabel:e,focused:!1,suggestions:null,suggestionRequest:{timeout:null,promise:null,pending:!1,error:null},indexOfHighligtedItem:null}},computed:{selectedIds(){return this.selectedItems.map(({id:e})=>e)},nonEmptyCategories(){return Object.keys(this.unselectedSuggestions).sort()},unselectedSuggestions(){if(null===this.suggestions)return{};let e=!0;const t=this.suggestions.reduce((t,i)=>(this.allowMultiple&&-1!==this.selectedIds.indexOf(i.id)||(t[i.category]||(t[i.category]=[]),t[i.category].push(i),e=!1),t),{});return null!==this.createNew?t._=[{id:"new",label:`Créer "${this.currentLabel}"`,category:"",data:{},isExtra:!0}]:e&&(t._=[{id:"empty",label:"Aucun résultat",category:"",data:{},isExtra:!0}]),t},unselectedSuggestionsFlat(){return this.nonEmptyCategories.reduce((e,t)=>[...e,...this.unselectedSuggestions[t]],[])},isSuggestionListEmpty(){const e=this.unselectedSuggestionsFlat;return!(e.length>1)&&(0===e.length||!0===e[0].isExtra&&"empty"===e[0].id)},idOfHighlightedItem(){return null===this.indexOfHighligtedItem||this.indexOfHighligtedItem<0||this.indexOfHighligtedItem>=this.unselectedSuggestionsFlat.length?null:this.unselectedSuggestionsFlat[this.indexOfHighligtedItem].id}},watch:{value(){this.selectedItems=this.value},disabled(){this.reset()}},mounted(){document.addEventListener("click",this.checkOutsideClick)},destroyed(){document.removeEventListener("click",this.checkOutsideClick)},methods:{onType(){this.positionSpinner(),this.currentLabel!==this.previousLabel&&(this.previousLabel=this.currentLabel,this.resetSuggestions(),this.scheduleSuggestionRequest())},onNavigation(e){this.isSuggestionListEmpty?this.indexOfHighligtedItem=null:38===e.keyCode?this.indexOfHighligtedItem-1<0?this.indexOfHighligtedItem=null:this.indexOfHighligtedItem-=1:40===e.keyCode?this.unselectedSuggestionsFlat.length>0&&(null===this.indexOfHighligtedItem?this.indexOfHighligtedItem=0:this.indexOfHighligtedItem=Math.min(this.unselectedSuggestionsFlat.length-1,this.indexOfHighligtedItem+1)):13===e.keyCode?null!==this.indexOfHighligtedItem&&(this.selectItem(this.unselectedSuggestionsFlat[this.indexOfHighligtedItem]),this.$refs.input.focus()):this.indexOfHighligtedItem=null},scheduleSuggestionRequest(){this.cancelSuggestionRequest(),this.suggestionRequest.timeout=setTimeout(this.requestSuggestions,Hr)},cancelSuggestionRequest(){null!==this.suggestionRequest.promise&&this.suggestionRequest.promise.abort(),this.resetSuggestionPromise(),null!==this.suggestionRequest.timeout&&(clearTimeout(this.suggestionRequest.timeout),this.suggestionRequest.timeout=null)},resetSuggestionPromise(){this.suggestionRequest.promise=null,this.suggestionRequest.pending=!1,this.suggestionRequest.error=null},requestSuggestions(){this.canLabelTriggerARequest(this.currentLabel)&&(null!==this.suggestionRequest.promise&&this.cancelSuggestionRequest(),this.suggestionRequest.pending=!0,this.suggestionRequest.promise=this.autocompleter(this.currentLabel),this.suggestionRequest.promise.then(this.setSuggestions).catch(this.handleSuggestionFailure))},setSuggestions(e){this.resetSuggestionPromise(),this.focused&&(this.suggestions=e,this.isSuggestionListEmpty||(this.indexOfHighligtedItem=0))},handleSuggestionFailure(e){let t="erreur inconnue";e&&e.user_message&&(t=e.user_message),this.resetSuggestionPromise(),this.suggestionRequest.error="Une erreur est survenue : "+t},canLabelTriggerARequest(e){return""!==e},clearLabel(){this.cancelSuggestionRequest(),this.setLabel(""),!1===this.allowMultiple&&(this.selectedItems=[],this.$emit("input",this.selectedItems))},reset(){this.cancelSuggestionRequest(),this.$refs.input.blur(),this.allowMultiple||1!==this.selectedItems.length?this.setLabel(""):this.setLabel(this.selectedItems[0].label)},resetSuggestions(){this.suggestions=null},setLabel(e){this.currentLabel=e,this.previousLabel=e,this.resetSuggestions()},checkOutsideClick(e){const t=["prefixIcon","input","suffixIcon","suggestionContainer"];t.some(t=>this.$refs[t]&&this.$refs[t].contains(e.target))||this.reset()},selectItem(e){if(!0!==e.isExtra){if(!1===this.allowMultiple)this.selectedItems=[e],this.reset();else{if(this.selectedItems.some(({id:t})=>e.id===t))return;this.selectedItems.push(e)}this.$emit("input",this.selectedItems)}else{if("empty"===e.id)return;"new"===e.id&&(this.createNew(this.currentLabel),this.resetSuggestions())}},unselectItem(e){const t=this.selectedItems.findIndex(({id:t})=>e.id===t);-1!==t&&(this.selectedItems.splice(t,1),this.$emit("input",this.selectedItems))},positionSpinner(){this.$refs.spinner.style.marginLeft=0;const e=this.$refs.input.clientWidth;this.$refs.spinner.offsetLeft,this.$refs.spinner.offsetWidth,this.$refs.spinner.style.marginLeft=Math.min(this.$refs.measure.clientWidth,e)+"px"}}},Wr=Gr,Jr=Wr,Qr=(i("4f16"),Object(u["a"])(Jr,Vr,Ur,!1,null,null,null)),Yr=Qr.exports,Zr=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("Autocompleter",e._b({attrs:{disabled:e.disabled},model:{value:e.data,callback:function(t){e.data=t},expression:"data"}},"Autocompleter",e.options,!1))},Kr=[];function Xr(e){return`${e.geometry.coordinates[0]}-${e.geometry.coordinates[1]}`}function el(e){const t=[];return e.filter(e=>{const i=Xr(e);return-1===t.indexOf(i)&&(t.push(i),!0)})}function tl(e,t){if(200===this.status)try{const{features:t}=JSON.parse(this.responseText);e(el(t).filter(e=>e.properties&&e.properties.citycode).map(e=>({addressType:e.properties.type,citycode:e.properties.citycode,city:e.properties.city,coordinates:e.geometry.coordinates,id:e.properties.id,label:`${e.properties.label}, ${e.properties.context}`,category:"address",data:{citycode:e.properties.citycode,city:e.properties.city,label:`${e.properties.label}, ${e.properties.context}`,coordinates:e.geometry.coordinates}})))}catch(i){t()}else t()}function il(e,t=5){const i=new XMLHttpRequest,a=new Promise((a,s)=>{const n=["q="+encodeURIComponent(e)],o=parseInt(t,10);Number.isNaN(o)||n.push("limit="+o),i.open("GET","https://api-adresse.data.gouv.fr/search/?"+n.join("&")),i.onload=tl.bind(i,a,s),i.onerror=s,i.ontimeout=s,i.send()});return a.abort=()=>{i.abort()},a}function al(e){const t=Wo("/locations/search?q="+encodeURIComponent(e)),i=t.then(e=>e.map(e=>({label:5===e.code.length?`(${e.code.slice(0,2)}) ${e.name}`:e.name,code:e.code,type:e.label,locationType:e.type,departement:e.departement,data:{code:e.code,type:e.type}})));return i.abort=t.abort,i}function sl(){return Wo("/departements")}var nl={components:{Autocompleter:Yr},props:{value:{type:Object,required:!1,default(){return null}},disabled:{type:Boolean,required:!1,default:!1},specificProps:{type:Object,required:!1,default(){return{}}}},data(){return{data:null!==this.value?[this.value]:[],options:{...this.specificProps,autocompleter:il}}},watch:{value(){this.data=null!==this.value?[this.value]:[]},data(){this.$emit("input",this.data.length>0?this.data[0]:null)}}},ol=nl,rl=ol,ll=(i("f909"),Object(u["a"])(rl,Zr,Kr,!1,null,null,null)),cl=ll.exports,ul=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"location"},[i("div",{ref:"map",staticClass:"location-map"}),e.showTutorial?i("div",{staticClass:"location-tutorial"},[i("div",{staticClass:"location-tutorialWrapper"},[i("h1",{staticClass:"location-tutorialTitle"},[e._v(e._s(e.tutorialWording.title))]),i("br"),i("p",{staticClass:"location-tutorialDescription"},[e._v(e._s(e.tutorialWording.description))]),e.showCloseTutorial?i("p",{staticClass:"location-tutorialButton"},[i("button",{staticClass:"button",on:{click:e.closeTutorial}},[e._v("J'ai compris")])]):e._e()])]):e._e()])},dl=[];const pl=6,ml={coordinates:[46.7755829,2.0497727],zoom:pl};var hl={props:{value:{type:Object,required:!1,default(){return ml}},tutorial:{type:String,required:!1,default:"auto"},autoHideMarker:{type:Boolean,required:!1,default:!1},wording:{type:Object,required:!1,default(){return{tutorialTitle:"Sélectionner une position géographique",tutorialDescription:"Positionnez le marqueur en vous déplaçant sur la carte, puis en cliquant sur la localisation désirée."}}},disabled:{type:Boolean,required:!1,default:!1}},data(){return{map:null,marker:null,clickTimeout:null,showTutorial:this.shouldShowTutorial(this.tutorial),tutorialHasBeenClosed:!1}},computed:{view(){const{lat:e,lng:t}=this.marker.getLatLng();return{coordinates:[e,t],zoom:this.map.getZoom()||pl}},tutorialWording(){return!0===this.disabled?{title:"",description:""}:{title:this.wording.tutorialTitle,description:this.wording.tutorialDescription}},showCloseTutorial(){return!this.disabled&&"auto"===this.tutorial}},watch:{value(){this.syncMap(this.value,!1)},tutorial(){this.showTutorial=this.shouldShowTutorial(this.tutorial)},showTutorial(){this.syncMarker()},autoHideMarker(){this.syncMarker()},disabled(){!0===this.disabled?this.showTutorial=!0:this.showTutorial=this.shouldShowTutorial(this.tutorial)}},mounted(){this.$nextTick(this.initialize)},methods:{initialize(){this.map=ha.a.map(this.$refs.map),this.setTileLayers(),this.createMarker(),this.syncMap(this.value,!1)},setTileLayers(){const e={Satellite:ha.a.tileLayer.provider("Esri.WorldImagery"),Dessin:ha.a.tileLayer.provider("OpenStreetMap.Mapnik")};e.Dessin.addTo(this.map),ha.a.control.layers(e).addTo(this.map)},createMarker(){this.marker=ha.a.marker(this.value.coordinates,{draggable:!0}),this.map.addEventListener("click",e=>{clearTimeout(this.clickTimeout),this.clickTimeout=setTimeout(this.handleClick.bind(this,e),200)}),this.map.addEventListener("dblclick",()=>{clearTimeout(this.clickTimeout),this.clickTimeout=null}),this.marker.addEventListener("dragend",()=>{this.syncMap(this.view,!0)}),this.shouldShowMarker()&&this.marker.addTo(this.map)},syncMap(e,t=!1){this.marker.setLatLng(e.coordinates),this.map.setView(e.coordinates,e.zoom),!0===t&&this.$emit("input",e),clearTimeout(this.clickTimeout),this.clickTimeout=null},handleClick({latlng:{lat:e,lng:t}}){this.marker.setLatLng([e,t]),this.syncMap(this.view,!0),this.clickTimeout=null},closeTutorial(){this.showTutorial=!1,this.tutorialHasBeenClosed=!0},shouldShowMarker(){return!1===this.autoHideMarker||!0!==this.showTutorial},syncMarker(){null!==this.marker&&(this.shouldShowMarker()?this.marker.addTo(this.map):this.marker.remove())},shouldShowTutorial(e){return"no"!==e&&("yes"===e||!this.tutorialHasBeenClosed)}}},vl=hl,fl=vl,gl=(i("8950"),Object(u["a"])(fl,ul,dl,!1,null,null,null)),bl=gl.exports,_l=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("Address",e._b({attrs:{disabled:e.disabled},model:{value:e.address,callback:function(t){e.address=t},expression:"address"}},"Address",e.addressOptions,!1)),i("Location",e._b({ref:"location",attrs:{disabled:e.disabled},model:{value:e.location,callback:function(t){e.location=t},expression:"location"}},"Location",e.locationOptions,!1))],1)},yl=[],wl={components:{Address:cl,Location:bl},props:{value:{type:Object,required:!1,default(){return null}},specificProps:{type:Object,required:!1,default(){return{address:{},location:{}}}},disabled:{type:Boolean,required:!1,default:!1}},data(){return{address:null!==this.value?this.value.address:void 0,location:null!==this.value?this.value.location:void 0}},computed:{addressOptions(){return{...this.specificProps.address}},locationOptions(){return{...this.specificProps.location,tutorial:this.address?"auto":"yes",autoHideMarker:!this.address,wording:this.address?{tutorialTitle:"Adresse détectée",tutorialDescription:"Vous pouvez déplacer le marqueur en cliquant à l'endroit souhaité sur la carte"}:{tutorialTitle:"Saisir une adresse",tutorialDescription:"Veuillez saisir une adresse dans le champ de texte ci-dessus avant d'accéder à la carte"}}},data(){return this.address?{address:this.address,location:this.location}:null}},watch:{value(){this.address=null!==this.value?this.value.address:void 0,this.location=null!==this.value?this.value.location:void 0},address(){if(this.address){const[e,t]=this.address.coordinates;this.location={coordinates:[t,e],zoom:15}}this.$emit("input",this.data)},location(){this.$emit("input",this.data)}}},Cl=wl,kl=Cl,xl=(i("c789"),Object(u["a"])(kl,_l,yl,!1,null,null,null)),Sl=xl.exports,$l=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",["loading"===e.status||null===e.status?i("div",[i("img",{staticClass:"spinner",attrs:{src:"/img/spinner_dark.svg",width:"20"}}),e._v(" Chargement de la liste des sites en cours... ")]):e._e(),"error"===e.status?i("div",{staticClass:"error"},[i("img",{staticClass:"spinner",attrs:{src:"/img/warning.svg",width:"20"}}),e._v(" Le chargement de la liste des sites a échoué : "+e._s(e.loadingError)+" ")]):e._e(),"loaded"===e.status?i("div",[i("p",{staticClass:"selectionInfo"},[e._v("Nombre total de sites sélectionnés : "+e._s(e.selectedTowns.length))]),i("div",{staticClass:"switch"},[i("button",{class:{active:"open"===e.statusOfVisibleTowns},on:{click:function(t){return e.showTowns("open")}}},[e._v("Sites existants")]),i("button",{class:{active:"closed"===e.statusOfVisibleTowns},on:{click:function(t){return e.showTowns("closed")}}},[e._v("Sites fermés")])]),i("CollectivityInput",{staticClass:"townList-search",model:{value:e.location,callback:function(t){e.location=t},expression:"location"}}),i("Table",{attrs:{columns:e.columns,content:e.pageContent,emptyLabel:"Aucun site"},on:{click:e.toggleTown},scopedSlots:e._u([{key:"checkbox",fn:function(t){return[i("input",{attrs:{type:"checkbox",disabled:e.disabled},domProps:{checked:e.selectedTowns.some((function(e){return e===t.row.id}))},on:{change:function(i){return e.toggleTown(t.row)}}})]}},{key:"city",fn:function(t){return[e._v(e._s(t.row.city.name))]}},{key:"address",fn:function(t){return[e._v(e._s(t.row.usename))]}},{key:"fieldType",fn:function(t){return[i("span",{staticClass:"fieldType"},[i("i",{style:"background-color: "+e.fieldTypes[t.row.fieldType.id].color}),e._v(" "),i("span",[e._v(e._s(t.row.fieldType.label))])])]}},{key:"people",fn:function(t){return[null===t.row.populationTotal?i("span",{staticClass:"secondary"},[e._v("NC")]):i("span",[e._v(e._s(t.row.populationTotal))])]}}],null,!1,2250559664)})],1):e._e()])},Pl=[];function Tl(e={},t=[]){const i=[];return Object.keys(e).forEach(t=>{i.push(`${t}=${encodeURIComponent(e[t])}`)}),t.length>0&&i.push("order="+t.map(e=>encodeURIComponent(e)).join(",")),Wo("/towns"+(i.length>0?"?"+i.join("&"):""))}function Il(e){return Wo("/towns/"+e)}function Ol(e){return Jo("/towns",e)}function Al(e,t){return Jo("/towns/"+e,t)}function Nl(e,t){return Jo(`/towns/${e}/close`,t)}function El(e){return Qo("/towns/"+e)}function jl(e,t){return Jo(`/towns/${e}/comments`,t)}function Dl(e,t){return Jo(`/towns/${e}/covidComments`,t)}function ql(e,t,i){return Qo(`/towns/${e}/comments/${t}`,{message:i})}function Ml(e,t){return Jo(`/towns/${e}/actors`,t)}function Ll(e,t){return Qo(`/towns/${e}/actors/${t}`)}function Fl(e,t,i){return Zo(`/towns/${e}/actors/${t}`,{themes:i})}function zl(e,t,i){return Qo(`/towns/${e}/actors/${t}/themes/${i}`)}function Bl(e,t){return Zo(`/towns/${e}/invitations`,{email:t})}function Rl(e,t){return Wo(`/towns/${e}/relations?q=${encodeURIComponent(t)}`)}var Vl=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"rb-table"},[i("aside",{staticClass:"rb-table-aside"},[e._t("aside",[i("p")]),i("div",{staticClass:"rb-pagination"},[i("span",{staticClass:"link",class:{"link--disabled":0===e.currentPage},on:{click:e.previousPage}},[i("font-awesome-icon",{attrs:{icon:"caret-square-left"}}),e._v(" Précédent")],1),i("span",{staticClass:"pagination-pages"},[e._v(e._s(e.indexOfFirstRowInCurrentPage)+" - "+e._s(e.indexOfLastRowInCurrentPage)+" sur "+e._s(e.filteredContent.length))]),i("span",{staticClass:"link",class:{"link--disabled":e.currentPage===e.indexOfLastPage},on:{click:e.nextPage}},[e._v("Suivant "),i("font-awesome-icon",{attrs:{icon:"caret-square-right"}})],1)])],2),i("table",{staticClass:"table"},[i("thead",[i("tr",e._l(e.parsedColumns,(function(t){var a;return i("th",{class:(a={"table-col--filterable":t.isFilterable,"table-col--active":[t.id].length>0},a["table-col--"+t.id]=!0,a)},[t.isFilterable?i("TableFilter",{attrs:{visible:e.currentFilter===t.id},on:{"outside-click":e.hideFilter,clean:e.hideFilter},model:{value:e.parsedFilters[t.id],callback:function(i){e.$set(e.parsedFilters,t.id,i)},expression:"parsedFilters[column.id]"}}):e._e(),t.isFilterable?i("span",{on:{click:function(i){return e.toggleFilter(t.id)}}},[e._v(e._s(t.label)+" "),e.checkedFilters[t.id].length>0?i("span",{staticClass:"badge"},[e._v(e._s(e.checkedFilters[t.id].length))]):e._e(),i("font-awesome-icon",{attrs:{icon:"sort-down",size:"2x"}})],1):i("span",[e._v(e._s(t.label))])],1)})),0)]),i("tbody",[0===e.filteredContent.length?i("tr",{staticClass:"table-row--empty"},[i("td",{attrs:{colspan:e.parsedColumns.length}},[e._v(e._s(e.emptyLabel))])]):e._e(),e._l(e.currentPageContent,(function(t,a){return i("tr",{class:a%2===0?"table-row--odd":"",on:{click:function(i){return e.click(i,t)}}},e._l(e.parsedColumns,(function(a){return i("td",{class:"table-col--"+a.id},[e._t(a.id,[i("span",{domProps:{innerHTML:e._s(t[a.id])}})],{row:t})],2)})),0)}))],2)]),i("aside",{staticClass:"rb-table-aside"},[e._t("aside",[i("p")]),i("div",{staticClass:"rb-pagination"},[i("span",{staticClass:"link",class:{"link--disabled":0===e.currentPage},on:{click:e.previousPage}},[i("font-awesome-icon",{attrs:{icon:"caret-square-left"}}),e._v(" Précédent")],1),i("span",{staticClass:"pagination-pages"},[e._v(e._s(e.indexOfFirstRowInCurrentPage)+" - "+e._s(e.indexOfLastRowInCurrentPage)+" sur "+e._s(e.filteredContent.length))]),i("span",{staticClass:"link",class:{"link--disabled":e.currentPage===e.indexOfLastPage},on:{click:e.nextPage}},[e._v("Suivant "),i("font-awesome-icon",{attrs:{icon:"caret-square-right"}})],1)])],2)])},Ul=[],Hl=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{ref:"container",staticClass:"tableFilter",style:{display:!0===e.visible?"block":"none"}},[i("ul",e._l(e.items,(function(t,a){return i("li",[i("input",{directives:[{name:"model",rawName:"v-model",value:t.checked,expression:"item.checked"}],attrs:{type:"checkbox",id:"tableFilter-"+e.id+"-"+a},domProps:{checked:Array.isArray(t.checked)?e._i(t.checked,null)>-1:t.checked},on:{change:function(i){var a=t.checked,s=i.target,n=!!s.checked;if(Array.isArray(a)){var o=null,r=e._i(a,o);s.checked?r<0&&e.$set(t,"checked",a.concat([o])):r>-1&&e.$set(t,"checked",a.slice(0,r).concat(a.slice(r+1)))}else e.$set(t,"checked",n)}}}),i("label",{attrs:{for:"tableFilter-"+e.id+"-"+a}},[e._t("default",[e._v(e._s(t.label))],{item:t})],2)])})),0),i("footer",[i("span",{staticClass:"link link--secondary",on:{click:e.clean}},[e._v("Effacer")])])])},Gl=[],Wl={props:{value:{required:!0,type:Array},visible:{required:!1,type:Boolean,default:!1}},data(){return{items:this.value,timeout:null,id:null}},watch:{value(){this.items=this.value},items(){this.$emit("input",this.items)},visible(){!0===this.visible?this.timeout=setTimeout(()=>document.addEventListener("click",this.checkOutsideClick),500):(clearTimeout(this.timeout),document.removeEventListener("click",this.checkOutsideClick))}},mounted(){this.id=this._uid},methods:{clean(){for(let e=0;e({...e,isFilterable:void 0!==e.filters}))},checkedFilters(){return Object.keys(this.parsedFilters).reduce((e,t)=>({...e,[t]:this.parsedFilters[t].filter(({checked:e})=>!0===e)}),{})},filteredContent(){return this.currentPage=0,this.content.filter(e=>this.columns.every(({id:t,filterFn:i})=>0===this.checkedFilters[t].length||i(e,this.checkedFilters[t])))},currentPageContent(){return this.filteredContent.slice(this.currentPage*this.itemsPerPage,this.currentPage*this.itemsPerPage+this.itemsPerPage)},indexOfLastPage(){return Math.max(0,Math.ceil(this.filteredContent.length/this.itemsPerPage)-1)},indexOfFirstRowInCurrentPage(){return this.filteredContent.length>0?this.currentPage*this.itemsPerPage+1:0},indexOfLastRowInCurrentPage(){return Math.min(this.indexOfFirstRowInCurrentPage+this.itemsPerPage-1,this.filteredContent.length)}},watch:{columns(){this.parsedFilters=this.parseFilters(),this.currentPage=0},content(){this.parsedFilters=this.parseFilters(),this.currentFilter=null,this.currentPage=0}},methods:{click(e,t){this.$emit("click",t,e)},parseFilters(){return this.columns.reduce((e,t)=>void 0===t.filters?{...e,[t.id]:[]}:{...e,[t.id]:t.filters.map(e=>void 0!==e.checked?e:{...e,checked:!1})},{})},toggleFilter(e){this.currentFilter===e?this.currentFilter=null:this.currentFilter=e},hideFilter(){this.currentFilter=null},previousPage(){this.currentPage=Math.max(0,this.currentPage-1)},nextPage(){this.currentPage=Math.min(this.indexOfLastPage,this.currentPage+1)}}},ec=Xl,tc=ec,ic=Object(u["a"])(tc,Vl,Ul,!1,null,null,null),ac=ic.exports,sc=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("Autocompleter",e._b({attrs:{disabled:e.disabled},model:{value:e.data,callback:function(t){e.data=t},expression:"data"}},"Autocompleter",e.options,!1))},nc=[],oc={components:{Autocompleter:Yr},props:{value:{type:Object,required:!1,default(){return null}},disabled:{type:Boolean,required:!1,default:!1},specificProps:{type:Object,required:!1,default(){return{}}}},data(){return{data:null!==this.value?[this.value]:[],options:{...this.specificProps,showCategory:!0,autocompleter:(...e)=>{const t=al(...e),i=t.then(e=>e.map(({label:e,code:t,type:i,locationType:a})=>({id:t,label:e,category:i,data:{code:t,type:a}})));return i.abort=t.abort,i}}}},watch:{value(){this.data=null!==this.value?[this.value]:[]},data(){this.$emit("input",this.data.length>0?this.data[0]:null)}}},rc=oc,lc=rc,cc=(i("373f"),Object(u["a"])(lc,sc,nc,!1,null,null,null)),uc=cc.exports,dc={components:{Table:ac,CollectivityInput:uc},props:{value:{type:Array,required:!1,default(){return[]}},disabled:{type:Boolean,required:!1,default:!1},filter:{type:Function,required:!1,default:null}},data(){const{field_types:e,user:t}=ar(),i=nr("shantytown.list"),a={id:"nation"===t.organization.location.type?null:t.organization.location[t.organization.location.type].code,label:"nation"===t.organization.location.type?"France":t.organization.location[t.organization.location.type].name,category:t.organization.location.type,data:{code:"nation"===t.organization.location.type?null:t.organization.location[t.organization.location.type].code,type:t.organization.location.type}},s="nation"===i.geographic_level;let n,o;return!0!==s||"nation"===t.organization.location.type?(o={...a},n=null):(o={id:null,label:"France",category:"Pays",data:{code:null,type:"nation"}},n={...a}),{location:n,defaultLocation:o,columns:[{id:"checkbox",label:""},{id:"city",label:"Commune"},{id:"address",label:"Adresse"},{id:"fieldType",label:"Type de site"},{id:"people",label:"Nombre de personnes"}],fieldTypes:e.reduce((e,t)=>({...e,[t.id]:t}),{}),status:null,loadingError:null,towns:[],selectedTowns:this.value,statusOfVisibleTowns:"open"}},computed:{currentLocation(){return this.location||this.defaultLocation},pageContent(){return this.towns.filter(({closedAt:e})=>"open"===this.statusOfVisibleTowns?null===e:null!==e).filter(e=>{if("nation"===this.currentLocation.data.type)return!0;const t=e[this.currentLocation.data.type];return t&&""+t.code===""+this.currentLocation.data.code})}},watch:{value(){this.selectedTowns=this.value},selectedTowns(){this.$emit("input",this.selectedTowns)}},mounted(){this.load()},methods:{load(){"loaded"!==this.status&&"loading"!==this.status&&(this.status="loading",this.loadingError=null,Tl({},["city.asc","population.desc"]).then(e=>{this.status="loaded",this.towns=e}).catch(({user_message:e})=>{this.status="error",this.loadingError=e}))},showTowns(e){this.statusOfVisibleTowns=e},toggleTown({id:e},t){if(t&&t.target&&"checkbox"===t.target.type)return;if(this.disabled)return;const i=this.selectedTowns.findIndex(t=>t===e);-1!==i?this.selectedTowns.splice(i,1):this.selectedTowns.push(e)}}},pc=dc,mc=pc,hc=(i("3b5a"),Object(u["a"])(mc,$l,Pl,!1,null,null,null)),vc=hc.exports,fc=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"planFunding"},[i("header",{staticClass:"planFunding-header"},[i("font-awesome-icon",{staticClass:"planFunding-yearSwitch",class:{"planFunding-yearSwitch--disabled":this.focusedYear===this.minYear},attrs:{icon:"caret-square-left"},on:{click:e.showPreviousYear}}),i("span",[e._v(e._s(e.focusedYear)+" ")]),i("font-awesome-icon",{staticClass:"planFunding-yearSwitch",class:{"planFunding-yearSwitch--disabled":this.focusedYear===this.maxYear},attrs:{icon:"caret-square-right"},on:{click:e.showNextYear}})],1),i("table",{staticClass:"table"},[e._m(0),i("tbody",[e._l(e.currentFundings,(function(t,a){return i("PlanFundingRow",{key:a,attrs:{index:a,inputMode:e.inputMode,relatedYear:e.focusedYear,disabled:e.disabled},on:{onremove:function(t){return e.removeRow(a)},input:e.onRowChange},model:{value:t.data,callback:function(i){e.$set(t,"data",i)},expression:"funding.data"}})})),"default"===e.inputMode?i("tr",[i("td",{staticClass:"planFunding-addRow",class:{"planFunding-addRow--disabled":e.disabled},attrs:{colspan:"5"},on:{click:e.addRow}},[e._v("Ajouter une ligne de financement")])]):e._e()],2)])])},gc=[function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("thead",[i("tr",[i("th",{staticClass:"planFunding-type"},[e._v("Type de financements")]),i("th",{staticClass:"planFunding-amount"},[e._v("Montants"),i("br"),e._v("Prévus")]),i("th",{staticClass:"planFunding-details"},[e._v("Précision")]),i("th",{staticClass:"planFunding-details"},[e._v("Dépenses"),i("br"),e._v("exécutées")]),i("th")])])}],bc=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("tr",{staticClass:"planFundingRow",class:{"planFundingRow--disabled":e.disabled}},[i("td",[i("select",{directives:[{name:"model",rawName:"v-model",value:e.type,expression:"type"}],attrs:{disabled:e.disabled||"closing"===e.inputMode||!e.allowEdition},on:{change:function(t){var i=Array.prototype.filter.call(t.target.options,(function(e){return e.selected})).map((function(e){var t="_value"in e?e._value:e.value;return t}));e.type=t.target.multiple?i:i[0]}}},e._l(e.financeTypes,(function(t){return i("option",{domProps:{value:t.uid}},[e._v(e._s(t.name))])})),0)]),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.amount,expression:"amount"}],attrs:{type:"text",readonly:e.disabled||"closing"===e.inputMode||!e.allowEdition,disabled:e.disabled||"closing"===e.inputMode||!e.allowEdition},domProps:{value:e.amount},on:{input:function(t){t.target.composing||(e.amount=t.target.value)}}})]),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.details,expression:"details"}],attrs:{type:"text",readonly:e.disabled||"closing"===e.inputMode||!e.allowEdition,disabled:e.disabled||"closing"===e.inputMode||!e.allowEdition},domProps:{value:e.details},on:{input:function(t){t.target.composing||(e.details=t.target.value)}}})]),e.showRealAmount?i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.realAmount,expression:"realAmount"}],attrs:{type:"text",readonly:e.disabled||!e.allowEdition,disabled:e.disabled||!e.allowEdition},domProps:{value:e.realAmount},on:{input:function(t){t.target.composing||(e.realAmount=t.target.value)}}})]):i("td",[0===e.index?i("span",[e._v("À remplir entre janvier et mars de l'année prochaine")]):e._e()]),i("td",[i("img",{attrs:{src:"/img/remove.svg"},on:{click:e.remove}})])])},_c=[],yc={props:{value:{type:Object,required:!1,default(){return{type:null,amount:0,realAmount:null,details:""}}},disabled:{type:Boolean,required:!1,default:!1},index:{type:Number,required:!0},relatedYear:{type:Number,required:!0},inputMode:{type:String,required:!1,default:"default"}},data(){const e="default"!==this.inputMode||!this.isCurrentYear(),t=!Number.isFinite(this.value.realAmount);return{financeTypes:ar().finance_types||[],showRealAmount:e,allowEdition:t,type:this.value.type,amount:this.value.amount,realAmount:e?this.value.realAmount:null,details:this.value.details}},watch:{value(){this.showRealAmount="default"!==this.inputMode||!this.isCurrentYear(),this.allowEdition=!Number.isFinite(this.value.realAmount),this.type=this.value.type,this.amount=this.value.amount,this.realAmount=this.showRealAmount?this.value.realAmount:null,this.details=this.value.details},type(){this.emitInput()},amount(){this.emitInput()},realAmount(){this.emitInput()},details(){this.emitInput()}},methods:{isCurrentYear(){return(new Date).getFullYear()===this.relatedYear},emitInput(){this.$emit("input",{type:this.type,amount:this.amount,realAmount:this.realAmount,details:this.details})},remove(){this.$emit("onremove")}}},wc=yc,Cc=wc,kc=(i("5449"),Object(u["a"])(Cc,bc,_c,!1,null,null,null)),xc=kc.exports,Sc={components:{PlanFundingRow:xc},props:{value:{type:Array,required:!1,default(){return[]}},disabled:{type:Boolean,required:!1,default:!1},minYear:{type:Number,required:!1,default:null},inputMode:{type:String,required:!1,default:"default"}},data(){return{maxYear:(new Date).getFullYear(),focusedYear:(new Date).getFullYear(),fundings:this.value.map(({year:e,data:t})=>({year:e,data:t.map(e=>({data:e}))}))}},computed:{allowRealAmount(){return"closing"===this.inputMode||this.focusedYear<(new Date).getFullYear()},currentFundings(){const e=this.getCurrentFundings();return void 0===e?[]:e.data}},watch:{value(){this.fundings=this.value.map(({year:e,data:t})=>({year:e,data:t.map(e=>({data:e}))}))}},methods:{getCurrentFundings(){return this.fundings.find(({year:e})=>e===this.focusedYear)},addRow(){if(this.disabled)return;let e=this.getCurrentFundings();void 0===e&&(e={year:this.focusedYear,data:[]},this.fundings.push(e)),e.data.push({data:{type:null,amount:0,realAmount:null,details:""}}),this.emitInput()},removeRow(e){if(this.disabled)return;const t=this.getCurrentFundings();void 0!==t&&(t.data.splice(e,1),this.emitInput())},onRowChange(){this.emitInput()},emitInput(){this.$emit("input",this.fundings.map(({year:e,data:t})=>({year:e,data:t.map(({data:e})=>e)})))},showNextYear(){this.focusedYear=Math.min(this.maxYear,this.focusedYear+1)},showPreviousYear(){null===this.minYear?this.focusedYear-=1:this.focusedYear=Math.max(this.minYear,this.focusedYear-1)}}},$c=Sc,Pc=$c,Tc=(i("30c2"),Object(u["a"])(Pc,fc,gc,!1,null,null,null)),Ic=Tc.exports,Oc=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"rb-table"},[i("table",{staticClass:"table"},[e._m(0),i("tbody",[i("tr",[i("th",[e._v("SIAO")]),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data.siao.families,expression:"data.siao.families"}],attrs:{type:"number",disabled:e.disabled},domProps:{value:e.data.siao.families},on:{input:function(t){t.target.composing||e.$set(e.data.siao,"families",t.target.value)}}})]),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data.siao.people,expression:"data.siao.people"}],attrs:{type:"number",disabled:e.disabled},domProps:{value:e.data.siao.people},on:{input:function(t){t.target.composing||e.$set(e.data.siao,"people",t.target.value)}}})])]),i("tr",[i("th",[e._v("Logement social")]),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data.logement_social.families,expression:"data.logement_social.families"}],attrs:{type:"number",disabled:e.disabled},domProps:{value:e.data.logement_social.families},on:{input:function(t){t.target.composing||e.$set(e.data.logement_social,"families",t.target.value)}}})]),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data.logement_social.people,expression:"data.logement_social.people"}],attrs:{type:"number",disabled:e.disabled},domProps:{value:e.data.logement_social.people},on:{input:function(t){t.target.composing||e.$set(e.data.logement_social,"people",t.target.value)}}})])]),i("tr",[i("th",[e._v("DALO")]),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data.dalo.families,expression:"data.dalo.families"}],attrs:{type:"number",disabled:e.disabled},domProps:{value:e.data.dalo.families},on:{input:function(t){t.target.composing||e.$set(e.data.dalo,"families",t.target.value)}}})]),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data.dalo.people,expression:"data.dalo.people"}],attrs:{type:"number",disabled:e.disabled},domProps:{value:e.data.dalo.people},on:{input:function(t){t.target.composing||e.$set(e.data.dalo,"people",t.target.value)}}})])])])]),i("table",{staticClass:"table"},[e._m(1),i("tbody",[i("tr",[i("th",[e._v("Logement accompagné / adapté")]),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data.accompagnes.families,expression:"data.accompagnes.families"}],attrs:{type:"number",disabled:e.disabled},domProps:{value:e.data.accompagnes.families},on:{input:function(t){t.target.composing||e.$set(e.data.accompagnes,"families",t.target.value)}}})]),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data.accompagnes.people,expression:"data.accompagnes.people"}],attrs:{type:"number",disabled:e.disabled},domProps:{value:e.data.accompagnes.people},on:{input:function(t){t.target.composing||e.$set(e.data.accompagnes,"people",t.target.value)}}})])]),i("tr",[e._m(2),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data.non_accompagnes.families,expression:"data.non_accompagnes.families"}],attrs:{type:"number",disabled:e.disabled},domProps:{value:e.data.non_accompagnes.families},on:{input:function(t){t.target.composing||e.$set(e.data.non_accompagnes,"families",t.target.value)}}})]),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data.non_accompagnes.people,expression:"data.non_accompagnes.people"}],attrs:{type:"number",disabled:e.disabled},domProps:{value:e.data.non_accompagnes.people},on:{input:function(t){t.target.composing||e.$set(e.data.non_accompagnes,"people",t.target.value)}}})])]),i("tr",[e._m(3),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data.heberges.families,expression:"data.heberges.families"}],attrs:{type:"number",disabled:e.disabled},domProps:{value:e.data.heberges.families},on:{input:function(t){t.target.composing||e.$set(e.data.heberges,"families",t.target.value)}}})]),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data.heberges.people,expression:"data.heberges.people"}],attrs:{type:"number",disabled:e.disabled},domProps:{value:e.data.heberges.people},on:{input:function(t){t.target.composing||e.$set(e.data.heberges,"people",t.target.value)}}})])])])])])},Ac=[function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("thead",[i("tr",[i("th",[e._v("Demandes de logement")]),i("th",[e._v("Ménages")]),i("th",[e._v("Personnes")])])])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("thead",[i("tr",[i("th",[e._v("Accès à un logement ou hébergement")]),i("th",[e._v("Ménages")]),i("th",[e._v("Personnes")])])])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("th",[e._v(" Logement sans accompagnement "),i("br"),i("span",[e._v("(social ou privé)")])])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("th",[e._v(" Hébergement "),i("span",[e._v("(hors mise à l'abri ou hébergement d'urgence)")])])}],Nc={props:{value:{type:Object,required:!1,default(){return{siao:{people:"",families:""},logement_social:{people:"",families:""},dalo:{people:"",families:""},accompagnes:{people:"",families:""},non_accompagnes:{people:"",families:""},heberges:{people:"",families:""}}}},disabled:{type:Boolean,required:!1,default:!1}},data(){return{data:this.value}},watch:{data:{handler(){this.emitInput()},deep:!0}},mounted(){this.emitInput()},methods:{emitInput(){this.$emit("input",this.data)}}},Ec=Nc,jc=(i("e1d3"),Object(u["a"])(Ec,Oc,Ac,!1,null,"0c9f54ed",null)),Dc=jc.exports,qc=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("Autocompleter",e._b({attrs:{disabled:e.disabled},model:{value:e.data,callback:function(t){e.data=t},expression:"data"}},"Autocompleter",e.options,!1))},Mc=[],Lc={components:{Autocompleter:Yr},props:{value:{type:Object,required:!1,default(){return null}},disabled:{type:Boolean,required:!1,default:!1},specificProps:{type:Object,required:!1,default(){return{}}}},data(){return{data:null!==this.value?[this.value]:[],options:{...this.specificProps,showCategory:!0,autocompleter:(...e)=>{const t=Or(...e),i=t.then(e=>e.map(e=>({id:e.id,label:e.label,category:e.type.label,data:e})));return i.abort=t.abort,i}}}},watch:{value(){this.data=null!==this.value?[this.value]:[]},data(){this.$emit("input",this.data.length>0?this.data[0]:null)}}},Fc=Lc,zc=Fc,Bc=Object(u["a"])(zc,qc,Mc,!1,null,null,null),Rc=Bc.exports,Vc=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[e._l(e.rows,(function(t,a){return e.rows.length>0?i("p",{staticClass:"etp-row dataSection-line"},[i("select",{directives:[{name:"model",rawName:"v-model",value:t.type,expression:"row.type"}],staticClass:"etp-type",attrs:{disabled:e.disabled},on:{change:function(i){var a=Array.prototype.filter.call(i.target.options,(function(e){return e.selected})).map((function(e){var t="_value"in e?e._value:e.value;return t}));e.$set(t,"type",i.target.multiple?a:a[0])}}},e._l(e.types,(function(t){return i("option",{domProps:{value:t.uid}},[e._v(e._s(t.name))])})),0),i("input",{directives:[{name:"model",rawName:"v-model",value:t.total,expression:"row.total"}],staticClass:"etp-total",attrs:{type:"number",disabled:e.disabled,step:"0.1"},domProps:{value:t.total},on:{input:function(i){i.target.composing||e.$set(t,"total",i.target.value)}}}),e._v(" ETP "),i("font-awesome-icon",{staticClass:"etp-removeButton",attrs:{icon:"trash-alt"},on:{click:function(t){return e.removeRow(a)}}})],1):e._e()})),0===e.rows.length?i("p",[e._v("Aucun ETP enregistré pour le moment")]):e._e(),i("p",{staticClass:"etp-addButton",on:{click:e.addRow}},[i("font-awesome-icon",{attrs:{icon:"plus-circle"}}),i("span",[e._v("Ajouter")])],1)],2)},Uc=[],Hc={props:{value:{type:Array,required:!1,default(){return[]}},disabled:{type:Boolean,required:!1,default:!1}},data(){const{etp_types:e}=ar();return{rows:this.value,types:e}},computed:{parsedRows(){return this.rows.map(e=>({type:e.type?e.type:null,total:parseFloat(e.total)}))}},watch:{parsedRows(){this.emitInput()}},methods:{addRow(){this.disabled||(this.rows.push({type:void 0,total:0}),this.emitInput())},removeRow(e){this.disabled||e>=this.rows.length||(this.rows.splice(e,1),this.emitInput())},emitInput(){this.$emit("input",this.parsedRows)}}},Gc=Hc,Wc=Gc,Jc=(i("d416"),Object(u["a"])(Wc,Vc,Uc,!1,null,null,null)),Qc=Jc.exports,Yc=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"rb-table"},[i("table",{staticClass:"table"},[e._m(0),i("tbody",[e.outOnly?e._e():i("tr",[e.inOnly?e._e():i("td",[i("strong",[e._v("Entrées")]),e._v(" dans le dispositif")]),e.inOnly?i("td",[e._v("Publics intégrés au dispositif")]):e._e(),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data.in.households,expression:"data.in.households"}],attrs:{type:"number",disabled:e.disabled},domProps:{value:e.data.in.households},on:{input:function(t){t.target.composing||e.$set(e.data.in,"households",t.target.value)}}})]),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data.in.people,expression:"data.in.people"}],attrs:{type:"number",disabled:e.disabled},domProps:{value:e.data.in.people},on:{input:function(t){t.target.composing||e.$set(e.data.in,"people",t.target.value)}}})]),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data.in.women,expression:"data.in.women"}],attrs:{type:"number",disabled:e.disabled},domProps:{value:e.data.in.women},on:{input:function(t){t.target.composing||e.$set(e.data.in,"women",t.target.value)}}})]),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data.in.minors,expression:"data.in.minors"}],attrs:{type:"number",disabled:e.disabled},domProps:{value:e.data.in.minors},on:{input:function(t){t.target.composing||e.$set(e.data.in,"minors",t.target.value)}}})])]),e.inOnly?e._e():i("tr",[e._m(1),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data.out_positive.households,expression:"data.out_positive.households"}],attrs:{type:"number",disabled:e.disabled},domProps:{value:e.data.out_positive.households},on:{input:function(t){t.target.composing||e.$set(e.data.out_positive,"households",t.target.value)}}})]),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data.out_positive.people,expression:"data.out_positive.people"}],attrs:{type:"number",disabled:e.disabled},domProps:{value:e.data.out_positive.people},on:{input:function(t){t.target.composing||e.$set(e.data.out_positive,"people",t.target.value)}}})]),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data.out_positive.women,expression:"data.out_positive.women"}],attrs:{type:"number",disabled:e.disabled},domProps:{value:e.data.out_positive.women},on:{input:function(t){t.target.composing||e.$set(e.data.out_positive,"women",t.target.value)}}})]),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data.out_positive.minors,expression:"data.out_positive.minors"}],attrs:{type:"number",disabled:e.disabled},domProps:{value:e.data.out_positive.minors},on:{input:function(t){t.target.composing||e.$set(e.data.out_positive,"minors",t.target.value)}}})])]),e.inOnly?e._e():i("tr",[e._m(2),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data.out_abandoned.households,expression:"data.out_abandoned.households"}],attrs:{type:"number",disabled:e.disabled},domProps:{value:e.data.out_abandoned.households},on:{input:function(t){t.target.composing||e.$set(e.data.out_abandoned,"households",t.target.value)}}})]),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data.out_abandoned.people,expression:"data.out_abandoned.people"}],attrs:{type:"number",disabled:e.disabled},domProps:{value:e.data.out_abandoned.people},on:{input:function(t){t.target.composing||e.$set(e.data.out_abandoned,"people",t.target.value)}}})]),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data.out_abandoned.women,expression:"data.out_abandoned.women"}],attrs:{type:"number",disabled:e.disabled},domProps:{value:e.data.out_abandoned.women},on:{input:function(t){t.target.composing||e.$set(e.data.out_abandoned,"women",t.target.value)}}})]),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data.out_abandoned.minors,expression:"data.out_abandoned.minors"}],attrs:{type:"number",disabled:e.disabled},domProps:{value:e.data.out_abandoned.minors},on:{input:function(t){t.target.composing||e.$set(e.data.out_abandoned,"minors",t.target.value)}}})])]),e.inOnly?e._e():i("tr",[e._m(3),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data.out_excluded.households,expression:"data.out_excluded.households"}],attrs:{type:"number",disabled:e.disabled},domProps:{value:e.data.out_excluded.households},on:{input:function(t){t.target.composing||e.$set(e.data.out_excluded,"households",t.target.value)}}})]),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data.out_excluded.people,expression:"data.out_excluded.people"}],attrs:{type:"number",disabled:e.disabled},domProps:{value:e.data.out_excluded.people},on:{input:function(t){t.target.composing||e.$set(e.data.out_excluded,"people",t.target.value)}}})]),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data.out_excluded.women,expression:"data.out_excluded.women"}],attrs:{type:"number",disabled:e.disabled},domProps:{value:e.data.out_excluded.women},on:{input:function(t){t.target.composing||e.$set(e.data.out_excluded,"women",t.target.value)}}})]),i("td",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data.out_excluded.minors,expression:"data.out_excluded.minors"}],attrs:{type:"number",disabled:e.disabled},domProps:{value:e.data.out_excluded.minors},on:{input:function(t){t.target.composing||e.$set(e.data.out_excluded,"minors",t.target.value)}}})])])])])])},Zc=[function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("thead",[i("tr",[i("th",{staticClass:"table-col"}),i("th",{staticClass:"table-col"},[e._v("Ménages")]),i("th",{staticClass:"table-col"},[e._v("Personnes")]),i("th",{staticClass:"table-col"},[e._v("dont femmes"),i("br"),e._v("(facultatif)")]),i("th",{staticClass:"table-col"},[e._v("dont mineurs"),i("br"),e._v("(facultatif)")])])])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("td",[i("strong",[e._v("Sorties positivement")]),i("br"),e._v("fin accompagnement social et/ou"),i("br"),e._v("prise en charge dans un autre dispositif")])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("td",[i("strong",[e._v("Exclusion")]),e._v(" du dispositif")])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("td",[i("strong",[e._v("Abandon / départ volontaire")])])}],Kc={props:{value:{type:Object,required:!1,default(){return{in:{households:0,people:0,women:0,minors:0},out_positive:{households:0,people:0,women:0,minors:0},out_abandoned:{households:0,people:0,women:0,minors:0},out_excluded:{households:0,people:0,women:0,minors:0}}}},inOnly:{type:Boolean,required:!1,default:!1},outOnly:{type:Boolean,required:!1,default:!1},disabled:{type:Boolean,required:!1,default:!1}},data(){return{data:this.value}},watch:{"data.in.households"(){this.emitInput()},"data.in.people"(){this.emitInput()},"data.in.women"(){this.emitInput()},"data.in.minors"(){this.emitInput()},"data.out_positive.households"(){this.emitInput()},"data.out_positive.people"(){this.emitInput()},"data.out_positive.women"(){this.emitInput()},"data.out_positive.minors"(){this.emitInput()},"data.out_abandoned.households"(){this.emitInput()},"data.out_abandoned.people"(){this.emitInput()},"data.out_abandoned.women"(){this.emitInput()},"data.out_abandoned.minors"(){this.emitInput()},"data.out_excluded.households"(){this.emitInput()},"data.out_excluded.people"(){this.emitInput()},"data.out_excluded.women"(){this.emitInput()},"data.out_excluded.minors"(){this.emitInput()}},mounted(){this.emitInput()},methods:{emitInput(){this.$emit("input",this.data)}}},Xc=Kc,eu=Xc,tu=(i("2283"),Object(u["a"])(eu,Yc,Zc,!1,null,null,null)),iu=tu.exports;const au=["selectMultiple","checkbox","autocompleter","townList","planFunding","etp"];var su={components:{Datepicker:Rr["default"],Autocompleter:Yr,Address:cl,Location:bl,AddressWithLocation:Sl,TownList:vc,PlanFunding:Ic,Collectivity:uc,Organization:Rc,Etp:Qc,Audience:iu,PlanHousing:Dc},props:{id:{type:String,required:!0},mandatory:{type:Boolean,required:!0},type:{type:String,required:!1,default:"text"},label:{type:String,required:!0},description:{type:String,required:!1},options:{type:Array,required:!1,default(){return[]}},specificProps:{type:Object,required:!1,default(){return{}}},value:{required:!1,default(){if(-1!==au.indexOf(this.type))return[]}},disabled:{type:Boolean,required:!1,default:!1},errors:{type:Array,required:!1,default(){return[]}},alertMessage:{type:String,required:!1,default:null}},data(){return{data:this.value,showPassword:!1}},computed:{props(){let e={};return"date"===this.type&&(e={language:Vi["fr"],mondayFirst:!0,fullMonthName:!0,format:"dd MMMM yyyy",calendarButton:!0,calendarButtonIconContent:"",clearButton:!0}),Object.assign(e,this.specificProps)},optionsAreGrouped(){return this.options&&Object.prototype.hasOwnProperty.call(this.options[0],"options")}},mounted(){this.$nextTick(()=>{this.$emit("input",this.data)})},watch:{value(){this.data=this.value},data(){this.$emit("input",this.data),this.$emit("change")},options(){Array.isArray(this.data)?this.data=this.data.filter(e=>-1!==this.options.indexOf(e)):-1===this.options.indexOf(this.data)&&(this.data=void 0)}}},nu=su,ou=nu,ru=(i("8aa6"),Object(u["a"])(ou,zr,Br,!1,null,null,null)),lu=ru.exports,cu=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{class:{slideNote:!0,"slideNote--visible":e.visible}},[i("header",{staticClass:"slideNote-header"},[i("h1",{staticClass:"slideNote-title"},[i("font-awesome-icon",{attrs:{icon:e.iconName}}),e._v(" "+e._s(e.title))],1),i("span",{staticClass:"slideNote-toggle",on:{click:e.toggle}},[i("font-awesome-icon",{attrs:{icon:e.caret,size:"2x"}})],1)]),i("div",{ref:"body",staticClass:"slideNote-body"},[e._t("content",[i("p",{ref:"content",staticClass:"slideNote-content",domProps:{innerHTML:e._s(e.content)}})])],2)])},uu=[],du={props:{title:{required:!0,type:String},content:{required:!1,type:String},opened:{required:!1,type:Boolean,default:!0},icon:{required:!1,type:String,default:"info-circle"}},data(){return{iconName:this.icon,maxHeight:null,visible:!1!==this.opened}},computed:{caret(){return"caret-"+(!0===this.visible?"up":"down")}},mounted(){this.maxHeight=this.$refs.body.offsetHeight,this.refreshHeight()},methods:{toggle(){this.visible=!this.visible,this.refreshHeight()},refreshHeight(){!0===this.visible?this.$refs.body.style.maxHeight=this.maxHeight+"px":this.$refs.body.style.maxHeight="0"}}},pu=du,mu=pu,hu=(i("2d21"),Object(u["a"])(mu,cu,uu,!1,null,"569f8548",null)),vu=hu.exports;const fu=6e3;function gu(e){return a["default"].notify(Object.prototype.hasOwnProperty.call(e,"duration")?e:{...e,duration:fu})}var bu={components:{Input:lu,SlideNote:vu},props:{title:{type:String,required:!1},descriptionTitle:{type:String,required:!1},description:{type:String,required:!1},steps:{type:Array,required:!0},value:{type:Object,required:!1,default(){return{}}}},data(){return{refreshId:0,currentStepIndex:0,data:this.value,pending:!1,errors:null,responses:[]}},computed:{breadcrumbItems(){return this.steps.reduce((e,t,i)=>[...e,{...t,classNames:{"form-breadcrumbItem":!0,"form-breadcrumbItem--current":i===this.currentStepIndex,"form-breadcrumbItem--done":iObject.values(e).some(e=>this.isInputVisible(e)))},inputs(){return this.currentStep.sections.reduce((e,t)=>({...e,...t.inputs}),{})},wording(){return{submit:"Étape suivante",error:"Certaines données saisies sont incorrectes",success:null,...this.currentStep.wording||{}}},filteredData(){const e=Object.keys(this.inputs);return e.filter(e=>this.isInputActive(this.inputs[e])).reduce((e,t)=>({...e,[t]:this.data[t]}),{})},filteredErrors(){return this.errors?Object.keys(this.errors.fields||{}).filter(e=>void 0!==this.inputs[e]).reduce((e,t)=>({...e,[t]:this.errors.fields[t]}),{}):null},numberOfFilteredErrors(){return this.filteredErrors?Object.keys(this.filteredErrors).length:0},submitPrefix(){return this.currentStep&&this.currentStep.submitPrefix}},watch:{value(){this.data=this.value},data(){this.onDataChange()}},methods:{submit(){this.currentStep.submit?!0!==this.pending&&(this.pending=!0,this.errors=null,this.currentStep.submit(this.filteredData,this.responses).then(e=>{null!==this.wording.success&&gu({group:"notifications",type:"success",title:"Succès",text:this.wording.success}),this.$emit("stepcomplete",this.currentStepIndex,e),this.goToNextStep(e),this.pending=!1,this.errors=null}).catch(e=>{this.pending=!1,this.errors={main:e&&e.user_message||"erreur inconnue",fields:e&&e.fields||{}}})):this.goToNextStep(null)},goToNextStep(e){this.responses.push(e),this.currentStepIndex>=this.steps.length-1?this.$emit("complete",e,this.responses):this.currentStepIndex+=1},getInputById(e){return null===this.currentStep?null:this.inputs[e]||null},onDataChange(){this.refreshId+=1,this.$emit("input",this.data)},isInputActive(e){return!e.condition||e.condition(this.data)},isInputVisible(e){return this.isInputActive(e)||e.inactiveMessage},isInputDisabled(e){return!0===this.pending||!0===e.disabled||e.inactiveMessage&&!this.isInputActive(e)},getInputAlert(e){return e.inactiveMessage&&!this.isInputActive(e)?e.inactiveMessage:null}}},_u=bu,yu=_u,wu=(i("f6ce"),Object(u["a"])(yu,Lr,Fr,!1,null,null,null)),Cu=wu.exports,ku={components:{NavBar:Mr,Form:Cu},data(){return{formData:{},formDefinition:{title:"Connexion à la plateforme",steps:[{sections:[{inputs:{email:{type:"text",label:"Votre courriel",mandatory:!0},password:{type:"password",label:"Votre mot de passe",mandatory:!0}}}],wording:{submit:"Me connecter",succes:"Vous êtes désormais connecté",error:"La tentative de connexion a échoué"},submitPrefix:'J\'ai perdu mon mot de passe',submit:({email:e,password:t})=>cr(e,t)}]}}},methods:{onComplete(){window.localStorage.setItem("logged_once",!0),this.$router.push({path:"/"})}}},xu=ku,Su=xu,$u=(i("f276"),Object(u["a"])(Su,qo,Mo,!1,null,null,null)),Pu=$u.exports,Tu=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("PublicLayout",{staticClass:"contact",attrs:{stickyHeader:!1,displayLanguagePicker:!0}},[i("div",{staticClass:"bg-corail full-width text-center py-8"},[i("div",{staticClass:"max-w-3xl mx-auto"},[i("h1",{staticClass:"text-display-lg text-white "},[e._v(" "+e._s(e.$t("contactPage.title"))+" ")])])]),i("PublicContainer",{staticClass:"py-16"},[i("div",{staticClass:"max-w-xl mx-auto"},[i("h2",{staticClass:"text-display-lg mb-4"},[e._v(" "+e._s(e.$t("contactPage.contactUs"))+" ")]),i("ValidationObserver",{ref:"form",scopedSlots:e._u([{key:"default",fn:function(t){var a=t.handleSubmit,s=t.errors;return[i("form",{staticClass:"max-w-xl mt-12",on:{submit:function(t){return t.preventDefault(),a(e.submitForm)}}},[i("InputGroup",[i("TextInput",{attrs:{label:e.$t("contactPage.email"),id:"email",validationName:"Email",rules:"required|email"},model:{value:e.commonFields.email,callback:function(t){e.$set(e.commonFields,"email",t)},expression:"commonFields.email"}}),i("TextInput",{attrs:{label:e.$t("contactPage.firstname"),id:"first_name",name:"Prénom",rules:"required"},model:{value:e.commonFields.first_name,callback:function(t){e.$set(e.commonFields,"first_name",t)},expression:"commonFields.first_name"}}),i("TextInput",{attrs:{label:e.$t("contactPage.lastname"),id:"last_name",name:"Nom de famille",rules:"required"},model:{value:e.commonFields.last_name,callback:function(t){e.$set(e.commonFields,"last_name",t)},expression:"commonFields.last_name"}})],1),i("CheckableGroup",{attrs:{label:e.$t("contactPage.requestType"),name:e.$t("contactPage.requestType"),id:"request_type",direction:"row"}},[i("Checkbox",{attrs:{checkValue:"help",label:e.$t("contactPage.help"),variant:"card"},model:{value:e.commonFields.request_type,callback:function(t){e.$set(e.commonFields,"request_type",t)},expression:"commonFields.request_type"}}),i("Checkbox",{attrs:{checkValue:"report",label:e.$t("contactPage.report"),variant:"card"},model:{value:e.commonFields.request_type,callback:function(t){e.$set(e.commonFields,"request_type",t)},expression:"commonFields.request_type"}}),i("Checkbox",{attrs:{checkValue:"help-request",label:e.$t("contactPage.requestHelp"),variant:"card"},model:{value:e.commonFields.request_type,callback:function(t){e.$set(e.commonFields,"request_type",t)},expression:"commonFields.request_type"}}),i("Checkbox",{attrs:{checkValue:"info-request",label:e.$t("contactPage.requestInfo"),variant:"card"},model:{value:e.commonFields.request_type,callback:function(t){e.$set(e.commonFields,"request_type",t)},expression:"commonFields.request_type"}}),i("Checkbox",{attrs:{checkValue:"access-request",label:e.$t("contactPage.requestAccess"),variant:"card"},model:{value:e.commonFields.request_type,callback:function(t){e.$set(e.commonFields,"request_type",t)},expression:"commonFields.request_type"}})],1),e.isRequestAccess?i("CheckableGroup",{attrs:{label:e.$t("contactPage.isActor"),info:e.$t("contactPage.actorExample"),rules:"required",id:"access_request",direction:"row"}},[i("Radio",{attrs:{checkValue:!0,label:e.$t("contactPage.yes"),variant:"card"},model:{value:e.commonFields.is_actor,callback:function(t){e.$set(e.commonFields,"is_actor",t)},expression:"commonFields.is_actor"}}),i("Radio",{attrs:{checkValue:!1,label:e.$t("contactPage.no"),variant:"card"},model:{value:e.commonFields.is_actor,callback:function(t){e.$set(e.commonFields,"is_actor",t)},expression:"commonFields.is_actor"}})],1):e._e(),e.isRequestAccessAndActor?i("CheckableGroup",{attrs:{label:e.$t("contactPage.whichEstablishment"),rules:"required",id:"is_actor"}},[i("Radio",{attrs:{checkValue:"public_establishment",label:e.$t("contactPage.public"),variant:"card"},model:{value:e.requestAccessFields.organization_category,callback:function(t){e.$set(e.requestAccessFields,"organization_category",t)},expression:"\n requestAccessFields.organization_category\n "}}),i("Radio",{attrs:{checkValue:"territorial_collectivity",label:e.$t("contactPage.territorialCollectivity"),variant:"card"},model:{value:e.requestAccessFields.organization_category,callback:function(t){e.$set(e.requestAccessFields,"organization_category",t)},expression:"\n requestAccessFields.organization_category\n "}}),i("Radio",{attrs:{checkValue:"association",label:e.$t("contactPage.association"),variant:"card"},model:{value:e.requestAccessFields.organization_category,callback:function(t){e.$set(e.requestAccessFields,"organization_category",t)},expression:"\n requestAccessFields.organization_category\n "}}),i("Radio",{attrs:{checkValue:"administration",label:e.$t("contactPage.administration"),variant:"card"},model:{value:e.requestAccessFields.organization_category,callback:function(t){e.$set(e.requestAccessFields,"organization_category",t)},expression:"\n requestAccessFields.organization_category\n "}})],1):e._e(),e.isPublicEstablishmentRequest?i("PublicEstablishmentForm",{attrs:{organizationType:e.publicEstablishmentFields.organization_type,organizationTerritory:e.publicEstablishmentFields.organization_public,organizationFunction:e.requestAccessFields.position},on:{"update:organizationType":function(t){return e.$set(e.publicEstablishmentFields,"organization_type",t)},"update:organization-type":function(t){return e.$set(e.publicEstablishmentFields,"organization_type",t)},"update:organizationTerritory":function(t){return e.$set(e.publicEstablishmentFields,"organization_public",t)},"update:organization-territory":function(t){return e.$set(e.publicEstablishmentFields,"organization_public",t)},"update:organizationFunction":function(t){return e.$set(e.requestAccessFields,"position",t)},"update:organization-function":function(t){return e.$set(e.requestAccessFields,"position",t)}}}):e._e(),e.isTerritorialCollectivityRequest?i("TerritorialCollectivityForm",{attrs:{collectivityName:e.territorialCollectivityFields.territorial_collectivity,collectivityFunction:e.requestAccessFields.position},on:{"update:collectivityName":function(t){return e.$set(e.territorialCollectivityFields,"territorial_collectivity",t)},"update:collectivity-name":function(t){return e.$set(e.territorialCollectivityFields,"territorial_collectivity",t)},"update:collectivityFunction":function(t){return e.$set(e.requestAccessFields,"position",t)},"update:collectivity-function":function(t){return e.$set(e.requestAccessFields,"position",t)}}}):e._e(),e.isAssociationRequest?i("AssociationForm",{attrs:{associationName:e.associationFields.association,associationTerritory:e.associationFields.departement,associationFunction:e.associationFields.position,newAssociationName:e.associationFields.new_association_name,newAssociationAcronym:e.associationFields.new_association_abbreviation},on:{"update:associationName":function(t){return e.$set(e.associationFields,"association",t)},"update:association-name":function(t){return e.$set(e.associationFields,"association",t)},"update:associationTerritory":function(t){return e.$set(e.associationFields,"departement",t)},"update:association-territory":function(t){return e.$set(e.associationFields,"departement",t)},"update:associationFunction":function(t){return e.$set(e.associationFields,"position",t)},"update:association-function":function(t){return e.$set(e.associationFields,"position",t)},"update:newAssociationName":function(t){return e.$set(e.associationFields,"new_association_name",t)},"update:new-association-name":function(t){return e.$set(e.associationFields,"new_association_name",t)},"update:newAssociationAcronym":function(t){return e.$set(e.associationFields,"new_association_abbreviation",t)},"update:new-association-acronym":function(t){return e.$set(e.associationFields,"new_association_abbreviation",t)}}}):e._e(),e.isAdministrationRequest?i("AdministrationForm",{attrs:{administrationName:e.administrationFields.organization_administration,administrationFunction:e.requestAccessFields.position},on:{"update:administrationName":function(t){return e.$set(e.administrationFields,"organization_administration",t)},"update:administration-name":function(t){return e.$set(e.administrationFields,"organization_administration",t)},"update:administrationFunction":function(t){return e.$set(e.requestAccessFields,"position",t)},"update:administration-function":function(t){return e.$set(e.requestAccessFields,"position",t)}}}):e._e(),i("TextArea",{attrs:{rows:8,label:e.$t("contactPage.message"),id:"access_request_message"},model:{value:e.commonFields.access_request_message,callback:function(t){e.$set(e.commonFields,"access_request_message",t)},expression:"commonFields.access_request_message"}}),e._v(" "),i("CheckableGroup",{attrs:{validationName:"Accord",rules:"required",id:"legal"}},[i("Checkbox",{attrs:{checkValue:"confirm",label:e.$t("contactPage.legal")},model:{value:e.commonFields.legal,callback:function(t){e.$set(e.commonFields,"legal",t)},expression:"commonFields.legal"}})],1),Object.values(s).filter((function(e){return e.length})).length?i("div",{staticClass:"bg-red-200 p-3 mb-8"},[e._v(" "+e._s(e.$t("contactPage.error"))+" "),i("ul",{staticClass:"mt-4"},e._l(s,(function(t,a){return i("li",{directives:[{name:"show",rawName:"v-show",value:t.length,expression:"error.length"}],key:a},[i("router-link",{staticClass:"link",attrs:{to:{hash:a}}},[e._v(e._s(t[0]))])],1)})),0)]):e._e(),i("div",{staticClass:"flex justify-between mt-8"},[i("router-link",{attrs:{to:"/"}},[i("Button",{attrs:{variant:"primaryText"}},[e._v(e._s(e.$t("contactPage.cancel")))])],1),i("Button",{attrs:{type:"submit",variant:"primary",loading:e.loading}},[e._v(e._s(e.$t("contactPage.send")))])],1)],1)]}}])}),i("div",{staticClass:"text-display-md mt-32 mb-2"},[e._v(" "+e._s(e.$t("contactPage.share"))+" ")]),i("SocialShare",{staticClass:"mb-8"})],1)])],1)},Iu=[];function Ou(e){return Jo("/contact",e)}var Au=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("Select",{attrs:{label:"Précisez le type de structure",value:e.organizationType,rules:"required",id:"organization_type"},on:{input:function(t){return e.$emit("update:organizationType",t)}}},[i("SelectOption",{attrs:{value:"none"}},[e._v("- Selectionner un choix -")]),e._l(e.orgTypesOptions,(function(t){return i("SelectOption",{key:t.value,attrs:{value:t.value}},[e._v(e._s(t.label))])}))],2),i("Select",{attrs:{label:"Territoire de rattachement",value:e.organizationTerritory,rules:"required",id:"organization_public"},on:{input:function(t){return e.$emit("update:organizationTerritory",t)}}},[i("SelectOption",[e._v("- Selectionner un choix -")]),e._l(e.orgTerritoryOptions,(function(t){return i("SelectOption",{key:t.value,attrs:{value:t.value}},[e._v(" "+e._s(t.label)+" ")])}))],2),i("TextInput",{attrs:{label:"Votre fonction",value:e.organizationFunction,rules:"required",id:"position"},on:{input:function(t){return e.$emit("update:organizationFunction",t)}}})],1)},Nu=[];function Eu(){return Wo("/organization-categories")}function ju(e){return Wo(`/organization-categories/${e}/organization-types`)}function Du(e,t=null){return Wo(`/organization-categories/${e}/organizations${null!==t?"?search="+t:""}`)}function qu(e){return Wo(`/organization-types/${e}/organizations`)}function Mu(e){return Wo(`/organizations/${e}/users`)}function Lu(e,t,i){let a="";return void 0!==i?a="departementId="+encodeURIComponent(i):void 0!==t&&(a="regionId="+encodeURIComponent(t)),Wo(`/organization-categories/${e}/users?${a}`)}var Fu={props:{organizationType:{required:!0},organizationTerritory:{required:!0},organizationFunction:{required:!0}},data(){return{orgTypesOptions:[],orgTerritoryOptions:[]}},async mounted(){const{types:e}=await ju("public_establishment");this.orgTypesOptions=e.filter(({numberOfOrganizations:e})=>e>0).filter(({name_singular:e})=>"Gendarmerie nationale"!==e).map(({id:e,name_singular:t,abbreviation:i})=>({value:e,label:i||t}))},watch:{async organizationType(e){if("none"===e)return void(this.orgTerritoryOptions=[]);const{organizations:t}=await qu(e);this.orgTerritoryOptions=t.map(e=>{const t=e.location_type;let i=e[t+"_name"];return"nation"===t?i="France":"departement"===t&&(i=`${e[t+"_code"]} - ${e[t+"_name"]}`),{value:e.id,label:i}})}}},zu=Fu,Bu=Object(u["a"])(zu,Au,Nu,!1,null,null,null),Ru=Bu.exports,Vu=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("InputWrapper",[i("InputLabel",{attrs:{label:"Nom de la structure"}}),i("ValidationProvider",{attrs:{rules:"required",name:"Nom de la structure",vid:"territorial_collectivity"},scopedSlots:e._u([{key:"default",fn:function(t){var a=t.errors;return[i("div",{staticClass:"v1"},[i("Collectivity",{attrs:{value:e.collectivityName},on:{input:function(t){return e.$emit("update:collectivityName",t)}}})],1),i("InputError",[e._v(e._s(a[0]))])]}}])})],1),i("TextInput",{attrs:{label:"Votre fonction",value:e.collectivityFunction,rules:"required",id:"position"},on:{input:function(t){return e.$emit("update:collectivityFunction",t)}}})],1)},Uu=[],Hu={components:{InputLabel:ce,Collectivity:oc,InputWrapper:ve,InputError:ye},props:{collectivityName:{required:!0},collectivityFunction:{required:!0}}},Gu=Hu,Wu=Object(u["a"])(Gu,Vu,Uu,!1,null,null,null),Ju=Wu.exports,Qu=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("Select",{attrs:{label:"Précisez le type de structure",value:e.associationName,rules:"required",id:"association"},on:{input:function(t){return e.$emit("update:associationName",t)}}},[i("optgroup",{attrs:{label:"Autre"}},[i("option",{attrs:{value:"Autre"}},[e._v("Mon association n'est pas dans cette liste")])]),i("optgroup",{attrs:{label:"Associations connues"}},e._l(e.associationNameOptions,(function(t){return i("option",{key:t.value,domProps:{value:t.value}},[e._v(e._s(t.label))])})),0)]),"Autre"===e.associationName?i("div",[i("TextInput",{attrs:{label:"Précisez le nom complet",value:e.newAssociationName,rules:"required",id:"new_association_name"},on:{input:function(t){return e.$emit("update:newAssociationName",t)}}}),i("TextInput",{attrs:{label:"Précisez l'acronyme, si besoin",value:e.newAssociationAcronym,id:"new_association_abbreviation"},on:{input:function(t){return e.$emit("update:newAssociationAcronym",t)}}})],1):e._e(),i("div",[i("Select",{attrs:{label:"Territoire de rattachement",value:e.associationTerritory,rules:"required",id:"departement"},on:{input:function(t){return e.$emit("update:associationTerritory",t)}}},[i("SelectOption",[e._v("- Selectionner un choix -")]),e._l(e.associationTerritoryOptions,(function(t){return i("SelectOption",{key:t.value,attrs:{value:t.value}},[e._v(" "+e._s(t.label)+" ")])}))],2)],1),i("TextInput",{attrs:{label:"Votre fonction",value:e.associationFunction,rules:"required",id:"position"},on:{input:function(t){return e.$emit("update:associationFunction",t)}}})],1)},Yu=[],Zu={props:{associationName:{required:!0},associationTerritory:{required:!0},associationFunction:{required:!0},newAssociationName:{required:!0},newAssociationAcronym:{required:!0}},data(){return{associationNameOptions:[],associationTerritoryOptions:[]}},async mounted(){const[{organizations:e},{departements:t}]=await Promise.all([Du("association"),sl()]),i=[];this.associationNameOptions=e.filter(e=>-1===i.indexOf(e.name)&&(i.push(e.name),!0)).map(({name:e,abbreviation:t})=>({value:e,label:null!==t?`${t} (${e})`:e})),this.associationTerritoryOptions=t.map(({code:e,name:t})=>({value:e,label:`${e} - ${t}`}))}},Ku=Zu,Xu=Object(u["a"])(Ku,Qu,Yu,!1,null,null,null),ed=Xu.exports,td=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("Select",{attrs:{label:"Nom de la structure",value:e.administrationName,rules:"required",id:"organization_administration"},on:{input:function(t){return e.$emit("update:administrationName",t)}}},[i("SelectOption",{attrs:{value:"none"}},[e._v("- Selectionner un choix -")]),e._l(e.administrationNameOptions,(function(t){return i("SelectOption",{key:t.value,attrs:{value:t.value}},[e._v(e._s(t.label))])}))],2),i("TextInput",{attrs:{label:"Votre fonction",value:e.administrationFunction,rules:"required",id:"position"},on:{input:function(t){return e.$emit("update:administrationFunction",t)}}})],1)},id=[],ad={props:{administrationName:{required:!0},administrationFunction:{required:!0}},data(){return{administrationNameOptions:[]}},async mounted(){const{organizations:e}=await Du("administration");this.administrationNameOptions=e.map(({id:e,name:t})=>({value:e,label:t}))}},sd=ad,nd=Object(u["a"])(sd,td,id,!1,null,null,null),od=nd.exports,rd=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("a",{attrs:{href:"https://www.facebook.com/sharer/sharer.php?u="+e.url,target:"_blank"}},[i("Icon",{staticClass:"text-display-lg",attrs:{icon:["fab","facebook-square"]}})],1),e._v(" "+e._s(" ")+" "),i("a",{attrs:{href:"http://www.twitter.com/share?url="+e.url,target:"_blank"}},[i("Icon",{staticClass:"text-display-lg",attrs:{icon:["fab","twitter-square"]}})],1)])},ld=[],cd={computed:{url(){return encodeURIComponent("https://resorption-bidonvilles.beta.gouv.fr/#/contact")}}},ud=cd,dd=Object(u["a"])(ud,rd,ld,!1,null,null,null),pd=dd.exports,md={components:{SocialShare:pd,Checkbox:tt,CheckableGroup:zi,PublicContainer:ps,PublicLayout:Rs,PublicEstablishmentForm:Ru,TerritorialCollectivityForm:Ju,AdministrationForm:od,AssociationForm:ed},computed:{isFrenchLocale(){return"fr"===this.$i18n.locale},isRequestAccess(){return this.commonFields.request_type.includes("access-request")&&this.isFrenchLocale},isRequestAccessAndActor(){return this.isRequestAccess&&this.commonFields.is_actor},isPublicEstablishmentRequest(){return this.isRequestAccessAndActor&&"public_establishment"===this.requestAccessFields.organization_category},isTerritorialCollectivityRequest(){return this.isRequestAccessAndActor&&"territorial_collectivity"===this.requestAccessFields.organization_category},isAssociationRequest(){return this.isRequestAccessAndActor&&"association"===this.requestAccessFields.organization_category},isAdministrationRequest(){return this.isRequestAccessAndActor&&"administration"===this.requestAccessFields.organization_category}},methods:{async submitForm(){const e={...this.commonFields,legal:this.commonFields.legal.length>0,is_actor:!!this.commonFields.is_actor,...this.isRequestAccessAndActor?this.requestAccessFields:{},...this.isPublicEstablishmentRequest?this.publicEstablishmentFields:{},...this.isTerritorialCollectivityRequest?this.territorialCollectivityFields:{},...this.isAssociationRequest?this.associationFields:{},...this.isAdministrationRequest?this.administrationFields:{}};this.loading=!0;try{await Ou(e),this.loading=!1,this.$router.push("/"),gu({group:"notifications",type:"success",title:"Succès",text:this.isRequestAccessAndActor?"Votre demande d'accès a été envoyée":"Votre message a bien été envoyé"})}catch(t){this.loading=!1,this.error=t,this.$refs.form.setErrors(t.fields)}}},data(){return{loading:!1,error:null,commonFields:{email:this.$route.query.email||"",first_name:"",last_name:"",request_type:[],legal:[],is_actor:null,access_request_message:""},requestAccessFields:{organization_category:null,position:""},publicEstablishmentFields:{organization_type:null,organization_public:null},territorialCollectivityFields:{territorial_collectivity:null},associationFields:{association:"",departement:"",new_association_name:"",new_association_abbreviation:""},administrationFields:{organization_administration:""}}}},hd=md,vd=(i("65a2"),Object(u["a"])(hd,Tu,Iu,!1,null,null,null)),fd=vd.exports,gd=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"v1"},[i("div",{staticClass:"page--dashboard"},[i("Quickview",{attrs:{town:e.quickview.town,origin:e.quickview.originEvent},on:{"outside-click":e.hideQuickview}}),i("POIView",{attrs:{poi:e.poiview.poi,origin:e.poiview.originEvent},on:{"outside-click":e.hidePOIView}}),i("NavBar"),i("section",{staticClass:"dashboard"},[i("simplebar",{ref:"filters",staticClass:"filters",attrs:{"data-simplebar-auto-hide":"false"}},e._l(e.allowedFilters,(function(e){return i("FilterGroup",{key:e.id,attrs:{id:e.id,faIcon:e.faIcon,icon:e.icon,label:e.label,options:e.options,opened:e.opened}})})),1),i("div",{ref:"main",staticClass:"content",style:{width:e.loading||e.error?0:"auto"}},[i("Map",e._b({ref:"map",on:{"town-click":e.showQuickview,"poi-click":e.showPOIView,"on-row-click":e.routeToTown}},"Map",e.rendererProps,!1))],1),e.loading?i("div",{staticClass:"notification full-width"},[i("img",{staticClass:"spinner",attrs:{src:"/img/spinner_dark.svg",width:"20"}}),i("span",[e._v("Chargement des données en cours...")])]):e._e(),e.error?i("div",{staticClass:"notification error full-width"},[i("span",[e._v(e._s(e.error)+". "),i("a",{attrs:{href:"#"},on:{click:e.fetchData}},[e._v("Réessayer ?")])])]):e._e()],1)],1)])},bd=[],_d=i("8d3b"),yd=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"filterGroup"},[i("aside",[null!==e.faIcon?i("font-awesome-icon",{attrs:{icon:e.faIcon}}):i("img",{attrs:{src:e.icon,alt:""}})],1),i("main",[i("h1",{on:{click:e.toggle}},[e._v(e._s(e.label)+" "),i("span",{staticClass:"filterGroup-toggle"},[e._v("( "+e._s(e.toggler)+" )")])]),e._l(e.options,(function(t,a){return"open"===e.status?i("div",{key:a},[i("input",{directives:[{name:"model",rawName:"v-model",value:t.checked,expression:"option.checked"}],attrs:{type:"checkbox",id:e.id+"-"+(t.id||a)},domProps:{value:t.value,checked:Array.isArray(t.checked)?e._i(t.checked,t.value)>-1:t.checked},on:{change:function(i){var a=t.checked,s=i.target,n=!!s.checked;if(Array.isArray(a)){var o=t.value,r=e._i(a,o);s.checked?r<0&&e.$set(t,"checked",a.concat([o])):r>-1&&e.$set(t,"checked",a.slice(0,r).concat(a.slice(r+1)))}else e.$set(t,"checked",n)}}}),i("label",{staticClass:"label-inline",attrs:{for:e.id+"-"+(t.id||a)}},[void 0!==t.icon?i("font-awesome-icon",{style:{color:"#"+t.icon.color},attrs:{icon:t.icon.id,"fixed-width":""}}):e._e(),i("span",[e._v(e._s(t.label))])],1),i("br")]):e._e()}))],2)])},wd=[],Cd={props:{id:String,icon:{type:String,required:!1,default:null},faIcon:{type:String,required:!1,default:null},label:String,options:Array,opened:{type:Boolean,default:!1}},data(){return{status:!0===this.opened?"open":"closed"}},computed:{toggler(){return"open"===this.status?"-":"+"}},methods:{toggle(){this.status="open"===this.status?"closed":"open"}}},kd=Cd,xd=kd,Sd=(i("77c2"),Object(u["a"])(xd,yd,wd,!1,null,null,null)),$d=Sd.exports,Pd=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("section",{staticClass:"map"},[e.displaySearchbar?i("Address",{attrs:{placeholder:e.placeholder},model:{value:e.address,callback:function(t){e.address=t},expression:"address"}}):e._e(),i("div",{attrs:{id:"map"}},[i("div",{ref:"adressToggler",staticClass:"leaflet-address-toggler"},[i("input",{directives:[{name:"model",rawName:"v-model",value:e.showAddresses,expression:"showAddresses"}],attrs:{type:"checkbox"},domProps:{checked:Array.isArray(e.showAddresses)?e._i(e.showAddresses,null)>-1:e.showAddresses},on:{change:function(t){var i=e.showAddresses,a=t.target,s=!!a.checked;if(Array.isArray(i)){var n=null,o=e._i(i,n);a.checked?o<0&&(e.showAddresses=i.concat([n])):o>-1&&(e.showAddresses=i.slice(0,o).concat(i.slice(o+1)))}else e.showAddresses=s}}}),e._v(" Voir les adresses des sites ")]),i("div",{ref:"legends",staticClass:"leaflet-legend"},[i("h1",[e._v("Légende")]),e._l(e.fieldTypes,(function(t){return i("p",[i("span",{style:{"background-color":t.color}}),e._v(" "+e._s(t.label)+" ")])}))],2)])],1)},Td=[],Id=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"search__group"},[i("input",{directives:[{name:"model",rawName:"v-model.trim",value:e.query,expression:"query",modifiers:{trim:!0}}],attrs:{type:"text",placeholder:e.placeholder,autofocus:e.autofocus},domProps:{value:e.query},on:{keyup:e.onTyping,keydown:e.onNavigation,focus:e.onFocus,blur:[e.onBlur,function(t){return e.$forceUpdate()}],input:function(t){t.target.composing||(e.query=t.target.value.trim())}}}),e.suggestions.length?i("div",{staticClass:"autocomplete"},e._l(e.suggestions,(function(t,a){return i("p",{staticClass:"autocomplete-result",class:{active:a===e.indexOfHighlightedSuggestion},domProps:{innerHTML:e._s((t.type?""+t.type+"
":"")+t.label)},on:{mousedown:function(i){return e.onSuggestionClick(t)}}})})),0):e._e(),e.showMagnifier?i("button",{staticClass:"overlay-button",attrs:{"aria-label":"Recherche"}},[i("svg",{staticClass:"icon icon-search"},[i("use",{attrs:{"xlink:href":"#magnifier"}})])]):e._e()])},Od=[];const Ad=200,Nd=3;var Ed={props:{value:Object,autofocus:Boolean,placeholder:String,autocompleteFunction:{type:Function,default:il},showMagnifier:{type:Boolean,default:!0},typingMin:{type:Number,default:Nd}},data(){return{pendingRequest:null,typingTimeout:null,suggestions:[],filled:null!==this.value,query:null!==this.value&&this.value.label||"",previousQuery:null!==this.value?this.value.label:"",focused:!1,indexOfHighlightedSuggestion:null}},mounted(){document.addEventListener("click",this.checkOutsideClick)},beforeDestroy(){null!==this.typingTimeout&&(clearTimeout(this.typingTimeout),this.typingTimeout=null)},destroyed(){document.removeEventListener("click",this.checkOutsideClick)},methods:{onTyping(){this.previousQuery!==this.query&&(this.previousQuery=this.query,null!==this.typingTimeout&&clearTimeout(this.typingTimeout),this.filled=!1,this.$emit("input",null),this.setSuggestions([]),this.indexOfHighlightedSuggestion=null,this.typingTimeout=setTimeout(this.autocomplete,Ad))},onFocus(){this.focused=!0},onBlur(){this.focused=!1,null!==this.pendingRequest&&this.pendingRequest.abort(),!1===this.filled&&(this.query="",this.previousQuery=""),this.setSuggestions([])},onNavigation(e){38===e.keyCode?this.indexOfHighlightedSuggestion-1<0?this.indexOfHighlightedSuggestion=null:this.indexOfHighlightedSuggestion-=1:40===e.keyCode?this.suggestions.length>0&&(null===this.indexOfHighlightedSuggestion?this.indexOfHighlightedSuggestion=0:this.indexOfHighlightedSuggestion=Math.min(this.suggestions.length-1,this.indexOfHighlightedSuggestion+1)):13===e.keyCode?null!==this.indexOfHighlightedSuggestion&&this.onSelect(this.suggestions[this.indexOfHighlightedSuggestion]):this.indexOfHighlightedSuggestion=null},onSuggestionClick(e){this.onSelect(e)},onSelect(e){const{label:t}=e;this.$emit("input",e),this.setSuggestions([]),this.filled=!0,this.query=t,this.previousQuery=t},autocomplete(){null!==this.pendingRequest&&this.pendingRequest.abort(),this.query.length{!0===this.focused&&this.setSuggestions(e)}).catch(()=>{this.pendingRequest=null}))},checkOutsideClick(e){this.$el.contains(e.target)||this.setSuggestions([])},setSuggestions(e){this.suggestions=e,this.suggestions.length>0?this.indexOfHighlightedSuggestion=0:this.indexOfHighlightedSuggestion=null}}},jd=Ed,Dd=jd,qd=(i("e072"),Object(u["a"])(Dd,Id,Od,!1,null,"6b423108",null)),Md=qd.exports,Ld=(i("8243"),i("3ac1"),i("7319"),i("67e3")),Fd=i.n(Ld),zd=i("71ee"),Bd=i.n(zd),Rd=i("64e1"),Vd=i.n(Rd),Ud=i("0eac"),Hd=i.n(Ud);const Gd=[46.7755829,2.0497727],Wd=13;var Jd={components:{Address:Md},props:{towns:{type:Array,required:!1,default(){return[]}},pois:{type:Array,required:!1,default(){return[]}},displaySearchbar:{type:Boolean,required:!1,default:!0},placeholder:{type:String,required:!1,default:"Recherchez un lieu en saisissant une adresse"},defaultView:{type:Object,default:()=>({center:Gd,zoom:6})}},data(){return{map:null,markersGroup:{towns:ha.a.markerClusterGroup(),search:ha.a.markerClusterGroup(),pois:ha.a.markerClusterGroup({disableClusteringAtZoom:Wd})},searchMarker:this.createSearchMarker(),townSearchMarker:null,townMarkers:[],poiMarkers:[],poiMarkersVisible:!1,hashedTownMarkers:{},address:null,showAddresses:!1,fieldTypes:ar().field_types}},computed:{fieldTypeColors(){return this.fieldTypes?this.fieldTypes.reduce((e,t)=>Object.assign(e,{[t.id]:t.color}),{}):{}},mapLayers(){return{Satellite:ha.a.tileLayer.provider("Esri.WorldImagery"),Dessin:ha.a.tileLayer.provider("OpenStreetMap.Mapnik")}}},watch:{towns(){this.syncTownMarkers()},pois(){this.syncPOIMarkers()},showAddresses(){!0===this.showAddresses?document.body.setAttribute("class","leaflet-show-addresses"):document.body.setAttribute("class","")},address(){if(null===this.address)return void this.clearSearchMarker();const{coordinates:[e,t],label:i,addressType:a}=this.address;this.centerMap([t,e],20),this.$nextTick(()=>{this.setSearchMarker(a,i,[t,e])})}},mounted(){this.createMap(),this.syncTownMarkers()},methods:{setupMapControls(){this.setupZoomControl(),this.setupLayersControl(),this.setupAddressTogglerControl(),this.setupFieldTypesLegendControl()},setupZoomControl(){this.map.zoomControl.setPosition("bottomright")},setupLayersControl(){const e=ha.a.control.layers(this.mapLayers,void 0,{collapsed:!1});this.map.addControl(e)},setupAddressTogglerControl(){const{adressToggler:e}=this.$refs,t=ha.a.Control.extend({options:{position:"bottomleft"},onAdd(){return e}});this.map.addControl(new t)},setupFieldTypesLegendControl(){const{legends:e}=this.$refs,t=ha.a.Control.extend({options:{position:"bottomleft"},onAdd(){return e}});this.map.addControl(new t)},setupMarkerGroups(){this.map.addLayer(this.markersGroup.towns),this.map.addLayer(this.markersGroup.search),this.map.addLayer(this.markersGroup.pois)},setupView(){const{center:e,zoom:t}=this.defaultView;this.centerMap(e,t)},createMap(){this.map=ha.a.map("map",{layers:this.mapLayers.Dessin,scrollWheelZoom:!1}),this.map.on("zoomend",this.onZoomEnd),this.setupMapControls(),this.setupMarkerGroups(),this.setupView()},onZoomEnd(){const e=this.map.getZoom();!this.poiMarkersVisible&&e>Wd&&(this.poiMarkersVisible=!0,this.pois.forEach(this.createPOIMarker)),this.poiMarkersVisible&&e<=Wd&&(this.poiMarkersVisible=!1,this.removeAllPOIMarkers())},syncTownMarkers(){this.removeAllTownMarkers(),this.towns.forEach(this.createTownMarker)},syncPOIMarkers(){this.removeAllPOIMarkers(),this.poiMarkersVisible&&this.pois.forEach(this.createPOIMarker)},removeAllTownMarkers(){this.markersGroup.towns.clearLayers(),this.townMarkers=[],this.hashedTownMarkers={}},removeAllPOIMarkers(){this.markersGroup.pois.clearLayers(),this.poiMarkers=[]},getTownAddress(e){return e.usename},getTownCoordinates(e){const{latitude:t,longitude:i}=e;return[t,i]},getTownColor(e){return void 0!==e.fieldType?this.fieldTypeColors[e.fieldType.id]:"#cccccc"},getTownWaterImage(e){return!0===e.accessToWater?Fd.a:!1===e.accessToWater?Vd.a:Hd.a},createSearchMarker(){return ha.a.marker(Gd,{title:"A",icon:ha.a.divIcon({className:"leaflet-marker",html:'\n \n \n \n \n ',iconAnchor:[13,28]})})},createTownMarker(e){const t=this.getTownAddress(e),i=this.getTownCoordinates(e),a=this.getTownColor(e),s=this.getTownWaterImage(e),n=ha.a.marker(i,{title:e.address,icon:ha.a.divIcon({className:"leaflet-marker",html:`\n \n \n \n \n ${t}\n `,iconAnchor:[13,28]})});n.on("click",this.handleTownMarkerClick.bind(this,e)),n.on("add",()=>{!0===n.searchResult&&this.markTownAsSearchResult(n)}),n.addTo(this.markersGroup.towns),this.townMarkers.push(n),this.hashedTownMarkers[i.join(";")]=n},createPOIMarker(e){const{latitude:t,longitude:i}=e,a=[t,i],s=ha.a.marker(a,{title:e.address,icon:ha.a.divIcon({className:"leaflet-marker",html:`\n \n \n \n ${e.address}\n `,iconAnchor:[13,28]})});s.on("click",this.handlePOIMarkerClick.bind(this,e)),s.addTo(this.markersGroup.pois),this.poiMarkers.push(s)},handleTownMarkerClick(e,t){this.$emit("town-click",e,t)},handlePOIMarkerClick(e,t){this.$emit("poi-click",e,t)},centerMap(e,t){this.map.setView(e,t)},resize(){null!==this.map&&this.map.invalidateSize(!0)},clearSearchMarker(){if(null!==this.townSearchMarker)return this.townSearchMarker._icon&&this.townSearchMarker._icon.querySelector(".mapPin").classList.remove("mapPin--result"),this.townSearchMarker.searchResult=!1,void(this.townSearchMarker=null);this.searchMarker.remove()},getMatchingTownMarker(e){return this.hashedTownMarkers[e.join(";")]||null},markTownAsSearchResult(e){this.townSearchMarker=e,this.townSearchMarker.searchResult=!0,e._icon.querySelector(".mapPin").classList.add("mapPin--result")},setSearchMarker(e,t,i){this.clearSearchMarker();const a=this.getMatchingTownMarker(i);if(null!==a)return void this.markTownAsSearchResult(a);this.searchMarker.addTo(this.markersGroup.search),this.searchMarker.setLatLng(i),this.searchMarker._icon.querySelector(".mapPin-address").innerHTML=t;let s="add";"housenumber"!==e&&(s="remove"),this.searchMarker._icon.querySelector(".mapPin").classList[s]("mapPin--street")}}},Qd=Jd,Yd=Qd,Zd=(i("6613"),Object(u["a"])(Yd,Pd,Td,!1,null,"055bfb64",null)),Kd=Zd.exports,Xd=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{class:{active:e.active}},[i("div",{staticClass:"shadow"}),i("simplebar",{ref:"quickviewPanel",staticClass:"quickview",attrs:{"data-simplebar-auto-hide":"false"}},[e.town?i("header",{staticClass:"quickview-header"},[i("div",{staticClass:"quickview-actions"},[i("button",{staticClass:"actionButton",attrs:{type:"button"},on:{click:e.showTown}},[e._v("Voir le site")]),i("a",{attrs:{href:"#"},on:{click:function(t){return e.$emit("outside-click")}}},[i("svg",{staticClass:"icon icon-cross"},[i("use",{attrs:{"xlink:href":"#round-cross"}})])])]),i("h1",{staticClass:"quickview-title"},[i("a",{on:{click:e.showTown}},[e._v(e._s(e.town.address.split(/[0-9]{5}/)[0].replace(/[0-9]/g,"").replace(/,/g," ").replace(/\s{2,}/g," ")))])]),i("h2",{staticClass:"quickview-subtitle"},[e._v("Site de "+e._s(e.town.city.name))]),e.town.name?i("h2",{staticClass:"quickview-name"},[e._v(e._s(e.town.name))]):e._e(),void 0!==e.town.updatedAt?i("h2",{staticClass:"quickview-time"},[e._v("(Dernière modification le "),i("time",[e._v(e._s(e.formatDate(e.town.updatedAt)))]),e._v(")")]):e._e()]):e._e(),e._l(e.sections,(function(t,a){return i("section",{class:{even:a%2!==0}},[i("header",[i("h1",[e._v(e._s(t.title))])]),i("table",[i("tbody",e._l(t.rows,(function(t){return i("tr",[t.label?i("th",[e._v(e._s(t.label)+" :")]):e._e(),i("td",{attrs:{colspan:t.label?1:2}},[e._v(e._s(t.value))])])})),0)])])}))],2)],1)},ep=[],tp={components:{simplebar:_d["a"]},props:{town:Object,origin:Event},computed:{active(){return!!this.town},caracteristicSection(){if(!this.town)return null;const e=[];return void 0!==this.town.fieldType&&e.push({label:"Type de site",value:this.town.fieldType.label}),void 0!==this.town.ownerType&&e.push({label:"Type de propriétaire",value:this.town.ownerType.label}),void 0!==this.town.builtAt&&e.push({label:"Date d'installation",value:this.town.builtAt?App.formatDate(this.town.builtAt):"Inconnue"}),0===e.length?null:{title:"Caractéristiques",rows:e}},demographySection(){if(!this.town)return null;const e=[];return void 0!==this.town.populationTotal&&e.push({label:"Nombre de personnes",value:null!==this.town.populationTotal?this.town.populationTotal:"inconnu"}),void 0!==this.town.populationCouples&&e.push({label:"Nombre de ménages",value:null!==this.town.populationCouples?this.town.populationCouples:"inconnu"}),void 0!==this.town.populationMinors&&e.push({label:"Nombre de mineurs",value:null!==this.town.populationMinors?this.town.populationMinors:"inconnu"}),void 0!==this.town.populationMinors0To3&&e.push({label:"Nombre de mineurs (0-3 ans)",value:null!==this.town.populationMinors0To3?this.town.populationMinors0To3:"inconnu"}),void 0!==this.town.populationMinors3To6&&e.push({label:"Nombre de mineurs (3-6 ans)",value:null!==this.town.populationMinors3To6?this.town.populationMinors3To6:"inconnu"}),void 0!==this.town.populationMinors6To12&&e.push({label:"Nombre de mineurs (6-12 ans)",value:null!==this.town.populationMinors6To12?this.town.populationMinors6To12:"inconnu"}),void 0!==this.town.populationMinors12To16&&e.push({label:"Nombre de mineurs (12-16 ans)",value:null!==this.town.populationMinors12To16?this.town.populationMinors12To16:"inconnu"}),void 0!==this.town.populationMinors16To18&&e.push({label:"Nombre de mineurs (16-18 ans)",value:null!==this.town.populationMinors16To18?this.town.populationMinors16To18:"inconnu"}),void 0!==this.town.minorsInSchool&&e.push({label:"Nombre d'enfants inscrits dans un établissement scolaire",value:null!==this.town.minorsInSchool?this.town.minorsInSchool:"inconnu"}),void 0!==this.town.socialOrigins&&(e.push({label:"Origines",value:this.town.socialOrigins.length>0?"":"inconnu"}),this.town.socialOrigins.forEach(t=>{e.push({value:t.label})})),0===e.length?null:{title:"Habitants",rows:e}},justiceSection(){if(!this.town)return null;const e=[],t={[!0]:"oui",[!1]:"non"};if(void 0!==this.town.justiceProcedure&&e.push({label:"Existence d'une procédure judiciaire",value:t[this.town.justiceProcedure]||"inconnu"}),void 0!==this.town.justiceRendered&&e.push({label:"Décision de justice rendue",value:t[this.town.justiceRendered]||"inconnu"}),void 0!==this.town.policeStatus){const t={none:"non demandé",requested:"demandé",granted:"obtenu"};e.push({label:"Concours de la force publique demandé",value:t[this.town.policeStatus]||"inconnu"})}return 0===e.length?null:{title:"Procédure judiciaire d'expulsion",rows:e}},sections(){return[this.caracteristicSection,this.demographySection,this.justiceSection].filter(e=>null!==e)}},mounted(){document.addEventListener("click",this.checkOutsideClick)},destroyed(){document.removeEventListener("click",this.checkOutsideClick)},methods:{hasPermission:or,formatDate:e=>App.formatDate(e),checkOutsideClick(e){this.town&&e!==this.origin&&(this.$refs.quickviewPanel.$el.contains(e.target)||this.$emit("outside-click",e))},showTown(){const e=this.$router.resolve("/site/"+this.town.id);Bo(e.href)}}},ip=tp,ap=ip,sp=(i("e119"),Object(u["a"])(ap,Xd,ep,!1,null,"12c43bda",null)),np=sp.exports,op=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{class:{active:e.active}},[i("div",{staticClass:"shadow"}),i("simplebar",{ref:"quickviewPanel",staticClass:"quickview",attrs:{"data-simplebar-auto-hide":"false"}},[e.poi?i("header",{staticClass:"quickview-header"},[i("div",{staticClass:"px-4"},[i("div",{staticClass:"text-right"},[i("a",{attrs:{href:"#"},on:{click:function(t){return e.$emit("outside-click")}}},[i("svg",{staticClass:"icon icon-cross"},[i("use",{attrs:{"xlink:href":"#round-cross"}})])])]),i("h1",{staticClass:"quickview-title"},[e._v(" Point de distribution alimentaire ")]),i("div",{staticClass:"text-G600 uppercase text-sm my-2 "},[e._v(" source: soliguide.fr ")]),e.poi.name?i("h4",{staticClass:"my-4"},[e._v(" "+e._s(e.poi.name)+" ")]):e._e(),e.poi.address?i("div",[e._v(" "+e._s(e.poi.address)+" ")]):e._e(),e.poi.phone?i("div",{staticClass:"my-2"},[e._v(" Tel: "+e._s(e.poi.phone)+" ")]):e._e(),e.poi.email?i("div",{staticClass:"my-2"},[e._v(" Email: "+e._s(e.poi.email)+" ")]):e._e(),e.poi.language?i("div",{staticClass:"my-2"},[e._v(" Langue: "+e._s(e.poi.language)+" ")]):e._e(),e.poi.temporarily_closed?i("div",{staticClass:"my-2"},[e._v(" "+e._s(e.poi.temporarily_closed)+" ")]):e._e(),e.poi.temporary_information?i("div",{staticClass:"my-2"},[e._v(" "+e._s(e.poi.temporary_information)+" ")]):e._e(),e.poi.solinum_id?i("a",{staticClass:"my-2",attrs:{target:"_blank",href:"https://soliguide.fr/fiche/"+e.poi.solinum_id},on:{click:e.trackOpenSoliguide}},[e._v(" Voir plus ")]):e._e()])]):e._e()])],1)},rp=[],lp={components:{simplebar:_d["a"]},props:{poi:Object,origin:Event},computed:{active(){return!!this.poi}},mounted(){document.addEventListener("click",this.checkOutsideClick)},destroyed(){document.removeEventListener("click",this.checkOutsideClick)},watch:{active:function(e){e&&this.trackOpenPOI()}},methods:{trackOpenPOI(){this.$piwik.trackEvent("POI","Open POI",this.poi.solinum_id)},trackOpenSoliguide(){this.$piwik.trackEvent("POI","Click See More",this.poi.solinum_id)},checkOutsideClick(e){this.poi&&e!==this.origin&&(this.$refs.quickviewPanel.$el.contains(e.target)||this.$emit("outside-click",e))}}},cp=lp,up=(i("1c7c"),Object(u["a"])(cp,op,rp,!1,null,"263a7bb8",null)),dp=up.exports;function pp(){return Wo("/pois")}var mp=i("6ecd"),hp=i.n(mp),vp=i("9934"),fp=i.n(vp),gp=i("597c"),bp=i.n(gp),_p=i("d89d"),yp=i.n(_p);function wp(e){switch(e){case"nation":case"region":return 6;default:case"departement":case"epci":case"city":return 10}}var Cp={components:{NavBar:Mr,FilterGroup:$d,Map:Kd,Quickview:np,POIView:dp,simplebar:_d["a"]},data(){const{user:e}=ar();return{error:void 0,loading:!1,defaultMapView:{center:[e.organization.location.latitude,e.organization.location.longitude],zoom:wp(e.organization.location.type)},towns:[],pois:[],quickview:{town:null,originEvent:null},poiview:{poi:null,originEvent:null},permission:nr("shantytown.list"),filters:[{faIcon:"tint",label:"Accès à l'eau",id:"accessToWater",options:[{value:!0,label:"Oui",checked:!0,icon:{id:"tint",color:"00a0e3"}},{value:!1,label:"Non",checked:!0,icon:{id:"tint-slash",color:"ADB9C9"}},{value:null,label:"Inconnu",checked:!0,icon:{id:"question",color:"ADB9C9"}}],opened:!0},{icon:hp.a,label:"Types de site",id:"fieldType",options:[],opened:!0},{icon:fp.a,label:"Nombre de personnes",id:"population",options:[{value:null,label:"Inconnu",checked:!0},{value:"-9",label:"Moins de 10 personnes",checked:!0},{value:"10-99",label:"Entre 10 et 99 personnes",checked:!0},{value:"100-",label:"100 personnes et plus",checked:!0}]},{icon:bp.a,label:"Statut des sites",id:"status",options:[{value:"closed",label:"Disparus",checked:!1},{value:"opened",label:"Existants",checked:!0}]},{icon:fp.a,label:"Type de propriétaire",id:"ownerType",options:ar().owner_types.map(e=>({value:e.id,label:e.label,checked:!0}))},{icon:yp.a,label:"Points d'intérêts",id:"poi",options:[{value:"food_bank",label:"Distribution alimentaire",checked:!0}],opened:!0}]}},computed:{allowedFilters(){return this.permission?this.filters.filter(e=>!e.permissions||e.permissions.every(e=>this.permission[e])):[]},rendererProps(){return{towns:this.visibleTowns,pois:this.visiblePOIs,defaultView:this.defaultMapView}},visiblePOIs(){let e=this.pois;return this.allowedFilters.forEach(t=>{switch(t.id){case"poi":e=e.filter(()=>t.options[0].checked);break;default:}}),e},visibleTowns(){let e=this.towns;return this.allowedFilters.forEach(t=>{switch(t.id){case"accessToWater":{const i=t.options.filter(e=>e.checked).map(e=>e.value);e=e.filter(e=>-1!==i.indexOf(e.accessToWater))}break;case"fieldType":{const i=t.options.filter(e=>e.checked).map(e=>e.value);e=e.filter(e=>e.fieldType&&-1!==i.indexOf(e.fieldType.id))}break;case"population":{const i=t.options.filter(e=>!e.checked).map(e=>e.value);i.forEach(t=>{if(null===t)return void(e=e.filter(e=>null!==e.populationTotal));let[i,a]=t.split("-");i=parseInt(i,10),a=parseInt(a,10),e=e.filter(e=>null===e.populationTotal||(Number.isNaN(i)||Number.isNaN(a)?Number.isNaN(i)?!!Number.isNaN(a)||e.populationTotal>a:e.populationTotala))})}break;case"status":{const i=t.options.filter(e=>!e.checked).map(e=>e.value);i.forEach(t=>{"closed"===t?e=e.filter(e=>"open"===e.status):"opened"===t&&(e=e.filter(e=>"open"!==e.status))})}break;case"ownerType":{const i=t.options.filter(e=>e.checked).map(e=>e.value);e=e.filter(e=>e.ownerType&&-1!==i.indexOf(e.ownerType.id))}break;default:}}),e}},created(){this.fetchData()},mounted(){window.addEventListener("resize",this.resize)},beforeDestroy(){window.removeEventListener("resize",this.resize)},methods:{sortNumber(e,t){return"inconnu"===e&&"inconnu"===t?0:"inconnu"===e?-1:"inconnu"===t?1:et?1:0},showQuickview(e,t){this.quickview={town:e,originEvent:t.originalEvent}},showPOIView(e,t){this.poiview={poi:e,originEvent:t.originalEvent}},hideQuickview(){this.quickview={town:null,originEvent:null}},hidePOIView(){this.poiview={town:null,originEvent:null}},routeToTown(e){const t=this.$router.resolve("/site/"+e.row.id);Bo(t.href)},resize(){this.$refs.main&&(this.stretchToBottom(this.$refs.main),this.stretchToBottom(this.$refs.filters.$el))},stretchToBottom(e){const t=e.offsetHeight,i=t+(document.body.offsetHeight-(this.absoluteOffsetTop(e)+t));e.style.height=i+"px"},absoluteOffsetTop(e){let t=0,i=e;do{t+=i.offsetTop||0,i=i.offsetParent}while(i);return t},fetchData(){!0!==this.loading&&(this.loading=!0,this.error=void 0,Promise.all([Tl(),pp()]).then(([e,t])=>{const{field_types:i}=ar();this.loading=!1;const a=this.filters.filter(({id:e})=>"fieldType"===e)[0];a.options=[...i.map(e=>({id:e.id,value:e.id,label:e.label,checked:!0}))],this.towns=e,this.pois=t,this.$nextTick(()=>{this.resize(),this.$refs.map.resize()})}).catch(e=>{this.error=e.user_message,this.loading=!1}))}}},kp=Cp,xp=kp,Sp=(i("669e"),Object(u["a"])(xp,gd,bd,!1,null,null,null)),$p=Sp.exports,Pp=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"v1"},[i("NavBar"),i("section",{staticClass:"section section-white"},[i("div",{staticClass:"container"},[e.error?i("div",{staticClass:"notification error full-width"},[i("span",[e._v(e._s(e.error)+". "),i("a",{attrs:{href:"#"},on:{click:e.loadConfig}},[e._v("Réessayer ?")])])]):i("div",{staticClass:"notification full-width"},[i("img",{staticClass:"spinner",attrs:{src:"/img/spinner_dark.svg",width:"20"}}),i("span",[e._v("Initialisation de la plateforme en cours...")])])])])],1)},Tp=[],Ip={data(){return{error:null}},components:{NavBar:Mr},mounted(){this.loadConfig()},methods:{loadConfig(){!0!==er()?(this.error=null,tr().then(()=>{this.redirect()}).catch(e=>{this.error=e.user_message})):this.redirect()},redirect(){const{user:e}=ar();this.track(e),this.$router.push(qT())},track(e){this.$piwik&&(this.$piwik.setUserId(e.id),this.$piwik.setCustomVariable(1,"superuser",e.is_superuser),this.$piwik.setCustomVariable(2,"structure",e.organization.type.abbreviation||e.organization.type.name_singular),this.$piwik.setCustomVariable(3,"niveau_geo",e.organization.location.type),this.$piwik.setCustomVariable(4,"geo_nom",e.organization.location[e.organization.location.type]?e.organization.location[e.organization.location.type].name:null))}}},Op=Ip,Ap=Op,Np=Object(u["a"])(Ap,Pp,Tp,!1,null,null,null),Ep=Np.exports,jp=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("PrivateLayout",[e.exportIsVisible?i("Export",{attrs:{towns:[],location:e.currentLocation,closedTowns:"open"!==e.filters.status},on:{close:e.hideExport}}):e._e(),i("div",{staticClass:"bg-G100 print:hidden"},[i("PrivateContainer",{staticClass:"py-6"},[i("h1",{staticClass:"text-display-md text-center mb-4"},[e._v(" Rechercher une commune, un département... ? ")]),i("TownsListSearchBar",{attrs:{value:e.filters.location},on:{input:function(t){return e.updateFilters("location",t)}}})],1)],1),i("PrivateContainer",{staticClass:"pt-10"},[i("TownsListHeader",{staticClass:"mb-6",attrs:{search:e.filters.location}},[i("template",{slot:"filters"},[i("TownsListHeaderTab",{staticClass:"mr-8",attrs:{active:"open"===e.filters.status},on:{click:e.onClickOpenTab}},[e._v("Sites existants")]),i("TownsListHeaderTab",{attrs:{active:"close"===e.filters.status},on:{click:e.onClickCloseTab}},[e._v("Sites fermés")])],1),i("template",{slot:"title"},[i("div",{staticClass:"text-display-xl mb-2"},[e._v(e._s(e.title))]),e.isLoading?e._e():i("div",{staticClass:"flex items-center"},[i("div",{staticClass:"mr-4"},[i("img",{attrs:{src:e.locationImg,width:"80",height:"80"}})]),i("div",[i("div",[i("div",[e._v(e._s(e.populationTotal)+" personnes")]),i("div",[e._v(" "+e._s(e.filteredShantytowns.length)+" sites ")]),e.hasJusticePermission&&e.justiceTotal?i("div",[e._v(" "+e._s(e.justiceTotal)+" site(s) avec une procédure judiciaire ")]):e._e()])])])]),i("template",{slot:"buttons"},[i("Button",{staticClass:"mr-6 mb-2 md:mb-0",attrs:{icon:"print",iconPosition:"left",variant:"primaryOutline"},on:{click:e.togglePrintModal}},[e._v("Imprimer")]),e.hasPermission("shantytown.export")?i("Button",{staticClass:"mr-6 mb-2 md:mb-0",attrs:{icon:"file-excel",iconPosition:"left",variant:"primary",disabled:0===e.filteredShantytowns.length},on:{click:e.showExport}},[e._v("Exporter")]):e._e(),e.hasPermission("shantytown.create")?i("router-link",{attrs:{to:"/nouveau-site"}},[i("Button",{staticClass:"whitespace-no-wrap",attrs:{icon:"plus",iconPosition:"left",variant:"secondary"}},[e._v(" Déclarer un nouveau site")])],1):e._e()],1)],2),e.isLoading?i("div",{staticClass:"text-center text-primary text-display-lg mt-16"},[i("Spinner")],1):i("div",[i("div",{staticClass:"md:flex items-end mb-4 justify-between print:hidden"},[i("TownsListFilters",[i("TownsListFilter",{staticClass:"mr-2 mb-2",attrs:{title:"Type de sites",value:e.filters.fieldType,options:e.fieldTypes.map((function(e){return{label:e.label,value:e.id}}))},on:{input:function(t){return e.updateFilters("fieldType",t)}}}),i("TownsListFilter",{staticClass:"mr-2 mb-2",attrs:{title:"Nombre de personnes",value:e.filters.population,options:[{value:null,label:"Inconnu"},{value:"-9",label:"Moins de 10 personnes"},{value:"10-99",label:"Entre 10 et 99 personnes"},{value:"100-",label:"Plus de 100 personnes"}]},on:{input:function(t){return e.updateFilters("population",t)}}}),i("TownsListFilter",{staticClass:"mr-2 mb-2",attrs:{title:"Origines",value:e.filters.origin,options:[{value:1,label:"Français"},{value:2,label:"Union européenne"},{value:3,label:"Hors Union européenne"},{value:null,label:"Inconnu"}]},on:{input:function(t){return e.updateFilters("origin",t)}}}),i("TownsListFilter",{staticClass:"mr-2 mb-2",attrs:{title:"Conditions de vie",value:e.filters.conditions,options:[{value:"accessToWater",label:"eau"},{value:"accessToSanitary",label:"toilettes"},{value:"accessToElectricity",label:"électricité"},{value:"accessToTrash",label:"évac. des déchets"},{value:"vermin",label:"pres. de nuisibles"},{value:"firePreventionMeasures",label:"prev. incendie"}]},on:{input:function(t){return e.updateFilters("conditions",t)}},scopedSlots:e._u([{key:"default",fn:function(t){var a=t.label;return[i("div",{staticClass:"text-red flex items-center"},[i("div",{staticClass:"mr-2"},[i("Icon",{attrs:{icon:"times"}}),e._v("/"),i("Icon",{staticClass:"text-xs",attrs:{icon:"question"}})],1),e._v(" "+e._s(a)+" ")])]}}],null,!1,1485956960)}),e.hasJusticePermission?i("TownsListFilter",{staticClass:"mr-2 mb-2",attrs:{title:"Procédure judiciaire",value:e.filters.justice,options:[{value:null,label:"Inconnu"},{value:"none",label:"Aucune"},{value:"ownerComplaint",label:"Plainte déposée"},{value:"justiceProcedure",label:"Procédure en cours"},{value:"justiceRendered",label:"Décision rendue"}]},on:{input:function(t){return e.updateFilters("justice",t)}}}):e._e(),i("TownsListFilter",{staticClass:"mr-2 mb-2",attrs:{title:"Intervenants",value:e.filters.actors,options:[{value:"yes",label:"Oui"},{value:"no",label:"Non"}]},on:{input:function(t){return e.updateFilters("actors",t)}}})],1),i("TownsListSort",{staticClass:"mb-2",attrs:{value:e.sort,status:e.filters.status},on:{input:e.updateSort}})],1),i("div",[e._l(e.printMode?e.filteredShantytowns:e.filteredShantytownsByPage,(function(t){return i("TownCard",{key:t.id,staticClass:"mb-6",attrs:{shantytown:t,hasJusticePermission:e.hasJusticePermission}})})),i("div",{staticClass:"flex flex-col items-end mb-12 print:hidden mt-2"},[e.nbPages>1?i("Pagination",{staticClass:"md:mt-0 mb-2",attrs:{currentPage:e.currentPage,nbPages:e.nbPages,onChangePage:e.onChangePage}}):e._e(),i("div",{staticClass:"pr-6 text-G600"},[e._v(e._s(e.elementsOnPage))])],1)],2),e.filteredShantytowns.length?e._e():i("div",{staticClass:"text-center text-G600 italic pt-4"},[e._v(" Aucun site ne correspond à votre recherche, essayez d'autres filtres ou périmètre géographique ")])])],1)],1)},Dp=[],qp=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"container px-10 mx-auto print:px-0 print:max-w-none"},[e._t("default")],2)},Mp=[],Lp={},Fp=Object(u["a"])(Lp,qp,Mp,!1,null,null,null),zp=Fp.exports,Bp=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("div",{staticClass:"v1 print:hidden"},[i("NavBar")],1),e._t("default")],2)},Rp=[],Vp={components:{NavBar:Mr}},Up=Vp,Hp=Object(u["a"])(Up,Bp,Rp,!1,null,null,null),Gp=Hp.exports,Wp=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{class:["rounded-sm cursor-pointer border preventPrintBreak",e.isHover?"bg-blue100 border-transparent":""],on:{mouseenter:function(t){e.isHover=!0},mouseleave:function(t){e.isHover=!1}}},[i("router-link",{attrs:{to:"site/"+e.shantytown.id}},[i("div",{staticClass:"pt-6"},[i("div",{staticClass:"text-md px-6"},[i("div",{staticClass:"text-primary text-display-md "},[i("span",{staticClass:"font-bold"},[e._v(" "+e._s(e.shantytown.addressSimple)+" "),e.shantytown.name?i("span",[e._v("« "+e._s(e.shantytown.name)+" »")]):e._e()]),i("span",{staticClass:"font-normal"},[e._v(" "+e._s(e.shantytown.city.name)+" ")])])]),i("div",{staticClass:"md:grid print:grid cardGridTemplateColumns gap-10 px-6 py-4"},[i("div",[i("div",{staticClass:"flex items-center customAlign"},[i("Icon",{staticClass:"text-lg",style:"color: "+e.shantytown.fieldType.color,attrs:{icon:"map-marker-alt"}}),i("div",{staticClass:"font-bold ml-2"},[e._v(" "+e._s(e.shantytown.fieldType.label)+" ")])],1),i("div",{staticClass:"ml-5"},[i("div",[e._v(" "+e._s(e.shantytown.statusName)+" depuis "),i("br"),i("span",{staticClass:"font-bold"},[e._v(e._s(e.shantytown.statusSince))])])])]),i("div",[null===e.shantytown.populationTotal?i("div",{staticClass:"font-bold"},[e._v(" Population : inconnu ")]):i("div",{staticClass:"text-lg font-bold flex items-center"},[i("div",{staticClass:"mr-2"},[e._v(" "+e._s(e.shantytown.populationTotal)+" ")]),i("div",[i("Icon",{attrs:{icon:"male"}}),e._v(e._s(" ")+" "),e.shantytown.populationTotal>=25?i("span",[i("Icon",{attrs:{icon:"male"}}),e._v(e._s(" "))],1):e._e(),e.shantytown.populationTotal>=75?i("span",[i("Icon",{attrs:{icon:"male"}}),e._v(e._s(" "))],1):e._e(),e.shantytown.populationTotal>=100?i("span",[i("Icon",{attrs:{icon:"male"}})],1):e._e()],1)]),i("div",[e.shantytown.socialOrigins.length?e._l(e.shantytown.socialOrigins,(function(t){return i("div",{key:t.id,staticClass:"flex"},[i("img",{staticClass:" w-6 h-4 mr-2 mt-1",attrs:{src:e.socialOrigin(t).img}}),i("div",[e._v(e._s(e.socialOrigin(t).label))])])})):i("div",{staticClass:"text-G600"},[e._v(" Origine : inconnu ")])],2)]),i("div",[i("div",[i("TownCardIcon",{attrs:{value:e.shantytown.accessToWater,details:e.details.water}},[e._v("eau")]),i("TownCardIcon",{attrs:{value:e.shantytown.accessToSanitary,details:e.details.sanitary}},[e._v("toilettes")]),i("TownCardIcon",{attrs:{value:e.shantytown.electricityType.value}},[e._v("électricité")]),i("TownCardIcon",{attrs:{value:e.shantytown.trashEvacuation,details:e.details.trash}},[e._v("évac. des déchets")]),i("TownCardIcon",{attrs:{value:e.shantytown.vermin,details:e.details.vermin,inverted:""}},[e._v("pres. de nuisibles")]),i("TownCardIcon",{attrs:{value:e.shantytown.firePreventionMeasures,details:e.details.firePrevention}},[e._v("prev. incendie")])],1)]),e.hasJusticePermission?i("div",[e.shantytown.justiceStatuses&&e.shantytown.justiceStatuses.length?i("div",e._l(e.shantytown.justiceStatuses,(function(t){return i("div",{key:t.label,staticClass:"flex "},[t.icon?i("Icon",{attrs:{icon:t.icon}}):e._e(),t.img?i("img",{staticClass:"w-5 h-4 mt-1",attrs:{src:t.img}}):e._e(),i("div",{staticClass:"ml-2"},[i("span",{staticClass:"font-bold"},[e._v(e._s(t.label))]),t.date?i("span",{staticClass:"secondary"},[e._v(" le "+e._s(e.formatDate(t.date,"d/m/y")))]):e._e()])],1)})),0):i("div",{staticClass:"text-G600"},[i("Icon",{attrs:{icon:"ban"}}),e._v(" Aucune procédure judiciaire en cours ")],1)]):e._e(),i("div",{staticClass:"flex"},[i("div",{class:{"text-G600":0===e.shantytown.actors.length,"text-primary":e.shantytown.actors.length>0,"font-bold":e.shantytown.actors.length>0}},[i("span",[i("Icon",{attrs:{icon:"user-circle"}})],1)]),i("div",{staticClass:"ml-2 flex-grow"},[0===e.shantytown.actors.length?i("span",{staticClass:"text-G600"},[e._v(" Aucun intervenant")]):i("span",{staticClass:"text-primary font-bold"},[e._v(e._s(e.shantytown.actors.length)+" intervenant"+e._s(e.shantytown.actors.length>1?"s":""))]),e.shantytown.actors.length>0?i("ul",{staticClass:"text-primary"},e._l(e.mergedActors,(function(t){return i("li",{key:t.id},[e._v(" - "+e._s(t.name)+" ")])})),0):e._e()])])]),i("div",{staticClass:"flex justify-between items-center px-4 pt-4 print:hidden"},[i("Tag",{staticClass:"text-xs"},[e._v(" "+e._s(e.lastUpdate)+" ")]),i("div",{staticClass:"print:hidden"},[e.isOpen?i("transition",{attrs:{name:"fade"}},[e.isHover?i("router-link",{attrs:{to:"site/"+e.shantytown.id+"/mise-a-jour"}},[i("Button",{staticClass:"text-display-sm hover:underline -mb-1",attrs:{variant:"primaryText",icon:"pen",iconPosition:"left"}},[e._v("Mettre à jour")])],1):e._e()],1):e._e(),i("Button",{staticClass:"text-display-sm hover:underline -mb-1",attrs:{variant:"primaryText",icon:"arrow-right"}},[e._v("Voir la fiche du site")])],1)],1)])])],1)},Jp=[],Qp=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{class:["flex items-center",e.colorClass]},[i("div",{staticClass:"mr-2 w-4"},[i("Icon",{attrs:{icon:e.icon}})],1),e._t("default")],2)},Yp=[],Zp={props:{value:{validator:e=>"boolean"===typeof e||null===e},details:{type:Object},inverted:{type:Boolean}},computed:{colorClass(){return this.value&&this.details&&this.details.negative.length>0?"text-secondary":!0===this.value&&!this.inverted||!1===this.value&&this.inverted?"text-green":"text-red"},icon(){return this.value&&this.details&&this.details.negative.length>0?"exclamation-triangle":{null:"question",false:this.inverted?"check":"times",true:this.inverted?"times":"check"}[this.value]}}},Kp=Zp,Xp=Object(u["a"])(Kp,Qp,Yp,!1,null,null,null),em=Xp.exports,tm=i("2416"),im=i.n(tm),am=i("2b50"),sm=i.n(am),nm=i("08c7"),om=i.n(nm);function rm(e){const t=new Date,i=new Date(1e3*e),a=Math.floor(Math.abs(t.getTime()-i.getTime())/864e5),s=Math.floor(a/7),n=Math.floor(a/30),o=Math.floor(a/365);return{days:a,weeks:s,months:n,years:o}}function lm(e){const t={water:{negative:[],positive:[],unknown:[]},sanitary:{negative:[],positive:[],unknown:[]},trash:{negative:[],positive:[],unknown:[]},firePrevention:{negative:[],positive:[],unknown:[]}},i="Eau potable";null!==e.waterPotable?e.waterPotable?t.water.positive.push({text:i}):t.water.negative.push({text:"Eau non potable"}):t.water.unknown.push({text:i});const a="Accès continu, c’est-à-dire qu’il ne varie pas en qualité et quantité dans la journée et les saisons, sans limite dans le temps";null!==e.waterContinuousAccess?e.waterContinuousAccess?t.water.positive.push({text:a}):t.water.negative.push({text:"Accès non continu, c’est-à-dire qu’il varie en qualité et quantité dans la journée et les saisons, sans limite dans le temps"}):t.water.unknown.push({text:a}),null!==e.waterPublicPoint?e.waterPublicPoint&&t.water.negative.push({text:"Point d'eau public"}):t.water.unknown.push({text:"Point d'eau public"}),null!==e.waterDistance?"0-20"===e.waterDistance?t.water.positive.push({text:"Accès situé sur site ou à moins de 20 mètres"}):t.water.negative.push({text:"Accès situé à plus de 20 mètres"}):t.water.unknown.push({text:"Localisation de l'accès"});const s="Pas de franchissement de rue ou route pour accéder aux points d’eau";null!==e.waterRoadsToCross?e.waterRoadsToCross?t.water.negative.push({text:"Franchissement de rue ou route nécessaire"}):t.water.positive.push({text:s}):t.water.unknown.push({text:s});const n="Accès pour tous les habitants";null!==e.waterEveryoneHasAccess?e.waterEveryoneHasAccess?t.water.positive.push({text:n}):t.water.negative.push({text:"Pas d’accès pour tous les habitants"}):t.water.unknown.push({text:n});const o="Pas d’eaux stagnantes autour du point de distribution";null!==e.waterStagnantWater?e.waterStagnantWater?t.water.negative.push({text:"Eaux stagnantes autour du point de distribution"}):t.water.positive.push({text:o}):t.water.unknown.push({text:o});const r=e.populationTotal&&e.waterHandWashAccessNumber?Math.floor(Number(e.populationTotal)/Number(e.waterHandWashAccessNumber)):null,l=r?` - soit 1 bac de lavage pour ${r} personnes`:"",c=`${e.waterHandWashAccessNumber||"Présence de"} bac${e.waterHandWashAccessNumber>1?"s":""} de lavage des mains${l}`,u="il est conseillé au moins 1 bac de lavage pour 20 personnes";e.waterHandWashAccess&&r&&r<20?t.water.positive.push({text:c,info:u}):e.waterHandWashAccess&&r&&r>20?t.water.negative.push({text:c,info:u}):e.waterHandWashAccess&&!r?t.water.positive.push({text:c}):!1===e.waterHandWashAccess?t.water.negative.push({text:"Pas de de bacs de lavage des mains",info:u}):t.water.unknown.push({text:c,info:u});const d="Accès sur site";null!==e.sanitaryOnSite?e.sanitaryOnSite?t.sanitary.positive.push({text:d}):t.sanitary.negative.push({text:"Accès aux abords du site"}):t.sanitary.unknown.push({text:d});const p=Math.floor(Number(e.populationTotal)/Number(e.sanitaryNumber)),m=e.sanitaryNumber?` - soit 1 toilette pour ${p} personnes`:"",h=`${e.sanitaryNumber||"Présence de"} toilette${e.sanitaryNumber>1?"s":""}${m}`,v="il est conseillé au moins 1 toilette pour 20 personnes";e.sanitaryNumber&&p<20?t.sanitary.positive.push({text:h,info:v}):e.sanitaryNumber&&p>20?t.sanitary.negative.push({text:h,info:v}):t.sanitary.unknown.push({text:"Nombre de toilettes",info:v});const f="Pas de marques de défécation à l’air libre";null!==e.sanitaryInsalubrious?e.sanitaryInsalubrious?t.sanitary.negative.push({text:"Marques de défecation à l’air libre"}):t.sanitary.positive.push({text:f}):t.sanitary.unknown.push({text:f});const g=Math.floor(Number(e.populationTotal)/Number(e.trashCansOnSite));null!==e.trashCansOnSite?t.trash.positive.push({text:`${e.trashCansOnSite} poubelle${e.trashCansOnSite>1?"s":""} / benne${e.trashCansOnSite>1?"s":""} sont à proximité immédiate du site (moins de 100 mètres) - soit 1 pour ${g} personnes`}):t.trash.unknown.push({text:"Nombre de poubelles / bennes à proximité immédiate du site (moins de 100 mètres)"});const b="Collecte régulière des poubelles / bennes. C’est-à-dire au moins une fois par semaine, à partir d’un point de dépôt spécialement aménagé sur le site ou à proximité immédiate";null!==e.trashEvacuationRegular?e.trashEvacuationRegular?t.trash.positive.push({text:b}):t.trash.negative.push({text:"Pas de collecte régulière des poubelles / bennes"}):t.trash.unknown.push({text:b});const _="Pas d’accumulation de déchets sur le site ou aux abords";null!==e.trashAccumulation?e.trashAccumulation?t.trash.negative.push({text:"Accumulation de déchets sur le site ou aux abords"}):t.trash.positive.push({text:_}):t.trash.unknown.push({text:_});const y="Diagnostic prévention incendie par le SDIS réalisé";null!==e.firePreventionDiagnostic?e.firePreventionDiagnostic?t.firePrevention.positive.push({text:y}):t.firePrevention.negative.push({text:"Pas de diagnostic prévention incendie réalisé par le SDIS"}):t.firePrevention.unknown.push({text:y});const w="Mesures spécifiques en place";null!==e.firePreventionDevices?e.firePreventionDevices?t.firePrevention.positive.push({text:w}):t.firePrevention.negative.push({text:"Pas de mesure spécifiques (formation, extincteurs...) en place"}):t.firePrevention.unknown.push({text:w});const C="Site accessible aux pompiers";return null!==e.firePreventionSiteAccessible?e.firePreventionSiteAccessible?t.firePrevention.positive.push({text:C}):t.firePrevention.negative.push({text:"Site pas accessible aux pompiers"}):t.firePrevention.unknown.push({text:C}),t}var cm={props:{shantytown:{type:Object},hasJusticePermission:{type:Boolean}},data(){return{isHover:!1,details:lm(this.shantytown)}},components:{TownCardIcon:em},methods:{formatDate(...e){return window.App.formatDate.apply(window,e)},dateDiff(...e){return window.App.dateDiff.apply(window,e)},socialOrigin(e){return 1===e.id?{id:1,label:"Français",img:sm.a}:2===e.id?{id:2,label:"Union européenne",img:im.a}:3===e.id?{id:3,label:"Hors Union européenne",img:om.a}:e}},computed:{isOpen(){return"open"===this.shantytown.status},mergedActors(){return Object.values(this.shantytown.actors.reduce((e,t)=>void 0!==e[t.organization.id]?e:{...e,[t.organization.id]:t.organization},{}))},lastUpdate(){const{days:e,months:t,weeks:i}=rm(this.shantytown.updatedAt);if(0===t){if(0===e)return"Dernière actualisation aujourd'hui";if(e>0&&e<7)return`Dernière actualisation il y a ${e} jour${e>1?"s":""}`;if(i>0&&0===t)return`Dernière actualisation il y a ${i} semaine${i>1?"s":""}`}return t<12?`Dernière actualisation il y a ${t} mois`:"Dernière actualisation il y a plus d'un an"}}},um=cm,dm=(i("87de"),Object(u["a"])(um,Wp,Jp,!1,null,"73342ee7",null)),pm=dm.exports,mm=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"mx-auto searchbox -mb-6"},[i("AutocompleteV2",{attrs:{defaultValue:this.$props.value,search:e.search,getResultValue:e.resultValue,loading:e.loading,prefixIcon:"search",inputClasses:["rounded-full shadow-sm"]},on:{submit:function(t){return e.$emit("input",t)}},scopedSlots:e._u([{key:"extra",fn:function(t){var a=t.removeItem;return[i("div",{staticClass:"py-1 px-2 text-right"},[i("Button",{staticClass:"font-bold",attrs:{variant:"primaryText",size:"sm"},on:{click:a}},[e._v("Voir tous les sites de France")])],1)]}},{key:"default",fn:function(t){var a=t.results,s=t.resultListProps,n=t.resultListListeners,o=t.resultProps,r=t.getResultValue;return[a.length?e._e():i("Menu",[i("MenuItem",[e._v(" Aucun résultat ")])],1),i("Menu",e._g(e._b({},"Menu",s,!1),n),e._l(e.getCategories(a),(function(t){return i("div",{key:t.label,staticClass:"flex flex-row border-b-2 border-G100"},[i("div",{staticClass:"px-4 py-2 w-48 text-G600 border-r-2 border-G100 text-sm text-right pr-4"},[e._v(" "+e._s(t.label)+" ")]),i("div",{staticClass:"flex-1"},e._l(a,(function(a,s){return i("MenuItem",e._b({key:o[s].id,class:["flex flex-col cursor-pointer hover:bg-G100",a.type===t.label?"block":"hidden",o[s]["aria-selected"]&&"bg-G100"]},"MenuItem",o[s],!1),[e._v(" "+e._s(r(a))+" ")])})),1)])})),0)]}}]),model:{value:e.result,callback:function(t){e.result=t},expression:"result"}})],1)},hm=[],vm={props:{value:{type:Object}},data(){return{input:"",result:"",results:[],loading:!1}},methods:{resultValue(e){return e.label},getCategories(e){const t=(e,t)=>e.reduce((e,i)=>({...e,[i[t]]:[...e[i[t]]||[],i]}),{});return Object.values(t(e,"type")).map(e=>({label:e[0].type,items:e}))},async search(e){return this.input=e,e?(this.loading=!0,this.results=await al(e),this.loading=!1,this.results):[]}}},fm=vm,gm=(i("708a"),Object(u["a"])(fm,mm,hm,!1,null,"6c3fad6c",null)),bm=gm.exports,_m=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"block md:flex justify-between items-baseline"},[i("div",[i("div",{staticClass:"flex items-center mb-4 print:hidden"},[e._t("filters")],2),i("div",[e._t("title")],2)]),i("div",{staticClass:"block md:flex items-center print:hidden"},[e._t("buttons")],2)])},ym=[],wm={props:{search:{type:Object},showExport:{type:Function}}},Cm=wm,km=Object(u["a"])(Cm,_m,ym,!1,null,null,null),xm=km.exports,Sm=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",e._g({class:["border-b-2 pb-1",e.active?"text-primary font-bold border-primary":"cursor-pointer border-transparent"]},e.$listeners),[e._t("default")],2)},$m=[],Pm={props:{active:{type:Boolean}}},Tm=Pm,Im=Object(u["a"])(Tm,Sm,$m,!1,null,null,null),Om=Im.exports,Am=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("div",{staticClass:"mb-2"},[e._v("Filtrer par")]),i("div",{staticClass:"flex items-center flex-wrap"},[e._t("default")],2)])},Nm=[],Em={},jm=Object(u["a"])(Em,Am,Nm,!1,null,null,null),Dm=jm.exports,qm=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("Dropdown",{scopedSlots:e._u([{key:"button",fn:function(t){var a=t.isOpen;return[i("Button",{class:["px-4 rounded focus:outline-none border border-primary whitespace-nowrap",a?"bg-primary text-white hover:text-white focus:text-white":"hover:bg-blue200 hover:text-primary text-primary"],attrs:{variant:"custom",size:"sm",icon:a?"chevron-up":"chevron-down",iconPosition:"right"}},[e._v(e._s(e.titleWithActiveFilters))])]}},{key:"menu",fn:function(){return[i("Menu",{attrs:{containerClasses:"py-0"}},[e._l(e.options,(function(t){return i("div",{key:t.id,staticClass:"flex items-center whitespace-no-wrap text-sm menuWidth"},[i("Checkbox",{attrs:{checkValue:t.value,value:e.value,variant:"invisible",containerClasses:"w-full",labelClasses:"w-full block"},on:{input:function(t){return e.$emit("input",t)}},scopedSlots:e._u([{key:"default",fn:function(a){var s=a.isChecked;return[i("div",{staticClass:"flex items-center justify-between w-full hover:bg-blue200 py-2 px-3 text-primary"},[e._t("default",[i("div",{staticClass:"flex-1"},[e._v(e._s(t.label))])],{label:t.label}),s?i("div",{staticClass:"ml-4"},[i("Icon",{attrs:{icon:"check"}})],1):e._e()],2)]}}],null,!0)})],1)})),i("div",{staticClass:"px-1 py-1 border-t "},[i("Button",{staticClass:"hover:underline",attrs:{size:"sm",variant:"primaryText"},on:{click:function(t){return e.$emit("input",[])}}},[e._v(" Effacer ")])],1)],2)]},proxy:!0}])})},Mm=[],Lm={props:{title:{type:String},options:{type:Array},value:{type:Array}},computed:{titleWithActiveFilters(){return this.value.length?`${this.title} (${this.value.length})`:this.title}}},Fm=Lm,zm=(i("30a5"),Object(u["a"])(Fm,qm,Mm,!1,null,"defa5cd8",null)),Bm=zm.exports;function Rm(e,t){return e.filter(e=>("open"!==t.status||"open"===e.status)&&(("close"!==t.status||"open"!==e.status)&&(!(t.location&&!Hm(e,t))&&(!(t.fieldType.length>0&&!Gm(e,t.fieldType))&&(!(t.population.length>0&&!Wm(e,t.population))&&(!(t.justice.length>0&&!Jm(e,t.justice))&&(!(t.origin.length>0&&!Um(e,t.origin))&&(!(t.conditions.length>0&&!Vm(e,t.conditions))&&!(t.actors.length>0&&!Qm(e,t.actors))))))))))}function Vm(e,t){return t.some(t=>"accessToSanitary"===t?!e.accessToSanitary:"accessToWater"===t?!e.accessToWater:"accessToTrash"===t?!e.trashEvacuation:"accessToElectricity"===t?!e.electricityType.value:"vermin"===t?e.vermin:"firePreventionMeasures"!==t||!e.firePreventionMeasures)}function Um(e,t){if(!e.socialOrigins)return!1;if(!e.socialOrigins.length&&t.includes(null))return!0;const i=e.socialOrigins.map(e=>e.id),a=i.filter(e=>t.includes(e));return a.length}function Hm(e,t){if("nation"===t.location.type)return!0;const i=e[t.location.locationType];return!i||(i.code===""+t.location.code||i.main===""+t.location.code)}function Gm(e,t){return-1!==t.indexOf(e.fieldType.id)}function Wm(e,t){return t.some(t=>{if(null===t)return null===e.populationTotal;if(null===e.populationTotal)return!1;const[i,a]=t.split("-");return!(""!==i&&parseInt(i,10)>e.populationTotal)&&!(""!==a&&parseInt(a,10)"ownerComplaint"===t?!0===e.ownerComplaint:!0===e.justiceRendered?"justiceRendered"===t:!0===e.justiceProcedure?"justiceProcedure"===t:null===t)}function Qm(e,t){return!!(t.includes("yes")&&e.actors.length>0)||(!(!t.includes("no")||0!==e.actors.length)||0===t.length)}var Ym=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("Modal",{staticClass:"modalContainer",attrs:{isOpen:!0,closeModal:e.close,closeClickOutside:""},scopedSlots:e._u([{key:"header",fn:function(){return[i("div",{staticClass:"pt-10 px-10 pb-4 flex justify-between border-b border-G200"},[i("div",{staticClass:"text-primary"},[i("div",{staticClass:"text-display-md text-primary"},[e._v(" "+e._s(e.closedTowns?"Exporter les sites fermés":"Exporter les sites existants")+" ")]),i("div",{staticClass:"font-bold mt-2"},[e._v(e._s(e.location.label))])]),i("div",{staticClass:"ml-16"},[i("Button",{attrs:{variant:"primaryText"},on:{click:e.close}},[e._v(" Annuler")]),i("Button",{staticClass:"ml-6",attrs:{icon:"file-excel",iconPosition:"left"},on:{click:e.download}},[e._v("Exporter")])],1)])]},proxy:!0},{key:"body",fn:function(){return[i("div",[i("div",{staticClass:"font-bold mb-1"},[e._v(" Les données exportées par défaut ")]),i("ul",[i("li",[e._v("- Localisation")]),i("li",[e._v(" - Caractéristiques du site ")]),i("li",[e._v(" - Habitants ")])])]),i("div",{staticClass:"mt-4"},[i("p",{staticClass:"font-bold mb-1"},[e._v(" Cochez les informations supplémentaires que vous souhaitez exporter ")]),e._l(e.availableOptions,(function(t){return i("Checkbox",{key:t.id,attrs:{checkValue:t.id,label:t.label+" "+(t.description||"")},model:{value:e.options,callback:function(t){e.options=t},expression:"options"}})}))],2)]},proxy:!0}])})},Zm=[],Km={components:{Checkbox:tt},props:{location:Object,closedTowns:Boolean},data(){return{existingOptions:[{id:"address_details",label:"Informations d'accès au site et coordonnées GPS",closedTowns:!1},{id:"owner",label:"Propriétaire"},{id:"life_conditions",label:"Conditions de vie"},{id:"demographics",label:"Diagnostic"},{id:"justice",label:"Procédures judiciaires",permission:{entity:"shantytown",feature:"export",data:"justice"}},{id:"comments",label:"Commentaires",description:": les 5 derniers",permission:{entity:"shantytown_comment",feature:"list",data:null}},{id:"covid_comments",label:"Commentaires Covid-19",permission:{entity:"covid_comment",feature:"list",data:null}}],options:[]}},computed:{title(){return this.closedTowns?"fermés":"existants"},availableOptions(){return this.existingOptions.filter(({closedTowns:e})=>void 0===e||this.closedTowns===e).filter(({permission:e})=>{if(void 0===e)return!0;const t=nr(`${e.entity}.${e.feature}`);return null!==t&&(null===e.data||!0===t["data_"+e.data])})}},methods:{download(){const{code:e,type:t}=this.location.data;let i=`https://api.resorption-bidonvilles.beta.gouv.fr/towns/export?locationType=${encodeURIComponent(t)}&locationCode=${encodeURIComponent(e)}&closedTowns=${this.closedTowns?"1":"0"}`;this.options.length>0&&(i+="&options="+encodeURIComponent(this.options.join(","))),Ko(i)},close(){this.$emit("close")}}},Xm=Km,eh=Object(u["a"])(Xm,Ym,Zm,!1,null,null,null),th=eh.exports,ih=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("div",{staticClass:"mb-2"},[e._v("Trier par")]),i("div",{staticClass:"flex items-center"},[i("Dropdown",{scopedSlots:e._u([{key:"button",fn:function(t){var a=t.isOpen;return[i("Button",{class:["px-4 rounded focus:outline-none border border-primary whitespace-no-wrap ",a?"bg-primary text-white hover:text-white focus:text-white":"hover:bg-blue200 hover:text-primary text-primary"],attrs:{variant:"custom",size:"sm",icon:a?"chevron-up":"chevron-down",iconPosition:"right"}},[e._v(e._s(e.title)+" ")])]}},{key:"menu",fn:function(){return[i("Menu",{attrs:{containerClasses:"py-0"}},e._l(e.options[e.status],(function(t){return i("div",{key:t.id,staticClass:"flex items-center whitespace-no-wrap text-sm menuWidth"},[i("Radio",{attrs:{checkValue:t.value,value:e.value,variant:"invisible",containerClasses:"w-full",labelClasses:"w-full block"},on:{input:function(t){return e.$emit("input",t)}},scopedSlots:e._u([{key:"default",fn:function(a){var s=a.isChecked;return[i("div",{staticClass:"flex items-center justify-between w-full hover:bg-blue200 py-2 px-3 text-primary"},[i("div",{staticClass:"flex-1"},[e._v(e._s(t.label))]),s?i("div",{staticClass:"ml-4"},[i("Icon",{attrs:{icon:"check"}})],1):e._e()])]}}],null,!0)})],1)})),0)]},proxy:!0}])})],1)])},ah=[],sh={props:{value:{type:String},status:{type:String}},data(){return{options:{open:[{value:"builtAt",label:"Date d'installation"},{value:"updatedAt",label:"Date d'actualisation"},{value:"declaredAt",label:"Date de signalement"}],close:[{value:"closedAt",label:"Date de fermeture"},{value:"builtAt",label:"Date d'installation"},{value:"updatedAt",label:"Date d'actualisation"},{value:"declaredAt",label:"Date de signalement"}]}}},computed:{title(){const e=this.options[this.status].find(e=>e.value===this.value);return e.label}}},nh=sh,oh=(i("3654"),Object(u["a"])(nh,ih,ah,!1,null,"80dfc67a",null)),rh=oh.exports,lh=i("2f62"),ch=i("ccab"),uh=i.n(ch);function dh(e){const{days:t,years:i,months:a}=rm(e);if(i>0){const e=`${i} an${i>1?"s":""}`;return a%12>0?`${e} et ${a%12} mois`:e}return a>0?a+" mois":t>0?t+" jours":"Aujourd'hui"}function ph(e,t){const i=t.reduce((e,t)=>Object.assign(e,{[t.id]:t.color}),{});let a=!0;"Inconnu"===e.electricityType.label?a=null:"Non"===e.electricityType.label&&(a=!1);const s=[];switch(!0===e.ownerComplaint&&s.push({icon:"scroll",label:"Plainte déposée"}),!e.justiceProcedure||e.justiceChallenged||e.justiceRendered||s.push({icon:"balance-scale",label:"Procédure en cours"}),e.justiceProcedure&&e.justiceRendered&&s.push({icon:"balance-scale",label:"Décision rendue",date:e.justiceRenderedAt}),e.justiceProcedure&&!0===e.justiceChallenged&&s.push({icon:"balance-scale",label:"Contentieux"}),e.policeStatus){case"none":s.push({img:uh.a,label:"Concours de la force publique non demandé"});break;case"requested":s.push({img:uh.a,label:"Concours de la force publique demandé",date:e.policeRequestedAt});break;case"granted":s.push({img:uh.a,label:"Concours de la force publique accordé",date:e.policeGrantedAt});break;default:case null:break}let n,o;"open"===e.status?e.builtAt?(n="Existe",o=e.builtAt):e.declaredAt?(n="Signalé",o=e.declaredAt):(n=null,o=null):(n="Fermé",o=e.closedAt);const r=o?dh(o):"",l=e.closingSolutions.reduce((e,t)=>t.householdsAffected?(e||0)+t.householdsAffected:e,null);return{...e,statusName:n,statusDate:o,statusSince:r,statusDetails:mh[e.status],fieldType:{...e.fieldType,color:i[e.fieldType.id]},electricityType:{...e.electricityType,value:a},justiceStatuses:s,totalSolutions:l}}const mh={closed_by_justice:"Exécution d'une décision de justice",closed_by_admin:"Exécution d'une décision administrative",other:"Autre",unknown:"Raison inconnue"};a["default"].use(lh["a"]);var hh=new lh["a"].Store({state:{towns:{data:[],loading:!0,error:null,sort:"updatedAt",filters:{population:[],fieldType:[],justice:[],origin:[],conditions:[],status:"open",location:null,actors:[]},currentPage:1},detailedTown:null},mutations:{setLoading(e,t){e.towns.loading=t},setTowns(e,t){e.towns.data=t},setError(e,t){e.towns.error=t},setSort(e,t){e.towns.sort=t},setFilters(e,t){e.towns.filters=t},setLocation(e,t){e.towns.filters.location=t},setCurrentPage(e,t){e.towns.currentPage=t},setDetailedTown(e,t){e.detailedTown=t},updateShantytownActors(e,{townId:t,actors:i}){null!==e.detailedTown&&e.detailedTown.id===t&&(e.detailedTown.actors=i);const a=e.towns.data.find(({id:e})=>e===t);void 0!==a&&(a.actors=i)},updateShantytownActorThemes(e,{townId:t,userId:i,themes:a}){if(null!==e.detailedTown&&e.detailedTown.id===t){const t=e.detailedTown.actors.find(({id:e})=>e===i);void 0!==t&&(t.themes=a)}const s=e.towns.data.find(({id:e})=>e===t);if(void 0!==s){const e=s.actors.find(({id:e})=>e===i);void 0!==e&&(e.themes=a)}}},actions:{async fetchTowns({commit:e}){e("setLoading",!0);try{const{user:t,field_types:i}=ar();"nation"!==t.organization.location.type&&"national_admin"!==t.role_id&&e("setLocation",{id:t.organization.location[t.organization.location.type].code,label:t.organization.location[t.organization.location.type].name,category:t.organization.location.type,locationType:t.organization.location.type,code:t.organization.location[t.organization.location.type].code,data:{code:t.organization.location[t.organization.location.type].code,type:t.organization.location.type}});const a=await Tl(),s=a.map(e=>ph(e,i));e("setTowns",s),e("setLoading",!1)}catch(t){e("setError",t),e("setLoading",!1)}},async fetchTownDetails({commit:e},t){const{field_types:i}=ar(),a=ph(await Il(t),i);e("setDetailedTown",a)},async addTownActor({commit:e},{townId:t,actor:i}){const{actors:a}=await Ml(t,i);e("updateShantytownActors",{townId:t,actors:a})},async removeTownActor({commit:e},{townId:t,userId:i}){const{actors:a}=await Ll(t,i);e("updateShantytownActors",{townId:t,actors:a})},async updateTownActorThemes({commit:e},{townId:t,userId:i,themes:a}){const{themes:s}=await Fl(t,i,a);e("updateShantytownActorThemes",{townId:t,userId:i,themes:s})},async removeTownActorTheme({commit:e},{townId:t,userId:i,themeId:a}){const{themes:s}=await zl(t,i,a);e("updateShantytownActorThemes",{townId:t,userId:i,themes:s})},inviteNewTownActor(e,{townId:t,email:i}){return Bl(t,i)}},getters:{towns:e=>e.towns.data,detailedTown:e=>e.detailedTown,townsLoading:e=>e.towns.loading,townsError:e=>e.towns.error,townsFilters:e=>e.towns.filters,townsSort:e=>e.towns.sort,townsCurrentPage:e=>e.towns.currentPage}});const vh=20;var fh={components:{TownsListSort:rh,Spinner:ji,TownCard:pm,PrivateContainer:zp,PrivateLayout:Gp,TownsListSearchBar:bm,TownsListHeader:xm,TownsListHeaderTab:Om,TownsListFilters:Dm,TownsListFilter:Bm,Export:th},mounted(){window.onbeforeprint=()=>{this.printMode=!0},window.onafterprint=()=>{this.printMode=!1}},data(){const{field_types:e}=ar(),t=nr("shantytown.list");return{hasJusticePermission:!0===t.data_justice,fieldTypes:e,exportIsVisible:!1,printMode:!1}},methods:{onClickCloseTab(){this.updateFilters("status","close"),this.updateSort("closedAt")},onClickOpenTab(){this.updateFilters("status","open"),this.updateSort("updatedAt")},updateSort(e){hh.commit("setSort",e)},updateFilters(e,t){hh.commit("setFilters",{...this.filters,[e]:t}),this.onChangePage(1)},onChangePage(e){hh.commit("setCurrentPage",e)},hasPermission(...e){return or(...e)},load(){this.shantytowns.length||hh.dispatch("fetchTowns")},showExport(){setTimeout(()=>{this.exportIsVisible=!0},100)},hideExport(){this.exportIsVisible=!1},togglePrintModal(){this.printMode=!0,setTimeout(()=>{window.print()},100)}},created(){this.load()},computed:{...Object(lh["b"])({shantytowns:"towns",isLoading:"townsLoading",error:"townsError",filters:"townsFilters",sort:"townsSort",currentPage:"townsCurrentPage"}),locationImg(){const e=["01","02","03","04","06"],t=this.filters.location,i=t&&"Région"===t.type,a=i&&e.includes(t.code),s=!i&&t&&!t.departement;return!t||s||a?"/img/regions/fallback.svg":i?`/img/regions/${this.filters.location.code}.svg`:`/img/departements/${this.filters.location.departement}.svg`},currentLocation(){return this.filters.location||{id:null,label:"France",category:"Pays",data:{code:null,type:"nation"}}},populationTotal(){return this.filteredShantytowns.reduce((e,{populationTotal:t})=>e+(t||0),0)},justiceTotal(){return this.filteredShantytowns.filter(({justiceProcedure:e})=>!0===e).length},filteredShantytowns(){return Rm(this.shantytowns,this.filters).sort((e,t)=>t[this.sort]-e[this.sort])},filteredShantytownsByPage(){return this.filteredShantytowns.slice((this.currentPage-1)*vh,vh*this.currentPage)},title(){return this.currentLocation.label?""+this.currentLocation.label:"France métropolitaine"},nbPages(){return Math.ceil(this.filteredShantytowns.length/vh)},elementsOnPage(){const e=(this.currentPage-1)*vh+1,t=this.currentPage=t},message:"La date de signalement doit être ultérieure à la date d'installation"});var uv={props:{value:{type:Date,required:!1},disableBefore:{type:Date,required:!1}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},dv=uv,pv=Object(u["a"])(dv,lv,cv,!1,null,null,null),mv=pv.exports,hv=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("CheckableGroup",{attrs:{label:"Type de site",id:"field_type",showMandatoryStar:!0,rules:"required"}},e._l(e.values,(function(t){return i("Radio",{key:t.id,attrs:{variant:"card",label:t.label,checkValue:t.id,cypressName:"field_type"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})})),1)},vv=[],fv={props:{value:{type:Number,required:!1,default:void 0}},data(){const{field_types:e}=ar();return{values:e,checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},gv=fv,bv=Object(u["a"])(gv,hv,vv,!1,null,null,null),_v=bv.exports,yv=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("TextInput",{attrs:{label:"Informations d'accès",info:"Saisissez ici toutes les informations qui, en plus de l'adresse, peuvent être utiles pour l'accès au site.",cypressName:"detailed_address"},model:{value:e.input,callback:function(t){e.input=t},expression:"input"}})},wv=[],Cv={props:{value:{type:String,required:!1,default:""}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},kv=Cv,xv=Object(u["a"])(kv,yv,wv,!1,null,null,null),Sv=xv.exports,$v=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("CheckableGroup",{attrs:{label:" ",id:"owner_type",validationName:"Type de propriétaire",rules:"required"}},e._l(e.values,(function(t){return i("Radio",{key:t.id,attrs:{variant:"card",label:t.label,checkValue:t.id,cypressName:"owner_type"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})})),1)},Pv=[],Tv={props:{value:{type:Number,required:!1,default:void 0}},data(){const{owner_types:e}=ar();return{values:e,checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}},methods:{isUnknown(e){const t=this.getLabelFor(e);return void 0===t||"Inconnu"===t},getLabelFor(e){const t=this.values.find(({id:t})=>t===e);if(void 0!==t)return t.label}}},Iv=Tv,Ov=Object(u["a"])(Iv,$v,Pv,!1,null,null,null),Av=Ov.exports,Nv=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("TextInput",{attrs:{id:"owner",label:"Nom",cypressName:"owner"},model:{value:e.input,callback:function(t){e.input=t},expression:"input"}})},Ev=[],jv={props:{value:{type:String,required:!1,default:""}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},Dv=jv,qv=Object(u["a"])(Dv,Nv,Ev,!1,null,null,null),Mv=qv.exports,Lv={components:{InputBuiltAt:rv,InputDeclaredAt:mv,InputFieldType:_v,InputDetailedAddress:Sv,InputOwnerType:Av,InputOwner:Mv},props:{value:{type:Object,required:!0}},data(){return{input:this.value}},computed:{ownerTypeIsUnknown(){const e=this.input.owner_type;return void 0===this.$refs.ownerType||this.$refs.ownerType.isUnknown(e)}}},Fv=Lv,zv=Object(u["a"])(Fv,ev,tv,!1,null,null,null),Bv=zv.exports,Rv=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("FormGroup",{attrs:{title:"Habitants"}},[i("FormParagraph",{attrs:{title:"Combien d'habitants vivent sur le site ?"}},[i("InputPopulation",{model:{value:e.input.population,callback:function(t){e.$set(e.input,"population",t)},expression:"input.population"}}),i("InputPopulationMinors",{model:{value:e.input.populationMinors,callback:function(t){e.$set(e.input,"populationMinors",t)},expression:"input.populationMinors"}})],1),i("FormParagraph",{attrs:{title:"Quelle est l'origine des habitants ?"}},[i("InputSocialOrigins",{model:{value:e.input.social_origins,callback:function(t){e.$set(e.input,"social_origins",t)},expression:"input.social_origins"}})],1),i("FormParagraph",{attrs:{title:"Quel est le statut du diagnostic social ?",showMandatoryStar:!0}},[i("InputCensusStatus",{ref:"censusStatus",model:{value:e.input.census_status,callback:function(t){e.$set(e.input,"census_status",t)},expression:"input.census_status"}}),e.censusStatusIsUnknown?e._e():i("div",{staticClass:"w-64"},[i("InputCensusConductedAt",{model:{value:e.input.census_conducted_at,callback:function(t){e.$set(e.input,"census_conducted_at",t)},expression:"input.census_conducted_at"}})],1),e.censusStatusIsUnknown?e._e():i("InputCensusConductedBy",{model:{value:e.input.census_conducted_by,callback:function(t){e.$set(e.input,"census_conducted_by",t)},expression:"input.census_conducted_by"}})],1)],1)},Vv=[],Uv=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("div",{staticClass:"mb-3 text-G600"},[e._v(" Le nombre de personnes sur un site est mouvant, les données fournies par les acteurs - même des estimations - participent à l'amélioration de la connaissance. ")]),i("div",{staticClass:"flex"},[i("TextInput",{staticClass:"w-32",attrs:{id:"population_total",label:"Personnes",rules:"numeric|min_value:0",cypressName:"population_total"},model:{value:e.input.populationTotal,callback:function(t){e.$set(e.input,"populationTotal",t)},expression:"input.populationTotal"}}),i("TextInput",{staticClass:"w-32 ml-5",attrs:{id:"population_couples",label:"Ménages",rules:"numeric|min_value:0|couplesLesserThanTotal:@population_total",cypressName:"population_couples"},model:{value:e.input.populationCouples,callback:function(t){e.$set(e.input,"populationCouples",t)},expression:"input.populationCouples"}}),i("TextInput",{staticClass:"w-32 ml-5",attrs:{id:"population_minors",label:"Mineurs",rules:"numeric|min_value:0|minorsLesserThanTotal:@population_total",cypressName:"population_minors"},model:{value:e.input.populationMinors,callback:function(t){e.$set(e.input,"populationMinors",t)},expression:"input.populationMinors"}})],1)])},Hv=[];Object(D["c"])("couplesLesserThanTotal",{params:["target"],validate(e,{target:t}){return parseInt(e,10)<=parseInt(t,10)},message:"Le nombre de ménages doit être inférieur au nombre de personnes"}),Object(D["c"])("minorsLesserThanTotal",{params:["target"],validate(e,{target:t}){return parseInt(e,10)<=parseInt(t,10)},message:"Le nombre de mineurs doit être inférieur au nombre de personnes"});var Gv={props:{value:{type:Object,required:!1,default(){return{populationTotal:void 0,populationCouples:void 0,populationMinors:void 0}}}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},Wv=Gv,Jv=Object(u["a"])(Wv,Uv,Hv,!1,null,null,null),Qv=Jv.exports,Yv=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("div",{staticClass:"flex"},[i("TextInput",{staticClass:"w-32",attrs:{id:"population_minors_0_3",label:"0 - 3 ans",rules:"numeric|min_value:0",cypressName:"population_minors_0_3"},model:{value:e.input.populationMinors0To3,callback:function(t){e.$set(e.input,"populationMinors0To3",t)},expression:"input.populationMinors0To3"}}),i("TextInput",{staticClass:"w-32 ml-5",attrs:{id:"population_minors_3_6",label:"3 - 6 ans",rules:"numeric|min_value:0",cypressName:"population_minors_3_6"},model:{value:e.input.populationMinors3To6,callback:function(t){e.$set(e.input,"populationMinors3To6",t)},expression:"input.populationMinors3To6"}}),i("TextInput",{staticClass:"w-32 ml-5",attrs:{id:"population_minors_6_12",label:"6 - 12 ans",rules:"numeric|min_value:0",cypressName:"population_minors_6_12"},model:{value:e.input.populationMinors6To12,callback:function(t){e.$set(e.input,"populationMinors6To12",t)},expression:"input.populationMinors6To12"}}),i("TextInput",{staticClass:"w-32 ml-5",attrs:{id:"population_minors_12_16",label:"12 - 16 ans",rules:"numeric|min_value:0",cypressName:"population_minors_12_16"},model:{value:e.input.populationMinors12To16,callback:function(t){e.$set(e.input,"populationMinors12To16",t)},expression:"input.populationMinors12To16"}}),i("TextInput",{staticClass:"w-32 ml-5",attrs:{id:"population_minors_16_18",label:"16 - 18 ans",rules:"numeric|min_value:0",cypressName:"population_minors_16_18"},model:{value:e.input.populationMinors16To18,callback:function(t){e.$set(e.input,"populationMinors16To18",t)},expression:"input.populationMinors16To18"}})],1),i("div",{staticClass:"flex"},[i("TextInput",{attrs:{id:"minors_in_school",label:"Inscrits en établissement scolaire",width:"w-32",rules:"numeric|min_value:0",cypressName:"minors_in_school"},model:{value:e.input.minorsInSchool,callback:function(t){e.$set(e.input,"minorsInSchool",t)},expression:"input.minorsInSchool"}})],1)])},Zv=[],Kv={props:{value:{type:Object,required:!1,default(){return{populationMinors0To3:void 0,populationMinors3To6:void 0,populationMinors6To12:void 0,populationMinors12To16:void 0,populationMinors16To18:void 0,populationMinorsInSchool:void 0}}}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},Xv=Kv,ef=Object(u["a"])(Xv,Yv,Zv,!1,null,null,null),tf=ef.exports,af=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("CheckableGroup",{attrs:{label:" "}},e._l(e.values,(function(t){return i("Checkbox",{key:t.id,attrs:{variant:"card",label:t.label,checkValue:t.id,cypressName:"social_origins"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})})),1)},sf=[],nf={props:{value:{type:Array,required:!1,default:()=>[]}},data(){const{social_origins:e}=ar();return{values:e,checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},of=nf,rf=Object(u["a"])(of,af,sf,!1,null,null,null),lf=rf.exports,cf=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("CheckableGroup",{attrs:{label:" ",id:"census_status",rules:"required",validationName:"Statut du diagnostic social"}},e._l(e.statuses,(function(t){return i("Radio",{key:t.value,attrs:{variant:"card",label:t.label,checkValue:t.value,cypressName:"census_status"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})})),1)},uf=[],df={props:{value:{type:String,required:!1,default:void 0}},data(){return{statuses:[{value:"none",label:"Non prévu"},{value:"scheduled",label:"Prévu"},{value:"done",label:"Réalisé"},{value:"null",label:"Inconnu"}],checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},pf=df,mf=Object(u["a"])(pf,cf,uf,!1,null,null,null),hf=mf.exports,vf=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("DatepickerV2",{attrs:{id:"census_conducted_at",rules:"required|censusConductedAfterCreation:@built_at",label:"Date du diagnostic","data-cy-field":"census_conducted_at",showMandatoryStar:!0},model:{value:e.input,callback:function(t){e.input=t},expression:"input"}})],1)},ff=[];Object(D["c"])("censusConductedAfterCreation",{params:["target"],validate(e,{target:t}){return e>=t},message:"La date du diagnostic doit être ultérieure à la date d'installation"});var gf={props:{value:{type:Date,required:!1}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},bf=gf,_f=Object(u["a"])(bf,vf,ff,!1,null,null,null),yf=_f.exports,wf=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("TextInput",{attrs:{id:"census_conducted_by",label:"Intervenant en charge du diagnostic",rules:"required",cypressName:"census_conducted_by",showMandatoryStar:!0},model:{value:e.input,callback:function(t){e.input=t},expression:"input"}})},Cf=[],kf={props:{value:{type:String,required:!1,default:""}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},xf=kf,Sf=Object(u["a"])(xf,wf,Cf,!1,null,null,null),$f=Sf.exports,Pf={components:{InputPopulation:Qv,InputPopulationMinors:tf,InputSocialOrigins:lf,InputCensusStatus:hf,InputCensusConductedAt:yf,InputCensusConductedBy:$f},props:{value:{type:Object,required:!0}},data(){return{input:this.value}},computed:{censusStatusIsUnknown(){const e=this.input.census_status;return"scheduled"!==e&&"done"!==e}}},Tf=Pf,If=Object(u["a"])(Tf,Rv,Vv,!1,null,null,null),Of=If.exports,Af=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("FormGroup",{attrs:{title:"Conditions de vie et environnement"}},[i("FormParagraph",{attrs:{title:"Les habitants ont-ils accès à l'eau ?",showMandatoryStar:!0}},[i("InputAccessToWater",{model:{value:e.input.access_to_water,callback:function(t){e.$set(e.input,"access_to_water",t)},expression:"input.access_to_water"}}),1===e.input.access_to_water?i("div",{staticClass:"ml-12"},[i("InputWaterPotable",{model:{value:e.input.water_potable,callback:function(t){e.$set(e.input,"water_potable",t)},expression:"input.water_potable"}}),i("InputWaterContinuousAccess",{model:{value:e.input.water_continuous_access,callback:function(t){e.$set(e.input,"water_continuous_access",t)},expression:"input.water_continuous_access"}}),i("InputWaterPublicPoint",{model:{value:e.input.water_public_point,callback:function(t){e.$set(e.input,"water_public_point",t)},expression:"input.water_public_point"}}),i("InputWaterDistance",{model:{value:e.input.water_distance,callback:function(t){e.$set(e.input,"water_distance",t)},expression:"input.water_distance"}}),i("InputWaterRoadsToCross",{model:{value:e.input.water_roads_to_cross,callback:function(t){e.$set(e.input,"water_roads_to_cross",t)},expression:"input.water_roads_to_cross"}}),i("InputWaterEveryoneHasAccess",{model:{value:e.input.water_everyone_has_access,callback:function(t){e.$set(e.input,"water_everyone_has_access",t)},expression:"input.water_everyone_has_access"}}),i("InputWaterStagnantWater",{model:{value:e.input.water_stagnant_water,callback:function(t){e.$set(e.input,"water_stagnant_water",t)},expression:"input.water_stagnant_water"}}),i("div",{},[i("InputWaterHandWashAccess",{attrs:{withoutBorder:""},model:{value:e.input.water_hand_wash_access,callback:function(t){e.$set(e.input,"water_hand_wash_access",t)},expression:"input.water_hand_wash_access"}}),e.input.water_hand_wash_access>0?i("InputWaterHandWashNumber",{attrs:{population:e.population},model:{value:e.input.water_hand_wash_access_number,callback:function(t){e.$set(e.input,"water_hand_wash_access_number",t)},expression:"input.water_hand_wash_access_number"}}):e._e()],1)],1):e._e(),i("div",{staticClass:"ml-12 mt-6"},[i("InputWaterComments",{attrs:{rules:1===e.input.access_to_water&&e.input.water_public_point>0?"required":""},model:{value:e.input.water_comments,callback:function(t){e.$set(e.input,"water_comments",t)},expression:"input.water_comments"}})],1)],1),i("FormParagraph",{attrs:{title:"Les habitants ont-ils accès à des toilettes ?",showMandatoryStar:!0}},[i("InputAccessToSanitary",{model:{value:e.input.access_to_sanitary,callback:function(t){e.$set(e.input,"access_to_sanitary",t)},expression:"input.access_to_sanitary"}}),1===e.input.access_to_sanitary?i("div",{staticClass:"ml-12"},[i("InputSanitaryOnSite",{model:{value:e.input.sanitary_on_site,callback:function(t){e.$set(e.input,"sanitary_on_site",t)},expression:"input.sanitary_on_site"}}),i("InputSanitaryNumber",{attrs:{population:e.population},model:{value:e.input.sanitary_number,callback:function(t){e.$set(e.input,"sanitary_number",t)},expression:"input.sanitary_number"}}),i("InputSanitaryInsalubrious",{staticClass:"mb-6",model:{value:e.input.sanitary_insalubrious,callback:function(t){e.$set(e.input,"sanitary_insalubrious",t)},expression:"input.sanitary_insalubrious"}})],1):e._e(),i("div",{staticClass:"ml-12 mt-6"},[i("InputSanitaryComments",{model:{value:e.input.sanitary_comments,callback:function(t){e.$set(e.input,"sanitary_comments",t)},expression:"input.sanitary_comments"}})],1)],1),i("FormParagraph",{attrs:{title:"Les habitants ont-ils accès à l'électricité ?",showMandatoryStar:!0}},[i("InputElectricityType",{model:{value:e.input.electricity_type,callback:function(t){e.$set(e.input,"electricity_type",t)},expression:"input.electricity_type"}}),i("div",{staticClass:"ml-12"},[i("InputElectricityComments",{model:{value:e.input.electricity_comments,callback:function(t){e.$set(e.input,"electricity_comments",t)},expression:"input.electricity_comments"}})],1)],1),i("FormParagraph",{attrs:{title:"Le ramassage des déchets est-il organisé ?",showMandatoryStar:!0}},[i("InputTrashEvacuation",{model:{value:e.input.trash_evacuation,callback:function(t){e.$set(e.input,"trash_evacuation",t)},expression:"input.trash_evacuation"}}),1===e.input.trash_evacuation?i("div",{staticClass:"ml-12"},[i("InputTrashEvacuationRegular",{model:{value:e.input.trash_evacuation_regular,callback:function(t){e.$set(e.input,"trash_evacuation_regular",t)},expression:"input.trash_evacuation_regular"}}),i("InputTrashAccumulation",{model:{value:e.input.trash_accumulation,callback:function(t){e.$set(e.input,"trash_accumulation",t)},expression:"input.trash_accumulation"}}),i("InputTrashCansOnSite",{model:{value:e.input.trash_cans_on_site,callback:function(t){e.$set(e.input,"trash_cans_on_site",t)},expression:"input.trash_cans_on_site"}})],1):e._e()],1),i("FormParagraph",{attrs:{title:"Y a-t-il des nuisibles sur le site ou à proximité ?"}},[i("InputVermin",{model:{value:e.input.vermin,callback:function(t){e.$set(e.input,"vermin",t)},expression:"input.vermin"}}),i("div",{staticClass:"ml-12"},[i("InputVerminComments",{model:{value:e.input.vermin_comments,callback:function(t){e.$set(e.input,"vermin_comments",t)},expression:"input.vermin_comments"}})],1)],1),i("FormParagraph",{attrs:{title:"Y a-t-il des mesures prévention incendie ?"}},[i("InputFirePreventionMeasures",{model:{value:e.input.fire_prevention_measures,callback:function(t){e.$set(e.input,"fire_prevention_measures",t)},expression:"input.fire_prevention_measures"}}),1===e.input.fire_prevention_measures?i("div",{staticClass:"ml-12"},[i("InputFirePreventionDiagnostic",{model:{value:e.input.fire_prevention_diagnostic,callback:function(t){e.$set(e.input,"fire_prevention_diagnostic",t)},expression:"input.fire_prevention_diagnostic"}}),i("InputFirePreventionSiteAccessible",{model:{value:e.input.fire_prevention_site_accessible,callback:function(t){e.$set(e.input,"fire_prevention_site_accessible",t)},expression:"input.fire_prevention_site_accessible"}}),i("InputFirePreventionDevices",{model:{value:e.input.fire_prevention_devices,callback:function(t){e.$set(e.input,"fire_prevention_devices",t)},expression:"input.fire_prevention_devices"}})],1):e._e(),i("div",{staticClass:"ml-12 mt-6"},[i("InputFirePreventionComments",{model:{value:e.input.fire_prevention_comments,callback:function(t){e.$set(e.input,"fire_prevention_comments",t)},expression:"input.fire_prevention_comments"}})],1)],1)],1)},Nf=[],Ef=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("CheckableGroup",{attrs:{label:" ",direction:"horizontal",id:"access_to_water",validationName:"Accès à l'eau",rules:"required",withoutMargin:!0}},[i("Radio",{attrs:{variant:"card",label:"Oui",checkValue:1,cypressName:"access_to_water"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{variant:"card",label:"Non",checkValue:0,cypressName:"access_to_water"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{variant:"card",label:"Inconnu",checkValue:-1,cypressName:"access_to_water"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})],1)},jf=[],Df={props:{value:{type:Number,required:!1,default:void 0}},data(){return{checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},qf=Df,Mf=Object(u["a"])(qf,Ef,jf,!1,null,null,null),Lf=Mf.exports,Ff=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("TextArea",{attrs:{id:"water_comments",rules:"required"===e.rules?"waterComments":"",label:"Modalités d'accès",info:"Exemples : citerne remplie par les pompiers tous les jours, 3 robinets raccordés par la collectivité, borne incendie… Champ obligatoire si le point d'eau est public.",placeholder:"Votre message",cypressName:"water_comments"},model:{value:e.input,callback:function(t){e.input=t},expression:"input"}})},zf=[];Object(D["c"])("waterComments",{...q["required"],message:"Le champ modalités d'accès a l'eau est obligatoire si le point d'eau est public"});var Bf={props:{value:{type:String,required:!1,default:""},rules:{type:String}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},Rf=Bf,Vf=Object(u["a"])(Rf,Ff,zf,!1,null,null,null),Uf=Vf.exports,Hf=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("CheckableGroup",{attrs:{label:" ",direction:"horizontal",id:"electricity_type",validationName:"Accès à l'électricité",rules:"required"}},e._l(e.values,(function(t){return i("Radio",{key:t.id,attrs:{variant:"card",label:t.label,checkValue:t.id,cypressName:"electricity_type"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})})),1)},Gf=[],Wf={props:{value:{type:Number,required:!1,default:void 0}},data(){const{electricity_types:e}=ar();return{values:e,checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},Jf=Wf,Qf=Object(u["a"])(Jf,Hf,Gf,!1,null,null,null),Yf=Qf.exports,Zf=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("TextArea",{attrs:{id:"electricity_comments",label:"Modalités d'accès",info:"Exemples : groupe électrogène, raccordement à une usine...",cypressName:"electricity_comments",placeholder:"Votre message"},model:{value:e.input,callback:function(t){e.input=t},expression:"input"}})},Kf=[],Xf={props:{value:{type:String,required:!1,default:""}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},eg=Xf,tg=Object(u["a"])(eg,Zf,Kf,!1,null,null,null),ig=tg.exports,ag=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("CheckableGroup",{attrs:{label:" ",direction:"horizontal",id:"access_to_sanitary",validationName:"Accès à des toilettes",rules:"required",withoutMargin:!0}},[i("Radio",{attrs:{variant:"card",label:"Oui",checkValue:1,cypressName:"access_to_sanitary"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{variant:"card",label:"Non",checkValue:0,cypressName:"access_to_sanitary"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{variant:"card",label:"Inconnu",checkValue:-1,cypressName:"access_to_sanitary"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})],1)},sg=[],ng={props:{value:{type:Number,required:!1,default:void 0}},data(){return{checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},og=ng,rg=Object(u["a"])(og,ag,sg,!1,null,null,null),lg=rg.exports,cg=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("TextArea",{attrs:{id:"sanitary_comments",label:"Modalités d'accès",info:"Exemples : toilettes sèches avec fosse / sèches sans fosse, chimiques, raccordées au réseau des eaux usées ",cypressName:"sanitary_comments",placeholder:"Votre message"},model:{value:e.input,callback:function(t){e.input=t},expression:"input"}})},ug=[],dg={props:{value:{type:String,required:!1,default:""}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},pg=dg,mg=Object(u["a"])(pg,cg,ug,!1,null,null,null),hg=mg.exports,vg=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("CheckableGroup",{attrs:{label:" ",direction:"horizontal",id:"trash_evacuation",validationName:"Évacuation des déchets",rules:"required"}},[i("Radio",{attrs:{variant:"card",label:"Oui",checkValue:1,cypressName:"trash_evacuation"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{variant:"card",label:"Non",checkValue:0,cypressName:"trash_evacuation"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{variant:"card",label:"Inconnu",checkValue:-1,cypressName:"trash_evacuation"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})],1)},fg=[],gg={props:{value:{type:Number,required:!1,default:void 0}},data(){return{checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},bg=gg,_g=Object(u["a"])(bg,vg,fg,!1,null,null,null),yg=_g.exports,wg=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("SubQuestionWrapper",{attrs:{label:"L'eau est-elle potable ?"}},[i("CheckableGroup",{attrs:{direction:"row",withoutMargin:""}},[i("Radio",{attrs:{type:"checkbox",label:"Oui",checkValue:1,cypressName:"water_potable"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{type:"checkbox",label:"Non",checkValue:0,cypressName:"water_potable"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})],1)],1)},Cg=[],kg=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{class:["flex flex-row items-center py-1",e.spaceBetween?"justify-between":"",e.withoutBorder?"":"border-b border-color-G600"]},[i("div",{class:["max-w-2xl",!e.spaceBetween&&"mr-4"]},[e._v(e._s(e.label))]),i("div",{staticClass:"flex-shrink-0 ml-2"},[e._t("default")],2)])},xg=[],Sg={props:{label:{type:String},spaceBetween:{type:Boolean,default:!0},withoutBorder:{type:Boolean,default:!1}}},$g=Sg,Pg=Object(u["a"])($g,kg,xg,!1,null,null,null),Tg=Pg.exports,Ig={components:{SubQuestionWrapper:Tg},props:{value:{type:Number,required:!1,default:void 0}},data(){return{checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},Og=Ig,Ag=Object(u["a"])(Og,wg,Cg,!1,null,null,null),Ng=Ag.exports,Eg=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("SubQuestionWrapper",{attrs:{label:"L'accès est-il continu ? c'est-à-dire qu'il ne varie pas en qualité et en quantité dans la journée et les saisons, sans limite dans le temps."}},[i("CheckableGroup",{attrs:{direction:"row",withoutMargin:""}},[i("Radio",{attrs:{label:"Oui",checkValue:1,type:"checkbox",cypressName:"water_continuous_access"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{label:"Non",checkValue:0,type:"checkbox",cypressName:"water_continuous_access"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})],1)],1)},jg=[],Dg={components:{SubQuestionWrapper:Tg},props:{value:{type:Number,required:!1,default:void 0}},data(){return{checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},qg=Dg,Mg=Object(u["a"])(qg,Eg,jg,!1,null,null,null),Lg=Mg.exports,Fg=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("SubQuestionWrapper",{attrs:{label:"Est-ce un point d'eau public ? (robinet, fontaine publique...)"}},[i("CheckableGroup",{attrs:{direction:"row",withoutMargin:""}},[i("Radio",{attrs:{label:"Oui",type:"checkbox",checkValue:1,cypressName:"water_public_point"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{label:"Non",type:"checkbox",checkValue:0,cypressName:"water_public_point"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})],1)],1)},zg=[],Bg={components:{SubQuestionWrapper:Tg},props:{value:{type:Number,required:!1,default:void 0}},data(){return{checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},Rg=Bg,Vg=Object(u["a"])(Rg,Fg,zg,!1,null,null,null),Ug=Vg.exports,Hg=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("SubQuestionWrapper",{attrs:{label:"Où se situe l'accès ?"}},[i("CheckableGroup",{attrs:{direction:"vertical",withoutMargin:""}},[i("Radio",{attrs:{label:"sur site ou à moins de 20 mètres",checkValue:"0-20",type:"checkbox",cypressName:"water_distance"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{label:"entre 20 et 50 mètres du site",checkValue:"20-50",type:"checkbox",cypressName:"water_distance"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{label:"entre 50 et 100 mètres du site",checkValue:"50-100",type:"checkbox",cypressName:"water_distance"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{label:"à plus de 100 mètres du site",checkValue:"100+",type:"checkbox",cypressName:"water_distance"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})],1)],1)},Gg=[],Wg={components:{SubQuestionWrapper:Tg},props:{value:{type:Number,required:!1,default:void 0}},data(){return{checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},Jg=Wg,Qg=Object(u["a"])(Jg,Hg,Gg,!1,null,null,null),Yg=Qg.exports,Zg=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("SubQuestionWrapper",{attrs:{label:"L'accès nécessite-t-il un franchissement de rue ou de route ?"}},[i("CheckableGroup",{attrs:{direction:"row",withoutMargin:""}},[i("Radio",{attrs:{label:"Oui",type:"checkbox",checkValue:1,cypressName:"water_roads_to_cross"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{label:"Non",type:"checkbox",checkValue:0,cypressName:"water_roads_to_cross"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})],1)],1)},Kg=[],Xg={components:{SubQuestionWrapper:Tg},props:{value:{type:Number,required:!1,default:void 0}},data(){return{checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},eb=Xg,tb=Object(u["a"])(eb,Zg,Kg,!1,null,null,null),ib=tb.exports,ab=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("SubQuestionWrapper",{attrs:{label:"Tous les habitants ont-ils accès aux points d'eau ?"}},[i("CheckableGroup",{attrs:{direction:"row",withoutMargin:""}},[i("Radio",{attrs:{label:"Oui",type:"checkbox",checkValue:1,cypressName:"water_everyone_has_access"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{label:"Non",type:"checkbox",checkValue:0,cypressName:"water_everyone_has_access"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})],1)],1)},sb=[],nb={components:{SubQuestionWrapper:Tg},props:{value:{type:Number,required:!1,default:void 0}},data(){return{checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},ob=nb,rb=Object(u["a"])(ob,ab,sb,!1,null,null,null),lb=rb.exports,cb=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("SubQuestionWrapper",{attrs:{label:"Existe-t-il des eaux stagnantes autour du point de distribution ?"}},[i("CheckableGroup",{attrs:{direction:"row",withoutMargin:""}},[i("Radio",{attrs:{label:"Oui",type:"checkbox",checkValue:1,cypressName:"water_stagnant_water"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{label:"Non",type:"checkbox",checkValue:0,cypressName:"water_stagnant_water"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})],1)],1)},ub=[],db={components:{SubQuestionWrapper:Tg},props:{value:{type:Number,required:!1,default:void 0}},data(){return{checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},pb=db,mb=Object(u["a"])(pb,cb,ub,!1,null,null,null),hb=mb.exports,vb=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("SubQuestionWrapper",{attrs:{label:"Est-ce qu'il y a des bacs de lavage des mains ?",withoutBorder:e.withoutBorder}},[i("CheckableGroup",{attrs:{direction:"row",withoutMargin:""}},[i("Radio",{attrs:{label:"Oui",type:"checkbox",checkValue:1,cypressName:"water_hand_wash_access"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{label:"Non",type:"checkbox",checkValue:0,cypressName:"water_hand_wash_access"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})],1)],1)},fb=[],gb={components:{SubQuestionWrapper:Tg},props:{value:{type:Number,required:!1,default:void 0},withoutBorder:{type:Boolean}},data(){return{checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},bb=gb,_b=Object(u["a"])(bb,vb,fb,!1,null,null,null),yb=_b.exports,wb=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"flex items-center"},[i("div",{staticClass:"mr-4"},[e._v("Nombre de bacs")]),i("InlineTextInput",{staticClass:"w-16",attrs:{cypressName:"water_hand_wash_access_number",size:"sm"},model:{value:e.input,callback:function(t){e.input=t},expression:"input"}}),Number(e.input)>0&&e.ratio&&e.population.populationTotal?i("div",{staticClass:"ml-4"},[e._v(" Soit 1 bac pour "+e._s(e.ratio)+" personnes ")]):e._e()],1)},Cb=[],kb={components:{InlineTextInput:Me},props:{value:{type:String,required:!1,default:""},population:{type:Object}},data(){return{input:this.value}},computed:{ratio(){return Math.floor(Number(this.population.populationTotal)/Number(this.input))}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},xb=kb,Sb=Object(u["a"])(xb,wb,Cb,!1,null,null,null),$b=Sb.exports,Pb=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("SubQuestionWrapper",{attrs:{label:"Nombre de toilettes","space-between":!1}},[i("div",{staticClass:"flex items-center"},[i("InlineTextInput",{staticClass:"w-16",attrs:{cypressName:"sanitary_number",size:"sm",type:"number"},model:{value:e.input,callback:function(t){e.input=t},expression:"input"}}),Number(e.input)>0&&e.ratio&&e.population.populationTotal?i("div",{staticClass:"ml-4"},[e._v(" Soit 1 toilette pour "+e._s(e.ratio)+" personnes ")]):e._e()],1)])},Tb=[],Ib={components:{InlineTextInput:Me,SubQuestionWrapper:Tg},props:{value:{type:[String,Number],required:!1,default:""},population:{type:Object}},data(){return{input:this.value}},computed:{ratio(){return Math.floor(Number(this.population.populationTotal)/Number(this.input))}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},Ob=Ib,Ab=Object(u["a"])(Ob,Pb,Tb,!1,null,null,null),Nb=Ab.exports,Eb=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("SubQuestionWrapper",{attrs:{label:"Constate-t-on des marques de défécation à l'air libre ?"}},[i("CheckableGroup",{attrs:{direction:"row",withoutMargin:""}},[i("Radio",{attrs:{type:"checkbox",label:"Oui",checkValue:1,cypressName:"sanitary_insalubrious"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{type:"checkbox",label:"Non",checkValue:0,cypressName:"sanitary_insalubrious"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})],1)],1)},jb=[],Db={components:{SubQuestionWrapper:Tg},props:{value:{type:Number,required:!1,default:void 0}},data(){return{checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},qb=Db,Mb=Object(u["a"])(qb,Eb,jb,!1,null,null,null),Lb=Mb.exports,Fb=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("SubQuestionWrapper",{attrs:{label:"Les toilettes se situent-elles sur le site ?"}},[i("CheckableGroup",{attrs:{direction:"row",withoutMargin:""}},[i("Radio",{attrs:{type:"checkbox",label:"Oui",checkValue:1,cypressName:"sanitary_on_site"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{type:"checkbox",label:"Non",checkValue:0,cypressName:"sanitary_on_site"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})],1)],1)},zb=[],Bb={components:{SubQuestionWrapper:Tg},props:{value:{type:Number,required:!1,default:void 0}},data(){return{checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},Rb=Bb,Vb=Object(u["a"])(Rb,Fb,zb,!1,null,null,null),Ub=Vb.exports,Hb=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("SubQuestionWrapper",{attrs:{label:"Combien de poubelles / benes sont à proximité immédiate du site (moins de 100 mètres) ?",withoutMargin:""}},[i("InlineTextInput",{staticClass:"w-16",attrs:{size:"sm",cypressName:"trash_cans_on_site"},model:{value:e.input,callback:function(t){e.input=t},expression:"input"}})],1)},Gb=[],Wb={components:{InlineTextInput:Me,SubQuestionWrapper:Tg},props:{value:{type:[String,Number],required:!1,default:""}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},Jb=Wb,Qb=Object(u["a"])(Jb,Hb,Gb,!1,null,null,null),Yb=Qb.exports,Zb=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("SubQuestionWrapper",{attrs:{label:"Constate-t-on une accumulation de déchets sur le site ou aux abords ?"}},[i("CheckableGroup",{attrs:{direction:"row",withoutMargin:""}},[i("Radio",{attrs:{label:"Oui",type:"checkbox",checkValue:1,cypressName:"trash_accumulation"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{label:"Non",type:"checkbox",checkValue:0,cypressName:"trash_accumulation"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})],1)],1)},Kb=[],Xb={components:{SubQuestionWrapper:Tg},props:{value:{type:Number,required:!1,default:void 0}},data(){return{checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},e_=Xb,t_=Object(u["a"])(e_,Zb,Kb,!1,null,null,null),i_=t_.exports,a_=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("SubQuestionWrapper",{attrs:{label:"La collecte des poubelles / bennes est-elle réalisée de manière régulière ? (C'est-à-dire au moins une fois par semaine, à partir d'un point de dépôt spécialement aménagé sur le site ou à proximité immédiate)"}},[i("CheckableGroup",{attrs:{direction:"row",withoutMargin:""}},[i("Radio",{attrs:{label:"Oui",type:"checkbox",checkValue:1,cypressName:"trash_evacuation_regular"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{label:"Non",type:"checkbox",checkValue:0,cypressName:"trash_evacuation_regular"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})],1)],1)},s_=[],n_={components:{SubQuestionWrapper:Tg},props:{value:{type:Number,required:!1,default:void 0}},data(){return{checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},o_=n_,r_=Object(u["a"])(o_,a_,s_,!1,null,null,null),l_=r_.exports,c_=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("CheckableGroup",{attrs:{label:" ",direction:"horizontal",id:"vermin",validationName:"Y a-t-il des nuisibles sur le site ou à proximité",rules:"required"}},[i("Radio",{attrs:{variant:"card",label:"Oui",checkValue:1,cypressName:"vermin"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{variant:"card",label:"Non",checkValue:0,cypressName:"vermin"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{variant:"card",label:"Inconnu",checkValue:-1,cypressName:"vermin"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})],1)},u_=[],d_={props:{value:{type:Number,required:!1,default:void 0}},data(){return{checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},p_=d_,m_=Object(u["a"])(p_,c_,u_,!1,null,null,null),h_=m_.exports,v_=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("TextArea",{attrs:{id:"vermin_comments",placeholder:"Votre message",label:"Précisions (rats, punaises de lits...)",cypressName:"vermin_comments"},model:{value:e.input,callback:function(t){e.input=t},expression:"input"}})},f_=[],g_={props:{value:{type:String,required:!1,default:""}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},b_=g_,__=Object(u["a"])(b_,v_,f_,!1,null,null,null),y_=__.exports,w_=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("CheckableGroup",{attrs:{label:" ",direction:"horizontal",id:"fire_prevention_measures",validationName:"Mesures de prévention incendie",rules:"required"}},[i("Radio",{attrs:{variant:"card",label:"Oui",checkValue:1,cypressName:"fire_prevention_measures"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{variant:"card",label:"Non",checkValue:0,cypressName:"fire_prevention_measures"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{variant:"card",label:"Inconnu",checkValue:-1,cypressName:"fire_prevention_measures"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})],1)},C_=[],k_={props:{value:{type:Number,required:!1,default:void 0}},data(){return{checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},x_=k_,S_=Object(u["a"])(x_,w_,C_,!1,null,null,null),$_=S_.exports,P_=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("SubQuestionWrapper",{attrs:{label:"Est-ce qu’un diagnostic prévention incendie par le SDIS (Service départemental d'incendie et de secours) a été réalisé ?"}},[i("CheckableGroup",{attrs:{direction:"row",withoutMargin:""}},[i("Radio",{attrs:{label:"Oui",type:"checkbox",checkValue:1,cypressName:"fire_prevention_diagnostic"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{label:"Non",type:"checkbox",checkValue:0,cypressName:"fire_prevention_diagnostic"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})],1)],1)},T_=[],I_={components:{SubQuestionWrapper:Tg},props:{value:{type:Number,required:!1,default:void 0}},data(){return{checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},O_=I_,A_=Object(u["a"])(O_,P_,T_,!1,null,null,null),N_=A_.exports,E_=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("SubQuestionWrapper",{attrs:{label:"Est-ce que le site est accessible aux pompiers ?"}},[i("CheckableGroup",{attrs:{direction:"row",withoutMargin:""}},[i("Radio",{attrs:{label:"Oui",type:"checkbox",checkValue:1,cypressName:"fire_prevention_site_accessible"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{label:"Non",type:"checkbox",checkValue:0,cypressName:"fire_prevention_site_accessible"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})],1)],1)},j_=[],D_={components:{SubQuestionWrapper:Tg},props:{value:{type:Number,required:!1,default:void 0}},data(){return{checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},q_=D_,M_=Object(u["a"])(q_,E_,j_,!1,null,null,null),L_=M_.exports,F_=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("TextArea",{attrs:{id:"fire_prevention_comments",label:"Précisions",placeholder:"Votre message",cypressName:"fire_prevention_comments"},model:{value:e.input,callback:function(t){e.input=t},expression:"input"}})},z_=[],B_={props:{value:{type:String,required:!1,default:""}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},R_=B_,V_=Object(u["a"])(R_,F_,z_,!1,null,null,null),U_=V_.exports,H_=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("SubQuestionWrapper",{attrs:{label:"Est-ce que des dispositifs spécifiques (formation, extincteurs...) ont été mis en place ?"}},[i("CheckableGroup",{attrs:{direction:"row",withoutMargin:""}},[i("Radio",{attrs:{label:"Oui",type:"checkbox",checkValue:1,cypressName:"fire_prevention_devices"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{label:"Non",type:"checkbox",checkValue:0,cypressName:"fire_prevention_devices"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})],1)],1)},G_=[],W_={components:{SubQuestionWrapper:Tg},props:{value:{type:Number,required:!1,default:void 0}},data(){return{checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},J_=W_,Q_=Object(u["a"])(J_,H_,G_,!1,null,null,null),Y_=Q_.exports,Z_={components:{InputFirePreventionSiteAccessible:L_,InputTrashEvacuationRegular:l_,InputTrashAccumulation:i_,InputTrashCansOnSite:Yb,InputAccessToWater:Lf,InputWaterComments:Uf,InputElectricityType:Yf,InputElectricityComments:ig,InputAccessToSanitary:lg,InputSanitaryComments:hg,InputTrashEvacuation:yg,InputWaterPotable:Ng,InputWaterContinuousAccess:Lg,InputWaterPublicPoint:Ug,InputWaterDistance:Yg,InputWaterRoadsToCross:ib,InputWaterEveryoneHasAccess:lb,InputWaterStagnantWater:hb,InputWaterHandWashAccess:yb,InputWaterHandWashNumber:$b,InputSanitaryNumber:Nb,InputSanitaryInsalubrious:Lb,InputSanitaryOnSite:Ub,InputVermin:h_,InputVerminComments:y_,InputFirePreventionMeasures:$_,InputFirePreventionDiagnostic:N_,InputFirePreventionComments:U_,InputFirePreventionDevices:Y_},props:{value:{type:Object,required:!0},population:{type:Object}},data(){return{input:this.value}}},K_=Z_,X_=Object(u["a"])(K_,Af,Nf,!1,null,null,null),ey=X_.exports,ty=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("FormGroup",{attrs:{title:"Procédure judiciaire"}},[i("FormParagraph",{attrs:{title:"Une plainte a-t-elle été déposée par le propriétaire ?",showMandatoryStar:!0}},[i("InputOwnerComplaint",{model:{value:e.input.owner_complaint,callback:function(t){e.$set(e.input,"owner_complaint",t)},expression:"input.owner_complaint"}})],1),i("FormParagraph",{attrs:{title:"Une procédure judiciaire est-elle en cours ?"}},[i("InputJusticeProcedure",{model:{value:e.input.justice_procedure,callback:function(t){e.$set(e.input,"justice_procedure",t)},expression:"input.justice_procedure"}}),1===e.input.justice_procedure?i("InputJusticeRendered",{model:{value:e.input.justice_rendered,callback:function(t){e.$set(e.input,"justice_rendered",t)},expression:"input.justice_rendered"}}):e._e(),i("div",{staticClass:"w-64"},[1===e.input.justice_rendered?i("InputJusticeRenderedAt",{model:{value:e.input.justice_rendered_at,callback:function(t){e.$set(e.input,"justice_rendered_at",t)},expression:"input.justice_rendered_at"}}):e._e()],1),i("div",{staticClass:"w-128"},[1===e.input.justice_rendered?i("InputJusticeRenderedBy",{model:{value:e.input.justice_rendered_by,callback:function(t){e.$set(e.input,"justice_rendered_by",t)},expression:"input.justice_rendered_by"}}):e._e()],1),1===e.input.justice_rendered?i("InputJusticeChallenged",{model:{value:e.input.justice_challenged,callback:function(t){e.$set(e.input,"justice_challenged",t)},expression:"input.justice_challenged"}}):e._e(),i("InputPoliceStatus",{ref:"policeStatus",model:{value:e.input.police_status,callback:function(t){e.$set(e.input,"police_status",t)},expression:"input.police_status"}}),i("div",{staticClass:"w-64"},[e.policeWasRequested?i("InputPoliceRequestedAt",{model:{value:e.input.police_requested_at,callback:function(t){e.$set(e.input,"police_requested_at",t)},expression:"input.police_requested_at"}}):e._e()],1),i("div",{staticClass:"w-64"},[e.policeWasGranted?i("InputPoliceGrantedAt",{model:{value:e.input.police_granted_at,callback:function(t){e.$set(e.input,"police_granted_at",t)},expression:"input.police_granted_at"}}):e._e()],1),i("div",{staticClass:"w-128"},[i("InputBailiff",{model:{value:e.input.bailiff,callback:function(t){e.$set(e.input,"bailiff",t)},expression:"input.bailiff"}})],1)],1)],1)},iy=[],ay=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("CheckableGroup",{attrs:{label:" ",direction:"horizontal",id:"owner_complaint",validationName:"Plainte de propriétaire",rules:"required"}},[i("Radio",{attrs:{variant:"card",label:"Oui",checkValue:1,cypressName:"owner_complaint"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{variant:"card",label:"Non",checkValue:0,cypressName:"owner_complaint"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{variant:"card",label:"Inconnu",checkValue:-1,cypressName:"owner_complaint"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})],1)},sy=[],ny={props:{value:{type:Number,required:!1,default:void 0}},data(){return{checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},oy=ny,ry=Object(u["a"])(oy,ay,sy,!1,null,null,null),ly=ry.exports,cy=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("CheckableGroup",{attrs:{label:"Existence d'une procédure judiciaire",direction:"horizontal",id:"justice_procedure",rules:"required",showMandatoryStar:!0}},[i("Radio",{attrs:{variant:"card",label:"Oui",checkValue:1,cypressName:"justice_procedure"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{variant:"card",label:"Non",checkValue:0,cypressName:"justice_procedure"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{variant:"card",label:"Inconnu",checkValue:-1,cypressName:"justice_procedure"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})],1)},uy=[],dy={props:{value:{type:Number,required:!1,default:void 0}},data(){return{checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},py=dy,my=Object(u["a"])(py,cy,uy,!1,null,null,null),hy=my.exports,vy=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("CheckableGroup",{attrs:{label:"Décision de justice rendue",direction:"horizontal",id:"justice_rendered",rules:"required",showMandatoryStar:!0}},[i("Radio",{attrs:{variant:"card",label:"Oui",checkValue:1,cypressName:"justice_rendered"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{variant:"card",label:"Non",checkValue:0,cypressName:"justice_rendered"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{variant:"card",label:"Inconnu",checkValue:-1,cypressName:"justice_rendered"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})],1)},fy=[],gy={props:{value:{type:Number,required:!1,default:void 0}},data(){return{checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},by=gy,_y=Object(u["a"])(by,vy,fy,!1,null,null,null),yy=_y.exports,wy=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("DatepickerV2",{attrs:{label:"Date de la décision",id:"justice_rendered_at",rules:"required|renderedAfterInstallation:@built_at","data-cy-field":"justice_rendered_at",showMandatoryStar:!0},model:{value:e.input,callback:function(t){e.input=t},expression:"input"}})},Cy=[];Object(D["c"])("renderedAfterInstallation",{params:["target"],validate(e,{target:t}){return e>=t},message:"La date de la décision doit être ultérieure à la date d'installation"});var ky={props:{value:{type:Date,required:!1}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},xy=ky,Sy=Object(u["a"])(xy,wy,Cy,!1,null,null,null),$y=Sy.exports,Py=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("TextInput",{attrs:{id:"justice_rendered_by",label:"Origine de la décision",info:"Exemple : tribunal de grande instance",rules:"required",cypressName:"justice_rendered_by",showMandatoryStar:!0},model:{value:e.input,callback:function(t){e.input=t},expression:"input"}})},Ty=[],Iy={props:{value:{type:String,required:!1,default:""}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},Oy=Iy,Ay=Object(u["a"])(Oy,Py,Ty,!1,null,null,null),Ny=Ay.exports,Ey=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("CheckableGroup",{attrs:{label:"Existence d'un contentieux",direction:"horizontal",id:"justice_challenged",rules:"required",showMandatoryStar:!0}},[i("Radio",{attrs:{variant:"card",label:"Oui",checkValue:1,cypressName:"justice_challenged"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{variant:"card",label:"Non",checkValue:0,cypressName:"justice_challenged"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}}),i("Radio",{attrs:{variant:"card",label:"Inconnu",checkValue:-1,cypressName:"justice_challenged"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})],1)},jy=[],Dy={props:{value:{type:Number,required:!1,default:void 0}},data(){return{checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},qy=Dy,My=Object(u["a"])(qy,Ey,jy,!1,null,null,null),Ly=My.exports,Fy=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("CheckableGroup",{attrs:{label:"Statut du concours de la force publique",id:"police_status",rules:"required",showMandatoryStar:!0}},e._l(e.statuses,(function(t){return i("Radio",{key:t.value,attrs:{variant:"card",label:t.label,checkValue:t.value,cypressName:"police_status"},model:{value:e.checked,callback:function(t){e.checked=t},expression:"checked"}})})),1)},zy=[],By={props:{value:{type:String,required:!1,default:void 0}},data(){return{statuses:[{value:"none",label:"Non demandé"},{value:"requested",label:"Demandé"},{value:"granted",label:"Obtenu"},{value:"null",label:"Inconnu"}],checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},Ry=By,Vy=Object(u["a"])(Ry,Fy,zy,!1,null,null,null),Uy=Vy.exports,Hy=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("DatepickerV2",{attrs:{id:"police_requested_at",label:"Date de la demande du CFP",rules:"required|requestedAfterCreation:@built_at","data-cy-field":"police_requested_at",showMandatoryStar:!0},model:{value:e.input,callback:function(t){e.input=t},expression:"input"}})},Gy=[];Object(D["c"])("requestedAfterCreation",{params:["target"],validate(e,{target:t}){return e>=t},message:"La date de la demande doit être ultérieure à la date d'installation"});var Wy={props:{value:{type:Date,required:!1}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},Jy=Wy,Qy=Object(u["a"])(Jy,Hy,Gy,!1,null,null,null),Yy=Qy.exports,Zy=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("DatepickerV2",{attrs:{label:"Date d'octroi du CFP",id:"police_granted_at",rules:"required|grantedAfterCreation:@built_at|grantedAfterRequest:@police_requested_at","data-cy-field":"police_granted_at",showMandatoryStar:!0},model:{value:e.input,callback:function(t){e.input=t},expression:"input"}})},Ky=[];Object(D["c"])("grantedAfterCreation",{params:["target"],validate(e,{target:t}){return e>=t},message:"La date d'octroi doit être ultérieure à la date d'installation"}),Object(D["c"])("grantedAfterRequest",{params:["target"],validate(e,{target:t}){return e>=t},message:"La date d'octroi doit être ultérieure à la date de la demande"});var Xy={props:{value:{type:Date,required:!1}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},ew=Xy,tw=Object(u["a"])(ew,Zy,Ky,!1,null,null,null),iw=tw.exports,aw=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("TextInput",{attrs:{label:"Nom de l'étude de l'huissier",id:"bailiff",cypressName:"bailiff"},model:{value:e.input,callback:function(t){e.input=t},expression:"input"}})},sw=[],nw={props:{value:{type:String,required:!1,default:""}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},ow=nw,rw=Object(u["a"])(ow,aw,sw,!1,null,null,null),lw=rw.exports,cw={components:{InputOwnerComplaint:ly,InputJusticeProcedure:hy,InputJusticeRendered:yy,InputJusticeRenderedAt:$y,InputJusticeRenderedBy:Ny,InputJusticeChallenged:Ly,InputPoliceStatus:Uy,InputPoliceRequestedAt:Yy,InputPoliceGrantedAt:iw,InputBailiff:lw},props:{value:{type:Object,required:!0}},data(){return{input:this.value}},computed:{policeWasRequested(){const e=this.input.police_status;return"requested"===e||"granted"===e},policeWasGranted(){const e=this.input.police_status;return"granted"===e}}},uw=cw,dw=Object(u["a"])(uw,ty,iy,!1,null,null,null),pw=dw.exports,mw=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("div",{staticClass:"sticky stickyColumn"},[i("div",{staticClass:"font-bold"},[e._v("Rubriques")]),i("LeftColumnNavLink",{attrs:{to:"#characteristics",activeSection:"characteristics"===e.activeSection}},[e._v("Caractéristiques du site")]),i("LeftColumnNavLink",{attrs:{to:"#people",activeSection:"people"===e.activeSection}},[e._v("Habitants")]),i("LeftColumnNavLink",{attrs:{to:"#living_conditions",activeSection:"living_conditions"===e.activeSection}},[e._v("Conditions de vie et environnement")]),i("LeftColumnNavLink",{attrs:{to:"#judicial",activeSection:"judicial"===e.activeSection}},[e._v("Procédure judiciaire")])],1)])},hw=[],vw=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{class:["pl-2 border-l-4 my-2",e.activeSection?"text-primary border-primary":"border-transparent"]},[i("router-link",{attrs:{to:e.to}},[e._t("default")],2)],1)},fw=[],gw={props:{to:{type:String},activeSection:{type:Boolean}}},bw=gw,_w=Object(u["a"])(bw,vw,fw,!1,null,null,null),yw=_w.exports,ww={components:{LeftColumnNavLink:yw},data(){return{activeSection:"characteristics"}},mounted(){const e=e=>{e.forEach(e=>{e.isIntersecting&&(this.activeSection=e.target.id)})};let t=new IntersectionObserver(e,{rootMargin:"0px",threshold:.2});t.observe(document.querySelector("#judicial")),t.observe(document.querySelector("#living_conditions")),t.observe(document.querySelector("#people")),t.observe(document.querySelector("#characteristics"))}},Cw=ww,kw=(i("ad7a"),Object(u["a"])(Cw,mw,hw,!1,null,"3c84c0c2",null)),xw=kw.exports,Sw=function(){var e=this,t=e.$createElement,i=e._self._c||t;return Object.values(e.errors).filter((function(e){return e.length})).length?i("div",{staticClass:"bg-red200 p-6"},[e._v(" Le formulaire comprend des erreurs : "),i("ul",{staticClass:"mt-4"},e._l(e.errors,(function(t,a){return i("li",{directives:[{name:"show",rawName:"v-show",value:t.length,expression:"error.length"}],key:a},[i("router-link",{staticClass:"link",attrs:{to:{hash:a}}},[e._v(e._s(t[0]))])],1)})),0)]):e._e()},$w=[],Pw={props:{errors:{type:Object,required:!1,default(){return{}}}}},Tw=Pw,Iw=Object(u["a"])(Tw,Sw,$w,!1,null,null,null),Ow=Iw.exports,Aw={props:{mode:{type:String},data:{type:Object,default(){return{}}}},components:{PrivateContainer:zp,TownFormLeftColumn:xw,TownFormErrorLog:Ow,TownFormPanelInfo:Ih,TownFormPanelLocation:Xh,TownFormPanelCharacteristics:Bv,TownFormPanelPeople:Of,TownFormPanelLivingConditions:ey,TownFormPanelJudicial:pw},data(){const{field_types:e,user:t}=ar();return{error:null,loading:!1,showInfo:!0,town:{location:{address:{label:this.data.address?this.data.address:void 0,citycode:this.data.city?this.data.city.code:void 0},name:this.data.name||void 0,coordinates:this.data.latitude?[this.data.latitude,this.data.longitude]:void 0},characteristics:{built_at:this.data.builtAt?new Date(1e3*this.data.builtAt):void 0,declared_at:this.data.declaredAt?new Date(1e3*this.data.declaredAt):void 0,field_type:this.data.fieldType?this.data.fieldType.id:void 0,detailed_address:this.data.addressDetails,owner_type:this.data.ownerType?this.data.ownerType.id:void 0,owner:this.data.owner},people:{population:{populationTotal:this.intToStr(this.data.populationTotal),populationCouples:this.intToStr(this.data.populationCouples),populationMinors:this.intToStr(this.data.populationMinors)},populationMinors:{populationMinors0To3:this.intToStr(this.data.populationMinors0To3),populationMinors3To6:this.intToStr(this.data.populationMinors3To6),populationMinors6To12:this.intToStr(this.data.populationMinors6To12),populationMinors12To16:this.intToStr(this.data.populationMinors12To16),populationMinors16To18:this.intToStr(this.data.populationMinors16To18),minorsInSchool:this.intToStr(this.data.minorsInSchool)},social_origins:this.data.socialOrigins?this.data.socialOrigins.map(({id:e})=>e):[],census_status:this.toNullableStr(this.data.censusStatus),census_conducted_at:this.data.censusConductedAt?new Date(1e3*this.data.censusConductedAt):void 0,census_conducted_by:this.data.censusConductedBy},living_conditions:{access_to_water:this.boolToInt(this.data.accessToWater),water_comments:this.data.waterComments||void 0,electricity_type:this.data.electricityType?this.data.electricityType.id:void 0,electricity_comments:this.data.electricityComments||void 0,access_to_sanitary:this.boolToInt(this.data.accessToSanitary),sanitary_comments:this.data.sanitaryComments||void 0,trash_evacuation:this.boolToInt(this.data.trashEvacuation),water_potable:this.boolToInt(this.data.waterPotable),water_public_point:this.boolToInt(this.data.waterPublicPoint),water_continuous_access:this.boolToInt(this.data.waterContinuousAccess),water_distance:this.data.waterDistance,water_roads_to_cross:this.boolToInt(this.data.waterRoadsToCross),water_everyone_has_access:this.boolToInt(this.data.waterEveryoneHasAccess),water_stagnant_water:this.boolToInt(this.data.waterStagnantWater),water_hand_wash_access:this.boolToInt(this.data.waterHandWashAccess),water_hand_wash_access_number:this.data.waterHandWashAccessNumber,sanitary_number:this.data.sanitaryNumber,sanitary_insalubrious:this.boolToInt(this.data.sanitaryInsalubrious),sanitary_on_site:this.boolToInt(this.data.sanitaryOnSite),trash_cans_on_site:this.data.trashCansOnSite,trash_accumulation:this.boolToInt(this.data.trashAccumulation),trash_evacuation_regular:this.boolToInt(this.data.trashEvacuationRegular),vermin:this.boolToInt(this.data.vermin),vermin_comments:this.data.verminComments,fire_prevention_measures:this.boolToInt(this.data.firePreventionMeasures),fire_prevention_diagnostic:this.boolToInt(this.data.firePreventionDiagnostic),fire_prevention_devices:this.boolToInt(this.data.firePreventionDevices),fire_prevention_site_accessible:this.boolToInt(this.data.firePreventionSiteAccessible),fire_prevention_comments:this.data.firePreventionComments},judicial:{owner_complaint:this.boolToInt(this.data.ownerComplaint),justice_procedure:this.boolToInt(this.data.justiceProcedure),justice_rendered:this.boolToInt(this.data.justiceRendered),justice_rendered_at:this.data.justiceRenderedAt?new Date(1e3*this.data.justiceRenderedAt):void 0,justice_rendered_by:this.data.justiceRenderedBy||void 0,justice_challenged:this.boolToInt(this.data.justiceChallenged),police_status:this.toNullableStr(this.data.policeStatus),police_requested_at:this.data.policeRequestedAt?new Date(1e3*this.data.policeRequestedAt):void 0,police_granted_at:this.data.policeGrantedAt?new Date(1e3*this.data.policeGrantedAt):void 0,bailiff:this.data.bailiff||void 0}},fieldTypes:e,user:t}},computed:{submitWording(){return"create"===this.mode?"Déclarer un site":"Mettre à jour"},successNotificationWording(){return"create"===this.mode?"La déclaration du site a réussi":"Le site a bien été modifié"},backPage(){return"create"===this.mode?"/liste-des-sites":"/site/"+this.data.id}},methods:{back(){this.$router.replace(this.backPage)},closeInfo(){this.showInfo=!1},boolToInt(e){if(void 0!==e)return!0===e?1:!1===e?0:-1},intToStr(e){if("number"===typeof e)return""+e},strToInt(e){return""===e?null:parseInt(e,10)},nullableStr(e){return"null"===e?null:e},toNullableStr(e){return void 0===e||null===e?"null":e},formatDate(e){if(!e||!(e instanceof Date))return e;const t=e.getFullYear(),i=(""+(e.getMonth()+1)).padStart(2,"0"),a=(""+e.getDate()).padStart(2,"0");return`${t}-${i}-${a}`},async submit(){const e=await this.$refs.form.validate();if(e){this.loading=!0,this.$router.replace("#top");try{const[e,t]=this.town.location.coordinates,i=await this.submitFn({...this.town.living_conditions,water_hand_wash_access_number:this.town.living_conditions.water_hand_wash_access?this.strToInt(this.town.living_conditions.water_hand_wash_access_number):null,trash_cans_on_site:this.strToInt(this.town.living_conditions.trash_cans_on_site),sanitary_number:this.strToInt(this.town.living_conditions.sanitary_number),address:this.town.location.address.label,citycode:this.town.location.address.citycode,name:this.town.location.name,coordinates:this.town.location.coordinates?`${e},${t}`:void 0,built_at:this.formatDate(this.town.characteristics.built_at),declared_at:this.formatDate(this.town.characteristics.declared_at),field_type:this.town.characteristics.field_type,detailed_address:this.town.characteristics.detailed_address,owner_type:this.town.characteristics.owner_type,owner:this.town.characteristics.owner,population_total:this.strToInt(this.town.people.population.populationTotal),population_couples:this.strToInt(this.town.people.population.populationCouples),population_minors:this.strToInt(this.town.people.population.populationMinors),population_minors_0_3:this.strToInt(this.town.people.populationMinors.populationMinors0To3),population_minors_3_6:this.strToInt(this.town.people.populationMinors.populationMinors3To6),population_minors_6_12:this.strToInt(this.town.people.populationMinors.populationMinors6To12),population_minors_12_16:this.strToInt(this.town.people.populationMinors.populationMinors12To16),population_minors_16_18:this.strToInt(this.town.people.populationMinors.populationMinors16To18),minors_in_school:this.strToInt(this.town.people.populationMinors.minorsInSchool),social_origins:this.town.people.social_origins,census_status:this.nullableStr(this.town.people.census_status),census_conducted_at:this.formatDate(this.town.people.census_conducted_at),census_conducted_by:this.town.people.census_conducted_by,owner_complaint:this.town.judicial.owner_complaint,justice_procedure:this.town.judicial.justice_procedure,justice_rendered:this.town.judicial.justice_rendered,justice_rendered_at:this.formatDate(this.town.judicial.justice_rendered_at),justice_rendered_by:this.town.judicial.justice_rendered_by,justice_challenged:this.town.judicial.justice_challenged,police_status:this.nullableStr(this.town.judicial.police_status),police_requested_at:this.formatDate(this.town.judicial.police_requested_at),police_granted_at:this.formatDate(this.town.judicial.police_granted_at),bailiff:this.town.judicial.bailiff});let a;this.loading=!1,a="create"===this.mode?i.town.id:this.data.id,this.$router.push("/site/"+a),gu({group:"notifications",type:"success",title:"Succès",text:this.successNotificationWording})}catch(t){if(!t.fields)return void console.log(t);this.error=t,this.loading=!1,this.$refs.form.setErrors(t.fields),this.$router.replace("#erreurs")}}else this.$router.replace("#top",()=>this.$router.replace("#erreurs"))},submitFn(e){return"create"===this.mode?Ol(e):Al(this.data.id,e)}}},Nw=Aw,Ew=(i("61d0"),i("5486"),Object(u["a"])(Nw,Ch,kh,!1,null,"76d7e233",null)),jw=Ew.exports,Dw={components:{TownForm:jw,PrivateLayout:Gp}},qw=Dw,Mw=Object(u["a"])(qw,yh,wh,!1,null,null,null),Lw=Mw.exports,Fw=function(){var e=this,t=e.$createElement,i=e._self._c||t;return null!==e.error?i("PrivateLayout",[i("div",{staticClass:"bg-red600 text-center text-primary text-display-lg mt-16"},[e._v(" "+e._s(e.error)+" ")])]):null===e.town?i("PrivateLayout",[i("div",{staticClass:"text-center text-primary text-display-lg mt-16"},[i("Spinner")],1)]):i("PrivateLayout",[i("TownForm",{attrs:{mode:"update",data:e.town}})],1)},zw=[],Bw={components:{TownForm:jw,PrivateLayout:Gp},data(){return{loading:!1,error:null,town:null}},mounted(){this.fetchData()},methods:{fetchData(){!0!==this.loading&&(this.loading=!0,this.error=null,Il(this.$route.params.id).then(e=>{this.town=e,this.loading=!1}).catch(e=>{this.error=e.user_message,this.loading=!1}))}}},Rw=Bw,Vw=Object(u["a"])(Rw,Fw,zw,!1,null,null,null),Uw=Vw.exports,Hw=function(){var e=this,t=e.$createElement,i=e._self._c||t;return e.loading?i("PrivateLayout",[i("div",{staticClass:"text-center text-primary text-display-lg mt-16"},[i("Spinner")],1)]):null!==e.error?i("PrivateLayout",[i("div",{staticClass:"text-center text-error text-primary text-display-lg mt-16"},[e._v(" "+e._s(e.error)+" ")])]):i("PrivateLayout",[e.town?i("PrivateContainer",{staticClass:"py-10"},[i("TownDetailsHeader",{attrs:{town:e.town},on:{openCancel:e.openCancel,openCovid:e.openCovid,deleteTown:e.deleteTown}}),i("div",{staticClass:"flex pt-10 "},[i("TownDetailsLeftColumn",{staticClass:"leftColumnWidth",attrs:{hasJusticePermission:e.hasJusticePermission,town:e.town},on:{openHistory:e.openHistory}}),i("div",{staticClass:"flex-1"},[e.isNotAnActor&&e.actorAlertVisible?i("TownDetailsActorAlert",{on:{click:e.openActorThemes,close:function(t){e.actorAlertVisible=!1}}}):e._e(),i("TownDetailsPanelCharacteristics",{staticClass:"mb-10",attrs:{town:e.town,id:"characteristics"}}),i("TownDetailsPanelPeople",{staticClass:"mb-10",attrs:{town:e.town,id:"people"}}),i("TownDetailsPanelLivingConditions",{staticClass:"mb-10",attrs:{town:e.town,id:"living_conditions"}}),e.hasJusticePermission?i("TownDetailsPanelJudicial",{staticClass:"mb-10",attrs:{town:e.town,id:"judicial"}}):e._e(),i("TownDetailsPanelActors",{staticClass:"mb-10",attrs:{id:"intervenants"},on:{click:e.openActorThemes,showThemesModal:e.openActorThemes,showInviteActorModal:e.openInviteActorModal}})],1)],1)],1):e._e(),i("div",{staticClass:"bg-orange200 py-10"},[i("PrivateContainer",{staticClass:"flex items-center"},[i("div",{staticClass:"leftColumnWidth text-sm"},[i("div",[i("Icon",{attrs:{icon:"exclamation-triangle"}})],1),i("div",{staticClass:"font-bold"},[e._v(" Quelles sont les règles de confidentialités ? ")]),i("div",[e._v(" Ne pas citer l’identité des individus (Nom, âge, sexe, origine…) ")])]),i("TownDetailsNewComment",{class:["flex-1",0===e.town.comments.regular.length&&"pb-32"],attrs:{id:"newComment",user:e.user,nbComments:e.town.comments.regular.length},on:{submit:function(t){e.town.comments.regular=t}}})],1)],1),e.town.comments.regular.length?i("div",{class:["bg-orange200","pt-10",e.town.comments.regular.length>0&&"pb-32"]},[i("PrivateContainer",{staticClass:"flex",attrs:{id:"comments"}},[i("div",{staticClass:"leftColumnWidth"}),i("TownDetailsComments",{staticClass:"flex-1",attrs:{comments:e.town.comments.regular}})],1)],1):e._e(),i("TownDetailsHistorySidePanel",{attrs:{town:e.town,isOpen:e.historyOpen,closePanel:function(){return e.historyOpen=!1}}}),i("TownDetailsCovidCommentsSidePanel",{attrs:{town:e.town,isOpen:e.covidOpen,closePanel:function(){return e.covidOpen=!1}},on:{updateTown:function(t){e.town=t}}}),i("TownDetailsCloseModal",{attrs:{town:e.town,isOpen:e.closeOpen},on:{closeModal:function(t){e.closeOpen=!1},updateTown:function(t){e.town=t}}}),e.actorThemesOpen?i("TownDetailsActorThemesModal",{attrs:{town:e.town},on:{closeModal:function(t){e.actorThemesOpen=!1}}}):e._e(),i("TownDetailsInviteActorModal",{attrs:{townId:e.town.id,isOpen:e.inviteActorOpen},on:{closeModal:function(t){e.inviteActorOpen=!1}}})],1)},Gw=[],Ww=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("div",[i("div",{attrs:{"data-cy-data":"city"}},[e._v(" "+e._s(e.town.city.name)+" ("+e._s(e.town.departement.name)+") ")]),i("div",{staticClass:"text-display-lg",attrs:{"data-cy-data":"address"}},[e._v(" "+e._s(e.town.addressSimple)+" "),e.town.name?i("span",{staticClass:"text-display-xs"},[e._v("« "+e._s(e.town.name)+" »")]):e._e()])]),i("div",{staticClass:"flex items-center"},[i("div",{staticClass:"flex items-center uppercase text-sm mr-4"},[i("div",{staticClass:"rounded-full bg-corail h-3 w-3 mr-2 "}),e._v(" Mis à jour le "+e._s(e.formatDate(e.town.updatedAt,"d/m/y"))+" ")]),i("div",{staticClass:"flex items-center text-red uppercase text-xs font-bold cursor-pointer",on:{click:function(t){return e.$emit("openCovid")}}},[i("Icon",{staticClass:"mr-2",attrs:{icon:"comment"}}),i("div",[e._v(" "+e._s(this.town.comments.covid.length||0)+" commentaires covid ")])],1)]),i("div",{staticClass:"flex justify-end mt-2"},[e.hasLocalizedPermission("shantytown.close")&&"open"===e.town.status?i("Button",{staticClass:"mr-8",attrs:{variant:"primaryOutline",iconPosition:"left"},on:{click:function(t){return e.$emit("openCancel")}}},[e._v("Fermer le site")]):e._e(),e.hasLocalizedPermission("shantytown.update")&&"open"===e.town.status?i("Button",{staticClass:"mr-8",attrs:{variant:"primary",icon:"pen",iconPosition:"left"},on:{click:e.routeToUpdate}},[e._v("Mettre à jour")]):e._e(),e.hasLocalizedPermission("shantytown_comment.list")||e.hasLocalizedPermission("shantytown_comment.create")?i("router-link",{attrs:{to:"#newComment"},nativeOn:{click:function(t){return e.scrollFix("#newComment")}}},[i("Button",{attrs:{variant:"secondary",icon:"comment",iconPosition:"left"}},[e._v("Journal du site")])],1):e._e(),e.hasLocalizedPermission("shantytown.delete")?i("Button",{staticClass:"ml-8",attrs:{variant:"secondary",icon:"trash-alt",iconPosition:"left","data-cy-button":"delete"},on:{click:function(t){return e.$emit("deleteTown")}}},[e._v("Supprimer le site")]):e._e()],1)])},Jw=[],Qw={props:{town:{type:Object}},data(){const{user:e}=ar();return{user:e}},methods:{hasLocalizedPermission(e){const t=nr(e);if(null===t)return!1;let i="local"!==t.geographic_level?t.geographic_level:this.user.organization.location.type;return"nation"===i||null!==this.user.organization.location[i]&&this.town[i].code===this.user.organization.location[i].code},scrollFix(e){if(e===this.$route.hash){const t=document.getElementById(e.slice(1));t&&window.scrollTo(0,t.offsetTop)}},formatDate(...e){return window.App.formatDate.apply(window,e)},routeToUpdate(){this.$router.push(`/site/${this.town.id}/mise-a-jour`)}}},Yw=Qw,Zw=Object(u["a"])(Yw,Ww,Jw,!1,null,null,null),Kw=Zw.exports,Xw=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("div",{staticClass:"sticky stickyColumn"},[i("div",{staticClass:"font-bold"},[e._v("Rubriques")]),i("LeftColumnNavLink",{attrs:{to:"#characteristics",activeSection:"characteristics"===e.activeSection}},[e._v("Caractéristiques du site")]),i("LeftColumnNavLink",{attrs:{to:"#people",activeSection:"people"===e.activeSection}},[e._v("Habitants")]),i("LeftColumnNavLink",{attrs:{to:"#living_conditions",activeSection:"living_conditions"===e.activeSection}},[e._v("Conditions de vie et environnement")]),e.hasJusticePermission?i("LeftColumnNavLink",{attrs:{to:"#judicial",activeSection:"judicial"===e.activeSection}},[e._v("Procédure judiciaire")]):e._e(),i("LeftColumnNavLink",{attrs:{to:"#intervenants",activeSection:"intervenants"===e.activeSection}},[e._v("Intervenants")]),i("router-link",{staticClass:"text-secondary",attrs:{to:"#newComment"},nativeOn:{click:function(t){return e.scrollFix("#newComment")}}},[i("div",{staticClass:"flex text-secondary font-bold mt-4 cursor-pointer"},[i("Icon",{attrs:{icon:"comment"}}),i("div",{staticClass:"ml-2"},[i("div",[e._v("Le journal du site")]),i("div",[e._v(" "+e._s(e.town.comments.regular.length)+" message"+e._s(e.town.comments.regular.length>1?"s":"")+" ")])])],1)]),i("div",{staticClass:"flex text-primary font-bold mt-4 cursor-pointer",on:{click:function(t){return e.$emit("openHistory")}}},[i("Icon",{attrs:{icon:"history"}}),i("div",{staticClass:"ml-2"},[e._v("Voir l'historique des modifications")])],1)],1)])},eC=[],tC=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{class:["pl-2 border-l-4 my-2",e.activeSection?"text-primary border-primary":"border-transparent"]},[i("router-link",{attrs:{to:e.to}},[e._t("default")],2)],1)},iC=[],aC={props:{to:{type:String},activeSection:{type:Boolean}}},sC=aC,nC=Object(u["a"])(sC,tC,iC,!1,null,null,null),oC=nC.exports,rC={components:{LeftColumnNavLink:oC},props:{town:{type:Object},hasJusticePermission:{type:Boolean}},data(){return{activeSection:"characteristics"}},methods:{hasPermission:or,scrollFix(e){if(e===this.$route.hash){const t=document.getElementById(e.slice(1));t&&window.scrollTo(0,t.offsetTop)}}},mounted(){const e=e=>{e.forEach(e=>{e.isIntersecting&&(this.activeSection=e.target.id)})};let t=new IntersectionObserver(e,{rootMargin:"0px",threshold:.5});t.observe(document.querySelector("#intervenants")),this.hasJusticePermission&&t.observe(document.querySelector("#judicial")),t.observe(document.querySelector("#living_conditions")),t.observe(document.querySelector("#people")),t.observe(document.querySelector("#characteristics"))}},lC=rC,cC=(i("120a"),Object(u["a"])(lC,Xw,eC,!1,null,"54e4861e",null)),uC=cC.exports,dC=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("TownDetailsPanel",{scopedSlots:e._u([{key:"title",fn:function(){return[e._v("Caractéristiques du site")]},proxy:!0},{key:"body",fn:function(){return[i("div",{staticClass:"flex"},[i("div",{staticClass:"w-1/2 pr-8"},[i("TownDetailsPanelSection",[i("div",{staticClass:"grid grid-cols-2"},[i("div",[i("div",{staticClass:"font-bold"},[e._v(" Installé depuis ")]),e.town.builtAt?i("div",[i("div",[e._v(" "+e._s(e.formatDateSince(e.town.builtAt))+" ")]),i("div",{attrs:{"data-cy-data":"built_at"}},[e._v(" "+e._s(e.buildAt)+" ")])]):i("div",{attrs:{"data-cy-data":"built_at"}},[e._v(" non communiquée ")])]),i("div",[i("div",{staticClass:"font-bold"},[e._v(" Signalé depuis ")]),e.town.declaredAt?i("div",[i("div",[e._v(" "+e._s(e.formatDateSince(e.town.declaredAt))+" ")]),i("div",{attrs:{"data-cy-data":"declared_at"}},[e._v(" "+e._s(e.declaredAt)+" ")])]):i("div",{attrs:{"data-cy-data":"declared_at"}},[e._v(" non communiquée ")])])])]),i("TownDetailsPanelSection",[i("div",{staticClass:"grid grid-cols-2"},[i("div",{staticClass:"font-bold"},[e._v(" Type de site ")]),i("div",{staticClass:"flex items-center",attrs:{"data-cy-data":"field_type"}},[i("Icon",{staticClass:"text-lg mr-2",style:"color: "+e.town.fieldType.color,attrs:{icon:"map-marker-alt"}}),e._v(" "+e._s(e.town.fieldType.label)+" ")],1)])]),e.town.addressDetails?i("TownDetailsPanelSection",[i("div",{staticClass:"grid grid-cols-2"},[i("div",{staticClass:"font-bold"},[e._v(" Informations d'accès ")]),i("div",{attrs:{"data-cy-data":"address_details"}},[e._v(" "+e._s(e.town.addressDetails)+" ")])])]):e._e(),i("TownDetailsPanelSection",[i("div",{staticClass:"font-bold"},[e._v(" Coordonnées GPS ")]),i("div",{attrs:{"data-cy-data":"address_gps"}},[e._v(" Lat "+e._s(e.town.latitude)+", Long "+e._s(e.town.longitude)+" ")]),i("div",[i("Button",{attrs:{variant:"primaryText",icon:"copy",iconPosition:"left",href:"#"},on:{click:e.copyCoordinates}},[e._v("Copier")])],1)]),i("TownDetailsPanelSection",[i("div",{staticClass:"grid grid-cols-2"},[i("div",{staticClass:"font-bold"},[e._v(" Propriétaire ")]),i("div",{attrs:{"data-cy-data":"owner_type"}},[e._v(" "+e._s(e.town.ownerType.label)+" ")])])]),"Inconnu"!==e.town.ownerType.label?i("TownDetailsPanelSection",[i("div",{staticClass:"grid grid-cols-2"},[i("div",{staticClass:"font-bold"},[e._v(" Nom du propriétaire ")]),i("div",{attrs:{"data-cy-data":"owner"}},[e._v(" "+e._s(e.town.owner||"non communiqué")+" ")])])]):e._e()],1),i("div",{staticClass:"w-1/2 bg-G200"},[i("div",{staticClass:"v1"},[i("Map",{attrs:{"display-searchbar":!1,towns:[e.town],"default-view":e.center}})],1)])])]},proxy:!0}])})},pC=[],mC=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"townDetailsPanelShadow py-5 px-6"},[i("div",{staticClass:"text-primary text-display-lg"},[e._t("title")],2),i("div",{staticClass:"pt-4"},[e._t("body")],2)])},hC=[],vC=(i("6fc5"),{}),fC=Object(u["a"])(vC,mC,hC,!1,null,"1d97ba82",null),gC=fC.exports,bC=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"border-t border-G200 py-4"},[e._t("default")],2)},_C=[],yC={},wC=Object(u["a"])(yC,bC,_C,!1,null,null,null),CC=wC.exports,kC={props:{town:{type:Object}},components:{TownDetailsPanel:gC,TownDetailsPanelSection:CC,Map:Kd},methods:{formatDate(...e){return window.App.formatDate.apply(window,e)},formatDateSince:dh,copyCoordinates(){const e=document.createElement("input");e.value=`${this.town.latitude},${this.town.longitude}`,document.body.appendChild(e),e.select(),document.execCommand("copy"),document.body.removeChild(e),gu({group:"notifications",type:"success",title:"Succès",text:"Les coordonnées ont été copiées dans le presse-papier"})}},computed:{buildAt(){return new Date(1e3*this.town.builtAt).toLocaleDateString("fr-FR",{year:"numeric",month:"long",day:"numeric"})},declaredAt(){return new Date(1e3*this.town.declaredAt).toLocaleDateString("fr-FR",{year:"numeric",month:"long",day:"numeric"})},center(){return{center:[this.town.latitude,this.town.longitude],zoom:15}}}},xC=kC,SC=Object(u["a"])(xC,dC,pC,!1,null,null,null),$C=SC.exports,PC=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("TownDetailsPanel",{scopedSlots:e._u([{key:"title",fn:function(){return[e._v("Habitants")]},proxy:!0},{key:"body",fn:function(){return[i("TownDetailsPanelSection",[i("div",{staticClass:"italic mb-4"},[e._v(" Le nombre de personnes sur un site est mouvant, les données fournies par les acteurs, même des estimations, participent à l'amélioration de la connaissance. ")]),i("table",{staticClass:"table-fixed text-center mb-6"},[i("thead",[i("tr",[i("td"),i("td",{staticClass:"border-b"}),e._l(e.populationHistory,(function(t,a){return i("td",{key:a,staticClass:"w-24 py-2 border-b",class:{"font-bold":0===a,"bg-gray-200":0===a}},[e._v(" "+e._s(t.date)),i("br"),e._v(e._s(t.year)+" ")])}))],2)]),i("tbody",e._l(e.sections,(function(t,a){return i("tr",{key:a,class:t.css},[0===a?i("td",{staticClass:"align-top pr-2 text-xl",attrs:{rowspan:e.sections.length}},[i("Icon",{staticClass:"mr-1",attrs:{icon:"male"}}),i("Icon",{attrs:{icon:"male"}})],1):e._e(),i("td",{staticClass:"text-left pr-4 border-b"},[e._v(" "+e._s(t.title)+" ")]),e._l(e.populationHistory,(function(a,s){return i("td",{key:s,staticClass:"py-1 border-b",class:{"border-r":s>0||e.populationHistory.length<=1,"bg-gray-100":0===s},attrs:{"data-cy-data":0===s?t.data:void 0}},[e._v(" "+e._s(a[t.data])+" ")])}))],2)})),0)]),i("div",[i("div",{staticClass:"font-bold"},[e._v("Origine")]),i("div",{attrs:{"data-cy-data":"social_origins"}},[e.town.socialOrigins.length?e._l(e.town.socialOrigins,(function(t){return i("div",{key:t.id,staticClass:"flex items-center"},[i("img",{staticClass:" w-8 mr-2",attrs:{src:e.socialOrigin(t).img}}),i("span",{staticClass:"text-display-sm"},[e._v(e._s(e.socialOrigin(t).label))])])})):i("div",{staticClass:"text-G600"},[e._v(" inconnu ")])],2)])]),i("TownDetailsPanelSection",[i("div",{staticClass:"flex items-center justify-between"},[i("div",{staticClass:"w-96"},[i("div",{staticClass:"font-bold"},[e._v("Diagnostic social")]),i("div",{attrs:{"data-cy-data":"census_status"}},[e._v(" "+e._s(e.socialDiagnostic)+" ")])]),i("div",{staticClass:"italic"},[e._v(" Un diagnostic social vise à identifier les situations et besoins des familles et personnes, de repérer le contexte territorial et les acteurs en présence. ")])])])]},proxy:!0}])})},TC=[],IC={props:{town:{type:Object}},data(){return{sections:[{title:"Personnes",css:"font-bold",data:"populationTotal"},{title:"Ménages",css:"font-bold",data:"populationCouples"},{title:"Mineurs",data:"populationMinors"},{title:"0 - 3 ans",data:"populationMinors0To3"},{title:"3 - 6 ans",data:"populationMinors3To6"},{title:"6 - 12 ans",data:"populationMinors6To12"},{title:"12 - 16 ans",data:"populationMinors12To16"},{title:"16 - 18 ans",data:"populationMinors16To18"},{title:"Inscrits en établissement scolaire",data:"minorsInSchool"}]}},components:{TownDetailsPanel:gC,TownDetailsPanelSection:CC},methods:{formatDate(...e){return window.App.formatDate.apply(window,e)},socialOrigin(e){return 1===e.id?{id:1,label:"Français",img:sm.a}:2===e.id?{id:2,label:"Union européenne",img:im.a}:3===e.id?{id:3,label:"Hors Union européenne",img:om.a}:e},intToStr(e,t="NC"){return void 0===e||null===e?t:e}},computed:{populationHistory(){let e={populationTotal:this.intToStr(this.town.populationTotal,"-"),populationCouples:this.intToStr(this.town.populationCouples,"-"),populationMinors:this.intToStr(this.town.populationMinors,"-"),populationMinors0To3:this.intToStr(this.town.populationMinors0To3,"-"),populationMinors3To6:this.intToStr(this.town.populationMinors3To6,"-"),populationMinors6To12:this.intToStr(this.town.populationMinors6To12,"-"),populationMinors12To16:this.intToStr(this.town.populationMinors12To16,"-"),populationMinors16To18:this.intToStr(this.town.populationMinors16To18,"-"),minorsInSchool:this.intToStr(this.town.minorsInSchool,"-")};const t=this.town.changelog.map(e=>({...e,diff:e.diff.filter(({fieldKey:e})=>e.startsWith("population")||"minorsInSchool"===e)})).filter(({diff:e})=>e.length>0);return 0===t.length?[{...e,date:this.formatDate(this.town.createdAt,"d B"),year:this.formatDate(this.town.createdAt,"y")}]:[{...e,date:this.formatDate(t[0].date,"d B"),year:this.formatDate(t[0].date,"y")},...t.map(({diff:i},a)=>{let s;return i.forEach(({fieldKey:t,oldValue:i})=>{e[t]="non renseigné"===i?"-":i}),a1?"s":"")+" pour améliorer l'accès ")]):e.details.positive.length?i("span",[e._v(" "+e._s(e.details.positive.length)+" action"+e._s(e.details.positive.length>1?"s":"")+" pour entretenir l'accès ")]):e._e(),e.details.unknown.length&&(e.details.negative.length||e.details.positive.length)?i("span",[e._v("et")]):e._e(),e.details.unknown.length?i("span",[e._v(" "+e._s(e.details.unknown.length)+" information"+e._s(e.details.unknown.length>1?"s":"")+" non renseignée"+e._s(e.details.unknown.length>1?"s":"")+" ")]):e._e()]),i("div",[i("Button",{attrs:{icon:e.collapsed?"chevron-up":"chevron-down",variant:"primaryText"},on:{click:e.collapse}})],1)]),e.collapsed?e._e():i("div",[i("TownDetailsPanelLivingConditionsDetails",{attrs:{type:"negative",cypressName:e.cypressDetailsPrefix+"_details_negative",details:e.details.negative}}),i("TownDetailsPanelLivingConditionsDetails",{attrs:{type:"positive",cypressName:e.cypressDetailsPrefix+"_details_positive",details:e.details.positive}}),i("TownDetailsPanelLivingConditionsDetails",{attrs:{type:"unknown",cypressName:e.cypressDetailsPrefix+"_details_unknown",details:e.details.unknown}})],1)]):e._e()])])},qC=[],MC=function(){var e=this,t=e.$createElement,i=e._self._c||t;return e.details.length?i("div",{staticClass:"border-b-2 border-G200 py-2"},[i("div",{staticClass:"flex items-center"},[i("Icon",{class:["mr-1","mb-1","font-bold","text-G600"],attrs:{icon:e.icon}}),i("div",{staticClass:"font-bold"},[e._v(" "+e._s(e.wording)+" ")])],1),i("ul",{staticClass:"list-disc ml-10",attrs:{"data-cy-data":e.cypressName}},e._l(e.details,(function(t,a){return i("li",{key:a},[e._v(" "+e._s(t.text)+" "),i("span",{staticClass:"italic"},[e._v(e._s(t.info?"- "+t.info:""))])])})),0)]):e._e()},LC=[],FC={props:{type:{type:String},details:{type:Array},cypressName:{type:String}},computed:{icon(){return{positive:"check",negative:"exclamation-triangle",unknown:"question"}[this.type]},wording(){return{positive:"À entretenir",negative:"À améliorer",unknown:"Non renseigné"}[this.type]}}},zC=FC,BC=Object(u["a"])(zC,MC,LC,!1,null,null,null),RC=BC.exports,VC={components:{TownDetailsPanelLivingConditionsDetails:RC,TownDetailsPanelSection:CC},props:{title:{type:String},value:{validator:e=>"boolean"===typeof e||null===e},cypressName:{type:String},cypressComments:{type:String},cypressDetailsPrefix:{type:String},comments:{type:String},details:{type:Object},inverted:{type:Boolean}},data(){return{collapsed:!1}},methods:{collapse(){this.collapsed=!this.collapsed}},computed:{colorClass(){return this.value&&this.details&&this.details.negative.length>0?"text-secondary":!0===this.value&&!this.inverted||!1===this.value&&this.inverted?"text-green":"text-red"},icon(){return this.value&&this.details&&this.details.negative.length>0?"exclamation-triangle":{null:"question",false:this.inverted?"check":"times",true:this.inverted?"times":"check"}[this.value]},text(){return{null:"inconnu",false:"non",true:"oui"}[this.value]}}},UC=VC,HC=Object(u["a"])(UC,DC,qC,!1,null,null,null),GC=HC.exports,WC={props:{town:{type:Object}},data(){return{details:lm(this.town)}},components:{TownDetailsPanelLivingConditionsSection:GC,TownDetailsPanel:gC}},JC=WC,QC=Object(u["a"])(JC,EC,jC,!1,null,null,null),YC=QC.exports,ZC=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("TownDetailsPanel",{scopedSlots:e._u([{key:"title",fn:function(){return[e._v("Procédure judiciaire")]},proxy:!0},{key:"body",fn:function(){return[i("TownDetailsPanelSection",[i("div",{staticClass:"grid grid-cols-2"},[i("div",{staticClass:"flex items-center"},[i("Icon",{staticClass:"mr-2",attrs:{icon:"scroll"}}),i("div",{staticClass:"font-bold"},[e._v(" Dépôt de plainte du propriétaire ")])],1),i("div",{attrs:{"data-cy-data":"owner_complaint"}},[e._v(" "+e._s(e.boolToStr(e.town.ownerComplaint))+" ")])])]),i("div",{staticClass:"flex"},[i("Icon",{staticClass:"mr-4 mt-5",attrs:{icon:"balance-scale"}}),i("div",{staticClass:"flex-1"},[i("TownDetailsPanelSection",[i("div",{staticClass:"grid grid-cols-2"},[i("div",{staticClass:"font-bold"},[e._v(" Existence d’une procédure judiciaire ")]),i("div",{staticClass:"-ml-5",attrs:{"data-cy-data":"justice_procedure"}},[e._v(" "+e._s(e.boolToStr(e.town.justiceProcedure))+" ")])])]),i("TownDetailsPanelSection",[i("div",{staticClass:"grid grid-cols-2"},[i("div",{staticClass:"font-bold"},[e._v(" Décision de justice rendue ")]),i("div",{staticClass:"-ml-5",attrs:{"data-cy-data":"justice_rendered"}},[e._v(" "+e._s(e.justiceRendered)+" ")])])]),i("TownDetailsPanelSection",[i("div",{staticClass:"grid grid-cols-2"},[i("div",{staticClass:"font-bold"},[e._v("Contentieux")]),i("div",{staticClass:"-ml-5",attrs:{"data-cy-data":"justice_challenged"}},[e._v(" "+e._s(e.boolToStr(e.town.justiceChallenged))+" ")])])])],1)],1),i("TownDetailsPanelSection",[i("div",{staticClass:"grid grid-cols-2"},[i("div",{staticClass:"flex items-center"},[i("img",{staticClass:"w-6 h-6 mr-2",attrs:{src:e.policeSiren}}),i("div",{staticClass:"font-bold"},[e._v(" Concours de la force publique ")])]),i("div",{attrs:{"data-cy-data":"police_status"}},[e._v(" "+e._s(e.policeStatusLabel)+" ")])])]),i("TownDetailsPanelSection",[i("div",{staticClass:"grid grid-cols-2"},[i("div",{staticClass:"flex items-center"},[i("span",{staticClass:"w-6 h-6 mr-2 text-center"},[i("Icon",{attrs:{icon:"file"}})],1),i("div",{staticClass:"font-bold"},[e._v(" Nom de l'étude d'huissier ")])]),i("div",{attrs:{"data-cy-data":"bailiff"}},[e._v(" "+e._s(e.town.bailiff||"NC")+" ")])])])]},proxy:!0}])})},KC=[],XC={props:{town:{type:Object}},methods:{formatDate(...e){return window.App.formatDate.apply(window,e)},boolToStr(e){return null===e?"NC":e?"oui":"non"}},components:{TownDetailsPanel:gC,TownDetailsPanelSection:CC},computed:{justiceRendered(){return null===this.town.justiceRendered?"NC":this.town.justiceRendered?"rendue le "+this.formatDate(this.town.justiceRenderedAt,"d/m/y"):"non"},policeSiren(){return uh.a},policeStatusLabel(){return"none"===this.town.policeStatus?"Non demandé":"requested"===this.town.policeStatus?"Demandé le "+this.formatDate(this.town.policeRequestedAt,"d/m/y"):"granted"===this.town.policeStatus?"Accordé le "+this.formatDate(this.town.policeGrantedAt,"d/m/y"):"NC"}}},ek=XC,tk=Object(u["a"])(ek,ZC,KC,!1,null,null,null),ik=tk.exports,ak=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("TownDetailsPanel",{scopedSlots:e._u([{key:"title",fn:function(){return[e._v("Intervenants")]},proxy:!0},{key:"body",fn:function(){return[i("TownDetailsPanelSection",[i("div",{staticClass:"italic mb-2"},[e._v(" Votre intervention mérite d'être signalée même si vous n'accompagnez pas l'ensemble des habitants du site. ")]),0===e.town.actors.length?i("div",{staticClass:"mt-2 mb-4"},[i("p",[e._v("Aucun intervenant connu sur ce site.")]),i("Button",{staticClass:"font-bold mt-4 mb-2",attrs:{variant:"primaryOutlineAlt",icon:"plus",iconPosition:"left"},on:{click:function(t){return e.$emit("showInviteActorModal")}}},[e._v("Inviter un autre intervenant")])],1):i("div",{staticClass:"grid grid-cols-2 mt-4"},[e.self?i("TownDetailsSelfCard",{attrs:{actor:e.self,townId:e.town.id},on:{showThemesModal:function(t){return e.$emit("showThemesModal")}}}):e._e(),e._l(e.otherActors,(function(e){return i("TownDetailsActorCard",{key:e.id,attrs:{actor:e}})})),i("div",{staticClass:"p-4"},[i("Button",{staticClass:"font-bold",attrs:{variant:"primaryOutlineAlt",icon:"plus",iconPosition:"left"},on:{click:function(t){return e.$emit("showInviteActorModal")}}},[e._v("Inviter un autre intervenant")])],1)],2),e.isNotAnActor?i("InfoBanner",{staticClass:"mt-2 py-2",attrs:{icon:"flag",buttonLabel:"J'interviens sur ce site"},on:{click:function(t){return e.$emit("click")}},scopedSlots:e._u([{key:"body",fn:function(){return[i("p",{staticClass:"ml-2 inline-block"},[i("span",{staticClass:"font-bold"},[e._v("Vous intervenez sur ce site ?")]),e._v(" Faites le savoir à la communauté. ")])]},proxy:!0}],null,!1,1733866314)}):e._e()],1)]},proxy:!0}])})},sk=[],nk=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"p-4 flex"},[i("div",{staticClass:"mr-2"},[i("Icon",{attrs:{icon:"user"}})],1),i("div",[i("p",{staticClass:"font-bold"},[e._v(" "+e._s(e.actor.first_name)+" "+e._s(e.actor.last_name.toUpperCase())+" ")]),i("p",[e._v(e._s(e.actor.organization.name))]),i("p",[i("Button",{staticClass:"font-bold",attrs:{variant:"primaryText",href:"/annuaire/"+e.actor.organization.id}},[e._v("Consulter les coordonnées")])],1),e.actor.themes.length>0?i("div",{staticClass:"mt-4"},e._l(e.actor.themes,(function(t){return i("TownDetailsActorTag",{key:t.id},[e._v(" "+e._s(t.value||e.themes[t.id])+" ")])})),1):e._e()])])},ok=[],rk=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"bg-blue100 inline-block text-primary px-3 mr-2 mb-2 rounded-lg"},[e._t("default")],2)},lk=[],ck={},uk=Object(u["a"])(ck,rk,lk,!1,null,null,null),dk=uk.exports,pk={props:{actor:{type:Object,required:!1}},data(){const{actor_themes:e}=ar();return{themes:e}},components:{TownDetailsActorTag:dk}},mk=pk,hk=Object(u["a"])(mk,nk,ok,!1,null,null,null),vk=hk.exports,fk=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"bg-blue100 p-4 flex"},[i("div",{staticClass:"mr-2"},[i("Icon",{attrs:{icon:"user"}})],1),i("div",{staticClass:"flex-grow"},[i("p",{staticClass:"font-bold"},[e._v(" "+e._s(e.actor.first_name)+" "+e._s(e.actor.last_name.toUpperCase())+" ")]),i("p",[e._v(e._s(e.actor.organization.name))]),i("div",{staticClass:"mt-1"},[e._l(e.actor.themes,(function(t){return i("TownDetailsSelfTag",{key:t.id,attrs:{townId:e.townId,userId:e.actor.id,themeId:t.id}},[e._v(" "+e._s(t.value||e.themes[t.id])+" ")])})),i("Tooltip",{attrs:{text:"Cliquez ici pour modifier vos champs d'intervention"},nativeOn:{click:function(t){return e.$emit("showThemesModal")}}},[i("Button",{staticClass:"leading-3",attrs:{variant:"primaryOutlineAlt",icon:"plus",size:"sm"}})],1)],2),i("div",{staticClass:"w-100 mt-4 text-right"},[i("p",{staticClass:"text-primary hover:text-primaryDark focus:outline-none font-bold cursor-pointer"},[e.loading?i("Icon",{attrs:{icon:"spinner",spin:""}}):i("span",{on:{click:e.removeSelf}},[e._v("Je n'interviens plus sur ce site")])],1)])])])},gk=[],bk=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"bg-white inline-block border border-primary text-primary px-3 mr-2 mb-2 rounded-lg"},[i("p",{staticClass:"flex items-center"},[e._t("default"),i("span",{staticClass:"ml-2 align-middle"},[e.loading?i("Icon",{attrs:{icon:"spinner",spin:""}}):i("Icon",{staticClass:"cursor-pointer",attrs:{icon:"times"},nativeOn:{click:function(t){return e.remove(t)}}})],1)],2)])},_k=[],yk={props:{townId:{type:Number,required:!0},userId:{type:Number,required:!0},themeId:{type:String,required:!0}},data(){return{loading:!1}},methods:{async remove(){if(!0!==this.loading){this.loading=!0;try{await this.$store.dispatch("removeTownActorTheme",{townId:this.townId,userId:this.userId,themeId:this.themeId}),gu({group:"notifications",type:"success",title:"Succès",text:"Champ d'intervention retiré"})}catch(e){gu({group:"notifications",type:"error",title:"Échec",text:e&&e.user_message||"Une erreur inconnue est survenue"})}this.loading=!1}}}},wk=yk,Ck=Object(u["a"])(wk,bk,_k,!1,null,null,null),kk=Ck.exports,xk={props:{actor:{type:Object,required:!0},townId:{type:Number,required:!0}},data(){const{actor_themes:e}=ar();return{loading:!1,themes:e}},components:{TownDetailsSelfTag:kk},methods:{async removeSelf(){if(!0!==this.loading){this.loading=!0;try{await this.$store.dispatch("removeTownActor",{townId:this.townId,userId:this.actor.id}),gu({group:"notifications",type:"success",title:"Succès",text:"Vous avez été retiré(e) des intervenants "})}catch(e){gu({group:"notifications",type:"error",title:"Échec",text:e&&e.user_message||"Une erreur inconnue est survenue"})}this.loading=!1}}}},Sk=xk,$k=Object(u["a"])(Sk,fk,gk,!1,null,null,null),Pk=$k.exports,Tk={components:{TownDetailsPanel:gC,TownDetailsPanelSection:CC,TownDetailsActorCard:vk,TownDetailsSelfCard:Pk},data(){const{user:e}=ar();return{user:e}},computed:{town(){return this.$store.state.detailedTown},self(){return this.town.actors.find(({id:e})=>e===this.user.id)},otherActors(){return this.town.actors.filter(({id:e})=>e!==this.user.id)},isNotAnActor(){return void 0===this.self}}},Ik=Tk,Ok=Object(u["a"])(Ik,ak,sk,!1,null,null,null),Ak=Ok.exports,Nk=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("div",{staticClass:"text-display-lg text-corail"},[i("Icon",{attrs:{icon:"comment"}}),e._v(" LE JOURNAL DU SITE "),i("span",[e._v("- "+e._s(e.nbComments)+" message"+e._s(e.nbComments>1?"s":""))])],1),i("div",{staticClass:"text-display-md pt-6 pb-4"},[e._v(" Partager une info ")]),i("div",{staticClass:"bg-white p-6 customShadow"},[i("div",{staticClass:"mb-4"},[i("Icon",{attrs:{icon:"user"}}),e._v(" "+e._s(e.user.first_name))],1),i("TextArea",{attrs:{rows:"5",name:"newComment",placeholder:"Votre commentaire - Merci de respecter les règles de confidentialité."},model:{value:e.newComment,callback:function(t){e.newComment=t},expression:"newComment"}}),e._v(" "),e.hasPermission("shantytown_comment.createPrivate")?i("div",{staticClass:"flex ml-4"},[i("div",{staticClass:"text-sm mr-4"},[i("Icon",{staticClass:"text-red",attrs:{icon:"lock"}}),e._v(" Je souhaite réserver ce message à mes collègues en Préfecture et DDCS ")],1),i("CheckableGroup",{attrs:{direction:"horizontal",id:"private_comments"}},[i("Radio",{attrs:{label:"Oui",checkValue:!0,cypressName:"private_comments"},model:{value:e.isPrivate,callback:function(t){e.isPrivate=t},expression:"isPrivate"}}),i("Radio",{attrs:{label:"Non",checkValue:!1,cypressName:"private_comments"},model:{value:e.isPrivate,callback:function(t){e.isPrivate=t},expression:"isPrivate"}})],1)],1):e._e(),i("div",{staticClass:"flex items-center justify-between"},[i("Button",{attrs:{variant:"primaryText"},on:{click:e.cancelComment}},[e._v("Annuler")]),i("Button",{attrs:{variant:"tertiary"},on:{click:e.addComment}},[e._v("Valider")])],1)],1)])},Ek=[],jk={data(){return{commentError:null,commentErrors:{},newComment:"",isPrivate:!1}},props:{nbComments:{type:Number},user:{type:Object}},methods:{hasPermission:or,cancelComment(){this.newComment=""},addComment(){this.commentError=null,this.commentErrors={},jl(this.$route.params.id,{description:this.newComment,private:this.isPrivate}).then(e=>{this.$emit("submit",e.comments),this.newComment=""}).catch(e=>{this.commentError=e.user_message,this.commentErrors=e.fields||{}})}}},Dk=jk,qk=(i("04a7"),Object(u["a"])(Dk,Nk,Ek,!1,null,"14c846be",null)),Mk=qk.exports,Lk=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("div",{staticClass:"text-display-md pb-2"},[e._v(" "+e._s(e.comments.length)+" message"+e._s(e.comments.length>1?"s":"")+" ")]),e._l(e.sortedComments,(function(e){return i("CommentBlock",{key:e.id,attrs:{comment:e}})}))],2)},Fk=[],zk=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"border-t border-G400 py-4"},[i("div",{staticClass:"text-G600 text-sm mb-1"},[e._v(" "+e._s(e.formatDate(e.comment.createdAt,"d M y à h:i"))+" ")]),e.comment.private?i("div",{staticClass:"font-bold"},[i("Icon",{staticClass:"text-red",attrs:{icon:"lock"}}),e._v(" Message réservé aux membres de la préfecture et DDCS de votre territoire. ")],1):e._e(),i("div",{staticClass:"text-primary font-bold mb-1"},[i("Icon",{attrs:{icon:"user"}}),e._v(" "+e._s(e.comment.createdBy.firstName)+" "+e._s(e.comment.createdBy.lastName)+" - "+e._s(e.comment.createdBy.organization)+" ")],1),i("div",{staticClass:"ml-5"},[e._v(e._s(e.comment.description))])])},Bk=[],Rk={props:{comment:{type:Object}},methods:{formatDate(...e){return window.App.formatDate.apply(window,e)}}},Vk=Rk,Uk=Object(u["a"])(Vk,zk,Bk,!1,null,null,null),Hk=Uk.exports,Gk={components:{CommentBlock:Hk},props:{comments:{type:Array}},computed:{sortedComments(){const e=[...this.comments];return e.sort((e,t)=>t.createdAt-e.createdAt)}}},Wk=Gk,Jk=Object(u["a"])(Wk,Lk,Fk,!1,null,null,null),Qk=Jk.exports,Yk=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("SidePanel",{attrs:{isOpen:e.isOpen,closePanel:e.closePanel,closeClickOutside:!0}},[i("div",{staticClass:" px-8 "},[i("div",{staticClass:"border-b-2 border-G200 py-4"},[i("div",{staticClass:"flex justify-end"},[i("Button",{attrs:{variant:"primaryText",icon:"times",size:"lg"},on:{click:e.closePanel}})],1),i("div",{staticClass:"flex items-center text-primary"},[i("Icon",{staticClass:"mr-2 ",attrs:{icon:"history"}}),i("div",{staticClass:"text-display-md text-primary"},[e._v(" Historique des modifications ")])],1)]),i("div",[i("div",{staticClass:"text-sm font-bold my-4"},[e._v(" "+e._s(e.town.changelog.length)+" modification"+e._s(e.town.changelog.length>1?"s":"")+" ")]),e._l(e.town.changelog,(function(t){return i("div",{key:t.id,staticClass:"py-4 border-b-2 border-G200"},[i("div",{staticClass:"text-sm text-G600"},[e._v(" "+e._s(e.formatDate(t.date,"d M y à h:i"))+" ")]),i("div",{staticClass:"text-primary"},[i("router-link",{attrs:{to:"/annuaire/"+t.author.organization.id}},[i("div",{staticClass:"flex items-center"},[i("font-awesome-icon",{staticClass:"w-8 text-md",attrs:{icon:"user"}}),i("div",{staticClass:"font-bold ml-2"},[e._v(" "+e._s(t.author.first_name)+" "+e._s(t.author.last_name)+" ")])],1)])],1),i("div",e._l(t.diff,(function(t){return i("div",{key:t.field,staticClass:"changelogContent my-2"},[i("div",{staticClass:"text-green"},[e._v(e._s(t.field))]),i("div",[i("span",{staticClass:"line-through"},[e._v(e._s(t.oldValue||"non renseigné"))]),i("span",[e._v(", "+e._s(t.newValue||"non renseigné")+" ")])])])})),0)])}))],2)])])},Zk=[],Kk={props:{town:{type:Object},isOpen:{type:Boolean},closePanel:{type:Function}},methods:{formatDate(...e){return window.App.formatDate.apply(window,e)}}},Xk=Kk,ex=(i("fd66"),Object(u["a"])(Xk,Yk,Zk,!1,null,null,null)),tx=ex.exports,ix=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("SidePanel",{attrs:{isOpen:e.isOpen,closePanel:e.closePanel,closeClickOutside:!0}},[i("div",{staticClass:"scrollablePanel"},[i("div",{staticClass:" px-8 "},[i("div",{staticClass:"border-b-2 border-G200 py-4"},[i("div",{staticClass:"flex justify-end"},[i("Button",{attrs:{variant:"primaryText",icon:"times",size:"lg"},on:{click:e.closePanel}})],1),i("div",{staticClass:"flex items-center text-primary"},[i("Icon",{staticClass:"mr-2 ",attrs:{icon:"comment"}}),i("div",{staticClass:"text-display-md text-primary"},[e._v(" Commentaire Covid-19 ")])],1)]),i("div",{staticClass:"text-G600 italic my-6"},[e._v(" Merci de préciser votre action, ses modalités, et le nombrede personnes avec des symptômes.Merci de respecter les règles de confidentialité. Ne pas citer l’identité des individus (Nom, âge, sexe, origine...) ")]),i("ValidationObserver",{ref:"form",scopedSlots:e._u([{key:"default",fn:function(t){var a=t.handleSubmit;return[i("form",{on:{submit:function(t){return t.preventDefault(),a(e.addCovidComment)}}},[i("DatepickerV2",{staticClass:"w-64",attrs:{label:"Date de votre intervention",id:"closed_at",validationName:"Date","disabled-dates":{from:new Date},language:e.dateLanguage,"monday-first":!0,"full-month-name":!0,format:"dd MMMM yyyy",rules:"required"},model:{value:e.form.date,callback:function(t){e.$set(e.form,"date",t)},expression:"form.date"}}),i("CheckableGroup",{attrs:{label:"Préciser votre intervention"}},[i("Checkbox",{attrs:{checkValue:"equipe_maraude",label:"Équipe de maraude"},model:{value:e.form.interventionType,callback:function(t){e.$set(e.form,"interventionType",t)},expression:"form.interventionType"}}),i("Checkbox",{attrs:{checkValue:"equipe_sanitaire",label:"Équipe sanitaire"},model:{value:e.form.interventionType,callback:function(t){e.$set(e.form,"interventionType",t)},expression:"form.interventionType"}}),i("Checkbox",{attrs:{checkValue:"equipe_accompagnement",label:"Équipe d'accompagnement"},model:{value:e.form.interventionType,callback:function(t){e.$set(e.form,"interventionType",t)},expression:"form.interventionType"}}),i("Checkbox",{attrs:{checkValue:"distribution_alimentaire",label:"Distribution d'aide alimentaire"},model:{value:e.form.interventionType,callback:function(t){e.$set(e.form,"interventionType",t)},expression:"form.interventionType"}})],1),i("CheckableGroup",{attrs:{label:"Signaler si nécessaire"}},[i("Checkbox",{attrs:{checkValue:"personnes_orientees",label:"Personne(s) orientée(s) vers un centre d'hébergement"},model:{value:e.form.interventionType,callback:function(t){e.$set(e.form,"interventionType",t)},expression:"form.interventionType"}}),i("Checkbox",{attrs:{checkValue:"personnes_avec_symptomes",label:"Personne(s) avec des symptômes Covid-19"},model:{value:e.form.interventionType,callback:function(t){e.$set(e.form,"interventionType",t)},expression:"form.interventionType"}}),i("Checkbox",{attrs:{checkValue:"besoin_action",label:"Besoin d'une action prioritaire"},model:{value:e.form.interventionType,callback:function(t){e.$set(e.form,"interventionType",t)},expression:"form.interventionType"}})],1),i("TextArea",{attrs:{label:"Ecrire un message",rows:"10",name:"newComment",rules:"required",validationName:"Ecrire un message"},model:{value:e.form.newComment,callback:function(t){e.$set(e.form,"newComment",t)},expression:"form.newComment"}}),e._v(" "),i("div",{staticClass:"flex items-center justify-between"},[i("Button",{attrs:{variant:"primaryText",type:"button"},on:{click:e.cancelComment}},[e._v("Annuler")]),i("Button",{attrs:{variant:"tertiary",type:"primary",loading:e.loading}},[e._v("Valider")])],1)],1)]}}])})],1),i("div",{staticClass:"bg-orange200 px-8 py-4 mt-4"},[i("div",{staticClass:"font-bold mb-4"},[e._v(" "+e._s(this.town.comments.covid.length)+" commentaires ")]),e._l(e.sortedComments,(function(e){return i("CommentBlock",{key:e.id,attrs:{comment:e}})}))],2)])])},ax=[],sx={components:{CommentBlock:Hk,CheckableGroup:zi},props:{town:{type:Object},isOpen:{type:Boolean},closePanel:{type:Function}},data(){return{dateLanguage:Vi["fr"],loading:!1,form:{date:new Date,interventionType:[],newComment:""}}},computed:{sortedComments(){const e=[...this.town.comments.covid];return e.sort((e,t)=>t.createdAt-e.createdAt)}},methods:{formatDate(...e){return window.App.formatDate.apply(window,e)},cancelComment(){this.form.newComment=""},addCovidComment(){this.loading||(this.covidErrors=[],this.loading=!0,Dl(this.$route.params.id,{date:this.form.date,description:this.form.newComment,equipe_maraude:this.form.interventionType.includes("equipe_maraude"),equipe_sanitaire:this.form.interventionType.includes("equipe_sanitaire"),equipe_accompagnement:this.form.interventionType.includes("equipe_accompagnement"),distribution_alimentaire:this.form.interventionType.includes("distribution_alimentaire"),personnes_orientees:this.form.interventionType.includes("personnes_orientees"),personnes_avec_symptomes:this.form.interventionType.includes("personnes_avec_symptomes"),besoin_action:this.form.interventionType.includes("besoin_action")}).then(e=>{this.$emit("updateTown",{...this.town,comments:{...this.town.comments,covid:e}}),this.form={newComment:"",date:new Date,interventionType:[]},this.loading=!1}).catch(e=>{const t=e.fields||{};this.loading=!1,this.covidErrors=Object.keys(t).reduce((e,i)=>[...e,...t[i]],[])}))}}},nx=sx,ox=Object(u["a"])(nx,ix,ax,!1,null,null,null),rx=ox.exports,lx=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("InfoBanner",{staticClass:"mb-8 py-4",attrs:{icon:"flag",closable:!0,buttonLabel:"J'interviens sur ce site"},on:{click:function(t){return e.$emit("click")},close:function(t){return e.$emit("close")}},scopedSlots:e._u([{key:"body",fn:function(){return[i("span",{staticClass:"ml-2 font-bold"},[e._v("Vous intervenez sur ce site ?")]),i("span",{staticClass:"ml-2"},[e._v("Faites le savoir à la communauté")])]},proxy:!0}])})},cx=[],ux={},dx=Object(u["a"])(ux,lx,cx,!1,null,null,null),px=dx.exports,mx=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("Modal",{staticClass:"modalContainer",attrs:{isOpen:e.isOpen,closeModal:e.closeModal},scopedSlots:e._u([{key:"title",fn:function(){return[i("div",[e._v("Fermer le site")])]},proxy:!0},{key:"body",fn:function(){return[i("ValidationObserver",{ref:"form",scopedSlots:e._u([{key:"default",fn:function(t){var a=t.handleSubmit;return[i("form",{on:{submit:function(t){return t.preventDefault(),a(e.submitClose)}}},[i("div",{staticClass:"scrollableContainer -mx-4 -mt-8 p-4"},[i("div",{staticClass:"w-64"},[i("DatepickerV2",{attrs:{label:"Date de la fermeture du site",id:"closed_at",validationName:"Date","disabled-dates":{from:new Date},language:e.dateLanguage,"monday-first":!0,"full-month-name":!0,format:"dd MMMM yyyy",rules:"required"},model:{value:e.form.closed_at,callback:function(t){e.$set(e.form,"closed_at",t)},expression:"form.closed_at"}})],1),i("CheckableGroup",{attrs:{direction:"row",id:"closed_with_solutions",rules:"required",label:"Est-ce que ce site a été résorbé définitivement ?",info:"C’est-à-dire sans réinstallation illicite et\n avec un accompagnement de la majorité des\n personnes vers des solutions pérennes",validationName:"Est-ce que ce site a été résorbé définitivement ?"}},[i("Radio",{staticClass:"mr-1",attrs:{checkValue:!0,label:"Oui",variant:"card"},model:{value:e.form.closed_with_solutions,callback:function(t){e.$set(e.form,"closed_with_solutions",t)},expression:"form.closed_with_solutions"}}),i("Radio",{attrs:{checkValue:!1,label:"Non",variant:"card"},model:{value:e.form.closed_with_solutions,callback:function(t){e.$set(e.form,"closed_with_solutions",t)},expression:"form.closed_with_solutions"}})],1),i("CheckableGroup",{attrs:{label:"Cause de la disparition",id:"status",direction:"vertical",rules:"required",validationName:"Cause de la disparition"}},e._l(e.statusValues,(function(t,a){return i("Radio",{key:a,attrs:{label:t.label,checkValue:t.value},model:{value:e.form.status,callback:function(t){e.$set(e.form,"status",t)},expression:"form.status"}})})),1),i("CheckableGroup",{attrs:{label:"Orientations des ménages :"}},e._l(e.closingSolutions,(function(t,a){return i("div",{key:t.id},[i("Checkbox",{key:a,attrs:{label:t.label,checkValue:t.id,id:"solutions"},model:{value:e.checkedSolutions,callback:function(t){e.checkedSolutions=t},expression:"checkedSolutions"}}),i("div",{staticClass:"flex items-center ml-10"},[i("InlineTextInput",{staticClass:"mr-4",attrs:{label:"Ménages : ",type:"number"},model:{value:e.form.solutions[t.id].householdsAffected,callback:function(i){e.$set(e.form.solutions[t.id],"householdsAffected",i)},expression:"\n form.solutions[item.id]\n .householdsAffected\n "}}),i("InlineTextInput",{attrs:{label:"Personnes : ",type:"number"},model:{value:e.form.solutions[t.id].peopleAffected,callback:function(i){e.$set(e.form.solutions[t.id],"peopleAffected",i)},expression:"\n form.solutions[item.id]\n .peopleAffected\n "}})],1)],1)})),0)],1),i("div",{staticClass:"flex justify-end mt-8"},[i("Button",{staticClass:"mr-8",attrs:{variant:"primaryText",type:"button"},on:{click:e.closeModal}},[e._v("Annuler")]),i("Button",{attrs:{variant:"tertiary",type:"primary",loading:e.loading}},[e._v("Valider")])],1)])]}}])})]},proxy:!0}])})},hx=[],vx={components:{CheckableGroup:zi,InlineTextInput:Me},props:{isOpen:{type:Boolean},town:{type:Object}},methods:{closeModal(){this.$emit("closeModal")},async submitClose(){this.loading=!0,this.error=null;try{await Nl(this.town.id,{...this.form,solutions:Object.keys(this.form.solutions).filter(e=>this.form.solutions[e].checked).map(e=>({id:e,peopleAffected:this.form.solutions[e].peopleAffected?parseInt(this.form.solutions[e].peopleAffected,10):null,householdsAffected:this.form.solutions[e].householdsAffected?parseInt(this.form.solutions[e].householdsAffected,10):null}))})}catch(t){return this.loading=!1,this.error=t,void this.$refs.form.setErrors(t.fields)}gu({group:"notifications",type:"success",title:"Site correctement fermé",text:"Le site a bien été marqué comme fermé"});const e=await Il(this.$route.params.id);this.$emit("updateTown",e),this.loading=!1,this.closeModal()},closePopin(){this.$emit("cancelCloseTown")}},data(){const{closing_solutions:e}=ar();return{loading:!1,error:null,form:{closed_at:null,closed_with_solutions:null,status:null,solutions:this.town.closingSolutions?e.reduce((e,t)=>{const i=Object.assign(e,{}),a=this.town.closingSolutions.find(e=>e.id===t.id);return i[t.id]={checked:void 0!==a,peopleAffected:a&&a.peopleAffected,householdsAffected:a&&a.householdsAffected},i},{}):[]},closingSolutions:e,dateLanguage:Vi["fr"],checkedSolutions:[],statusValues:[{value:"closed_by_justice",label:"Exécution d'une décision de justice"},{value:"closed_by_admin",label:"Exécution d'une décision administrative"},{value:"other",label:"Autre"},{value:"unknown",label:"Raison inconnue"}]}},watch:{checkedSolutions:function(e){Object.keys(this.form.solutions).forEach(t=>{this.form.solutions[t].checked=e.includes(Number(t))})}}},fx=vx,gx=(i("cee3"),Object(u["a"])(fx,mx,hx,!1,null,null,null)),bx=gx.exports,_x=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("Modal",{staticClass:"modalContainer",attrs:{isOpen:!0,closeModal:e.closeModal},scopedSlots:e._u([{key:"title",fn:function(){return[i("div",[e._v("J'interviens ici")])]},proxy:!0},{key:"body",fn:function(){return[i("ValidationObserver",{ref:"form",on:{submit:function(t){return t.preventDefault(),e.submit(t)}},scopedSlots:e._u([{key:"default",fn:function(t){var a=t.errors;return[i("form",[i("div",{staticClass:"modalWrapper w-128 -mx-4 -mt-8 p-4"},[i("ValidationProvider",{attrs:{vid:"user_id"}}),i("ValidationProvider",{attrs:{vid:"themes"}}),i("CheckableGroup",{attrs:{direction:"horizontal",label:"Quels sont vos champs d'intervention sur ce site ?",validationName:"Champs d'intervention"}},e._l(e.themeIds,(function(t){return i("Checkbox",{key:t,attrs:{variant:"card",label:e.themes[t],checkValue:t},model:{value:e.form.themes,callback:function(t){e.$set(e.form,"themes",t)},expression:"form.themes"}})})),1),i("TextInput",{attrs:{label:"Autre"},model:{value:e.form.autre,callback:function(t){e.$set(e.form,"autre",t)},expression:"form.autre"}}),null!==e.error?i("p",{staticClass:"bg-red200 p-6 mb-6"},[i("strong",[e._v(e._s(e.error))]),i("ul",{staticClass:"mt-4"},e._l(a,(function(t,a){return i("li",{key:a},[e._v(" "+e._s(t[0])+" ")])})),0)]):e._e()],1),i("div",{staticClass:"flex justify-end mt-8"},[i("Button",{staticClass:"mr-8",attrs:{variant:"primaryText",type:"button"},on:{click:e.closeModal}},[e._v("Annuler")]),i("Button",{attrs:{variant:"tertiary",type:"primary",loading:e.loading}},[e._v("Valider")])],1)])]}}])})]},proxy:!0}])})},yx=[],wx={props:{town:{type:Object,required:!0},isOpen:{type:Boolean}},data(){const{actor_themes:e,user:t}=ar(),i=this.town.actors.find(({id:e})=>e===t.id);let a=void 0!==i?i.themes:[];const s=a.find(({id:e})=>"autre"===e);return{loading:!1,error:null,themes:e,userId:t.id,mode:void 0===i?"add":"update",form:{themes:a.map(({id:e})=>e).filter(e=>"autre"!==e),autre:s&&s.value||""}}},computed:{themeIds(){return Object.keys(this.themes).filter(e=>"autre"!==e)},formattedThemes(){const e=this.form.themes.map(e=>({id:e}));return""!==this.form.autre&&e.push({id:"autre",value:this.form.autre}),e},successWording(){return"add"===this.mode?"Vous avez été rajouté à la liste des intervenants":"Vos champs d'intervention ont bien été modifiés"}},methods:{closeModal(){this.$emit("closeModal")},async submit(){if(!this.loading){this.loading=!0,this.error=null;try{await this.dispatch(),gu({group:"notifications",type:"success",title:"Succès",text:this.successWording}),this.closeModal()}catch(e){this.error=e&&e.user_message||"Une erreur inconnue est survenue",e&&e.fields&&this.$refs.form.setErrors(e.fields)}this.loading=!1}},dispatch(){return"add"===this.mode?this.$store.dispatch("addTownActor",{townId:this.town.id,actor:{user_id:this.userId,themes:this.formattedThemes}}):this.$store.dispatch("updateTownActorThemes",{townId:this.town.id,userId:this.userId,themes:this.formattedThemes})}}},Cx=wx,kx=(i("6535"),Object(u["a"])(Cx,_x,yx,!1,null,"2c8fb903",null)),xx=kx.exports,Sx=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("Modal",{staticClass:"modalContainer",attrs:{isOpen:e.isOpen,closeModal:e.closeModal},scopedSlots:e._u([{key:"title",fn:function(){return[i("div",[e._v("Inviter un intervenant")])]},proxy:!0},{key:"body",fn:function(){return[i("ValidationObserver",{ref:"form",on:{submit:function(t){return t.preventDefault(),e.submit(t)}}},[i("form",[i("p",{staticClass:"-mt-6"},[e._v(" Favorisez la synergie entre les acteurs en invitant un intervenant, un courriel lui sera envoyé. ")]),i("div",{staticClass:"mt-4"},[i("p",[i("span",{staticClass:"font-bold"},[e._v("L'intervenant est-il un utilisateur de la plateforme Résorption-bidonvilles ?")]),i("br"),e._v(" Cherchez le nom de la personne en tapant au minimum les premières lettre de son nom ou prénom ")]),i("div",{staticClass:"w-128"},[i("AutocompleteV2",{ref:"autocomplete",attrs:{id:"user_id",label:"",prefixIcon:"user",search:e.autocomplete,loading:e.searching,getResultValue:e.getResultValue},model:{value:e.form.user,callback:function(t){e.$set(e.form,"user",t)},expression:"form.user"}})],1)]),i("div",{staticClass:"w-128"},[i("p",{staticClass:"mb-2"},[i("span",{staticClass:"font-bold"},[e._v("L'intervenant n'est pas présent dans cette liste ?")]),i("br"),e._v("Saisissez son courriel pour l'inviter ")]),i("TextInput",{attrs:{id:"email",label:"Courriel"},model:{value:e.form.email,callback:function(t){e.$set(e.form,"email",t)},expression:"form.email"}})],1),null!==e.error?i("p",{staticClass:"bg-red200 p-6 mb-6 font-bold"},[e._v(" "+e._s(e.error)+" ")]):e._e(),i("div",{staticClass:"flex justify-end mt-2"},[i("Button",{staticClass:"mr-8",attrs:{variant:"primaryText",type:"button"},on:{click:e.closeModal}},[e._v("Annuler")]),i("Button",{attrs:{variant:"tertiary",type:"primary",loading:e.loading}},[e._v("Valider")])],1)])])]},proxy:!0}])})},$x=[],Px={props:{townId:{type:Number,required:!0},isOpen:{type:Boolean,required:!1,default:!1}},data(){return{loading:!1,searching:!1,error:null,form:{user:null,email:""}}},computed:{successWording(){return this.form.user&&this.form.user.id?"L'intervenant a bien été ajouté et notifié par courriel":"L'invitation a bien été envoyée"}},methods:{closeModal(){this.resetForm(),this.$emit("closeModal")},resetForm(){this.error=null,this.$refs.form.reset(),this.$refs.autocomplete.removeItem(),this.form.email=""},async autocomplete(e){if(!e||e.length<3)return Promise.resolve([]);this.searching=!0;const{relations:t}=await Rl(this.townId,e);return this.searching=!1,t},getResultValue(e){return e&&e.first_name?`${e.first_name} ${e.last_name.toUpperCase()} - ${e.organization.abbreviation||e.organization.name}`:""},async submit(){if(!this.loading){this.loading=!0,this.error=null,this.$refs.form.reset();try{await this.dispatch(),gu({group:"notifications",type:"success",title:"Succès",text:this.successWording}),this.closeModal()}catch(e){e&&e.fields&&this.$refs.form.setErrors(e.fields),this.error=e&&e.user_message||"Une erreur inconnue est survenue"}this.loading=!1}},dispatch(){return this.form.user&&this.form.user.id?this.$store.dispatch("addTownActor",{townId:this.townId,actor:{user_id:this.form.user.id}}):this.$store.dispatch("inviteNewTownActor",{townId:this.townId,email:this.form.email})}}},Tx=Px,Ix=Object(u["a"])(Tx,Sx,$x,!1,null,null,null),Ox=Ix.exports,Ax={components:{TownDetailsActorAlert:px,TownDetailsPanelActors:Ak,TownDetailsCloseModal:bx,TownDetailsActorThemesModal:xx,TownDetailsHistorySidePanel:tx,TownDetailsNewComment:Mk,TownDetailsComments:Qk,PrivateLayout:Gp,PrivateContainer:zp,TownDetailsHeader:Kw,TownDetailsLeftColumn:uC,TownDetailsPanelCharacteristics:$C,TownDetailsPanelPeople:NC,TownDetailsPanelLivingConditions:YC,TownDetailsPanelJudicial:ik,TownDetailsCovidCommentsSidePanel:rx,TownDetailsInviteActorModal:Ox},data(){const e=nr("shantytown.list"),{field_types:t,user:i}=ar();return{historyOpen:!1,closeOpen:!1,covidOpen:!1,actorThemesOpen:!1,actorAlertVisible:!0,inviteActorOpen:!1,error:null,loading:!1,fieldTypes:t,user:i,hasJusticePermission:!0===e.data_justice}},computed:{town(){return this.$store.state.detailedTown},isNotAnActor(){return!this.town.actors.some(({id:e})=>e===this.user.id)}},created(){this.fetchData()},methods:{hasPermission:or,openActorThemes(){this.actorThemesOpen=!0},openInviteActorModal(){this.inviteActorOpen=!0},openHistory(){this.historyOpen=!0},openCancel(){this.closeOpen=!0},openCovid(){this.covidOpen=!0},deleteTown(){confirm("Êtes-vous sûr(e) de vouloir supprimer définitivement ce site ? Cette suppression est irréversible.")&&El(this.$route.params.id).then(()=>{gu({group:"notifications",type:"success",title:"Succès",text:"Le site a été supprimé définitivement de la base"}),this.$router.replace("/liste-des-sites")}).catch(e=>{alert(e.user_message)})},async fetchData(){if(!0!==this.loading){this.loading=!0,this.error=null;try{await this.$store.dispatch("fetchTownDetails",this.$route.params.id)}catch(e){this.error=e&&e.user_message||"Une erreur inconnue est survenue"}this.loading=!1}}}},Nx=Ax,Ex=(i("ae2c"),Object(u["a"])(Nx,Hw,Gw,!1,null,"40e0e3b1",null)),jx=Ex.exports,Dx=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"v1"},[i("div",{staticClass:"page--withMargin"},[i("NavBar"),e.preloading&&!e.preloadError?i("div",{staticClass:"notification full-width"},[i("img",{staticClass:"spinner",attrs:{src:"/img/spinner_dark.svg",width:"20"}}),i("span",[e._v("Chargement des données en cours...")])]):e.preloading&&e.preloadError?i("div",{staticClass:"notification error full-width"},[i("span",[e._v(e._s(e.preloadError)+". "),i("a",{attrs:{href:"#"},on:{click:e.preload}},[e._v("Réessayer ?")])])]):i("div",[i("Form",e._b({ref:"form",on:{complete:e.onComplete},model:{value:e.formData,callback:function(t){e.formData=t},expression:"formData"}},"Form",e.formDefinition,!1)),i("p",[e._v("Plus d'informations sur les droits d'accès et les utilisateurs de la plateforme"),i("br"),i("router-link",{staticClass:"link",attrs:{to:"/typologie-des-acces"}},[i("font-awesome-icon",{attrs:{icon:"file-pdf"}}),e._v(" Guide des accès et de l'administrateur")],1),i("br"),i("router-link",{staticClass:"link",attrs:{to:"/charte-d-engagement"}},[i("font-awesome-icon",{attrs:{icon:"file-pdf"}}),e._v(" Charte d'engagement de l'utilisateur")],1)],1)],1)],1)])},qx=[],Mx={components:{NavBar:Mr,Form:Cu},data(){const e={first_name:"",last_name:"",password:""},t={title:"Modifier vos données personnelles",description:"Vous pouvez compléter votre profil d'utilisateur et modifier votre mot de passe sur cette page.",steps:[{title:"",sections:[{title:"",inputs:{first_name:{label:"Votre prénom",mandatory:!0,type:"text"},last_name:{label:"Votre nom de famille",mandatory:!0,type:"text"},password:{label:"Mot de passe",description:"Laissez ce champ vide si vous souhaitez conserver votre mot de passe actuel.

Votre mot de passe doit comporter au minimum 12 caractères, une majuscule, une minuscule, et un caractère non alphabétique (exemples : '.' ';' ',' '_' '!' '?', ...)
Nous vous recommandons de choisir une phrase intelligible en guise de mot de passe : plus simple à retenir qu'une suite de caractères aléatoires, et plus sécurisée.",mandatory:!1,type:"password"}}}],wording:{submit:"Modifier",error:"Les modifications n'ont pas été appliquées",success:"Les modifications ont bien été prises en compte"},submit:gr}]};return{preloading:!0,preloadError:null,loading:!1,formData:e,formDefinition:t}},created(){this.preload()},methods:{preload(){this.preloadError=null,this.preloading=!0,this.fetchData().then(()=>{this.preloading=!1}).catch(e=>{this.preloadError=e.user_message})},fetchData(){return fr().then(e=>{this.formData.first_name=e.first_name,this.formData.last_name=e.last_name,this.formData.password=""})},onComplete(){this.preload()}}},Lx=Mx,Fx=Lx,zx=(i("9985"),Object(u["a"])(Fx,Dx,qx,!1,null,"dd1c1884",null)),Bx=zx.exports,Rx=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"v1"},[i("div",{staticClass:"page--withMargin"},[i("NavBar"),i("section",{staticClass:"section section-white"},[i("div",{staticClass:"container"},[i("h1",[e._v("Liste des utilisateurs")]),"loading"===e.state?i("div",{staticClass:"notification full-width"},[i("img",{staticClass:"spinner",attrs:{src:"/img/spinner_dark.svg",width:"20"}}),i("span",[e._v("Chargement des données en cours...")])]):e._e(),"error"===e.state?i("div",{staticClass:"notification error full-width"},[i("span",[e._v(e._s(e.error)+". "),i("a",{attrs:{href:"#"},on:{click:e.retryLoading}},[e._v("Réessayer ?")])])]):e._e(),"loaded"===e.state?i("div",[i("header",{staticClass:"userList-header"},[i("router-link",{staticClass:"link",attrs:{to:"/typologie-des-acces"}},[i("font-awesome-icon",{attrs:{icon:"file-pdf"}}),e._v(" Guide des accès et de l'administrateur")],1),i("router-link",{staticClass:"link",attrs:{to:"/charte-d-engagement"}},[i("font-awesome-icon",{attrs:{icon:"file-pdf"}}),e._v(" Charte d'engagement de l'utilisateur")],1),i("router-link",{staticClass:"button",attrs:{to:"/nouvel-utilisateur"}},[e._v("Ajouter un utilisateur")])],1),i("Table",e._b({on:{"on-row-click":e.routeToUserValidation},scopedSlots:e._u([{key:"table-row",fn:function(t){return["status"===t.column.id?i("span",[i("font-awesome-icon",{staticClass:"user-statusIcon",class:"user-statusIcon--"+t.formattedRow[t.column.field].icon,attrs:{icon:t.formattedRow[t.column.field].icon}}),e._v(" "),i("span",{domProps:{innerHTML:e._s(t.formattedRow[t.column.field].label)}})],1):"role"===t.column.id?i("span",[i("span",{staticClass:"role"},[e._v(e._s(t.formattedRow[t.column.field]))])]):"validate"===t.column.id?i("span",[i("span",[i("font-awesome-icon",{staticClass:"user-validateIcon",attrs:{icon:"arrow-right"},on:{click:e.routeToUserValidation}})],1)]):i("span",{class:"userList-row--"+t.column.id},[e._v(e._s(t.formattedRow[t.column.field]))])]}}],null,!1,1614286866)},"Table",e.tableProperties,!1))],1):e._e()])])],1)])},Vx=[],Ux=i("f617"),Hx=(i("dac4"),function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"alert"},[i("div",{ref:"wrapper",staticClass:"wrapper"},[i("div",{staticClass:"alert-close"},[i("div",{staticClass:"alert-close-wrapper"},[i("img",{attrs:{src:"/img/cross.svg",alt:"",width:"20"},on:{click:e.close}})])]),e._t("default")],2)])}),Gx=[],Wx={mounted(){document.addEventListener("click",this.checkOutsideClick)},destroyed(){document.removeEventListener("click",this.checkOutsideClick)},methods:{checkOutsideClick(e){0!==this.$refs.wrapper.offsetHeight&&(this.$refs.wrapper.contains(e.target)||this.close())},close(){this.$emit("close")}}},Jx=Wx,Qx=Jx,Yx=(i("aaf3"),Object(u["a"])(Qx,Hx,Gx,!1,null,"70f3cb96",null)),Zx=Yx.exports,Kx={components:{NavBar:Mr,Table:Ux["a"],Modal:Zx},data(){const{token_expires_in:e}=ar();return{tokenExpiresIn:e,users:[],error:null,state:null}},computed:{tableProperties(){return{columns:[{id:"lastName",label:"NOM",field:e=>e.last_name.toUpperCase()},{id:"firstName",label:"PRÉNOM",field:"first_name"},{id:"organization",label:"STRUCTURE",field:e=>null!==e.organization.type.abbreviation?`${e.organization.type.abbreviation} (${e.organization.name})`:null!==e.organization.abbreviation?`${e.organization.abbreviation} (${e.organization.name})`:e.organization.name},{id:"location",label:"TERRITOIRE",field:e=>{if("nation"===e.organization.location.type)return"National";const t=e.organization.location[e.organization.location.type];return t?"departement"===e.organization.location.type?`${t.name} (${t.code})`:t.name:""}},{id:"role",label:"TYPE D'ACCÈS",field:"role",width:"230px",thClass:"userList-column--role",tdClass:"userList-column--role"},{id:"status",label:"STATUT DU COMPTE",field:e=>"active"===e.status?"local_admin"===e.role_id?{icon:"user-shield",label:"Administrateur local"}:"national_admin"===e.role_id?{icon:"user-shield",label:"Administrateur national"}:{icon:"user-check",label:"Compte activé le "+App.formatDate(e.user_access.used_at,"d M y")}:null!==e.user_access?Date.now()-1e3*e.user_access.expires_at>=0?{icon:"unlink",label:"Lien expiré le "+App.formatDate(e.user_access.expires_at,"d M y")}:{icon:"paper-plane",label:"Accès envoyé le "+App.formatDate(e.user_access.created_at,"d M y")}:{icon:"flag",label:"Demandé le "+App.formatDate(e.created_at,"d M y")}},{id:"validate",label:"",field:()=>!0}],rows:this.users,"row-style-class":e=>"active"!==e.status&&null===e.user_access?"userList-row userList-row--highlight":"userList-row","sort-options":{enabled:!0},"search-options":{enabled:!0,placeholder:"Rechercher par utilisateur, structure, territoire, ou type d'accès"}}}},created(){this.load()},methods:{load(){-1!==[null,"error"].indexOf(this.state)&&(this.state="loading",this.error=null,br().then(e=>{this.users=e.filter(({status:e})=>"inactive"!==e),this.state="loaded"}).catch(({user_message:e})=>{this.error=e,this.state="error"}))},retryLoading(){this.load()},routeToUserValidation(e){const t=this.$router.resolve("/nouvel-utilisateur/"+e.row.id);Bo(t.href)}}},Xx=Kx,eS=Xx,tS=(i("5e31"),Object(u["a"])(eS,Rx,Vx,!1,null,null,null)),iS=tS.exports,aS=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"v1"},[i("div",{staticClass:"page--withMargin"},[e.isPopup?e._e():i("NavBar"),"loading"===e.state?i("div",{staticClass:"notification full-width"},[i("img",{staticClass:"spinner",attrs:{src:"/img/spinner_dark.svg",width:"20"}}),i("span",[e._v("Chargement des données en cours...")])]):e._e(),"error"===e.state?i("div",{staticClass:"notification error full-width"},[i("span",[e._v(e._s(e.loadingError)+". "),i("span",{on:{click:e.retryLoading}},[e._v("Réessayer ?")])])]):e._e(),"loaded"===e.state?i("div",[i("Form",e._b({ref:"form",on:{complete:e.onComplete},model:{value:e.formData,callback:function(t){e.formData=t},expression:"formData"}},"Form",e.formDefinition,!1))],1):e._e()],1)])},sS=[],nS=(e,t)=>({data(){const i={},a={title:e.title,descriptionTitle:"",description:e.description,steps:[{wording:e.stepWording,sections:[{title:"Informations personnelles",inputs:{last_name:{label:"NOM",mandatory:!0,type:"text"},first_name:{label:"Prénom",mandatory:!0,type:"text"},email:{label:"Courriel",mandatory:!0,type:"text"}}},{title:e.organizationTitle,inputs:{organization_category:{label:e.organization,mandatory:!0,type:"radio",options:[]},organization_type:{label:"Précisez le type de structure",mandatory:!0,type:"select",options:[],condition({organization_category:e}){return"public_establishment"===e}},organization_public:{label:"Territoire de rattachement",mandatory:!0,type:"select",options:[],condition:({organization_category:e,organization_type:t})=>"public_establishment"===e&&void 0!==t},territorial_collectivity:{label:"Nom de la structure",mandatory:!0,type:"collectivity",condition({organization_category:e}){return"territorial_collectivity"===e}},association:{label:"Nom de la structure",mandatory:!0,type:"select",options:[],condition({organization_category:e}){return"association"===e}},new_association_name:{label:"Précisez le nom complet",mandatory:!0,type:"text",condition({organization_category:e,association:t}){return"association"===e&&"Autre"===t}},new_association_abbreviation:{label:"Précisez l'acronyme, si besoin",mandatory:!1,type:"text",condition({organization_category:e,association:t}){return"association"===e&&"Autre"===t}},departement:{label:"Territoire de rattachement",mandatory:!0,type:"select",options:[],condition({organization_category:e}){return"association"===e}},organization_administration:{label:"Nom de la structure",mandatory:!0,type:"select",options:[],condition({organization_category:e}){return"administration"===e}},position:{label:e.position,mandatory:!0,type:"text",condition({organization_category:e}){return void 0!==e}}}}],submit:e=>t({...e,legal:e.legal&&1===e.legal.length&&!0===e.legal[0]})}]};return{state:null,loadingError:null,formData:i,formDefinition:a}},watch:{"formData.organization_type":function(){this.$refs.form.getInputById("organization_public").options=[],qu(this.formData.organization_type).then(({organizations:e})=>{this.$refs.form.getInputById("organization_public").options=e.map(e=>{const t=e.location_type;let i=e[t+"_name"];return"nation"===t?i="France":"departement"===t&&(i=`${e[t+"_code"]} - ${e[t+"_name"]}`),{value:e.id,label:i}}),this.formData.organization_public=void 0})}},methods:{load(){-1!==[null,"error"].indexOf(this.state)&&(this.state="loading",this.loadingError=null,Promise.all([Eu(),ju("public_establishment"),Du("administration"),Du("association"),sl()]).then(([{categories:t},{types:i},{organizations:a},{organizations:s},{departements:n}])=>{this.formDefinition.steps[0].sections[1].inputs.organization_category.options=t.map(({uid:e,name_singular:t})=>({value:e,label:t})),this.formDefinition.steps[0].sections[1].inputs.organization_type.options=i.filter(({numberOfOrganizations:e})=>e>0).filter(({name_singular:e})=>"Gendarmerie nationale"!==e).map(({id:e,name_singular:t,abbreviation:i})=>({value:e,label:i||t})),this.formDefinition.steps[0].sections[1].inputs.organization_administration.options=a.map(({id:e,name:t})=>({value:e,label:t}));const o=[];this.formDefinition.steps[0].sections[1].inputs.association.options=[{label:"Autres cas",options:[{value:"Autre",label:e.associationIsMissing}]},{label:"Associations connues",options:s.filter(e=>-1===o.indexOf(e.name)&&(o.push(e.name),!0)).map(({name:e,abbreviation:t})=>({value:e,label:null!==t?`${t} (${e})`:e}))}],this.formDefinition.steps[0].sections[1].inputs.departement.options=n.map(({code:e,name:t})=>({value:e,label:`${e} - ${t}`})),this.state="loaded"}).catch(({user_message:e})=>{this.loadingError=e,this.state="error"}))}}});const oS=nS({title:"Créer un utilisateur",organizationTitle:"Structure",organization:"Quelle est la structure de l'utilisateur ?",position:"Fonction de l'utilisateur",associationIsMissing:"L'association de l'utilisateur n'est pas dans cette liste",stepWording:{submit:"Continuer",error:"L'utilisateur n'a pas pu être créé",success:"L'utilisateur a bien été créé"}},vr);var rS={components:{NavBar:Mr,Form:Cu},data(){const e=oS.data();return e.isPopup=void 0!==this.$route.query.association_name,e.formDefinition.steps[0].sections.push({inputs:{legal:{label:"",mandatory:!1,type:"checkbox",options:[{value:!0,label:"Je certifie que ces données personnelles ont été saisies avec l'accord de leur propriétaire"}]}}}),void 0!==this.$route.query.association_name&&(e.formDefinition.steps[0].sections[1].inputs.organization_category.disabled=!0,e.formDefinition.steps[0].sections[1].inputs.association.disabled=!0,e.formDefinition.steps[0].sections[1].inputs.departement.disabled=!0),e},watch:Object.assign(oS.watch,{state(){"loaded"===this.state&&void 0!==this.$route.query.association_name&&(this.formData.organization_category="association",this.formData.association=this.$route.query.association_name,this.formData.departement=this.$route.query.association_departement)}}),mounted(){this.load()},methods:Object.assign(oS.methods,{retryLoading(){this.load()},onComplete(e){if(this.isPopup)return window.opener.postMessage(e,"*"),void window.close();this.$router.push("/nouvel-utilisateur/"+e.id)}})},lS=rS,cS=lS,uS=(i("3415"),Object(u["a"])(cS,aS,sS,!1,null,"17835908",null)),dS=uS.exports,pS=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"v1"},[i("div",{staticClass:"page--withMargin"},[i("NavBar"),"loading"===e.state?i("section",{staticClass:"section section-white",attrs:{id:"form"}},[e._m(0)]):e._e(),"error"===e.state?i("div",{staticClass:"notification error full-width"},[i("p",[i("font-awesome-icon",{attrs:{icon:"times"}}),e._v(" "),i("strong",[e._v("Une erreur est survenue")])],1),i("p",[i("span",{domProps:{innerHTML:e._s(e.error.replace(/\n/g,"
"))}})]),i("p",[i("a",{attrs:{href:"#"},on:{click:e.retryLoading}},[e._v("Réessayer ?")])])]):e._e(),"loaded"===e.state?i("div",[i("Form",e._b({ref:"form",on:{complete:e.onComplete},model:{value:e.formData,callback:function(t){e.formData=t},expression:"formData"}},"Form",e.formDefinition,!1))],1):e._e()],1)])},mS=[function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"container"},[i("div",{staticClass:"notification full-width"},[i("img",{staticClass:"spinner",attrs:{src:"/img/spinner_dark.svg",width:"20"}}),i("span",[e._v("Chargement des données en cours...")])])])}],hS={components:{NavBar:Mr,Form:Cu},data(){const e={email:""},t={title:"Activation de votre compte utilisateur",descriptionTitle:"",description:"Vous vous apprêtez à activer votre compte utilisateur, veuillez choisir votre mot de passe de connexion.",steps:[{title:"",sections:[{title:"",inputs:{email:{label:"Votre email",mandatory:!1,type:"text",disabled:!0},password:{label:"Définissez votre mot de passe",description:"Votre mot de passe doit comporter au minimum 12 caractères, une majuscule, une minuscule, et un caractère non alphabétique (exemples : '.' ';' ',' '_' '!' '?', ...)
Nous vous recommandons de choisir une phrase intelligible en guise de mot de passe : plus simple à retenir qu'une suite de caractères aléatoires, et plus sécurisée.",mandatory:!0,type:"password"}}}],wording:{submit:"Activer mon compte",error:"Votre compte n'a pas pu être activé",success:"Vous pouvez désormais vous connecter à la plateforme"},submitPrefix:'En cliquant sur "Activer mon compte", j\'accepte les conditions générales d\'utilisation et de partager mes données (nom, prénom, courriel, structure et lorsque renseigné, numéro de téléphone) aux utilisateurs de la plateforme via l’annuaire',submit:e=>xr(this.user.id,Object.assign(e,{token:this.$route.params.token}))}]};return{state:null,error:null,user:null,formData:e,formDefinition:t}},created(){this.load()},methods:{load(){-1!==[null,"error"].indexOf(this.state)&&(this.state="loading",this.error=null,Cr(this.$route.params.token).then(e=>{this.user=e,this.formData.email=e.email,this.state="loaded"}).catch(({user_message:e})=>{this.error=e,this.state="error"}))},retryLoading(){this.load()},onComplete(){this.$router.push("/")}}},vS=hS,fS=vS,gS=(i("771a"),Object(u["a"])(fS,pS,mS,!1,null,"043c7c3f",null)),bS=gS.exports,_S=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"v1"},[i("div",{staticClass:"page--withMargin"},[i("NavBar"),i("section",{staticClass:"section section-white"},[i("div",{staticClass:"container container--userValidation"},["loading"===e.state?i("div",{staticClass:"notification full-width"},[i("img",{staticClass:"spinner",attrs:{src:"/img/spinner_dark.svg",width:"20"}}),i("span",[e._v("Chargement des données en cours...")])]):e._e(),"error"===e.state?i("div",{staticClass:"notification error full-width"},[i("span",[e._v(e._s(e.error)+". "),i("a",{attrs:{href:"#"},on:{click:e.retryLoading}},[e._v("Réessayer ?")])])]):e._e(),"loaded"===e.state?i("section",{staticClass:"userValidation"},[e.user&&"active"!==e.user.status?i("h1",[e._v("Demande d'accès")]):e.user?i("h1",[e._v("Fiche utilisateur")]):e._e(),i("div",{staticClass:"userValidation-main"},[i("aside",{staticClass:"userInfo"},[i("section",{staticClass:"userInfo-section"},[i("hgroup",[i("h1",[e._v(e._s(e.user.last_name.toUpperCase())+" "+e._s(e.user.first_name))]),i("h3",[e._v("Structure")]),i("h2",[e._v(e._s(e.user.organization.name))])]),i("p",[e._v(e._s(e.user.position)),i("br"),i("span",{staticClass:"email"},[e._v(e._s(e.user.email))])])]),i("section",{staticClass:"userInfo-section"},[e.isExpired?i("p",{staticClass:"userHistory-item"},[i("span",[i("font-awesome-icon",{staticClass:"user-statusIcon",attrs:{icon:"unlink"}}),e._v(" "),i("strong",[e._v("Lien expiré")]),e._v(" le "+e._s(e.formatDate(e.user.user_access.expires_at,"d M y")))],1),i("br"),e._v("Un lien d'activation est valable "+e._s(e.tokenExpiresIn)+" jours"),i("br")]):e._e(),null!==e.user.user_access?i("p",{staticClass:"userHistory-item"},[i("span",[i("font-awesome-icon",{staticClass:"user-statusIcon",attrs:{icon:"paper-plane"}}),e._v(" "),i("strong",[e._v("Accès envoyé")]),e._v(" le "+e._s(e.formatDate(e.user.user_access.created_at,"d M y")))],1),i("br")]):e._e(),i("p",{staticClass:"userHistory-item"},[i("span",[i("font-awesome-icon",{staticClass:"user-statusIcon user-statusIcon--flag",attrs:{icon:"flag"}}),e._v(" "),i("strong",[e._v("Demandé")]),e._v(" le "+e._s(e.formatDate(e.user.created_at,"d M y")))],1)])]),i("section",{staticClass:"userInfo-section",domProps:{innerHTML:e._s((e.user.access_request_message||"").replace("\n","
"))}})]),i("main",{staticClass:"userPermissions"},[i("hgroup",{staticClass:"userPermissions-header"},[i("h1",[e._v("Accès")]),i("h2",{staticClass:"role"},[e._v(e._s(e.user.role))])]),i("p",[e._v(e._s(e.permission.description)),i("br")]),i("p",[e._v("Ainsi, l'utilisateur peut :")]),e.hasPermissionsFor("national")?i("UserPermissions",{attrs:{title:"À l'échelle nationale",items:e.permission.national_permissions}}):e._e(),e.hasPermissionsFor("local")?i("UserPermissions",{attrs:{title:"Sur le territoire d'intervention",items:e.permission.local_permissions}}):e._e(),e.options.length>0?i("div",[i("h1",{staticClass:"userPermissions-sectionTitle"},[e._v("Options")]),e.user.organization.active?e._e():i("p",[e._v("Pour cette structure, je souhaite :")]),i("ul",{staticClass:"userOptionsList"},e._l(e.options,(function(t,a){return i("li",[i("input",{directives:[{name:"model",rawName:"v-model",value:e.checkedOptions[t.id],expression:"checkedOptions[option.id]"}],attrs:{type:"checkbox",id:"option-"+a,disabled:e.user.organization.active},domProps:{value:t.id,checked:Array.isArray(e.checkedOptions[t.id])?e._i(e.checkedOptions[t.id],t.id)>-1:e.checkedOptions[t.id]},on:{change:function(i){var a=e.checkedOptions[t.id],s=i.target,n=!!s.checked;if(Array.isArray(a)){var o=t.id,r=e._i(a,o);s.checked?r<0&&e.$set(e.checkedOptions,t.id,a.concat([o])):r>-1&&e.$set(e.checkedOptions,t.id,a.slice(0,r).concat(a.slice(r+1)))}else e.$set(e.checkedOptions,t.id,n)}}}),i("label",{staticClass:"label-inline",attrs:{for:"option-"+a}},[e._v(e._s(t.label))])])})),0)]):e._e()],1)]),e.validation.error?i("div",{staticClass:"userValidation-error notification error"},[e._v(e._s(e.validation.error))]):e._e(),i("footer",{staticClass:"userValidationFooter"},["active"===e.user.status?i("p",{staticClass:"userValidationFooter-remove"},["loading"!==e.validation.state?i("span",{on:{click:e.remove}},[e._v("Supprimer l'accès")]):e._e()]):e._e(),"new"===e.user.status&&null===e.user.user_access?i("p",{staticClass:"userValidationFooter-deny"},["loading"!==e.validation.state?i("span",{on:{click:e.deny}},[e._v("Refuser l'accès")]):e._e()]):e._e(),"new"===e.user.status?i("p",{staticClass:"userValidationFooter-allow"},[i("button",{staticClass:"button",attrs:{disabled:"loading"===e.validation.state,readonly:"loading"===e.validation.state},on:{click:e.validate}},["loading"===e.validation.state?i("img",{attrs:{src:"/img/spinner_light.svg",width:"20"}}):i("span",[e._v("Envoyer un accès")])]),i("br"),e._m(0)]):e._e()])]):e._e()])])],1)])},yS=[function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("span",[e._v("L'utilisateur va recevoir"),i("br"),e._v("un mail avec un lien d'activation")])}],wS=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("h1",{staticClass:"userPermissions-sectionTitle"},[e._v(e._s(e.title))]),i("ul",{staticClass:"userPermissionsList"},e._l(e.parsedItems,(function(t){var a;return i("li",{class:(a={"userPermissionsList-item":!0},a["userPermissionsList-item--"+t.type]=!0,a["userPermissionsList-item--subsection"]=!0===t.subsection,a)},[i("span",{domProps:{innerHTML:e._s(t.label.replace(/%(.+?)%/gi,"$1"))}}),t.comments?i("span",{staticClass:"userPermissionsList-comments"},[i("br"),e._v(e._s(t.comments))]):e._e()])})),0)])},CS=[];const kS={view:"eye",edit:"pencil-alt",deny:"times"};var xS={props:{title:{type:String,required:!0},items:{type:Array,required:!0}},computed:{parsedItems(){return this.items.reduce((e,t)=>(t.length>0&&Object.assign(t[0],{subsection:!0}),[...e,...t.map(this.resolveIcon)]),[])}},methods:{resolveIcon(e){return{...e,icon:kS[e.type]}}}},SS=xS,$S=SS,PS=(i("18f7"),Object(u["a"])($S,wS,CS,!1,null,null,null)),TS=PS.exports;let IS;var OS={components:{NavBar:Mr,Table:Ux["a"],UserPermissions:TS},data(){let e;return({permissions_description:IS,activation_token_expires_in:e}=ar()),{user:null,error:null,state:null,loading:!1,validation:{state:null,error:null},checkedOptions:{},tokenExpiresIn:e/3600/24}},computed:{permission(){return this.user?IS[this.user.role_id]:null},options(){return null!==this.user&&this.permission?this.permission.options:[]},isExpired(){const e=Date.now();return null!==this.user&&"active"!==this.user.status&&null!==this.user.user_access&&e-1e3*this.user.user_access.expires_at>0}},created(){this.load()},methods:{formatDate(...e){return App.formatDate.call(App,...e)},load(){-1!==[null,"error"].indexOf(this.state)&&(this.state="loading",this.error=null,_r(this.$route.params.id).then(e=>{this.user=e,this.checkedOptions=this.options.reduce((t,i)=>Object.assign(t,{[i.id]:-1!==e.permission_options.indexOf(i.id)}),{}),this.state="loaded"}).catch(({user_message:e})=>{this.error=e,this.state="error"}))},retryLoading(){this.load()},hasPermissionsFor(e){return this.permission&&this.permission[e+"_permissions"]&&this.permission[e+"_permissions"].length>0},validate(){"loading"!==this.validation.state&&(this.validation.state="loading",this.validation.error=null,yr(this.$route.params.id,{options:this.checkedOptions}).then(()=>{this.validation.state=null,gu({group:"notifications",type:"success",title:"Accès envoyé",text:"Un accès a été envoyé à l'utilisateur"}),this.$router.push("/liste-des-utilisateurs")}).catch(({user_message:e})=>{this.validation.state=null,this.validation.error=e}))},deny(){"loading"!==this.validation.state&&(this.validation.state="loading",this.validation.error=null,wr(this.$route.params.id).then(()=>{this.validation.state=null,gu({group:"notifications",type:"success",title:"Accès refusé",text:"L'utilisateur a été supprimé de la base"}),this.$router.push("/liste-des-utilisateurs")}).catch(({user_message:e})=>{this.validation.state=null,this.validation.error=e}))},remove(){"loading"!==this.validation.state&&window.confirm("Êtes-vous sûr de vouloir supprimer cet accès ?")&&(this.validation.state="loading",this.validation.error=null,Pr(this.$route.params.id).then(()=>{this.validation.state=null,gu({group:"notifications",type:"success",title:"Accès supprimé",text:"L'utilisateur a été supprimé de la base"}),this.$router.push("/liste-des-utilisateurs")}).catch(({user_message:e})=>{this.validation.state=null,this.validation.error=e}))}}},AS=OS,NS=AS,ES=(i("2207"),Object(u["a"])(NS,_S,yS,!1,null,null,null)),jS=ES.exports,DS=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"v1"},[i("div",{staticClass:"page--withMargin"},[i("NavBar"),i("section",{staticClass:"section section-white"},[i("div",{staticClass:"container"},[i("Form",e._b({on:{complete:e.onComplete},model:{value:e.formData,callback:function(t){e.formData=t},expression:"formData"}},"Form",e.formDefinition,!1))],1)])],1)])},qS=[],MS={components:{NavBar:Mr,Form:Cu},data(){const{user:{id:e,email:t}}=ar();return{formData:{email:t},formDefinition:{title:"Résorption Bidonvilles a été mise à jour",description:"La plateforme a été mise à jour en septembre 2019. A présent, il est possible pour les correspondants d'ouvrir des accès à un plus grand nombre d'acteurs.",steps:[{sections:[{title:"Pour compléter le futur annuaire, merci de renseigner les champs suivants",inputs:{email:{type:"text",mandatory:!1,label:"Votre email",disabled:!0},position:{type:"text",mandatory:!0,label:"Votre fonction"},phone:{type:"text",mandatory:!1,label:"Votre numéro de téléphone",specificProps:{maxlength:10}}}},{title:"Pour bénéficier de la mise à jour, merci de créer un nouveau mot de passe",inputs:{password:{type:"password",mandatory:!0,label:"Définissez votre nouveau mot de passe",description:"Votre mot de passe doit comporter au minimum 12 caractères, une majuscule, une minuscule, et un caractère non alphabétique (exemples : '.' ';' ',' '_' '!' '?', ...)
Nous vous recommandons de choisir une phrase intelligible en guise de mot de passe : plus simple à retenir qu'une suite de caractères aléatoires, et plus sécurisée."}}}],wording:{submit:"Mettre à jour",error:"Votre compte n'a pas pu être mis à jour",success:"Votre compte a ben été mis à jour"},submit:t=>$r(e,t)}]}}},methods:{onComplete(){tr().then(()=>{this.$router.push({path:"/"})}).catch(()=>{window.location.reload()})}}},LS=MS,FS=LS,zS=(i("e517"),Object(u["a"])(FS,DS,qS,!1,null,null,null)),BS=zS.exports,RS=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"v1"},[i("div",{staticClass:"page--withMargin"},[i("NavBar"),i("section",{staticClass:"section section-white requestNewPassword"},[i("div",{staticClass:"container"},[i("Form",e._b({on:{complete:e.onComplete},model:{value:e.formData,callback:function(t){e.formData=t},expression:"formData"}},"Form",e.formDefinition,!1))],1)])],1)])},VS=[],US={components:{NavBar:Mr,Form:Cu},data(){return{formData:{},formDefinition:{title:"Renouvellement de mot de passe",description:"Si vous avez perdu votre mot de passe, vous pouvez demander à en définir un nouveau.",steps:[{sections:[{inputs:{email:{type:"text",label:"Votre courriel",description:"Saisissez ici le courriel associé au compte Résorption Bidonvilles pour lequel vous souhaitez renouveler le mot de passe",mandatory:!0}}}],wording:{submit:"Renouveller mon mot de passe",success:"Un mail vous a été adressé avec les instructions",error:"La demande de renouvellement a échoué"},submit:({email:e})=>Tr(e)}]}}},methods:{onComplete(){this.$router.push({path:"/"})}}},HS=US,GS=HS,WS=(i("0ff0"),Object(u["a"])(GS,RS,VS,!1,null,null,null)),JS=WS.exports,QS=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"v1"},[i("div",{staticClass:"page--withMargin"},[i("NavBar"),i("section",{staticClass:"section section-white",attrs:{id:"form"}},[i("div",{staticClass:"container"},["loading"===e.state?i("div",{staticClass:"notification full-width"},[i("img",{staticClass:"spinner",attrs:{src:"/img/spinner_dark.svg",width:"20"}}),i("span",[e._v("Chargement des données en cours...")])]):e._e(),"error"===e.state?i("div",{staticClass:"notification error full-width"},[i("p",[i("font-awesome-icon",{attrs:{icon:"times"}}),e._v(" "),i("strong",[e._v("Une erreur est survenue")])],1),i("p",[i("span",{domProps:{innerHTML:e._s(e.error.replace(/\n/g,"
"))}})]),i("p",[i("a",{attrs:{href:"#"},on:{click:e.retryLoading}},[e._v("Réessayer ?")])])]):e._e(),"loaded"===e.state?i("div",[i("Form",e._b({ref:"form",on:{complete:e.onComplete},model:{value:e.formData,callback:function(t){e.formData=t},expression:"formData"}},"Form",e.formDefinition,!1))],1):e._e()])])],1)])},YS=[],ZS={components:{NavBar:Mr,Form:Cu},data(){const e={email:""},t={title:"Définition d'un nouveau mot de passe",description:"Le formulaire suivant vous permet de choisir un nouveau mot de passe",steps:[{title:"",sections:[{title:"",inputs:{email:{label:"Votre email",mandatory:!1,type:"text",disabled:!0},password:{label:"Définissez votre mot de passe",description:"Votre mot de passe doit comporter au minimum 12 caractères, une majuscule, une minuscule, et un caractère non alphabétique (exemples : '.' ';' ',' '_' '!' '?', ...)
Nous vous recommandons de choisir une phrase intelligible en guise de mot de passe : plus simple à retenir qu'une suite de caractères aléatoires, et plus sécurisée.",mandatory:!0,type:"password"}}}],wording:{submit:"Changer de mot de passe",error:"Votre mot de passe n'a pas pu être changé",success:"Votre nouveau mot de passe a été changé"},submit:e=>Sr(this.user.id,Object.assign(e,{token:this.$route.params.token}))}]};return{state:null,error:null,user:null,formData:e,formDefinition:t}},created(){this.load()},methods:{load(){-1!==[null,"error"].indexOf(this.state)&&(this.state="loading",this.error=null,kr(this.$route.params.token).then(e=>{this.user=e,this.formData.email=e.email,this.state="loaded"}).catch(({user_message:e})=>{this.error=e,this.state="error"}))},retryLoading(){this.load()},onComplete(){this.$router.push("/")}}},KS=ZS,XS=KS,e$=(i("f12c"),Object(u["a"])(XS,QS,YS,!1,null,null,null)),t$=e$.exports,i$=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"v1"},[i("div",{staticClass:"page--withMargin"},[i("NavBar"),i("section",["loaded"!==e.state?i("div",{staticClass:"container"},["loading"===e.state?i("div",{staticClass:"notification full-width"},[i("img",{staticClass:"spinner",attrs:{src:"/img/spinner_dark.svg",width:"20"}}),i("span",[e._v("Chargement des données en cours...")])]):e._e(),"error"===e.state?i("div",{staticClass:"notification error full-width"},[i("span",[e._v(e._s(e.error)+". "),i("span",{on:{click:e.retryLoading}},[e._v("Réessayer ?")])])]):e._e()]):e._e(),"loaded"===e.state?i("div",[i("header",{staticClass:"pageHeader"},[i("div",{staticClass:"pageHeader-wrapper"},[i("section",{staticClass:"pageHeader-main"},[i("section",{staticClass:"pageHeader-info"},[i("h1",{staticClass:"pageHeader-title"},[e._v("Dispositifs - "+e._s(e.locationTitle))])]),i("aside",{staticClass:"pageHeader-buttons"},[e.hasPermission("plan.create")?i("router-link",{staticClass:"button",attrs:{to:"/nouveau-dispositif"}},[i("font-awesome-icon",{attrs:{icon:"pencil-alt"}}),i("span",[e._v("Déclarer un dispositif")])],1):e._e()],1)])])]),i("div",{staticClass:"container plansList-body"},[i("CollectivityInput",{staticClass:"planList-search",model:{value:e.location,callback:function(t){e.location=t},expression:"location"}}),i("Table",{attrs:{columns:e.columns,content:e.pageContent,emptyLabel:"Aucun dispositif sur ce territoire"},on:{click:e.routeToPlan},scopedSlots:e._u([{key:"name",fn:function(t){return[i("strong",[e._v(e._s(t.row.name))]),i("br"),t.row.expected_to_end_at?i("span",[e._v("du "+e._s(e.formatDate(t.row.started_at/1e3))),i("br"),e._v("au "+e._s(e.formatDate(t.row.expected_to_end_at/1e3))),i("br"),e._v(e._s(e.dateDiff(t.row.started_at,t.row.expected_to_end_at)))]):i("span",[e._v("depuis le "+e._s(e.formatDate(t.row.started_at/1e3)))]),i("br"),e._l(t.row.topics,(function(t){return i("p",[i("span",{staticClass:"rbTag"},[e._v(e._s(t.name))])])}))]}},{key:"departement",fn:function(t){return[e._v(e._s(t.row.departement.code))]}},{key:"location",fn:function(t){return["shantytowns"===t.row.location_type.id?i("span",e._l(t.row.shantytowns,(function(t){return i("span",[e._v("- "+e._s(t.usename)),i("br")])})),0):e._e(),"location"===t.row.location_type.id?i("span",[e._v(e._s(t.row.location.label))]):e._e(),"housing"===t.row.location_type.id?i("span",[e._v("Dans le logement")]):e._e(),"other"===t.row.location_type.id?i("span",[e._v(e._s(t.row.location_details))]):e._e()]}},{key:"government",fn:function(t){return[i("router-link",{staticClass:"user",attrs:{to:"/annuaire/"+t.row.government_contacts[0].organization.id}},[e._v(e._s(t.row.government_contacts[0].name)),i("br"),e._v(e._s(t.row.government_contacts[0].organization.name))])]}},{key:"operator",fn:function(t){return[i("router-link",{staticClass:"user",attrs:{to:"/annuaire/"+t.row.operator_contacts[0].organization.id}},[e._v(e._s(t.row.operator_contacts[0].name)),i("br"),e._v(e._s(t.row.operator_contacts[0].organization.name))])]}}],null,!1,1173401747)})],1)]):e._e()])],1)])},a$=[];function s$(){return Wo("/plans")}async function n$(e){return Wo("/plans/"+e)}async function o$(e){return Jo("/plans",e)}async function r$(e,t){return Jo("/plans/"+e,t)}async function l$(e,t){return Jo(`/plans/${e}/states`,t)}async function c$(e,t){return Yo("/plans/"+e,{operation:"close",data:t})}var u$={components:{NavBar:Mr,Table:ac,CollectivityInput:uc},data(){const{user:e}=ar(),t=nr("plan.list"),i="nation"===t.geographic_level,a={locationTitle:null,defaultLocation:null,location:null};let s=e.organization.location.type;"epci"!==s&&"city"!==s||(s="departement");const n={id:"nation"===s?null:e.organization.location[s].code,label:"nation"===s?"France":e.organization.location[s].name,category:s,data:{code:"nation"===s?null:e.organization.location[s].code,type:s}};return!0!==i||"nation"===s?(a.defaultLocation={...n},a.location=null):(a.defaultLocation={id:null,label:"France",category:"Pays",data:{code:null,type:"nation"}},a.location={...n}),"nation"===a.defaultLocation.data.type?a.locationTitle="National":a.locationTitle=a.defaultLocation.label,Object.assign(a,{plans:[],error:null,state:null})},computed:{currentLocation(){return this.location||this.defaultLocation},columns(){return[{id:"name",label:"Nom du dispositif"},{id:"departement",label:"Dpt"},{id:"location",label:"Lieu"},{id:"government",label:"Service de l'état"},{id:"operator",label:"Opérateur"}]},pageContent(){return this.plans.filter(({closed_at:e})=>null===e).filter(e=>{if("nation"===this.currentLocation.data.type)return!0;const t=e[this.currentLocation.data.type];return t&&t.code===""+this.currentLocation.data.code})}},created(){this.load()},methods:{dateDiff(...e){return App.dateDiff(...e)},formatDate(...e){return window.App.formatDate(...e)},load(){-1!==[null,"error"].indexOf(this.state)&&(this.state="loading",this.error=null,s$().then(e=>{this.plans=e,this.state="loaded"}).catch(({user_message:e})=>{this.error=e,this.state="error"}))},retryLoading(){this.load()},routeToPlan({id:e}){const t=this.$router.resolve("/dispositif/"+e);Bo(t.href)},hasPermission(...e){return or(...e)}}},d$=u$,p$=d$,m$=(i("1a64"),Object(u["a"])(p$,i$,a$,!1,null,"ca8ce470",null)),h$=m$.exports,v$=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"v1"},[i("NavBar"),"loading"===e.loading.status?i("section",{staticClass:"section section-white"},[e._m(0)]):e._e(),"failed"===e.loading.status?i("section",{staticClass:"section section-white"},[i("div",{staticClass:"container"},[i("div",{staticClass:"notification error full-width"},[i("span",[e._v(e._s(e.loading.error)+". "),i("a",{attrs:{href:"#"},on:{click:e.load}},[e._v("Réessayer ?")])])])])]):e._e(),"completed"===e.loading.status?i("Form",e._b({ref:"form",on:{complete:e.onComplete},model:{value:e.formData,callback:function(t){e.formData=t},expression:"formData"}},"Form",e.formDefinition,!1)):e._e()],1)},f$=[function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"container"},[i("div",{staticClass:"notification full-width"},[i("img",{staticClass:"spinner",attrs:{src:"/img/spinner_dark.svg",width:"20"}}),i("span",[e._v("Chargement des données en cours...")])])])}];function g$(e){return Wo(`/regions/${e}/departements`)}function b$(e){return Wo(`/epci/${e}/departements`)}var _$={components:{NavBar:Mr,Form:Cu},data(){const{user:e,topics:t}=ar(),i={user:e,formData:{association:[]},loading:{status:null,error:null}},a=this,s=this.$refs,n={type:"hidden",label:"Personne référente dans la structure",description:"Aucune personne de cette structure n'est encore enregistrée sur la plateforme résorption bidonville.",mandatory:!0,condition({association:e}){return void 0!==e&&e.length>0&&0===s.form.getInputById("contact").options.length&&!1===a.loadingAssociationContacts}};return i.formDefinition={title:"Déclarer un dispositif",descriptionTitle:"Qu'est-ce qu'un dispositif ?",description:"C’est une action mise en place et financée en partie ou en totalité par un acteur public. Sa finalité est la résorption des bidonvilles.
Qui doit le déclarer ? Le service de l'Etat à l'initiative du dispositif doit le déclarer. L'acteur de terrain sera en charge de renseigner les informations relatives à l'action menée.",steps:[{title:"Dispositf",wording:{error:"La déclaration du dispositif a échoué",submit:"Déclarer le dispositif"},sections:[{title:"Intervention",icon:"list",inputs:{name:{type:"text",label:"Nom du dispositif",mandatory:!0},departement:{type:"select",label:"Département d'intervention",mandatory:!0},startedAt:{type:"date",label:"Date de début",mandatory:!0},expectedToEndAt:{type:"date",label:"Date de fin prévue (facultatif)",mandatory:!1},in_and_out:{type:"radio",label:"Ce dispositif implique-t-il un système d'entrées et de sorties des personnes ?",mandatory:!0,options:[{value:1,label:"Oui"},{value:0,label:"Non"}]},topics:{type:"checkbox",label:"Champs d'intervention",description:"Les thématiques sélectionnées définissent l'action que vous menez et les indicateurs de suivi associés.",mandatory:!0,options:t.map(({uid:e,name:t})=>({value:e,label:t}))},goals:{type:"textarea",label:"Objectifs",mandatory:!0,specificProps:{placeholder:"Précisez les objectifs, les enjeux, le contexte du dispositif\n\nPar exemple : résorber le bidonville, scolariser 80% des enfants identités en bidonvilles..."}}}},{title:"Lieu",icon:"map-pin",inputs:{locationType:{type:"radio",label:"L'action se déroule dans le cadre suivant",mandatory:!0,options:[{value:"shantytowns",label:"sur site(s) : bidonville ou squat"},{value:"location",label:"sur terrain d'insertion"},{value:"housing",label:"dans le logement"},{value:"other",label:"dans plusieurs lieux (hébergement, permanence, rue...)"}]},locationShantytowns:{type:"townList",label:"Sites concernés",description:`Merci de sélectionner les sites concernés par le dispositif.
Si vous ne trouvez pas un site, vous pouvez déclarer un nouveau site.`,mandatory:!0,condition({locationType:e}){return"shantytowns"===e}},locationAddress:{type:"addressWithLocation",label:"Adresse du terrain d'insertion",mandatory:!0,condition({locationType:e}){return"location"===e}},locationDetails:{type:"text",label:"Préciser",mandatory:!0,condition({locationType:e}){return"other"===e}}}},{title:"Contacts",inputs:{government:{type:"autocompleter",label:"Personne au service de l'état en charge du pilotage",mandatory:!0,specificProps:{autocompleter:e=>{const t=Lu("public_establishment"),i=t.then(({users:t})=>t.filter(({first_name:t,last_name:i})=>[t,i].some(t=>e.split(" ").every(e=>-1!==t.toLowerCase().indexOf(e.toLowerCase())))).map(({id:e,first_name:t,last_name:i})=>({id:e,label:`${t} ${i.toUpperCase()}`})));return i.abort=t.abort,i},showCategory:!1,allowMultiple:!1,float:!0}},association:{type:"autocompleter",label:"Opérateur ou service en charge de l'intervention",mandatory:!0,specificProps:{autocompleter:e=>{const t=Du("association"),i=t.then(({organizations:t})=>t.filter(({name:t,abbreviation:i})=>e.split(" ").every(e=>-1!==t.toLowerCase().indexOf(e.toLowerCase()))||null!==i&&i.toLowerCase().indexOf(e.toLowerCase())>=0).map(e=>({id:e.id,label:e.name,category:`${e.departement_code} - ${e.departement_name}`,data:{name:e.name,departement:e.departement_code}})));return i.abort=t.abort,i},showCategory:!0,allowMultiple:!1,float:!0}},contact:{type:"select",label:"Personne référente dans la structure",mandatory:!0,options:[],condition({association:e}){return void 0!==e&&e.length>0&&this.options.length>0}},contact_missing:n}},{title:"Financements",inputs:{finances:{type:"planFunding",label:"Financements",mandatory:!1}}}],submit:o$}]},or("user.create")&&(window.createUser=this.createUser,n.description+='
Vous pouvez créer un compte utilisateur en cliquant ici.'),"public_establishment"===e.organization.category.uid&&(i.formData.government=[{id:e.id,label:`${e.first_name} ${e.last_name.toUpperCase()}`}]),i},watch:{"formData.association":function(){this.loadingAssociationContacts=!0,this.$refs.form.getInputById("contact").options=[],0!==this.formData.association.length&&Mu(this.formData.association[0].id).then(({users:e})=>{this.$refs.form.getInputById("contact").options=e.map(({id:e,first_name:t,last_name:i})=>({value:e,label:`${t} ${i.toUpperCase()}`})),this.loadingAssociationContacts=!1})}},mounted(){this.load(),window.addEventListener("message",({data:e})=>{this.$refs.form.getInputById("contact").options=[{value:e.id,label:`${e.first_name} ${e.last_name.toUpperCase()}`}],this.formData.contact=e.id,this.loadingAssociationContacts=!1,gu({group:"notifications",type:"success",title:"Utilisateur créé",text:"La personne référente est désormais sélectionnée"})},!1)},methods:{getDepartementsForCurrentUser(){const e={city:1,epci:2,departement:3,region:4,nation:5},t=this.user.permissions.plan.create.geographic_level,i=this.user.organization.location.type;let a;switch(a="local"===t||e[i]>e[t]?i:t,a){case"nation":{const{departements:e}=ar();return Promise.resolve(e)}case"region":return g$(this.user.organization.location.region.code).then(({departements:e})=>e);default:return Promise.resolve([this.user.organization.location.departement])}},load(){"loading"!==this.loading.status&&"completed"!==this.loading.status&&(this.loading.status="loading",this.loading.error=null,this.getDepartementsForCurrentUser().then(e=>{this.loading.status="completed",this.$nextTick(()=>{const t=this.$refs.form.getInputById("departement");t.options=e.map(({code:e,name:t})=>({label:`${e} - ${t}`,value:e}))})}).catch(e=>{this.loading.status="failed",this.loading.error=e}))},createUser(){const{name:e,departement:t}=this.formData.association[0].data,{href:i}=this.$router.resolve("/nouvel-utilisateur");window.open(`${i}?association_name=${encodeURIComponent(e)}&association_departement=${t}`,"newUser","menubar=no, status=no")},onComplete(e,[{id:t}]){gu({group:"notifications",type:"success",title:"Dispositif correctement déclaré",text:"Le dispositif a bien été ajouté en base de données"}),this.$router.push("/dispositif/"+t)}}},y$=_$,w$=y$,C$=(i("83c6"),Object(u["a"])(w$,v$,f$,!1,null,null,null)),k$=C$.exports,x$=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"v1"},[i("div",{staticClass:"page--withMargin"},[i("NavBar"),"hidden"!==e.closingAlertStatus?i("div",{staticClass:"alert"},[i("div",{ref:"wrapper",staticClass:"alert-wrapper"},[i("header",{staticClass:"alert-header"},[i("hgroup",[i("h1",{staticClass:"alert-title"},[e._v("Confirmez-vous la fermeture du dispositif "+e._s(e.plan.name)+" ?")])]),i("div",{staticClass:"alert-actionButtons"},[i("button",{staticClass:"button secondary",attrs:{disabled:"pending"===e.closingStatus},on:{click:function(t){return e.setClosingAlertStatus("hidden")}}},[e._v("Annuler")]),"step1"===e.closingAlertStatus?i("button",{staticClass:"button",on:{click:e.checkClosing}},[e._v("Suite")]):e._e(),"step2"===e.closingAlertStatus?i("button",{staticClass:"button",attrs:{disabled:"pending"===e.closingStatus},on:{click:e.close}},[e._v("Valider")]):e._e()])]),i("section",{staticClass:"alert-body"},["step1"===e.closingAlertStatus?i("div",[i("p",[e._v("Avant de fermer définitivement le dispositif, assurez-vous que les indicateurs de suivi renseignés par l'opérateur sont à jour."),null!==e.plan.last_update?i("span",[e._v(" Pour information, la dernière mise à jour des indicateurs a eu lieu le "+e._s(e.formatDate(e.plan.last_update/1e3,"d/m/y"))+".")]):e._e(),i("br"),e._v("Merci de renseigner les dépenses exécutées de l'année en cours et des années précédentes si nécessaire")]),i("PlanFunding",{attrs:{inputMode:"closing",minYear:e.minYear},model:{value:e.closingData.finances,callback:function(t){e.$set(e.closingData,"finances",t)},expression:"closingData.finances"}})],1):i("div",[i("p",[i("Input",{attrs:{id:"closedAt",mandatory:!0,type:"date",label:"Date de fermeture du dispositif",description:"La date de fermeture du dispositif doit être postérieure - ou égale - à la dernière date de mise à jour des indicateurs.",disabled:"pending"===e.closingStatus},model:{value:e.closingData.closedAt,callback:function(t){e.$set(e.closingData,"closedAt",t)},expression:"closingData.closedAt"}})],1),i("p",[i("Input",{attrs:{id:"comment",mandatory:!0,type:"textarea",label:"Commentaire",description:e.closingCommentDescription,disabled:"pending"===e.closingStatus},model:{value:e.closingData.comment,callback:function(t){e.$set(e.closingData,"comment",t)},expression:"closingData.comment"}})],1)]),e.closingErrors.length>0?i("div",{staticClass:"notification error"},[e._v("Une erreur est survenue")]):e._e(),e.closingErrors.length>0?i("p",{staticClass:"error"},[i("ul",e._l(e.closingErrors,(function(t){return i("li",[e._v(e._s(t))])})),0)]):e._e()])])]):e._e(),i("section",{staticClass:"section-white"},["loaded"!==e.status?i("div",{staticClass:"container"},[e.status&&"loading"!==e.status?"loadingError"===e.status?i("div",[i("div",{staticClass:"notification error full-width"},[i("span",[e._v(e._s(e.error)+". "),i("span",{on:{click:e.load}},[e._v("Réessayer ?")])])])]):e._e():i("div",[e._m(0)])]):e._e(),"loaded"===e.status?i("div",[i("header",{staticClass:"pageHeader"},[i("div",{staticClass:"pageHeader-wrapper"},[i("section",{staticClass:"pageHeader-main"},[i("section",{staticClass:"pageHeader-info"},[i("h1",{staticClass:"pageHeader-title"},[e._v(e._s(e.plan.name))])]),i("aside",{staticClass:"pageHeader-buttons"},[e.plan&&e.plan.canUpdate?i("router-link",{staticClass:"button",attrs:{to:"/modifier-dispositif/"+e.plan.id}},[i("font-awesome-icon",{attrs:{icon:"pencil-alt"}}),i("span",[e._v("Mettre à jour")])],1):e._e(),e.plan&&e.plan.canUpdateMarks?i("router-link",{staticClass:"button",attrs:{to:"/dispositif/"+e.plan.id+"/indicateurs"}},[i("font-awesome-icon",{attrs:{icon:"pencil-alt"}}),i("span",[e._v("Indicateurs")])],1):e._e(),e.plan&&null===e.plan.closed_at&&e.plan.canClose?i("a",{staticClass:"button",on:{click:function(t){return e.setClosingAlertStatus("step1")}}},[i("span",[e._v("Fermer le dispositif")])]):e._e()],1)])])]),i("section",{staticClass:"container"},[i("SlideNote",{attrs:{title:"Qu'est-ce qu'un dispositif ?"}},[i("template",{slot:"content"},[i("p",[e._v("C’est une action mise en place et financée en partie ou en totalité par un acteur public. Sa finalité est la résorption des bidonvilles."),i("br"),i("strong",[e._v("Qui doit le déclarer ?")]),e._v(" Le service de l'Etat à l'initiative du dispositif doit le déclarer. L'acteur de terrain sera en charge de renseigner les informations relatives à l'action menée.")]),i("p",[i("strong",[e._v("À quoi sert le suivi ?")]),i("br"),e._v("La mise à jour des données de suivi permettent d’observer la progression des démarches des habitants par rapport à une situation initiale et les résultats des actions."),i("br"),e._v("Toutes ces données peuvent êtres utilisées pour la communication auprès des partenaires.")])])],2),i("section",{staticClass:"dataSection"},[i("header",{staticClass:"dataSection-header"},[i("h1",{staticClass:"dataSection-title"},[i("span",{staticClass:"dataSection-icon"},[i("font-awesome-icon",{attrs:{icon:"list"}})],1),e._v(" Intervention ")])]),i("article",{staticClass:"block"},[i("div",{staticClass:"dataSection-line"},[i("p",{staticClass:"data"},[i("span",{staticClass:"data-label"},[e._v("Date de début")]),i("br"),e._v(e._s(e.formatDate(e.plan.started_at/1e3,"d M y")))]),e.plan.expected_to_end_at?i("p",{staticClass:"data"},[i("span",{staticClass:"data-label"},[e._v("Date de fin prévue")]),i("br"),e._v(e._s(e.formatDate(e.plan.expected_to_end_at/1e3,"d M y"))),i("br"),i("strong",[e._v("Durée prévue : "+e._s(e.dateDiff(e.plan.started_at,e.plan.expected_to_end_at)))])]):e._e(),e.plan.closed_at?i("p",{staticClass:"data"},[i("span",{staticClass:"data-label"},[e._v("Date de fin")]),i("br"),e._v(e._s(e.formatDate(e.plan.closed_at/1e3,"d M y"))),i("br"),i("strong",[e._v("Durée : "+e._s(e.dateDiff(e.plan.started_at,e.plan.closed_at)))])]):e._e()]),i("p",{staticClass:"data-label"},[e._v("Champs d'intervention")]),e._l(e.plan.topics,(function(t){return i("p",[i("span",{staticClass:"rbTag rbTag--warning"},[e._v(e._s(t.name))]),i("br")])})),i("div",{staticClass:"dataSection-line"},[i("p",{staticClass:"data"},[i("span",{staticClass:"data-label"},[e._v("Objectifs")]),i("br"),i("span",{domProps:{innerHTML:e._s(e.escapeHtml(e.plan.goals).replace(/\n/g,"
"))}})])]),e.plan.final_comment?i("div",{staticClass:"dataSection-line"},[i("p",{staticClass:"data"},[i("span",{staticClass:"data-label"},[e._v("Commentaire")]),i("br"),i("span",{domProps:{innerHTML:e._s(e.escapeHtml(e.plan.final_comment).replace(/\n/g,"
"))}})])]):e._e()],2)]),i("section",{staticClass:"dataSection"},[i("header",{staticClass:"dataSection-header"},[i("h1",{staticClass:"dataSection-title"},[i("span",{staticClass:"dataSection-icon"},[i("font-awesome-icon",{attrs:{icon:"map-pin"}})],1),e._v(" Lieu ")])]),i("article",{staticClass:"block"},[i("div",{staticClass:"dataSection-line"},[i("p",[i("span",{staticClass:"data-label"},[e._v(e._s(e.plan.location_type.label))]),i("br"),"shantytowns"===e.plan.location_type.id?i("span",e._l(e.plan.shantytowns,(function(t){return i("p",[i("router-link",{staticClass:"locationPoint",attrs:{to:"/site/"+t.id}},[e._v(e._s(t.usename))])],1)})),0):e._e(),"location"===e.plan.location_type.id?i("span",{staticClass:"locationPoint"},[e._v(e._s(e.plan.location.label))]):e._e(),"other"===e.plan.location_type.id?i("span",[e._v(e._s(e.plan.location_details))]):e._e()])]),"location"===e.plan.location_type.id?i("Map",{attrs:{"display-searchbar":!1,towns:[e.address],"default-view":e.center}}):e._e()],1)]),i("section",{staticClass:"dataSection"},[i("header",{staticClass:"dataSection-header"},[i("h1",{staticClass:"dataSection-title"},[i("span",{staticClass:"dataSection-icon"},[i("font-awesome-icon",{attrs:{icon:"address-book"}})],1),e._v(" Contacts ")])]),i("article",{staticClass:"block"},[i("div",{staticClass:"dataSection-line"},[i("p",{staticClass:"data"},[i("span",{staticClass:"data-label"},[e._v("Service de l'état")]),i("br"),i("router-link",{staticClass:"user",attrs:{to:"/annuaire/"+e.plan.government_contacts[0].organization.id}},[e._v(e._s(e.plan.government_contacts[0].first_name)+" "+e._s(e.plan.government_contacts[0].last_name.toUpperCase())),i("br"),e._v(e._s(e.plan.government_contacts[0].organization.name))])],1)]),i("div",{staticClass:"dataSection-line"},[i("p",{staticClass:"data"},[i("span",{staticClass:"data-label"},[e._v("Opérateur ou service en charge")]),i("br"),i("router-link",{staticClass:"user",attrs:{to:"/annuaire/"+e.plan.operator_contacts[0].organization.id}},[e._v(e._s(e.plan.operator_contacts[0].first_name)+" "+e._s(e.plan.operator_contacts[0].last_name.toUpperCase())),i("br"),e._v(e._s(e.plan.operator_contacts[0].organization.name))])],1)])])]),e.plan&&e.plan.finances&&e.plan.finances.length>0?i("section",{staticClass:"dataSection rb-table"},[i("header",{staticClass:"dataSection-header"},[i("h1",{staticClass:"dataSection-title"},[i("span",{staticClass:"dataSection-icon"},[i("font-awesome-icon",{attrs:{icon:"euro-sign"}})],1),e._v(" Financements ")])]),i("header",{staticClass:"planFunding-header"},[i("font-awesome-icon",{staticClass:"planFunding-yearSwitch",class:{"planFunding-yearSwitch--disabled":!0===e.reachedMinFinanceIndex},attrs:{icon:"caret-square-left"},on:{click:e.showPreviousYear}}),i("span",[e._v(e._s(e.plan.finances[e.currentFinanceIndex].year)+" ")]),i("font-awesome-icon",{staticClass:"planFunding-yearSwitch",class:{"planFunding-yearSwitch--disabled":!0===e.reachedMaxFinanceIndex},attrs:{icon:"caret-square-right"},on:{click:e.showNextYear}})],1),i("table",{staticClass:"table block"},[e._m(1),i("tbody",[e._l(e.plan.finances[e.currentFinanceIndex].data,(function(t){return i("tr",[i("td",[e._v(e._s(t.type.name))]),i("td",[e._v(e._s(t.amount)+" €"),i("br"),e._v("soit "+e._s(Math.round(t.amount/e.financeTotal()*100))+"%")]),i("td",[e._v(e._s(t.details))]),t.realAmount?i("td",[e._v(e._s(t.realAmount)+" €")]):e.reachedMaxFinanceIndex?i("td",[e._v("À remplir entre janvier et mars")]):i("td",[e._v("Non renseignées")])])})),i("tr",[i("td"),i("td",{attrs:{colspan:"3"}},[i("strong",[e._v("TOTAL : "+e._s(e.financeTotal())+"€")])])])],2)])]):e._e(),e.plan.states.length>0?i("section",{staticClass:"dataSection rb-table"},[i("header",{staticClass:"dataSection-header"},[i("h1",{staticClass:"dataSection-title"},[i("span",{staticClass:"dataSection-icon"},[i("font-awesome-icon",{attrs:{icon:"users"}})],1),e._v(" Équipe ")])]),i("table",{staticClass:"table block"},[i("thead",[i("tr",[i("th"),e._l(e.plan.states,(function(t){return i("th",[e._v(e._s(e.formatDate(new Date(t.date).getTime()/1e3,"d B y")))])}))],2)]),i("tbody",e._l(e.availableEtpTypes,(function(t){return i("tr",[i("th",[e._v(e._s(t.name))]),e._l(e.plan.states,(function(a){return i("td",[e._v(e._s((a.etp.find((function(e){var i=e.type.uid;return i===t.uid}))||{total:0}).total))])}))],2)})),0)])]):e._e(),e.audience?i("section",{staticClass:"dataSection rb-table"},[i("header",{staticClass:"dataSection-header"},[i("h1",{staticClass:"dataSection-title"},[i("span",{staticClass:"dataSection-icon"},[i("font-awesome-icon",{attrs:{icon:"arrow-right"}})],1),e._v(" Public ")])]),i("table",{staticClass:"table block"},[e._m(2),i("tbody",[i("tr",[e._m(3),i("td",[e._v(e._s(e.audience.in.families))]),i("td",[e._v(e._s(e.audience.in.total))]),i("td",[e._v(e._s(e.audience.in.women))]),i("td",[e._v(e._s(e.audience.in.minors))])]),i("tr",[e._m(4),i("td",[e._v(e._s(e.audience.out_positive.families))]),i("td",[e._v(e._s(e.audience.out_positive.total))]),i("td",[e._v(e._s(e.audience.out_positive.women))]),i("td",[e._v(e._s(e.audience.out_positive.minors))])]),i("tr",[e._m(5),i("td",[e._v(e._s(e.audience.out_excluded.families))]),i("td",[e._v(e._s(e.audience.out_excluded.total))]),i("td",[e._v(e._s(e.audience.out_excluded.women))]),i("td",[e._v(e._s(e.audience.out_excluded.minors))])]),i("tr",[e._m(6),i("td",[e._v(e._s(e.audience.out_abandoned.families))]),i("td",[e._v(e._s(e.audience.out_abandoned.total))]),i("td",[e._v(e._s(e.audience.out_abandoned.women))]),i("td",[e._v(e._s(e.audience.out_abandoned.minors))])])])])]):e._e(),e.plan.states.length>0?i("section",{staticClass:"dataSection rb-table"},[i("header",{staticClass:"dataSection-header"},[i("h1",{staticClass:"dataSection-title"},[i("span",{staticClass:"dataSection-icon"},[i("font-awesome-icon",{attrs:{icon:"id-card"}})],1),e._v(" Droit commun et ressources ")])]),i("table",{staticClass:"table block"},[i("thead",[i("tr",[i("th",{staticClass:"table-col"},[e._v("Nombre de personnes ayant")]),e._l(e.plan.states,(function(t){return i("th",{staticClass:"table-col"},[e._v(e._s(e.formatDate(new Date(t.date).getTime()/1e3,"d B y")))])}))],2)]),i("tbody",[i("tr",[i("td",[e._v("une domiciliation")]),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.droit_commun.domiciliation?"NC":t.droit_commun.domiciliation))])}))],2),i("tr",[i("td",[e._v("des droits CAF ouverts")]),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.droit_commun.droits_caf?"NC":t.droit_commun.droits_caf))])}))],2),i("tr",[i("td",[e._v("un emploi stable / ressources suffisantes")]),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.droit_commun.emploi_stable?"NC":t.droit_commun.emploi_stable))])}))],2)])])]):e._e(),e.plan.states.length>0&&e.plan.topics.find((function(e){var t=e.uid;return"health"===t}))?i("section",{staticClass:"dataSection rb-table"},[i("header",{staticClass:"dataSection-header"},[i("h1",{staticClass:"dataSection-title"},[i("span",{staticClass:"dataSection-icon"},[i("font-awesome-icon",{attrs:{icon:"user-md"}})],1),e._v(" Santé ")])]),i("table",{staticClass:"table block"},[i("thead",[i("tr",[i("th",{staticClass:"table-col"}),e._l(e.plan.states,(function(t){return i("th",{staticClass:"table-col"},[e._v(e._s(e.formatDate(new Date(t.date).getTime()/1e3,"d B y")))])}))],2)]),i("tbody",[i("tr",[i("th",{attrs:{colspan:e.plan.states.length+1}},[i("strong",[e._v("Nombre de personnes avec...")])])]),i("tr",[i("td",[e._v("une couverture AME valide")]),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.sante.ame_valide?"NC":t.sante.ame_valide))])}))],2),i("tr",[i("td",[e._v("une couverture PUMA valide")]),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.sante.puma_valide?"NC":t.sante.puma_valide))])}))],2),i("tr",[i("td",[e._v("une demande AME en cours")]),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.sante.ame_en_cours?"NC":t.sante.ame_en_cours))])}))],2),i("tr",[i("td",[e._v("une demande PUMA en cours")]),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.sante.puma_en_cours?"NC":t.sante.puma_en_cours))])}))],2),i("tr",[i("th",{attrs:{colspan:e.plan.states.length+1}},[i("strong",[e._v("Nombre de personnes ayant fait l'objet d'au moins...")])])]),i("tr",[i("td",[e._v("une orientation vers une structure de santé")]),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.sante.orientation?"NC":t.sante.orientation))])}))],2),i("tr",[i("td",[e._v("un accompagnement physique vers une structure de santé")]),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.sante.accompagnement?"NC":t.sante.accompagnement))])}))],2)])])]):e._e(),e.plan.states.length>0&&e.plan.topics.find((function(e){var t=e.uid;return"school"===t}))?i("section",{staticClass:"dataSection rb-table"},[i("header",{staticClass:"dataSection-header"},[i("h1",{staticClass:"dataSection-title"},[i("span",{staticClass:"dataSection-icon"},[i("font-awesome-icon",{attrs:{icon:"user-md"}})],1),e._v(" Éducation et scolarisation ")])]),i("table",{staticClass:"table block"},[i("thead",[i("tr",[i("th",{staticClass:"table-col"}),e._l(e.plan.states,(function(t){return i("th",{staticClass:"table-col"},[e._v(e._s(e.formatDate(new Date(t.date).getTime()/1e3,"d B y")))])}))],2)]),i("tbody",[i("tr",[i("td",[e._v("Mineurs en âge d'être scolarisé ou suivant une formation")]),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.education.scolarisables?"NC":t.education.scolarisables))])}))],2),i("tr",[i("td",[e._v("Mineurs bénéficiant d'une action de médiation (3 - 18 ans)")]),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.education.en_mediation?"NC":t.education.en_mediation))])}))],2),i("tr",[i("td",[e._v("Inscrits en maternelle")]),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.education.maternelles?"NC":t.education.maternelles))])}))],2),i("tr",[i("td",[e._v("Inscrits en primaire")]),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.education.elementaires?"NC":t.education.elementaires))])}))],2),i("tr",[i("td",[e._v("Inscrits en collège")]),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.education.colleges?"NC":t.education.colleges))])}))],2),i("tr",[i("td",[e._v("Inscrits au Lycée - formation professionnelle")]),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.education.lycees?"NC":t.education.lycees))])}))],2)])])]):e._e(),e.plan.states.length>0&&e.plan.topics.find((function(e){var t=e.uid;return"work"===t}))?i("section",{staticClass:"dataSection rb-table"},[i("header",{staticClass:"dataSection-header"},[i("h1",{staticClass:"dataSection-title"},[i("span",{staticClass:"dataSection-icon"},[i("font-awesome-icon",{attrs:{icon:"briefcase"}})],1),e._v(" Formation et emploi ")])]),i("table",{staticClass:"table block"},[i("thead",[i("tr",[i("th",{staticClass:"table-col"}),e._l(e.plan.states,(function(t){return i("th",{staticClass:"table-col"},[e._v(e._s(e.formatDate(new Date(t.date).getTime()/1e3,"d B y")))])}))],2)]),i("tbody",[i("tr",[i("th",{attrs:{colspan:e.plan.states.length+1}},[i("strong",[e._v("Nombre de personnes inscrites ou suivies par...")])])]),i("tr",[i("td",[e._v("Pôle emploi")]),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.formation.pole_emploi?"NC":t.formation.pole_emploi))])}))],2),i("tr",[e._m(7),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.formation.pole_emploi_femmes?"NC":t.formation.pole_emploi_femmes))])}))],2),i("tr",[i("td",[e._v("Mission locale")]),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.formation.mission_locale?"NC":t.formation.mission_locale))])}))],2),i("tr",[e._m(8),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.formation.mission_locale_femmes?"NC":t.formation.mission_locale_femmes))])}))],2),i("tr",[i("th",{attrs:{colspan:e.plan.states.length+1}},[i("strong",[e._v("Nombre de personnes ayant")])])]),i("tr",[i("td",[e._v("Un contrat")]),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.formation.contrats?"NC":t.formation.contrats))])}))],2),i("tr",[e._m(9),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.formation.contrats_femmes?"NC":t.formation.contrats_femmes))])}))],2),i("tr",[i("td",[e._v("Une formation")]),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.formation.formations?"NC":t.formation.formations))])}))],2),i("tr",[e._m(10),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.formation.formations_femmes?"NC":t.formation.formations_femmes))])}))],2),i("tr",[i("td",[e._v("Un statut autoentrepreneur")]),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.formation.autoentrepreneurs?"NC":t.formation.autoentrepreneurs))])}))],2),i("tr",[e._m(11),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.formation.autoentrepreneurs_femmes?"NC":t.formation.autoentrepreneurs_femmes))])}))],2),i("tr",[i("td",[e._v("l'ARE")]),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.formation.are?"NC":t.formation.are))])}))],2),i("tr",[e._m(12),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.formation.are_femmes?"NC":t.formation.are_femmes))])}))],2)])])]):e._e(),e.plan.states.length>0&&e.plan.topics.find((function(e){var t=e.uid;return"housing"===t}))?i("section",{staticClass:"dataSection rb-table"},[i("header",{staticClass:"dataSection-header"},[i("h1",{staticClass:"dataSection-title"},[i("span",{staticClass:"dataSection-icon"},[i("font-awesome-icon",{attrs:{icon:"home"}})],1),e._v(" Logement ")])]),i("table",{staticClass:"table block"},[i("thead",[i("tr",[i("th",{staticClass:"table-col"}),e._l(e.plan.states,(function(t){return i("th",{staticClass:"table-col"},[e._v(e._s(e.formatDate(new Date(t.date).getTime()/1e3,"d B y")))])}))],2)]),i("tbody",[e._l(e.housingFields,(function(t){return[i("tr",[i("th",{attrs:{colspan:e.plan.states.length+1}},[i("strong",[e._v(e._s(t.label))])])]),i("tr",[i("td",[e._v("Nombre de personnes")]),e._l(e.plan.states,(function(a){return i("td",[e._v(e._s(null===a.logement[t.name].people?"NC":a.logement[t.name].people))])}))],2),i("tr",[i("td",[e._v("Nombre de ménages")]),e._l(e.plan.states,(function(a){return i("td",[e._v(e._s(null===a.logement[t.name].families?"NC":a.logement[t.name].families))])}))],2)]}))],2)])]):e._e(),e.plan.states.length>0&&e.plan.topics.find((function(e){var t=e.uid;return"safety"===t}))?i("section",{staticClass:"dataSection rb-table"},[i("header",{staticClass:"dataSection-header"},[i("h1",{staticClass:"dataSection-title"},[i("span",{staticClass:"dataSection-icon"},[i("font-awesome-icon",{attrs:{icon:"seedling"}})],1),e._v(" Stabilisation et sécurisation du site ")])]),i("table",{staticClass:"table block"},[i("thead",[i("tr",[i("th",{staticClass:"table-col"}),e._l(e.plan.states,(function(t){return i("th",{staticClass:"table-col"},[e._v(e._s(e.formatDate(new Date(t.date).getTime()/1e3,"d B y")))])}))],2)]),i("tbody",[i("tr",[i("td",[e._v("Nombre d'accès réguliers à l'eau potable")]),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.securisation.points_eau?"NC":t.securisation.points_eau))])}))],2),i("tr",[i("td",[e._v("Nombre de sanitaires")]),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.securisation.wc?"NC":t.securisation.wc))])}))],2),i("tr",[i("td",[e._v("Nombre d'accès réguliers à l'électricité")]),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.securisation.electricite?"NC":t.securisation.electricite))])}))],2),i("tr",[i("td",[e._v("Nombre de bennes disponibles pour le ramassage des déchets du site")]),e._l(e.plan.states,(function(t){return i("td",[e._v(e._s(null===t.securisation.nombre_bennes?"NC":t.securisation.nombre_bennes))])}))],2)])])]):e._e(),0===e.plan.states.length&&e.plan.canUpdateMarks?i("div",{staticClass:"note"},[i("div",{staticClass:"note-body"},[i("p",[i("strong",[e._v("Aucun indicateur de suivi renseigné par l'opérateur")]),i("br"),i("router-link",{staticClass:"button",attrs:{to:"/dispositif/"+e.plan.id+"/indicateurs"}},[i("font-awesome-icon",{attrs:{icon:"pencil-alt"}}),i("span",[e._v("Modifier")])],1)],1)])]):e._e()],1)]):e._e()])],1)])},S$=[function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"notification full-width"},[i("img",{staticClass:"spinner",attrs:{src:"/img/spinner_dark.svg",width:"20"}}),i("span",[e._v("Chargement des données en cours...")])])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("thead",[i("tr",[i("th",{staticClass:"table-col"},[e._v("Type de financements")]),i("th",{staticClass:"table-col"},[e._v("Montants"),i("br"),e._v("prévus")]),i("th",{staticClass:"table-col"},[e._v("Précision")]),i("th",{staticClass:"table-col"},[e._v("Dépenses"),i("br"),e._v("exécutées")])])])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("thead",[i("tr",[i("th",{staticClass:"table-col"}),i("th",{staticClass:"table-col"},[e._v("Ménages")]),i("th",{staticClass:"table-col"},[e._v("Personnes")]),i("th",{staticClass:"table-col"},[e._v("dont femmes")]),i("th",{staticClass:"table-col"},[e._v("dont mineurs")])])])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("td",[i("strong",[e._v("Entrées")]),e._v(" dans le dispositif")])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("td",[i("strong",[e._v("Sorties positivement")]),i("br"),e._v("fin accompagnement social et/ou"),i("br"),e._v("prise en charge dans un autre dispositif")])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("td",[i("strong",[e._v("Exclusion")]),e._v(" du dispositif")])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("td",[i("strong",[e._v("Abandon / départ volontaire")])])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("td",[i("em",[e._v("(dont femmes)")])])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("td",[i("em",[e._v("(dont femmes)")])])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("td",[i("em",[e._v("(dont femmes)")])])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("td",[i("em",[e._v("(dont femmes)")])])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("td",[i("em",[e._v("(dont femmes)")])])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("td",[i("em",[e._v("(dont femmes)")])])}],$$={components:{NavBar:Mr,SlideNote:vu,Map:Kd,PlanFunding:Ic,Input:lu},data(){const{etp_types:e}=ar();return{status:null,error:null,plan:null,etpTypes:e,currentFinanceIndex:0,closingAlertStatus:"hidden",closingErrors:[],closingStatus:null,closingData:{closedAt:new Date,finances:[],comment:""},housingFields:[{name:"siao",label:"Demandes SIAO"},{name:"logement_social",label:"Demandes de logement social"},{name:"dalo",label:"Demandes DALO"},{name:"accompagnes",label:"Accès à un logement accompagné / adapté"},{name:"non_accompagnes",label:"Accès à un logement sans accompagnement"},{name:"heberges",label:"Hébergements"}]}},created(){this.load()},computed:{closingCommentDescription(){if(!this.audience)return"";const e={...this.audience.in};return["out_positive","out_abandoned","out_excluded"].forEach(t=>{e.total-=this.audience[t].total,e.families-=this.audience[t].families,e.women-=this.audience[t].women,e.minors-=this.audience[t].minors}),0===e.total&&0===e.families&&0===e.women&&0===e.minors?"Précisez les raisons de la fermeture du dispositif":`À la fermeture du dispositif, ${e.families} ménage${e.families>1?"s":""} (soit ${e.total} personne${e.total>1?"s":""}) sont identifiés dans le dispositif. Merci de préciser les solutions mobilisées pour ces personnes et les raisons de la fermeture du dispositif.

Merci de respecter les règles de confidentialité.Ne pas citer l'identité des individus (Nom, âge, sexe, origine...)`},reachedMaxFinanceIndex(){return!this.plan||!this.plan.finances||0===this.plan.finances.length||0===this.currentFinanceIndex},reachedMinFinanceIndex(){return!this.plan||!this.plan.finances||0===this.plan.finances.length||this.currentFinanceIndex>=this.plan.finances.length-1},minYear(){return this.plan&&this.plan.finances&&0!==this.plan.finances.length?this.plan.finances.reduce((e,{year:t})=>null!==e?Math.min(e,t):t,null):null},availableEtpTypes(){return this.etpTypes.filter(({uid:e})=>this.plan.states.some(({etp:t})=>t.some(({type:{uid:t}})=>e===t)))},address(){return this.plan.location?{latitude:this.plan.location.latitude,longitude:this.plan.location.longitude,address:this.plan.location.label}:null},center(){return this.plan.location?{center:[this.plan.location.latitude,this.plan.location.longitude],zoom:15}:null},lastState(){return this.plan&&0!==this.plan.states.length?this.plan.states.slice(-1)[0]:null},audience(){if(!this.plan||0===this.plan.states.length)return null;function e(e,t){return{total:e.total+t.total,families:e.families+t.families,women:e.women+t.women,minors:e.minors+t.minors}}return this.plan.states.reduce((t,{audience:i})=>(i.in&&(t.in=e(t.in,i.in)),i.out_positive&&(t.out_positive=e(t.out_positive,i.out_positive)),i.out_abandoned&&(t.out_abandoned=e(t.out_abandoned,i.out_abandoned)),i.out_excluded&&(t.out_excluded=e(t.out_excluded,i.out_excluded)),t),{in:{total:0,families:0,women:0,minors:0},out_positive:{total:0,families:0,women:0,minors:0},out_abandoned:{total:0,families:0,women:0,minors:0},out_excluded:{total:0,families:0,women:0,minors:0}})}},methods:{hasPermission:or,financeTotal(){return this.plan&&this.plan.finances?this.plan.finances[this.currentFinanceIndex].data.reduce((e,{amount:t})=>e+parseFloat(t),0):0},load(){-1===["loading","loaded"].indexOf(this.status)&&(this.status="loading",this.error=null,n$(this.$route.params.id).then(e=>{this.plan=e,this.closingData.finances=this.plan.finances.map(e=>({...e,data:e.data.map(e=>({...e,type:e.type.uid}))})),this.status="loaded"}).catch(({user_message:e})=>{this.error=e,this.status="loadingError"}))},escapeHtml(...e){return App.escapeHtml(...e)},dateDiff(...e){return App.dateDiff(...e)},formatDate(...e){return App.formatDate(...e)},showPreviousYear(){this.reachedMinFinanceIndex||(this.currentFinanceIndex+=1)},showNextYear(){this.reachedMaxFinanceIndex||(this.currentFinanceIndex-=1)},setClosingAlertStatus(e){this.closingErrors=[],this.closingAlertStatus=e},checkClosing(){const e=[];for(let t=(new Date).getFullYear();t>=Math.max(2019,this.minYear);t-=1){const i=this.closingData.finances.find(({year:e})=>e===t);i&&0!==i.data.length&&!i.data.some(({realAmount:e})=>void 0===e||null===e)||e.push(t)}e.length>0?this.closingErrors=e.map(e=>`Les dépenses exécutées pour l'année ${e} ne sont pas renseignées, il n'est pas possible de fermer le dispositif.`):this.setClosingAlertStatus("step2")},close(){"pending"!==this.closingStatus&&(this.closingStatus="pending",c$(this.$route.params.id,this.closingData).then(()=>{this.closingStatus="success",gu({group:"notifications",type:"success",title:"Dispositif fermé",text:"Le dispositif a bien été fermé"}),this.$router.push("/liste-des-dispositifs")}).catch(({fields:e})=>{this.closingStatus="error",this.closingErrors=Object.keys(e).reduce((t,i)=>[...t,...e[i]],[])}))}}},P$=$$,T$=P$,I$=(i("e438"),Object(u["a"])(T$,x$,S$,!1,null,"23a8c2ae",null)),O$=I$.exports,A$=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"v1"},[i("NavBar"),i("section",{staticClass:"section-white"},["loaded"!==e.status?i("div",{staticClass:"container"},[e.status&&"loading"!==e.status?"loadingError"===e.status?i("div",[i("div",{staticClass:"notification error full-width"},[i("span",[e._v(e._s(e.error)+". "),i("span",{on:{click:e.load}},[e._v("Réessayer ?")])])])]):e._e():i("div",[e._m(0)])]):e._e(),"loaded"===e.status?i("div",[i("Form",e._b({ref:"form",on:{complete:e.onComplete},model:{value:e.formData,callback:function(t){e.formData=t},expression:"formData"}},"Form",e.formDefinition,!1))],1):e._e()])],1)},N$=[function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"notification full-width"},[i("img",{staticClass:"spinner",attrs:{src:"/img/spinner_dark.svg",width:"20"}}),i("span",[e._v("Chargement des données en cours...")])])}],E$={components:{NavBar:Mr,Form:Cu},data(){const{user:e,topics:t}=ar(),i={status:null,error:null,formData:{association:[]}};return i.formDefinition={title:"Modifier un dispositif",descriptionTitle:"Pourquoi modifier la fiche du dispositif ?",description:"Vous pouvez modifier ou mettre à jour les informations générales relatives au projet que vous pilotez.
\n
\n Deux informations pourront en particulier être mises à jour régulièrement :
\n - les financements
\n - les contacts référents
\n
\n A noter que les indicateurs de suivi du dispositif sont modifiés directement par la structure ou l’association en charge de l’intervention. Par exemple, le nombre de personnes dans le dispositif ou le nombre de ménages ayant accédé à un logement seront directement renseignés par ces derniers.",steps:[{title:"Dispositif",wording:{error:"La modification du dispositif a échoué",submit:"Modifier le dispositif"},sections:[{title:"Intervention",icon:"list",inputs:{name:{type:"text",label:"Nom du dispositif",mandatory:!0},departement:{type:"text",label:"Département d'intervention",mandatory:!0,disabled:!0},startedAt:{type:"date",label:"Date de début",mandatory:!0},expectedToEndAt:{type:"date",label:"Date de fin prévue (facultatif)",mandatory:!1},in_and_out:{type:"radio",label:"Ce dispositif implique-t-il un système d'entrées et de sorties des personnes ?",mandatory:!0,disabled:!0,options:[{value:1,label:"Oui"},{value:0,label:"Non"}]},topics:{type:"checkbox",label:"Champs d'intervention",description:"Les thématiques sélectionnées définissent l'action que vous menez et les indicateurs de suivi associés.",mandatory:!0,disabled:!0,options:t.map(({uid:e,name:t})=>({value:e,label:t}))},goals:{type:"textarea",label:"Objectifs",mandatory:!0,specificProps:{placeholder:"Précisez les objectifs, les enjeux, le contexte du dispositif\n\nPar exemple : résorber le bidonville, scolariser 80% des enfants identités en bidonvilles..."}}}},{title:"Lieu",icon:"map-pin",inputs:{locationType:{type:"radio",label:"L'action se déroule dans le cadre suivant",mandatory:!0,disabled:!0,options:[{value:"shantytowns",label:"sur site(s) : bidonville ou squat"},{value:"location",label:"sur terrain d'insertion"},{value:"housing",label:"dans le logement"},{value:"other",label:"dans plusieurs lieux (hébergement, permanence, rue...)"}]},locationShantytowns:{type:"townList",label:"Sites concernés",mandatory:!0,disabled:!0,condition({locationType:e}){return"shantytowns"===e}},locationAddress:{type:"addressWithLocation",label:"Adresse du terrain d'insertion",mandatory:!0,disabled:!0,condition({locationType:e}){return"location"===e}},locationDetails:{type:"text",label:"Préciser",mandatory:!0,disabled:!0,condition({locationType:e}){return"other"===e}}}},{title:"Contacts",inputs:{government:{type:"autocompleter",label:"Personne au service de l'état en charge du pilotage",mandatory:!0,specificProps:{autocompleter:e=>{const t=Lu("public_establishment"),i=t.then(({users:t})=>t.filter(({first_name:t,last_name:i})=>[t,i].some(t=>e.split(" ").every(e=>-1!==t.toLowerCase().indexOf(e.toLowerCase())))).map(({id:e,first_name:t,last_name:i})=>({id:e,label:`${t} ${i.toUpperCase()}`})));return i.abort=t.abort,i},showCategory:!1,allowMultiple:!1,float:!0}}}},{title:"Financements",inputs:{finances:{label:"Financements",type:"planFunding",mandatory:!1}}}],submit:e=>r$(this.$route.params.id,e)}]},"public_establishment"===e.organization.category.uid&&(i.formData.state=[{id:e.id,label:`${e.first_name} ${e.last_name.toUpperCase()}`}]),i},watch:{"formData.association":function(){this.$refs.form&&(this.loadingAssociationContacts=!0,this.$refs.form.getInputById("contact").options=[],0!==this.formData.association.length&&Mu(this.formData.association[0].id).then(({users:e})=>{this.$refs.form.getInputById("contact").options=e.map(({id:e,first_name:t,last_name:i})=>({value:e,label:`${t} ${i.toUpperCase()}`})),this.loadingAssociationContacts=!1}))}},created(){this.load()},methods:{load(){-1===["loading","loaded"].indexOf(this.status)&&(this.status="loading",this.error=null,n$(this.$route.params.id).then(e=>{this.formDefinition.title="Modifier un dispositif - "+e.name,this.formData.name=e.name,this.formData.departement=`${e.departement.code} - ${e.departement.name}`,this.formData.startedAt=e.started_at,this.formData.expectedToEndAt=e.expected_to_end_at,this.formData.in_and_out=e.in_and_out?1:0,this.formData.topics=e.topics.map(({uid:e})=>e),this.formData.goals=e.goals,this.formData.locationType=e.location_type.id,this.formData.locationShantytowns=e.shantytowns&&e.shantytowns.length>0?e.shantytowns.map(({id:e})=>e):void 0,this.formData.locationAddress=e.location?{address:{label:e.location.address},location:{coordinates:[e.location.latitude,e.location.longitude],zoom:15}}:void 0,this.formData.locationDetails=e.location_details,this.formData.government=[{id:e.government_contacts[0].id,label:`${e.government_contacts[0].first_name} ${e.government_contacts[0].last_name.toUpperCase()}`}],this.formData.association=[{id:e.operator_contacts[0].organization.id,label:e.operator_contacts[0].organization.name}],this.formData.contact=e.operator_contacts[0].id,this.formData.finances=e.finances.map(({year:e,data:t})=>({year:e,data:t.map(({type:{uid:e},amount:t,details:i,realAmount:a})=>({type:e,amount:t,details:i,realAmount:a}))})),this.plan=e,this.status="loaded"}).catch(e=>{this.error=e.user_message,this.status="loadingError"}))},onComplete(){gu({group:"notifications",type:"success",title:"Dispositif modifié",text:"Le dispositif a bien été mis à jour"}),this.$router.push("/dispositif/"+this.$route.params.id)}}},j$=E$,D$=j$,q$=(i("b82e"),Object(u["a"])(D$,A$,N$,!1,null,null,null)),M$=q$.exports,L$=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"v1"},[i("NavBar"),i("section",{staticClass:"section-white"},["loaded"!==e.status?i("div",{staticClass:"container"},[e.status&&"loading"!==e.status?"loadingError"===e.status?i("div",[i("div",{staticClass:"notification error full-width"},[i("span",[e._v(e._s(e.error)+". "),i("span",{on:{click:e.load}},[e._v("Réessayer ?")])])])]):e._e():i("div",[e._m(0)])]):e._e(),"loaded"===e.status?i("div",[i("Form",e._b({ref:"form",on:{complete:e.onComplete},model:{value:e.formData,callback:function(t){e.formData=t},expression:"formData"}},"Form",e.formDefinition,!1))],1):e._e()])],1)},F$=[function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"notification full-width"},[i("img",{staticClass:"spinner",attrs:{src:"/img/spinner_dark.svg",width:"20"}}),i("span",[e._v("Chargement des données en cours...")])])}],z$={components:{NavBar:Mr,Form:Cu},data(){const e={status:null,error:null,formData:{}};return e.formDefinition={title:"",descriptionTitle:"À quoi sert le suivi ?",description:"Les indicateurs de suivi permettent d’observer l'évolution de l'accès au droit commun et l'insertion du groupe de personnes accompagnées. Ces informations facilitent le pilotage local et national.",steps:[{title:"Dispositf",wording:{error:"La déclaration du dispositif a échoué",submit:"Valider"},sections:[{inputs:{date:{type:"date",label:"Date d'actualisation des données",mandatory:!0}}},{title:"Public",icon:"arrow-right",inputs:{audience:{type:"audience",label:"Public",mandatory:!0,specificProps:{},condition({date:e}){return!!e}}}},{title:"Équipe",icon:"users",inputs:{etp:{type:"etp",label:"Nombre d’ETP dédiés par fonction",mandatory:!0,condition({date:e}){return!!e}}}},{title:"Droit commun et ressources",description:"Nombre de personnes avec...",icon:"id-card",inputs:{domiciliation:{type:"number",label:"une domiciliation",mandatory:!1,condition({date:e}){return!!e}},droits_caf:{type:"number",label:"des droits CAF ouverts",mandatory:!1,condition({date:e}){return!!e}},emploi_stable:{type:"number",label:"un emploi stable / ressources suffisantes",mandatory:!1,condition({date:e}){return!!e}}}}],submit:e=>{const t={...e,...e.housing};return delete t.housing,l$(this.$route.params.id,t)}}]},e.varyingSections={health:[{title:"Santé",description:"Nombre de personnes avec...",icon:"user-md",inputs:{ame_valide:{type:"number",label:"une couverture AME valide",mandatory:!1,condition({date:e}){return!!e}},puma_valide:{type:"number",label:"une couverture PUMA valide",mandatory:!1,condition({date:e}){return!!e}},ame_en_cours:{type:"number",label:"une demande AME en cours",mandatory:!1,condition({date:e}){return!!e}},puma_en_cours:{type:"number",label:"une demande PUMA en cours",mandatory:!1,condition({date:e}){return!!e}}}},{title:"",description:"Nombre de personnes ayant fait l'objet d'au moins",icon:"user-md",inputs:{orientation:{type:"number",label:"une orientation vers une structure de santé",mandatory:!1,condition({date:e}){return!!e}},accompagnement:{type:"number",label:"un accompagnement physique vers une structure de santé",mandatory:!1,condition({date:e}){return!!e}}}}],school:[{title:"Éducation et scolarisation",icon:"book-reader",inputs:{scolarisables:{type:"number",label:"Parmi les mineurs, combien sont en âge d'être scolarisés ?",mandatory:!1,condition({date:e}){return!!e}},en_mediation:{type:"number",label:"Combien bénéficient d’une action de médiation (3 – 18 ans) ?",mandatory:!1,condition({date:e}){return!!e}},maternelles:{type:"number",label:"Enfants inscrits en maternelle",mandatory:!1,condition({date:e}){return!!e}},elementaires:{type:"number",label:"Enfants inscrits en élémentaire",mandatory:!1,condition({date:e}){return!!e}},colleges:{type:"number",label:"Enfants inscrits au collège",mandatory:!1,condition({date:e}){return!!e}},lycees:{type:"number",label:"Enfants inscrits au lycée - formation professionnelle",mandatory:!1,condition({date:e}){return!!e}},difficultes:{type:"checkbox",label:"Difficultés éventuelles rencontrées :",mandatory:!1,condition({date:e}){return!!e},options:[{value:"cantine",label:"Cantine"},{value:"place_up2a",label:"Manque de place en UP2A"},{value:"transport",label:"Transport"}]}}}],work:[{title:"Formation et emploi",icon:"briefcase",description:"Nombre de personnes inscrites ou suivies par",inputs:{pole_emploi:{type:"number",label:"Pôle emploi",mandatory:!1,condition({date:e}){return!!e}},pole_emploi_femmes:{type:"number",label:"(dont femmes)",mandatory:!1,condition({date:e}){return!!e}},mission_locale:{type:"number",label:"Mission locale",mandatory:!1,condition({date:e}){return!!e}},mission_locale_femmes:{type:"number",label:"(dont femmes)",mandatory:!1,condition({date:e}){return!!e}}}},{icon:"briefcase",description:"Nombre de personnes ayant",inputs:{contrats:{type:"number",label:"un contrat",mandatory:!1,condition({date:e}){return!!e}},contrats_femmes:{type:"number",label:"(dont femmes)",mandatory:!1,condition({date:e}){return!!e}},formations:{type:"number",label:"une formation",mandatory:!1,condition({date:e}){return!!e}},formations_femmes:{type:"number",label:"(dont femmes)",mandatory:!1,condition({date:e}){return!!e}},autoentrepreneurs:{type:"number",label:"un statut autoentrepreneur",mandatory:!1,condition({date:e}){return!!e}},autoentrepreneurs_femmes:{type:"number",label:"(dont femmes)",mandatory:!1,condition({date:e}){return!!e}},are:{type:"number",label:"l'ARE",mandatory:!1,condition({date:e}){return!!e}},are_femmes:{type:"number",label:"(dont femmes)",mandatory:!1,condition({date:e}){return!!e}}}}],housing:[{title:"Logement",icon:"home",inputs:{housing:{type:"planHousing",label:"",mandatory:!1,condition({date:e}){return!!e}}}}],safety:[{title:"Stabilisation et sécurisation du site",icon:"seedling",inputs:{points_eau:{type:"number",label:"Nombre d'accès réguliers à l'eau potable",mandatory:!1,condition({date:e}){return!!e}},wc:{type:"number",label:"Nombre de sanitaires",mandatory:!1,condition({date:e}){return!!e}},electricite:{type:"number",label:"Nombre d'accès réguliers à l'électricité",mandatory:!1,condition({date:e}){return!!e}},nombre_bennes:{type:"number",label:"Nombre de bennes disponibles pour le ramassage des déchets du site",mandatory:!1,condition({date:e}){return!!e}}}}]},e},created(){this.load()},methods:{hasPermission:or,load(){-1===["loading","loaded"].indexOf(this.status)&&(this.status="loading",this.error=null,n$(this.$route.params.id).then(e=>{e.topics.forEach(({uid:e})=>{this.varyingSections[e]&&this.varyingSections[e].forEach(e=>{this.formDefinition.steps[0].sections.push(e)})});const t=this.formDefinition.steps[0].sections.find(({inputs:e})=>void 0!==e.audience);let i=null;if(0===e.states.length)t.title="Qui sont les publics ayant intégré le dispositif ?",t.description="Vous renseignez les indicateurs de suivi pour la première fois. Veuillez porter une attention particulière aux données que vous renseignez ci-dessous : les mises à jour ultérieures seront conditionnées par cette première déclaration.",t.inputs.audience.specificProps.inOnly=!0;else{[i]=e.states.slice(-1);const a=App.formatDate(i.date/1e3,"d/m/y");!0!==e.in_and_out?(t.title=`Quelles ont été les sorties du dispositif depuis la date du ${a} ?`,t.description="Seules les sorties du dispositif sont suivies, car le pilote de l’action au sein des services de l’Etat a renseigné qu’il n’existe pas de système d’entrées et de sorties du dispositif : le dispositif concerne un seul groupe de personne, ayant débuté le projet à la même période.
\n Attention : le remplissage de ce tableau a un impact sur le nombre de personnes identifiées dans ce dispositif. Merci de le renseigner avec attention",t.inputs.audience.specificProps.outOnly=!0):(t.title=`Quelles ont été les entrées et sorties du dispositif depuis la date du ${a} ?`,t.description="Les entrées et sorties du dispositif sont suivies, car le pilote de l’action au sein des services de l’Etat a renseigné qu’il existe un système d’entrées et de sorties.
\n Attention : le remplissage de ce tableau a un impact sur le nombre de personnes identifiées dans ce dispositif. Merci de le renseigner avec attention"),t.description+=`

\n Au ${a}, date de la dernière mise à jour des informations, sont intégrés dans le dispositif :\n ${e.audience.families} ménages, ${e.audience.total} personnes dont ${e.audience.women} femmes et ${e.audience.minors} mineurs\n `}i&&(this.formData={difficultes:["cantine","place_up2a","transport"].filter(e=>i.education&&(i.education["difficulte_"+e]||i.education["difficculte_"+e])),etp:i.etp.map(({total:e,type:{uid:t}})=>({total:e,type:t}))}),this.formDefinition.title=e.name,this.plan=e,this.status="loaded"}).catch(e=>{this.error=e.user_message,this.status="loadingError"}))},onComplete(){gu({group:"notifications",type:"success",title:"Indicateurs correctement enregistrés",text:"Le dispositif a bien été mis à jour"}),this.$router.push("/dispositif/"+this.$route.params.id)}}},B$=z$,R$=B$,V$=(i("0045"),Object(u["a"])(R$,L$,F$,!1,null,"8f52fc1c",null)),U$=V$.exports,H$=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"v1"},[i("div",{staticClass:"page--withMargin"},[i("NavBar"),i("section",{staticClass:"section section--white"},[i("div",{staticClass:"container"},["loaded"===e.status?i("div",e._l(e.sections,(function(t){return i("section",{staticClass:"formSection"},[i("header",{staticClass:"formSection-header"},[i("h1",{staticClass:"formSection-title"},[e._v(e._s(t.title))]),i("p",[e._v("Total : "+e._s(e.computeTotal(t.id)))])]),i("div",{staticClass:"panel"},[i("table",{staticClass:"table"},[i("thead",[i("tr",[i("th",[e._v("Département")]),i("th",[e._v(e._s(t.title))])])]),i("tbody",e._l(e.stats.numberOfShantytownOperations[t.id],(function(t){return i("tr",[i("td",[e._v("("+e._s(t.code)+") - "+e._s(t.name))]),i("td",[e._v(e._s(t.total))])])})),0)])])])})),0):e._e(),"loading"===e.status?i("div",{staticClass:"notification full-width"},[i("img",{staticClass:"spinner",attrs:{src:"/img/spinner_dark.svg",width:"20"}}),i("span",[e._v("Chargement des données en cours...")])]):e._e(),"loading"!==e.status&&"loaded"!==e.status?i("div",{staticClass:"notification full-width"},[i("span",[e._v(e._s(e.error)+". "),i("a",{attrs:{href:"#"},on:{click:e.load}},[e._v("Réessayer ?")])])]):e._e()])])],1)])},G$=[];function W$(){return Wo("/stats")}var J$={components:{NavBar:Mr},data(){return{status:null,error:null,stats:null,sections:[{id:"creations",title:"Nombre de sites créés"},{id:"updates",title:"Nombre de sites modifiés"},{id:"closings",title:"Nombre de sites fermés"}]}},mounted(){this.load()},methods:{load(){"loaded"!==this.status&&"loading"!==this.status&&(this.status="loading",this.error=null,W$().then(({statistics:e})=>{this.stats=e,this.status="loaded"}).catch(({user_message:e})=>{this.status="error",this.error=e}))},computeTotal(e){return this.stats.numberOfShantytownOperations[e].reduce((e,{total:t})=>e+parseInt(t,10),0)}}},Q$=J$,Y$=Q$,Z$=(i("12a5"),Object(u["a"])(Y$,H$,G$,!1,null,null,null)),K$=Z$.exports,X$=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"v1"},[i("div",{staticClass:"page--withMargin"},[i("NavBar"),i("section",{staticClass:"section section-white",attrs:{id:"form"}},[i("div",{staticClass:"container"},[i("h1",[e._v("Mentions légales")]),i("h3",[e._v("Editeurs")]),i("p",[i("router-link",{attrs:{to:"/"}},[e._v("Résorption bidonvilles")]),e._v(" est édité par la Fabrique numérique du ministère de la transition écologique et solidaire et du ministère de la cohésion des territoires et des relations avec les collectivités territoriales, sise 1 place Carpeaux, 92800 Puteaux, avec l’appui de l’incubateur de services numériques (beta.gouv.fr) de la direction interministérielle du numérique et du système d’information et de communication de l’État (DINSIC).")],1),i("h3",[e._v("Nous joindre")]),e._m(0),i("h3",[e._v("Directeurs de la publication")]),e._m(1),i("h3",[e._v("Prestataire d’hébergement")]),i("p",[e._v("Le site "),i("router-link",{attrs:{to:"/"}},[e._v("resorption-bidonvilles.beta.gouv.fr")]),e._v(" est hébergé par la société OVH"),i("br"),e._v("Code APE 6202A"),i("br"),e._v("N° TVA : FR 22 424 761 419"),i("br"),e._v("Inscrite au RCS Roubaix – Tourcoing 424 761 419 00045")],1),i("p",[e._v("Siège social : 2 rue Kellermann, 59100 Roubaix, France")])])])],1)])},eP=[function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("p",[i("ul",[i("li",[e._v("Par téléphone : +33 (0) 1 40 81 33 60")]),i("li",[e._v("Par mail : "),i("a",{staticClass:"mail",attrs:{href:"#","data-name":"contact","data-domain":"resorption-bidonvilles.beta.gouv","data-tld":"fr",onclick:"window.location.href = 'mailto:' + this.dataset.name + '@' + this.dataset.domain + '.' + this.dataset.tld; return false;"}})])])])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("p",[i("ul",[i("li",[e._v("Délégué interministériel à l’hébergement et l’accès au logement")]),i("li",[e._v("La Grande Arche - 92055 La Défense Cedex")])])])}],tP={components:{NavBar:Mr}},iP=tP,aP=iP,sP=(i("30ce"),Object(u["a"])(aP,X$,eP,!1,null,"ed8e96dc",null)),nP=sP.exports,oP=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"v1"},[i("Skeleton",{attrs:{loader:e.loader},on:{loaded:e.onLoaded},scopedSlots:e._u([{key:"title",fn:function(){return[i("h1",{staticClass:"page-title"},[e._v("Annuaire")]),i("p",{staticClass:"page-subtitle"},[e._v("Cette liste n’est pas exhaustive et regroupe à ce stade les utilisateurs de la plateforme à l’échelle nationale.")])]},proxy:!0},{key:"content",fn:function(){return[null!==e.focusedOrganization?i("Organization",{attrs:{organization:e.focusedOrganization},on:{close:e.resetFocusedOrganization}}):e._e(),i("div",{staticClass:"directory-search"},[i("OrganizationInput",{attrs:{specificProps:{placeholder:"Acteur, structure, ou territoire"}},model:{value:e.search,callback:function(t){e.search=t},expression:"search"}})],1),e.localIsNational?e._e():i("div",{staticClass:"switch"},[i("button",{class:{active:"local"===e.level},on:{click:function(t){return e.setLevel("local")}}},[e._v("Acteurs de mon territoire")]),i("button",{class:{active:"local"!==e.level},on:{click:function(t){return e.setLevel("national")}}},[e._v("Tous les acteurs")])]),i("Table",{staticClass:"directory",attrs:{columns:e.columns,content:e.pageContent,emptyLabel:"Aucun contact répertorié pour les filtres sélectionnés"},on:{click:e.focus}},[i("template",{slot:"aside"},[i("p",{staticClass:"directory-figures"},[e._v(e._s(e.filteredOrganizations.length)+" structure"+e._s(e.filteredOrganizations.length>1?"s":"")+" - "+e._s(e.usersTotal)+" contact"+e._s(e.usersTotal>1?"s":""))])])],2),i("div",{staticClass:"directory-tableAside"},[i("p",[e._v("Vous recherchez un contact public ? "),i("a",{attrs:{href:"https://lannuaire.service-public.fr"}},[e._v("https://lannuaire.service-public.fr")])])])]},proxy:!0}])})],1)},rP=[],lP=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"page page--withMargin"},[i("NavBar"),i("section",{staticClass:"section section-white"},[i("div",{staticClass:"container"},[i("header",{staticClass:"page-header"},[i("hgroup",{staticClass:"page-titleContainer"},[e._t("title")],2),"loaded"===e.loading.status?i("div",{staticClass:"page-buttons"},[e._t("buttons")],2):e._e()]),"loading"===e.loading.status&&e.loading.isSlow?i("div",{staticClass:"notification notification--loading full-width"},[e._m(0),e._m(1)]):e._e(),"failed"===e.loading.status?i("div",{staticClass:"notification notification--failure error full-width"},[i("p",{staticClass:"notification-icon"},[i("font-awesome-icon",{attrs:{icon:"times",size:"2x"}})],1),i("p",{staticClass:"notification-content"},[i("span",{staticClass:"notification-title"},[e._v("Le chargement des données a échoué")]),i("br"),i("span",{staticClass:"notification-description"},[e._v(e._s(e.loading.error))])])]):e._e(),"loaded"===e.loading.status?e._t("content",null,{data:e.data}):e._e()],2)])],1)},cP=[function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("p",{staticClass:"notification-icon"},[i("img",{attrs:{src:"/img/spinner_dark.svg"}})])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("p",{staticClass:"notification-content"},[i("span",{staticClass:"notification-title"},[e._v("Chargement des données en cours")])])}];const uP=1500;var dP={components:{NavBar:Mr},props:{loader:{type:Function,required:!1}},data(){return{data:null,loading:{status:null,error:null,isSlow:!1,slowTimeout:null}}},mounted(){void 0!==this.loader?this.load():this.loading.status="loaded"},methods:{load(){"loading"!==this.loading.status&&"loaded"!==this.loading.status&&(this.loading.isSlow=!1,this.loading.status="loading",this.loading.error=null,this.loading.slowTimeout=setTimeout(()=>{this.loading.isSlow=!0},uP),this.loader().then(e=>{this.$emit("loaded",e),this.data=e,this.loading.status="loaded"}).catch(e=>{this.loading.status="failed",this.loading.error=e&&e.user_message||"Une erreur inconnue est survenue"}).then(()=>{clearTimeout(this.loading.slowTimeout),this.loading.slowTimeout=null}))}}},pP=dP,mP=pP,hP=Object(u["a"])(mP,lP,cP,!1,null,null,null),vP=hP.exports,fP=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"popin"},[i("div",{ref:"wrapper",staticClass:"popin-wrapper"},[i("div",[i("p",{staticClass:"popin-close"},[i("span",{staticClass:"link",on:{click:e.close}},[i("font-awesome-icon",{attrs:{icon:"times",size:"2x"}})],1)]),i("section",{staticClass:"organization-body"},[i("h1",{staticClass:"primary"},[e._v("Structure")]),i("p",[e._v(e._s(e.organization.name))]),i("h1",{staticClass:"primary"},[e._v("Territoire")]),i("p",[e._v(e._s(e.organization.locationName))]),i("h1",{staticClass:"primary"},[e._v("Rôle")]),i("p",{staticStyle:{margin:"5px 0 35px 0"}},[i("span",{staticClass:"role"},[e._v(e._s(e.organization.role))])]),i("h1",[e._v(e._s(e.users.length)+" contact"+e._s(e.users.length>1?"s":""))]),i("div",{staticClass:"organization-users"},e._l(e.users,(function(t){return i("div",{staticClass:"userCard"},[i("h1",[e._v(e._s(t.first_name)+" "+e._s(t.last_name.toUpperCase()))]),i("h2",[e._v("Fonction")]),i("h3",{class:{"userCard-position--empty":!t.position}},[e._v(e._s(t.position||"NC"))]),i("ul",{staticClass:"userCard-infoList"},[i("li",{staticClass:"userCard-info--email"},[i("a",{attrs:{href:"mailto:"+t.email}},[e._v(e._s(t.email))])]),t.phone?i("li",{staticClass:"userCard-info--phone"},[e._v(e._s(t.phone))]):e._e()])])})),0)])])])])},gP=[],bP={props:{organization:{type:Object,required:!0}},mounted(){setTimeout(()=>{document.addEventListener("click",this.checkOutsideClick)},500)},destroyed(){document.removeEventListener("click",this.checkOutsideClick)},methods:{checkOutsideClick(e){this.$refs.wrapper.contains(e.target)||this.close()},close(){this.$emit("close")}},computed:{users(){const e=[255,475,558,576];return this.organization.users.filter(t=>!e.includes(t.id))}}},_P=bP,yP=_P,wP=(i("f090"),Object(u["a"])(yP,fP,gP,!1,null,"eb1c327e",null)),CP=wP.exports;function kP(e){return Jo("/statistics/directory-views",{organization:e})}var xP={components:{Skeleton:vP,Table:ac,Organization:CP,OrganizationInput:Rc},data(){return{organizations:[],columns:[{id:"organization",label:"Structure"},{id:"location",label:"Territoire"},{id:"role",label:"Rôle"},{id:"contacts",label:"",icon:"arrow-right"}],local:ar().user.organization.location,level:"local",search:null}},computed:{localIsNational(){return"nation"===this.local.type},parsedOrganizations(){let e=[];return e=this.localIsNational||"national"===this.level?this.organizations:this.organizations.filter(e=>{const t=this.local[this.local.type],i=e.location[this.local.type];return t&&i&&t.code===i.code}),e.map(e=>{let t,i;if(t=null!==e.type.abbreviation?`${e.type.abbreviation} (${e.name})`:null!==e.abbreviation?`${e.abbreviation} (${e.name})`:e.name,"nation"===e.location.type)i="National";else{const t=e.location[e.location.type];i=t?"departement"===e.location.type?`${t.name} (${t.code})`:t.name:""}return{id:e.id,organization:t,location:i,role:`${e.role}`,contacts:e.users.length>0?`${e.users.length} contact${e.users.length>1?"s":""}`:"",raw:{id:e.id,name:t,location:e.location,locationName:i,role:e.role,users:e.users}}})},filteredOrganizations(){if(null===this.search)return this.parsedOrganizations;let e;switch(this.search.data.type.id){case"user":e=({id:e})=>e===this.search.data.organization;break;case"location":e=({raw:{location:e}})=>e[this.search.data.location_type]&&e[this.search.data.location_type].code===this.search.data.id;break;case"organization":e=({id:e})=>e===this.search.data.id;break;default:e=()=>!1}return this.parsedOrganizations.filter(e)},focusedOrganization(){if(!this.$route.params.id)return null;const e=this.parsedOrganizations.find(({id:e})=>e===parseInt(this.$route.params.id,10));return void 0===e?null:e.raw},pageContent(){return this.filteredOrganizations.slice(this.pageBeginning-1,this.pageEnd)},usersTotal(){return this.filteredOrganizations.reduce((e,t)=>e+t.raw.users.length,0)}},watch:{focusedOrganization(){null!==this.focusedOrganization&&kP(this.focusedOrganization.id)}},methods:{loader:Ir,onLoaded({organizations:e}){this.organizations=e},setLevel(e){this.level!==e&&(this.level=e)},focus({raw:e}){this.$router.push("/annuaire/"+e.id)},resetFocusedOrganization(){this.$router.push("/annuaire")}}},SP=xP,$P=SP,PP=(i("e744"),Object(u["a"])($P,oP,rP,!1,null,null,null)),TP=PP.exports,IP=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"v1"},[i("div",{staticClass:"page--withMargin"},[i("NavBar"),"loading"===e.state?i("section",{staticClass:"section section-white"},[e._m(0)]):e._e(),"error"===e.state?i("section",{staticClass:"section section-white"},[i("div",{staticClass:"container"},[i("div",{staticClass:"notification error full-width"},[i("span",[e._v(e._s(e.error)+". "),i("a",{attrs:{href:"#"},on:{click:e.retryLoading}},[e._v("Réessayer ?")])])])])]):e._e(),"loaded"===e.state?i("section",{staticClass:"section section-white"},[null!==e.toBeDeleted?i("CommentDeletion",{attrs:{comment:e.toBeDeleted},on:{close:e.closePopin,deleted:e.onCommentDeleted}}):e._e(),i("div",{staticClass:"container"},[i("header",[e._m(1),i("SlideNote",{staticClass:"userActivity-rule",attrs:{title:"Règles de modération d'un commentaire"}},[i("template",{slot:"content"},[i("h1",[e._v("En tant qu'administrateur, vous êtes en charge de la modération des commentaires.")]),i("p",[e._v("Vous pouvez supprimer un commentaire ou demander à son auteur de le modifier s'il ne respecte pas les règles suivantes : "),i("ul",[i("li",[e._v("être neutre et factuel ;")]),i("li",[e._v("ne pas collecter des données personnelles (nom, condamnation judiciaire...) de personnes ou groupes, porter une attention particulière aux personnes habitant ou issues d'un bidonville ;")]),i("li",[e._v("ne doit pas être subjectif, insultant ou inapproprié.")])])]),i("p",[e._v("Pour plus d'informations :"),i("br"),i("router-link",{staticClass:"link",attrs:{to:"/typologie-des-acces"}},[i("font-awesome-icon",{attrs:{icon:"file-pdf"}}),e._v(" Guide des accès et de l'administrateur")],1),i("br"),i("router-link",{staticClass:"link",attrs:{to:"/charte-d-engagement"}},[i("font-awesome-icon",{attrs:{icon:"file-pdf"}}),e._v(" Charte d'engagement de l'utilisateur")],1)],1)])],2),i("div",{staticClass:"switch"},[i("button",{class:{active:"all"===e.filter},on:{click:function(t){return e.show("all")}}},[e._v("Tout")]),i("button",{class:{active:"shantytown"===e.filter},on:{click:function(t){return e.show("shantytown")}}},[e._v("Modifications")]),i("button",{class:{active:"comment"===e.filter},on:{click:function(t){return e.show("comment")}}},[e._v("Commentaires")])])],1),i("Table",{staticClass:"userActivity",attrs:{columns:e.columns,content:e.parsedActivities,emptyLabel:"Aucune activité trouvée pour les filtres sélectionnés"},on:{click:e.onRowClick},scopedSlots:e._u([{key:"date",fn:function(t){return[i("strong",[e._v(e._s(t.row.date))]),i("br"),e._v("à "+e._s(t.row.time))]}},{key:"author",fn:function(t){return[i("font-awesome-icon",{staticClass:"link",attrs:{icon:"user"}}),e._v(" "),i("router-link",{staticClass:"link",attrs:{"data-group":"link",to:"/annuaire/"+t.row.author.organization}},[e._v(e._s(t.row.author.name))])]}},{key:"activity",fn:function(t){return[i("span",{staticClass:"userActivity-action"},[i("font-awesome-icon",{attrs:{icon:t.row.icon}}),e._v(" "+e._s(t.row.action)+" site : "+e._s(t.row.address)+" ")],1),void 0!==t.row.content?i("div",{staticClass:"userActivity-content",domProps:{innerHTML:e._s(t.row.content)}}):e._e(),void 0!==t.row.comment?i("div",{staticClass:"userActivity-remove"},[i("span",{staticClass:"link",on:{click:function(i){return e.confirmCommentDeletion(t.row,i)}}},[i("font-awesome-icon",{attrs:{icon:"trash-alt"}}),e._v(" Supprimer")],1)]):e._e(),e._l(t.row.diff,(function(a){return t.row.diff?i("p",{staticClass:"changelog"},[i("span",{staticClass:"changelog-name"},[e._v(e._s(a.field)+" :")]),i("br"),i("span",{staticClass:"changelog-oldValue",class:{"changelog-value--unknown":!a.oldValue}},[e._v(e._s(a.oldValue||"non renseigné"))]),e._v(", "),i("span",{staticClass:"changelog-newValue",class:{"changelog-value--unknown":!a.newValue}},[e._v(e._s(a.newValue||"non renseigné"))])]):e._e()}))]}}],null,!1,2101574153)})],1)],1):e._e()],1)])},OP=[function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"container"},[i("div",{staticClass:"notification full-width"},[i("img",{staticClass:"spinner",attrs:{src:"/img/spinner_dark.svg",width:"20"}}),i("span",[e._v("Chargement des données en cours...")])])])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("hgroup",[i("h3",[e._v("Historique des activités")])])])}];function AP(e={}){let t="";return Object.keys(e).length>0&&(t="filters=",t+=Object.keys(e).map(t=>`${t}:${encodeURIComponent(e[t])}`).join(",")),Wo("/user-activities?"+t)}var NP=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"popin popin--commentDeletion"},[i("div",{ref:"wrapper",staticClass:"popin-wrapper"},[i("div",["pending"!==e.status?i("p",{staticClass:"popin-close"},[i("span",{staticClass:"link",on:{click:e.close}},[i("font-awesome-icon",{attrs:{icon:"times",size:"2x"}})],1)]):e._e(),i("div",{staticClass:"popin-header"},[i("span",{staticClass:"popin-icon"},[i("font-awesome-icon",{attrs:{icon:"trash-alt",size:"lg"}})],1),i("h1",{staticClass:"popin-title"},[e._v("Confirmez-vous la suppression du commentaire ?")])]),i("div",{staticClass:"popin-body"},[i("div",{staticClass:"comment"},[i("header",{staticClass:"comment-header"},[e._v(e._s(e.date)+" à "+e._s(e.time))]),i("ul",[i("li",{staticClass:"comment-author"},[i("span",[i("font-awesome-icon",{attrs:{icon:"user"}})],1),e._v(" "+e._s(e.comment.author.name))]),i("li",{staticClass:"comment-comment"},[i("span",[i("font-awesome-icon",{attrs:{icon:"comment"}})],1),e._v(" Commentaire")]),i("li",{staticClass:"comment-shantytown"},[i("span",[i("font-awesome-icon",{attrs:{icon:"map-pin"}})],1),e._v(" Site : "+e._s(e.address))])]),i("div",{staticClass:"comment-content",domProps:{innerHTML:e._s(e.comment.content)}})]),i("h1",{staticClass:"popin-h1"},[e._v("Pourquoi souhaitez-vous supprimer ce commentaire ?")]),null!==e.error?i("p",{staticClass:"error"},[e._v(e._s(e.error))]):e._e(),i("textarea",{directives:[{name:"model",rawName:"v-model",value:e.message,expression:"message"}],attrs:{placeholder:"Précisez la raison de la suppression à l'auteur, un mail lui sera envoyé"},domProps:{value:e.message},on:{input:function(t){t.target.composing||(e.message=t.target.value)}}}),i("div",{staticClass:"commentDeletionButtons"},["pending"!==e.status?i("button",{staticClass:"button secondary",on:{click:e.close}},[e._v("Annuler")]):e._e(),i("button",{staticClass:"button primary",attrs:{disabled:"pending"===e.status},on:{click:e.deleteComment}},["pending"!==e.status?i("span",[e._v("Oui, confirmer")]):i("span",[i("img",{attrs:{src:"/img/spinner_light.svg",width:"20"}})])])])])])])])},EP=[],jP={props:{comment:{type:Object,required:!0}},data(){return{status:null,error:null,message:""}},computed:{date(){return App.formatDate(this.comment.date,"d/m/y")},time(){return App.formatDate(this.comment.date,"h:i")},address(){return`${this.comment.shantytown.usename}, ${this.comment.shantytown.city}`}},mounted(){setTimeout(()=>{document.addEventListener("click",this.checkOutsideClick)},500)},destroyed(){document.removeEventListener("click",this.checkOutsideClick)},methods:{checkOutsideClick(e){this.$refs.wrapper.contains(e.target)||this.close()},close(){"pending"!==this.status&&this.$emit("close")},deleteComment(){"pending"!==this.status&&(this.status="pending",this.error=null,ql(this.comment.shantytown.id,this.comment.id,this.message).then(()=>{this.status=null,this.message="",this.$emit("deleted")}).catch(({user_message:e})=>{this.status=null,this.error=e}))}}},DP=jP,qP=DP,MP=(i("6501"),Object(u["a"])(qP,NP,EP,!1,null,"38509d0a",null)),LP=MP.exports,FP={components:{NavBar:Mr,Table:ac,CommentDeletion:LP,SlideNote:vu},data(){return{activities:[],error:null,state:null,toBeDeleted:null,filter:"all"}},computed:{columns(){return[{id:"date",label:"Date"},{id:"author",label:"Auteur"},{id:"activity",label:"Activités",..."shantytown"===this.filter?{filters:[{label:"Déclaration",value:"creation"},{label:"Modification",value:"update"},{label:"Fermeture",value:"closing"}],filterFn:(e,t)=>-1!==t.map(({value:e})=>e).indexOf(e.rawAction)}:{}}]},filteredActivities(){return"all"===this.filter?this.activities:this.activities.filter(({entity:e})=>e===this.filter)},parsedActivities(){return this.filteredActivities.map((e,t)=>{const i={index:t,rawAction:e.action,rawDate:e.date,rawShantytown:e.shantytown,date:App.formatDate(e.date,"d/m/y"),time:App.formatDate(e.date,"h:i"),author:e.author,icon:"comment"===e.entity?"comment":"pencil-alt",shantytown:e.shantytown.id,address:`${e.shantytown.usename}, ${e.shantytown.city}`},a={creation:"Déclaration du",update:"Modification du",closing:"Fermeture du"};return"comment"===e.entity?(i.action="Commentaire sur le",i.content=e.content,i.comment=e.comment_id):(i.action=a[e.action],i.diff=e.diff),i})}},created(){this.load()},methods:{load(){-1!==[null,"error"].indexOf(this.state)&&(this.state="loading",this.error=null,AP().then(e=>{this.activities=e,this.state="loaded"}).catch(({user_message:e})=>{this.error=e,this.state="error"}))},retryLoading(){this.load()},formatDate(...e){return window.App.formatDate.apply(window,e)},onRowClick(e){this.$router.push("/site/"+e.shantytown)},confirmCommentDeletion(e,t){return this.toBeDeleted={index:e.index,id:e.comment,shantytown:e.rawShantytown,author:e.author,date:e.rawDate,content:e.content},t.stopPropagation(),!1},closePopin(){this.toBeDeleted=null},onCommentDeleted(){this.activities.splice(this.toBeDeleted.index,1),this.toBeDeleted=null,gu({group:"notifications",type:"success",title:"Commentaire supprimé",text:"L'auteur du commentaire en a été notifié par email"})},show(e){this.filter=e}}},zP=FP,BP=zP,RP=(i("3a02"),Object(u["a"])(BP,IP,OP,!1,null,null,null)),VP=RP.exports,UP=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("PublicLayout",{attrs:{stickyHeader:!1}},[i("PublicContainer",{staticClass:"py-16"},[i("div",[i("h1",{staticClass:"text-display-xl"},[e._v("Statistiques")]),i("div",[e._v(" Depuis l'ouverture nationale de la plateforme en juin 2019 ")])]),i("StatsSection",{staticClass:"mt-16",attrs:{title:"Utilisateurs"}},[i("StatsBlock",{attrs:{title:e.numberOfDepartements,icon:"flag",subtitle:"départements de France métropolitaine",info:"Soit tous les départements concernés par le phénomène de squats ou bidonvilles."}}),i("StatsBlock",{attrs:{title:e.numberOfCollaboratorAndAssociationUsers,icon:"users",subtitle:"utilisateurs institutionnels et associatifs",info:e.numberOfPublicEstablishments+" services de l'État, "+e.numberOfTerritorialCollectivities+" collectivités territoriales, "+e.numberOfAssociations+" associations"}}),i("StatsBlock",{attrs:{title:e.numberOfNewUsers.total,icon:"user-plus",subtitle:"nouveaux utilisateurs en "+e.numberOfNewUsers.month.toLowerCase()}})],1),null!==e.numberOfNewUsersPerMonth?i("div",[i("h2",{staticClass:"text-display-lg text-secondary mt-16"},[e._v(" Nombre d' utilisateurs depuis "+e._s(e.numberOfNewUsersPerMonth[0].month.toLowerCase())+" ")]),i("TrendChart",{staticClass:"stats-chart",attrs:{datasets:e.usersEvolutionDatasets,labels:e.usersEvolutionLabels,grid:{verticalLines:!0,horizontalLines:!0},max:e.usersEvolutionMax,min:0}})],1):e._e(),i("StatsSection",{staticClass:"mt-16",attrs:{title:"Usage"}},[i("StatsBlock",{attrs:{title:e.numberOfExports,icon:"file-download",subtitle:"extractions de données réalisées",info:"Les exports Excel permettent aux acteurs locaux d'utiliser et d'analyser les données afin de suivre, communiquer et optimiser les actions de résorption depuis le 15/11/2019."}}),i("StatsBlock",{attrs:{title:e.numberOfComments,icon:"comment",subtitle:"commentaires créés",info:"Au delà du suivi des chiffrés, les commentaires permettent de suivre et de partager des informations qualitative utiles dans une action multi-partenariale."}}),i("StatsBlock",{attrs:{title:e.numberOfDirectoryViews,icon:"address-book",subtitle:"fiches contact consultées",info:"L'annuaire permet d'accéder aux coordonnées de tous les utilisateurs de la plateforme. Son utilisation participe à la mise en réseau partenaires locaux ou des pairs depuis le 15/11/2019"}})],1),i("StatsSection",{staticClass:"mt-16",attrs:{title:"Fréquence de mise à jour"},scopedSlots:e._u([{key:"info",fn:function(){return[i("span",{staticClass:"text-secondary"},[i("font-awesome-icon",{attrs:{icon:"sync"}})],1),e._v(" La mise à jour régulière des données garantissent des informations justes à tous les acteurs.")]},proxy:!0},{key:"default",fn:function(){return[i("StatsBlock",{attrs:{title:e.meanTimeBeforeCreationDeclaration,subtitle:"jours entre l'installation d'un bidonville ou squat et sa déclaration",info:"En moyenne, depuis le 01/09/2019."}}),i("StatsBlock",{attrs:{title:e.meanTimeBeforeClosingDeclaration,subtitle:"jours entre la fermeture du site et sa déclaration",info:"En moyenne, depuis le 01/09/2019."}}),i("StatsBlock",{attrs:{title:e.numberOfShantytownOperations,subtitle:"bidonvilles ou squats mis à jour",info:"Toutes opérations confondues : création, modification, fermeture"}})]},proxy:!0}])})],1)],1)},HP=[],GP=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("div",{staticClass:"text-display-lg"},[e._v(" "+e._s(e.title)+" "),i("span",{staticClass:"text-secondary"},[e.icon?i("font-awesome-icon",{attrs:{icon:e.icon}}):e._e()],1)]),i("div",{staticClass:"text-display-sm"},[e._v(e._s(e.subtitle))]),i("div",{staticClass:"text-sm"},[e._v(e._s(e.info))])])},WP=[],JP={props:{title:{type:[String,Number],required:!0},subtitle:{type:String,required:!0},info:{type:String,required:!1},icon:{type:String,required:!1}}},QP=JP,YP=Object(u["a"])(QP,GP,WP,!1,null,null,null),ZP=YP.exports,KP=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("h2",{staticClass:"text-display-lg text-secondary"},[e._v(e._s(e.title))]),e._t("info"),i("div",{staticClass:"grid grid-cols-1 md:grid-cols-3 gap-16 mt-8"},[e._t("default")],2)],2)},XP=[],eT={props:{title:{required:!0,type:String}}},tT=eT,iT=Object(u["a"])(tT,KP,XP,!1,null,null,null),aT=iT.exports,sT={components:{PublicLayout:Rs,PublicContainer:ps,StatsSection:aT,StatsBlock:ZP},data(){return{state:null,error:null,stats:null}},created(){this.load()},computed:{numberOfDepartements(){return this.stats?this.stats.numberOfDepartements:"..."},numberOfCollaboratorAndAssociationUsers(){return this.stats?this.stats.numberOfCollaboratorAndAssociationUsers:"..."},numberOfTerritorialCollectivities(){return this.stats?this.stats.numberOfCollaboratorAndAssociationOrganizations.territorial_collectivity||0:"..."},numberOfAssociations(){return this.stats?this.stats.numberOfCollaboratorAndAssociationOrganizations.association||0:"..."},numberOfPublicEstablishments(){return this.stats?this.stats.numberOfCollaboratorAndAssociationOrganizations.public_establishment||0:"..."},numberOfExports(){return this.stats?this.stats.numberOfExports:"..."},numberOfComments(){return this.stats?this.stats.numberOfComments:"..."},numberOfDirectoryViews(){return this.stats?this.stats.numberOfDirectoryViews:"..."},numberOfNewUsersPerMonth(){return this.stats&&this.stats.numberOfNewUsersPerMonth||null},usersEvolutionDatasets(){if(null===this.numberOfNewUsersPerMonth)return[];const e=this.numberOfNewUsersPerMonth.reduce((e,{total:t},i)=>0===i?[parseInt(t,10)]:[...e,parseInt(t,10)+e[e.length-1]],[]);return[{data:e,smooth:!0,fill:!0}]},usersEvolutionMax(){if(null===this.numberOfNewUsersPerMonth)return 0;const e=this.numberOfNewUsersPerMonth.reduce((e,{total:t})=>Math.max(e,t),0);return 10*Math.ceil(e/10)},usersEvolutionLabels(){return null===this.numberOfNewUsersPerMonth?{xLabels:[],yLabels:10}:{xLabels:this.numberOfNewUsersPerMonth.map(({month:e})=>e),yLabels:this.usersEvolutionMax/10+1,yLabelsTextFormatter:e=>e.toFixed(1)}},numberOfNewUsers(){return this.stats&&this.stats.numberOfNewUsersPerMonth?this.stats.numberOfNewUsersPerMonth.slice(-1)[0]:{total:"...",month:"..."}},meanTimeBeforeCreationDeclaration(){return this.stats?Math.round(this.stats.meanTimeBeforeCreationDeclaration.average)||"?":"..."},meanTimeBeforeClosingDeclaration(){return this.stats?Math.round(this.stats.meanTimeBeforeClosingDeclaration.average)||"?":"..."},numberOfShantytownOperations(){return this.stats?this.stats.numberOfShantytownOperations:"..."}},methods:{load(){"loading"!==this.state&&(this.state="loading",this.error=null,W$().then(({statistics:e})=>{this.stats=e,this.state="loaded"}).catch(({user_message:e})=>{this.error=e,this.state="error"}))}}},nT=sT,oT=Object(u["a"])(nT,UP,HP,!1,null,null,null),rT=oT.exports,lT=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"v1"},[i("div",{staticClass:"page--withMargin"},[i("NavBar"),"loading"===e.state?i("section",{staticClass:"section section-white"},[e._m(0)]):e._e(),"error"===e.state?i("section",{staticClass:"section section-white"},[i("div",{staticClass:"container"},[i("div",{staticClass:"notification error full-width"},[i("span",[e._v(e._s(e.error)+". "),i("a",{attrs:{href:"#"},on:{click:e.retryLoading}},[e._v("Réessayer ?")])])])])]):e._e(),"loaded"===e.state?i("section",{staticClass:"section section-white"},[i("div",{staticClass:"container"},[i("header",{staticClass:"headerWithPdfLinks"},[i("router-link",{staticClass:"link",attrs:{to:"/fiches-hebergement-logement-adapte"}},[i("font-awesome-icon",{attrs:{icon:"file-pdf"}}),e._v(" Fiches hébergement et logement adapté")],1),e._v(" "),i("router-link",{staticClass:"link",attrs:{to:"/fiche-bidonvilles-maraudes"}},[i("font-awesome-icon",{attrs:{icon:"file-pdf"}}),e._v(" Fiche bidonvilles et maraudes")],1)],1),i("header",[i("div",[e._m(1),i("p",[e._v("L'ensemble des commentaires sur votre territoire (département ou région)")]),e.canSubmitHighComment?i("SlideNote",{attrs:{title:"Écrire un commentaire 'Territoire'",opened:!0,icon:"comment"}},[i("template",{slot:"content"},[i("p",[e._v('Les commentaires "territoires" permettent de partager des informations sur le pilotage, la coordination et l\'organisation retenus au niveau local.')]),i("p",[i("span",[i("strong",[e._v("Territoire(s) concerné(s) par votre commentaire :")])]),i("br"),i("ul",{staticClass:"input--checkbox"},e._l(e.allowedDepartements,(function(t,a){return i("li",{staticClass:"input--checkbox-option"},[i("label",{attrs:{for:"input"+e._uid+"-"+a}},[i("input",{directives:[{name:"model",rawName:"v-model",value:e.highCovidComment.data.departements,expression:"highCovidComment.data.departements"}],staticClass:"input input--checkbox",attrs:{type:"checkbox",id:"input"+e._uid+"-"+a,name:"input"+e._uid,disabled:e.highCovidComment.pending||e.allowedDepartements.length<=1},domProps:{value:t.code,checked:Array.isArray(e.highCovidComment.data.departements)?e._i(e.highCovidComment.data.departements,t.code)>-1:e.highCovidComment.data.departements},on:{change:function(i){var a=e.highCovidComment.data.departements,s=i.target,n=!!s.checked;if(Array.isArray(a)){var o=t.code,r=e._i(a,o);s.checked?r<0&&e.$set(e.highCovidComment.data,"departements",a.concat([o])):r>-1&&e.$set(e.highCovidComment.data,"departements",a.slice(0,r).concat(a.slice(r+1)))}else e.$set(e.highCovidComment.data,"departements",n)}}}),e._v(" "+e._s(t.code+" - "+t.name)+" ")])])})),0)]),i("p",[i("span",[i("strong",[e._v("Votre commentaire :")])]),i("br"),i("textarea",{directives:[{name:"model",rawName:"v-model",value:e.highCovidComment.data.description,expression:"highCovidComment.data.description"}],staticClass:"input input--textarea",attrs:{disabled:e.highCovidComment.pending,readonly:e.highCovidComment.pending},domProps:{value:e.highCovidComment.data.description},on:{input:function(t){t.target.composing||e.$set(e.highCovidComment.data,"description",t.target.value)}}})]),null!==e.highCovidComment.error?i("p",{staticClass:"error"},[i("span",{staticClass:"error"},[e._v(e._s(e.highCovidComment.error.message))])]):e._e(),i("p",[i("button",{staticClass:"form-stepButton button",attrs:{disabled:e.highCovidComment.pending},on:{click:e.submitHighCovidComment}},[e.highCovidComment.pending?i("img",{attrs:{src:"/img/spinner_light.svg",width:"20"}}):i("span",[e._v("Envoyer")])])])])],2):e._e()],1),i("div",{staticClass:"switch"},[i("button",{class:{active:"all"===e.filter},on:{click:function(t){return e.setFilter("all")}}},[e._v("Tous")]),i("button",{class:{active:"regular"===e.filter},on:{click:function(t){return e.setFilter("regular")}}},[e._v('Commentaires "Sites"')]),i("button",{class:{active:"high"===e.filter},on:{click:function(t){return e.setFilter("high")}}},[e._v('Commentaires "Territoire"')])])]),i("Table",{staticClass:"userActivity",attrs:{columns:e.columns,content:e.parsedActivities,emptyLabel:"Aucune activité trouvée pour les filtres sélectionnés"},on:{click:e.onRowClick},scopedSlots:e._u([{key:"date",fn:function(t){return[i("strong",[e._v(e._s(t.row.date))]),i("br"),e._v("à "+e._s(t.row.time))]}},{key:"author",fn:function(t){return[i("font-awesome-icon",{staticClass:"link",attrs:{icon:"user"}}),e._v(" "),i("router-link",{staticClass:"link",attrs:{"data-group":"link",to:"/annuaire/"+t.row.author.organization}},[e._v(e._s(t.row.author.name))])]}},{key:"activity",fn:function(t){return[t.row.covid?i("span",{staticClass:"userActivity-action"},[i("font-awesome-icon",{attrs:{icon:t.row.icon}}),e._v(" "+e._s(t.row.action)+" site : "+e._s(t.row.address)+" ")],1):i("span",{staticClass:"userActivity-action"},[i("font-awesome-icon",{attrs:{icon:t.row.icon}}),e._v(" Commentaire sur le territoire : "+e._s(t.row.highCovid.departements.map((function(e){var t=e.code;return t})).join(", "))+" ")],1),i("div",{staticClass:"userActivity-content"},[t.row.covid?i("p",e._l(e.covidTags,(function(a){return!0===t.row.covid[a.prop]?i("span",{class:"rbTag rbTag--"+a.type},[e._v(e._s(a.label))]):e._e()})),0):e._e(),t.row.covid?i("p",[e._v("Date de l'intervention : "+e._s(e.formatDate(t.row.covid.date)))]):e._e(),i("p",{domProps:{innerHTML:e._s(t.row.content)}})])]}}],null,!1,240379794)})],1)]):e._e()],1)])},cT=[function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"container"},[i("div",{staticClass:"notification full-width"},[i("img",{staticClass:"spinner",attrs:{src:"/img/spinner_dark.svg",width:"20"}}),i("span",[e._v("Chargement des données en cours...")])])])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("hgroup",[i("h3",[e._v("Covid-19")])])}];function uT(e){return Jo("/high-covid-comments",e)}var dT={components:{NavBar:Mr,Table:ac,SlideNote:vu},data(){const{user:e}=ar();return{user:e,filter:"all",activities:[],allowedDepartements:[],highCovidComment:{pending:!1,error:null,data:{description:"",departements:[]}},error:null,state:null,covidTags:[{prop:"equipe_maraude",label:"Équipe de maraude",type:"warning"},{prop:"equipe_sanitaire",label:"Équipe sanitaire",type:"warning"},{prop:"equipe_accompagnement",label:"Équipe d'accompagnement",type:"warning"},{prop:"distribution_alimentaire",label:"Distribution d'aide alimentaire",type:"warning"},{prop:"personnes_orientees",label:"Personne(s) orientée(s) vers un centre d'hébergement spécialisé (desserrement)",type:"error"},{prop:"personnes_avec_symptomes",label:"Personne(s) avec des symptômes Covid-19",type:"error"},{prop:"besoin_action",label:"Besoin d'une action prioritaire",type:"error"}]}},computed:{columns(){return[{id:"date",label:"Date"},{id:"author",label:"Auteur"},{id:"activity",label:"Activités"}]},filteredActivities(){return"all"===this.filter?this.activities:this.activities.filter(e=>"regular"===this.filter?null!==e.covid:null!==e.highCovid)},parsedActivities(){return this.filteredActivities.map((e,t)=>({index:t,rawAction:e.action,rawDate:e.date,rawShantytown:e.shantytown,date:App.formatDate(e.date,"d/m/y"),time:App.formatDate(e.date,"h:i"),author:e.author,icon:"comment"===e.entity?"comment":"pencil-alt",shantytown:e.shantytown.id,address:`${e.shantytown.usename}, ${e.shantytown.city}`,action:"Commentaire sur le",content:e.content,comment:e.comment_id,covid:e.covid,highCovid:e.highCovid}))},canSubmitHighComment(){return"nation"!==this.user.organization.location.type&&"nation"!==nr("covid_comment.list").geographic_level}},created(){this.load()},methods:{load(){if(-1===[null,"error"].indexOf(this.state))return;let e;switch(this.state="loading",this.error=null,this.user.organization.location.type){default:case"nation":e=Promise.resolve({departements:[]});break;case"region":e=g$(this.user.organization.location.region.code);break;case"epci":e=b$(this.user.organization.location.epci.code);break;case"departement":case"city":e=Promise.resolve({departements:[this.user.organization.location.departement]})}Promise.all([AP({covid:"1"}),e]).then(([e,{departements:t}])=>{this.activities=e,this.allowedDepartements=t,this.highCovidComment.data.departements=t.map(({code:e})=>e),this.state="loaded"}).catch(({user_message:e})=>{this.error=e,this.state="error"})},retryLoading(){this.load()},formatDate(...e){return window.App.formatDate.apply(window,e)},onRowClick(e){e.shantytown&&this.$router.push("/site/"+e.shantytown)},setFilter(e){this.filter=e},submitHighCovidComment(){this.highCovidComment.pending||(this.highCovidComment.pending=!0,this.highCovidComment.error=null,uT(this.highCovidComment.data).then(()=>{this.highCovidComment.pending=!1,this.state=null,this.load()}).catch(({user_message:e,fields:t})=>{this.highCovidComment.pending=!1,this.highCovidComment.error={message:e,fields:t}}))}}},pT=dT,mT=pT,hT=(i("a897"),Object(u["a"])(mT,lT,cT,!1,null,null,null)),vT=hT.exports,fT=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("PrivateLayout",[i("PrivateContainer",[i("Modal",{attrs:{isOpen:!0,allowClose:!1},scopedSlots:e._u([{key:"header",fn:function(){return[i("div",{staticClass:"pt-10 px-10 pb-4"},[i("div",{staticClass:"border-b border-G400 pb-2"},[i("div",{staticClass:"text-display-md text-primary"},[e._v(" Des nouveautés sont disponibles sur la plateforme ")]),i("div",{staticClass:"text-secondary"},[e._v(" "+e._s(e.changelog.date)+" ")])])])]},proxy:!0},{key:"body",fn:function(){return[i("div",{staticClass:"flex justify-between"},[i("div",{staticClass:"w-128 mr-8"},[i("img",{attrs:{src:e.currentItem.image,alt:e.currentItem.title}}),i("div",{staticClass:"text-center"},e._l(e.changelog.items,(function(t,a){return i("span",{key:a,staticClass:"inline-block bg-gray-500 w-2 h-2 mx-1 rounded",class:{"bg-primary":a===e.currentItemIndex}})})),0)]),i("div",{staticClass:"w-128 pt-2"},[i("header",{staticClass:"text-gray-500 bold"},[i("p",[i("span",{staticClass:"text-primary"},[e._v(e._s(e.currentItemIndex+1))]),e._v(" / "+e._s(e.changelog.items.length)+" ")]),i("h1",{staticClass:"text-primary bold"},[e._v(" "+e._s(e.currentItem.title)+" ")])]),i("div",{staticClass:"description",domProps:{innerHTML:e._s(e.currentItem.description)}})])]),null!==e.error?i("div",{staticClass:"bg-red300 text-error bold p-3 mt-4"},[e._v(" "+e._s(e.error)+" ")]):e._e(),i("div",{staticClass:"flex justify-between mt-8"},[i("div",[e.currentItemIndex>0?i("Button",{attrs:{variant:"primary",disabled:e.pending},on:{click:e.previousItem}},[e._v("Précédent")]):e._e()],1),i("div",[e.currentItemIndex{tr().then(()=>{this.pending=!1,this.$router.push("/")}).catch(e=>{this.pending=!1,this.error=e&&e.user_message||"Une erreur inconnue est survenue"})}).catch(e=>{this.pending=!1,this.error=e&&e.user_message||"Une erreur inconnue est survenue"}))}}},_T=bT,yT=(i("f867"),Object(u["a"])(_T,fT,gT,!1,null,null,null)),wT=yT.exports,CT=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"object-center"},[a("div",{staticClass:"v1 print:hidden"},[a("NavBar")],1),e._t("default"),a("div",{staticClass:"object-center max-w-3xl mx-8 lg:mx-auto"},[a("img",{staticClass:"mx-auto my-8 max-w-sm",attrs:{src:i("9e63")}}),a("h1",{staticClass:"text-display-lg text-center mb-8"},[e._v(" Agir pour résorber les bidonvilles ")]),e._m(0),e._m(1),e._m(2),a("div",{staticClass:"my-4"},[a("a",{staticClass:"link",attrs:{href:e.charte.fichier,target:"_blank"}},[e._v(" Charte d'engagement détaillée ")])]),a("div",{staticClass:"bg-yellow-200 flex flex-row p-5 mb-8"},[a("div",[a("Checkbox",{attrs:{checkValue:!0,variant:"classic",disabled:"pending"===e.form.status},model:{value:e.charte_agreement,callback:function(t){e.charte_agreement=t},expression:"charte_agreement"}})],1),e._m(3)]),a("div",{staticClass:"bg-yellow-200 flex flex-row p-5 mb-8"},[a("div",[a("Checkbox",{attrs:{checkValue:!0,variant:"classic",disabled:"pending"===e.form.status},model:{value:e.confidentiality_agreement,callback:function(t){e.confidentiality_agreement=t},expression:"confidentiality_agreement"}})],1),e._m(4)]),"error"===e.form.status?a("div",{staticClass:"my-8"},[a("span",{staticClass:"font-bold"},[e._v("Une erreur est survenue :")]),a("br"),a("span",[e._v(e._s(e.form.error))])]):e._e(),a("div",{staticClass:"flex justify-between"},[a("Button",{staticClass:"mb-4 flex flex-none",attrs:{variant:"primaryText"},on:{click:e.cancel}},[e._v(" Annuler ")]),a("Button",{staticClass:"mb-4",attrs:{type:"primary",variant:"tertiary",disabled:"pending"===e.form.status||!e.charte_agreement.includes(!0)||!e.confidentiality_agreement.includes(!0),loading:e.loading},on:{click:e.submit}},[e._v("Oui, je valide la charte ")])],1)])],2)},kT=[function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("p",{staticClass:"mb-4"},[i("em",[e._v("Résorption-bidonvilles")]),e._v(" a pour vocation d'"),i("strong",[e._v("accélérer la politique de résorption des bidonvilles")]),e._v(" telle que décrite par "),i("a",{staticClass:"link",attrs:{href:"https://www.legifrance.gouv.fr/download/pdf/circ?id=42949",target:"_blank"}},[e._v(" l'instruction du 25 janvier 2018. ")]),e._v(" Il s'agit pour cela de dépasser l'approche centrée sur les évacuations au profit d'une "),i("strong",[e._v(" approche globale alliant insertion sociale, respect de l'ordre public et prévention des réinstallations. ")])])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("p",{staticClass:"mb-4"},[i("strong",[e._v(" Les données partagées sur la plateforme doivent être utilisées uniquement pour servir cet objectif de résorption, ")]),e._v(" ne doivent pas être nominatives ni faire référence à l'origine ethnique ou culturelle des personnes et doivent respecter la dignité des habitants des bidonvilles. ")])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("p",[i("strong",[e._v("La plateforme est un outil collaboratif")]),e._v(" où chaque utilisateur, à sa place, s'engage à contribuer, à être actif. ")])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[e._v(" En validant mon accès, "),i("strong",[e._v("je m’engage à contribuer et à utiliser la plateforme dans une optique de résorption des bidonvilles selon l'approche humaine et pragmatique décrite par "),i("a",{staticClass:"link",attrs:{href:"https://www.legifrance.gouv.fr/download/pdf/circ?id=42949",target:"_blank"}},[e._v(" l'instruction du 25 janvier 2018 ")])]),e._v(" . ")])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[e._v(" Je m'engage à "),i("strong",[e._v(" respecter la charte d'engagement, à exploiter les informations présentes sur la plateforme exclusivement pour les besoins propres de mon organisation ; à ne pas communiquer ")]),e._v(" sous aucune forme (orale, écrite, copie) à un tiers. ")])}],xT={components:{NavBar:Mr},data(){const{user:{id:e},version_charte_engagement:t}=ar();return{user:e,charte:t,charte_agreement:[],confidentiality_agreement:[],form:{status:null,error:null},loading:!1}},methods:{async submit(){try{if("pending"===this.form.status)return;this.loading=!0,this.form.status="pending",this.form.error=null,await Ar(this.user,this.charte.version,this.charte_agreement[0],this.confidentiality_agreement[0]),sr("user.charte_engagement_a_jour",!0),this.loading=!1,this.$router.push("/")}catch({user_message:e}){this.loading=!1,this.form.status="error",this.form.error=e}},cancel(){this.$router.push("/deconnexion")}}},ST=xT,$T=Object(u["a"])(ST,CT,kT,!1,null,null,null),PT=$T.exports;let TT=null;function IT(e,t,i,a){for(let s=0;sor(e))}function AT(){const{user:{position:e}}=ar();return""!==e}function NT(){const{changelog:e}=ar();return null===e}const ET={anonymous:IT.bind(void 0,[{checker:()=>!pr(),target:"/",saveEntryPoint:!1}]),loggedIn:IT.bind(void 0,[{checker:pr,target:"/connexion"}]),loaded:IT.bind(void 0,[{checker:pr,target:"/connexion"},{checker:er,target:"/launcher"},{checker:OT,target:"/",saveEntrypoint:!1}]),loadedAndUpgraded:IT.bind(void 0,[{checker:pr,target:"/connexion"},{checker:er,target:"/launcher"},{checker:OT,target:"/",saveEntrypoint:!1},{checker:lr,target:"/signature-charte-engagement"},{checker:AT,target:"/mise-a-niveau"}]),loadedAndUpToDate:IT.bind(void 0,[{checker:pr,target:"/connexion"},{checker:er,target:"/launcher"},{checker:OT,target:"/",saveEntrypoint:!1},{checker:lr,target:"/signature-charte-engagement"},{checker:AT,target:"/mise-a-niveau"},{checker:NT,target:"/nouvelle-version"}])};function jT(){return!0!==pr()?mr()?"/connexion":"/landing":!0!==er()?"/launcher":"/cartographie"}const DT=new n["a"]({scrollBehavior:(e,t,i)=>e.hash?{selector:e.hash}:i||{x:0,y:0},routes:[{path:"/",redirect:jT,meta:{analyticsIgnore:!0}},{path:"/landing",component:Do,beforeEnter:ET.anonymous},{path:"/statistiques-publiques",component:rT,beforeEnter:ET.anonymous},{path:"/connexion",component:Pu,beforeEnter:ET.anonymous},{path:"/contact",component:fd,beforeEnter:ET.anonymous},{path:"/launcher",component:Ep,beforeEnter:ET.loggedIn},{path:"/nouvelle-version",component:wT,beforeEnter:ET.loadedAndUpgraded},{path:"/deconnexion",beforeEnter:(e,t,i)=>{dr(a["default"].prototype.$piwik),i("/")},meta:{analyticsIgnore:!0}},{meta:{group:"townList"},path:"/cartographie",component:$p,beforeEnter:ET.loadedAndUpToDate},{meta:{group:"townList"},path:"/liste-des-sites",component:_h,beforeEnter:ET.loadedAndUpToDate},{meta:{group:"townList"},path:"/liste-des-sites",component:_h,beforeEnter:ET.loadedAndUpToDate},{meta:{group:"townCreation",permissions:["shantytown.create"]},path:"/nouveau-site",component:Lw,beforeEnter:ET.loadedAndUpToDate},{meta:{group:"townList"},path:"/site/:id",component:jx,beforeEnter:ET.loadedAndUpToDate},{meta:{group:"townList"},path:"/site/:id/mise-a-jour",component:Uw,beforeEnter:ET.loadedAndUpToDate},{path:"/feedback",beforeEnter(e,t,i){window.location.href="mailto:contact@resorption-bidonvilles.beta.gouv.fr",i(!1)}},{path:"/conditions-d-utilisation",beforeEnter(e,t,i){window.open("/doc/CGU_Resorption_Bidonvilles.pdf"),i(!1)}},{path:"/typologie-des-acces",beforeEnter(e,t,i){window.open("/doc/guide_de_l_administrateur.pdf"),i(!1)}},{path:"/charte-d-engagement",beforeEnter(e,t,i){const{version_charte_engagement:{fichier:a}}=ar();window.open(a,"_blank"),i(!1)}},{path:"/mentions-legales",component:nP},{meta:{group:"account"},path:"/mon-compte",component:Bx,beforeEnter:ET.loadedAndUpToDate},{meta:{group:"users",permissions:["user.list"]},path:"/liste-des-utilisateurs",component:iS,beforeEnter:ET.loadedAndUpToDate},{meta:{group:"userCreation",permissions:["user.create"]},path:"/nouvel-utilisateur",component:dS,beforeEnter:ET.loadedAndUpToDate},{path:"/signature-charte-engagement",component:PT,beforeEnter:IT.bind(void 0,[{checker:pr,target:"/connexion"},{checker:er,target:"/launcher"},{checker:OT,target:"/",saveEntrypoint:!1},{checker(){return!lr()},target:"/"}])},{meta:{group:"users",permissions:["user.activate"]},path:"/nouvel-utilisateur/:id",component:jS,beforeEnter:ET.loadedAndUpToDate},{meta:{group:"users"},path:"/mise-a-niveau",component:BS,beforeEnter:ET.loaded},{meta:{group:"users"},path:"/nouveau-mot-de-passe",component:JS,beforeEnter:ET.anonymous},{meta:{group:"users"},path:"/renouveler-mot-de-passe/:token",component:t$,beforeEnter:ET.anonymous},{meta:{group:"account"},path:"/activer-mon-compte/:token",component:bS,beforeEnter:ET.anonymous},{meta:{group:"plans",permissions:["plan.list"]},path:"/liste-des-dispositifs",component:h$,beforeEnter:ET.loadedAndUpToDate},{meta:{group:"plans",permissions:["plan.create"]},path:"/nouveau-dispositif",component:k$,beforeEnter:ET.loadedAndUpToDate},{meta:{group:"plans",permissions:["plan.update"]},path:"/modifier-dispositif/:id",component:M$,beforeEnter:ET.loadedAndUpToDate},{meta:{group:"plans",permissions:["plan.read"]},path:"/dispositif/:id",component:O$,beforeEnter:ET.loadedAndUpToDate},{meta:{group:"plans",permissions:["plan.updateMarks"]},path:"/dispositif/:id/indicateurs",component:U$,beforeEnter:ET.loadedAndUpToDate},{meta:{group:"admin",permissions:["stats.read"]},path:"/statistiques",component:K$,beforeEnter:ET.loadedAndUpToDate},{meta:{group:"admin",permissions:["shantytown_comment.moderate"]},path:"/historique-des-activites",component:VP,beforeEnter:ET.loadedAndUpToDate},{meta:{group:"covid"},path:"/covid-19",component:vT,beforeEnter:ET.loadedAndUpToDate},{meta:{group:"directory"},path:"/annuaire/:id?",component:TP,beforeEnter:ET.loadedAndUpToDate},{path:"/fiches-hebergement-logement-adapte",beforeEnter(e,t,i){window.open("/doc/fiches-hebergement-logement-adapte.pdf"),i(!1)}},{path:"/fiche-bidonvilles-maraudes",beforeEnter(e,t,i){window.open("/doc/fiche-bidonvilles-maraudes.pdf"),i(!1)}}]});function qT(){if(null===TT)return"/";const e=TT;return TT=null,e}const MT=[{long:"Janvier",short:"jan."},{long:"Février",short:"fév."},{long:"Mars",short:"mars"},{long:"Avril",short:"avr."},{long:"Mai",short:"mai"},{long:"Juin",short:"juin"},{long:"Juillet",short:"juil."},{long:"Août",short:"août"},{long:"Septembre",short:"sep."},{long:"Octobre",short:"oct."},{long:"Novembre",short:"nov."},{long:"Décembre",short:"déc."}];window.App=Object.freeze({escapeHtml(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},dateDiff(e,t){const i=new Date(e),a=new Date(t);let s;if(s=12*(a.getFullYear()-i.getFullYear()),s-=i.getMonth()+1,s+=a.getMonth(),s=s<=0?0:s,0===s){const e=Math.abs(i.getTime()-a.getTime())/864e5;return`${e} jour${e>1?"s":""}`}if(s<12)return s+" mois";if(12===s)return"1 an";const n=Math.floor(s/12),o=s%12;let r=`${n} an${n>1?"s":""}`;return o>0&&(r+=` ${o} mois`),r},formatDate(e,t="d/m/y"){const i=new Date(1e3*e);return t.replace("d",("0"+i.getDate()).slice(-2)).replace("m",("0"+(i.getMonth()+1)).slice(-2)).replace("y",i.getFullYear()).replace("h",("0"+i.getHours()).slice(-2)).replace("i",("0"+i.getMinutes()).slice(-2)).replace("M",MT[i.getMonth()].long).replace("B",MT[i.getMonth()].short)}}),a["default"].component("font-awesome-icon",r["a"]),a["default"].use(o["a"]),a["default"].use(n["a"]),a["default"].use(s["a"]),a["default"].use(Ra,{host:"https://stats.data.gouv.fr",siteId:86,trackerFileName:"piwik",router:DT,enableLinkTracking:!0,requireConsent:!1,trackInitialView:!0,debug:!0}),La(a["default"]);const LT=new s["a"]({locale:"fr",messages:E});a["default"].createElement=e=>new a["default"](e),a["default"].createElement({el:"#app",router:DT,store:hh,i18n:LT,render:e=>e(m)})},"7c9e":function(e,t,i){},"7d21":function(e,t,i){},"7fa8":function(e,t,i){},8072:function(e,t,i){},"82ab":function(e,t,i){},8324:function(e,t,i){"use strict";var a=i("0514"),s=i.n(a);s.a},"83c6":function(e,t,i){"use strict";var a=i("42da"),s=i.n(a);s.a},8503:function(e,t,i){e.exports=i.p+"img/resorption-bidonvilles-2.8711730a.jpg"},"85f4":function(e,t,i){},8683:function(e,t,i){},"87de":function(e,t,i){"use strict";var a=i("3eb2"),s=i.n(a);s.a},8950:function(e,t,i){"use strict";var a=i("6382"),s=i.n(a);s.a},8973:function(e,t,i){e.exports=i.p+"img/resorption-bidonvilles-dessin.40bfb99e.png"},8974:function(e,t,i){"use strict";var a=i("e99b"),s=i.n(a);s.a},"8aa6":function(e,t,i){"use strict";var a=i("1a28"),s=i.n(a);s.a},"8b2f":function(e,t,i){e.exports=i.p+"img/resorption-bidonvilles-5.e5839f75.jpg"},"904f":function(e,t,i){},9355:function(e,t,i){},"93aa":function(e,t,i){"use strict";var a=i("a67f"),s=i.n(a);s.a},"95f8":function(e,t,i){},"983b":function(e){e.exports=JSON.parse('{"title":"Neighbour, citizen, slum dweller... Any news? A question ? An alert?","contactUs":"Contact us","email":"Your email","firstname":"First name","lastname":"Last name","requestType":"You want to...","help":"receive support","report":"report","requestHelp":"request help","requestInfo":"request info","requestAccess":"request access","isActor":"Are you involved in slum resorption","actorExample":"For example: a State service, an association operator, a local authority, etc.","yes":"Yes","no":"No","whichEstablishment":"Which establishment?","public":"State service, public institution or public organisation","territorialCollectivity":"Territorial collectivity","association":"Association","administration":"Central administration","message":"Your message","legal":"I give my consent to the processing of my personal data.","send":"Send","cancel":"Cancel","error":"Your request contains errors:","share":"Share this page"}')},9934:function(e,t,i){e.exports=i.p+"img/people.9be8d82e.svg"},9985:function(e,t,i){"use strict";var a=i("b3ad"),s=i.n(a);s.a},"9aab":function(e,t,i){e.exports=i.p+"img/after.de372322.png"},"9cb2":function(e,t,i){},"9cc2":function(e,t,i){},"9cc9":function(e,t){e.exports={props:{title:{required:!0,type:String},showMandatoryStar:{required:!1,type:Boolean,default:!1}}}},"9cfe":function(e,t,i){},"9d64":function(e,t,i){e.exports=i.p+"img/RO.3c42c422.svg"},"9ddb":function(e){e.exports=JSON.parse('{"title":"Vecin, cetățean, rezident pe un platz... O informaţie? O întrebare? O alertă?","contactUs":"Contactaţi-ne","email":"E-mailul dumneavoastră","firstname":"Prenume","lastname":"Nume","requestType":"Doriţi","help":"Să ajutaţi","report":"Să semnalaţi","requestHelp":"Să cereţi ajutor","requestInfo":"Să cereţi informații","requestAccess":"Sa solicitați accesul la platformă","isActor":"Sunteţi actor în dizolvarea platzurilor ?","actorExample":"De exemplu: un serviciu de stat, un operator de asociaţie, o colectivitate locală..","yes":"Da","no":"Nu","whichEstablishment":"Care este structura dumneavostră ","public":"Serviciu de stat, instituție sau organism public","territorialCollectivity":"Colectivitate teritorială","association":"Asociaţie","administration":"Administraţie centrală","message":"Mesajul dumneavoastră","legal":"Certific faptul că aceste date cu caracter personal au fost introduse cu consimțământul meu.","send":"Trimite","cancel":"Anulează","error":"Solicitarea dvs. conține erori:","share":"Împărtășeste acestă pagină"}')},"9e63":function(e,t,i){e.exports=i.p+"img/A_mini_bidon.0265f03e.png"},"9f1c":function(e,t,i){},a28d:function(e,t,i){},a39e:function(e,t,i){},a605:function(e,t,i){},a67f:function(e,t,i){},a863:function(e,t,i){},a897:function(e,t,i){"use strict";var a=i("63fe"),s=i.n(a);s.a},a8ac:function(e,t,i){e.exports=i.p+"img/before.721abeae.png"},aac4:function(e,t,i){},aaf3:function(e,t,i){"use strict";var a=i("7d21"),s=i.n(a);s.a},ac65:function(e,t,i){e.exports=i.p+"img/BG.d7746f61.svg"},ad7a:function(e,t,i){"use strict";var a=i("c0ea"),s=i.n(a);s.a},ae2c:function(e,t,i){"use strict";var a=i("0032"),s=i.n(a);s.a},af0d:function(e,t,i){},af21:function(e){e.exports=JSON.parse('{"contact":"Contactez l\'équipe du projet","statistics":"Statistiques","legal":"Mention légales","userAccessGuide":"Guide des accès et de l\'administrateur","userAgreement":"Charte d\'engagement de l\'utilisateur"}')},af3d:function(e){e.exports=JSON.parse('{"header":{"connect":"Sign in","contact":"Contact us"},"hero":{"title":"Taking action for slum clearance","subtitle":"Ask a question or request an access"},"firstSection":{"features":{"position":"Useful information on slums at a glance","actions":"The projects carried out available at any time","exchange":"Facilitating dialogue between parties involved"},"before":"Before","after":"After","context":{"title":"Résorption-bidonvilles,","subtitle":"A platform to boost the resorption of slums","text":"A tool for information, sharing and steering, the platform offers a high-performance and effective solution for slum clearance. It enables the collaboration of all local stakeholders involved in the slum clearance policy."},"feedback":{"1":{"text":"It\'s great because you have the info online, you\'re not faced with an excel spreadsheet with codes you don\'t understand.","author":"Prefecture Seine-Saint-Denis"},"2":{"text":"The platform made the information more reliable because, before the Excel table was not shared. The more collaborative tools we have, the better it is.","author":"City of Poitiers"},"3":{"text":"I was able to direct the family of a person I was accompanying to a solidarity house from the location of their slum.","author":"Haute-Garonne Association"}}},"firstBanner":{"text":"Involved Stakeholders in slum clearance, please share and highlight your projects","cta":"Request access"},"secondSection":{"title":"Reaching slum clearance,","subtitle":"a national objective","data":{"1":{"line1":"More than","line2":"300 slums","line3":"in mainland France"},"2":{"line1":"More than","line2":"16 000 people","line3":"including 5,000 minors"},"3":{"line1":"Mostly","line2":"Europeans","line3":"Romanian and Bulgarian citizens"}},"firstParagraph":"A slum is an area that usually lacks basic services (water, electricity, waste management) and is illegally occupied by several families.","secondParagraph":{"bold":"The government sets a clear objective of slum resorption by moving away from an evacuation-centred approach to a global approach.","normal":"combining social inclusion, respect for public order and prevention of resettlement. In all the territories concerned, effective, humane and pragmatic multi-partner actions must be implemented.","link":"More about the slum resorption policy"},"video":{"text":"Understanding slum clearance in 2 minutes"}},"secondBanner":{"text":"Neighbour, citizen, slum dweller... Any news? A question ? An alert?","cta":"Contact us"},"thirdSection":{"title":"Actions in figures","firstParagraph":{"bold":"In 2019, more than 30 slum clearance projects have been carried out by 35 NGOs","normal":"They have been financed 75% by the State, 15% by local authorities and 10% by private or European funds. Families living in slums have been supported in order to access to health, housing, employment, education and sanitation."},"bilan":{"1":{"text":"8,600 beneficiaries of the actions"},"3":{"text":"1,000 people re-housed"},"4":{"text":"1,350 children in school"},"5":{"text":"2,040 beneficiaries","info":"of health support"},"6":{"text":"615 employment contracts signed"}},"cta":"Download the latest report","secondParagraph":{"title":"A project led by the interministerial delegation for access to housing (DIHAL)","body":{"text1":"The digital platform Résorption-bidonvilles, launched in 2018 by the","link1":"DIHAL","text2":"plays a role in transforming public action","text3":"The platform continues to be developed in close collaboration with its users.","text4":"To learn more about the beginning of the project, please visit ","link2":"the official website about Start-up d\'Etat"},"items":{"1":{"link":"General interest entrepreneur","text":"of the Future Investment Program in 2019"},"2":{"link":"European Commission\'s \\"rights, citizenship and equality\\" program","text":"in 2020"},"3":{"link":"State Start-up Acceleration Fund 3","text":"of DINUM in April 2020"},"4":{"link":"French policy transformation fund","text":"of DITP in October 2020"},"title":"The project was the winner of several calls for proposals:"}}},"contactForm":{"email":"Your email","cta":"Contact us"}}')},afa5:function(e,t,i){},b128:function(e,t,i){},b371:function(e,t,i){},b3ad:function(e,t,i){},b82e:function(e,t,i){"use strict";var a=i("e67e"),s=i.n(a);s.a},b8b0:function(e,t,i){"use strict";var a=i("82ab"),s=i.n(a);s.a},bafd:function(e,t,i){},bc14:function(e,t,i){"use strict";var a=i("4a62"),s=i.n(a);s.a},be9a:function(e,t,i){},bfb2:function(e,t,i){},c0ea:function(e,t,i){},c368:function(e,t,i){},c789:function(e,t,i){"use strict";var a=i("7b35"),s=i.n(a);s.a},cb23:function(e,t,i){"use strict";var a=i("f925"),s=i.n(a);s.a},cb4e:function(e,t,i){"use strict";var a=i("d815"),s=i.n(a);s.a},cbe6:function(e,t,i){e.exports=i.p+"img/after.bd6456af.jpg"},ccab:function(e,t,i){e.exports=i.p+"img/police_siren.ffa34c81.svg"},cda2:function(e){e.exports=JSON.parse('{"header":{"connect":"Вход","contact":"Свържете се с нас"},"hero":{"title":"Действия за закриване на бидонвили","subtitle":"Задайте въпрос или поискайте достъп"},"firstSection":{"features":{"position":"Полезна информация за обектите само с един поглед","actions":"Достъп по всяко време до най-важните дейности","exchange":"Улеснена връзка между участниците"},"context":{"title":"Закриване на бидонвили","subtitle":"Платформа за ускоряване на закриването на бидонвилите","text":"Инструмент за информация, споделяне и управление, платформата предлага работещо и ефикасно решение за закриване на бидонвили. Тя спомага за създаванетона на истинска динамика на сътрудничество между ангажираните участници по места за изпълнение на поставената цел."},"before":"Преди","after":"След ","feedback":{"1":{"text":"Отлично е, защото имате онлайн достъп до информацията, не сте пред екселска таблица с формули, които не разбирате.","author":"Префектура на департамента Сен-Сан-Дени"},"2":{"text":"Платформата предоставя достоверна информация, а екселската таблицата не беше колаборативна. Колкото повече инструменти за съвместна работа, толкова по-добре.","author":"Град Поатие"},"3":{"text":"Успях да насоча семейството на човек, на когото помагам, към социален център според местонаходжението на техния бидонвил","author":"Сдружение от департамента От-Гарон"}}},"firstBanner":{"text":"Дейци в политиката за закриването на бидонвилите, споделете и разпространете информация за вашата дейност","cta":"Искам достъп"},"secondSection":{"title":"Пълното закриване на бидонвилите","subtitle":"национална цел","data":{"1":{"line1":"Над","line2":"300 бидонвила","line3":"в континентална Франция"},"2":{"line1":"Над","line2":"16 000 души","line3":"от които 5 000 непълнолетни"},"3":{"line1":"Предимно","line2":"български и румънски ","line3":"граждани"}},"firstParagraph":"Бидонвилът е изоставен промишлен терен или постройка, обикновено без комунални услуги (вода, ток, събиране на отпадъци), в който са се настанили незаконно няколко семейства.","secondParagraph":{"bold":"През 2018 правителството определи ясна цел за преодоляване на бидонвилите като премине от подхода, сведен nдо евакуация на жителите, към глобален подход,","normal":"съчетаващ социалната интеграция, спазването на обществения ред и предотвратяване на нови бидонвили. Във всички засегнати теротирии трябва да бъдат въведени ефикасни, хуманни и прагматични действия с много партньори.","link":"Научете повече за политиката на закриване на бидонвилите"},"video":{"text":"Разберете закриването на бидонвилите в 2 минути"}},"secondBanner":{"text":"Съсед, гражданин, обитател на бидонвил...Информация? Въпрос? Сигнал?","cta":"Свържете се с нас"},"thirdSection":{"title":"Дейностите в цифри","firstParagraph":{"bold":"Над 30 дейности са извършени през 2019 година от над 35 оператори.","normal":"Те са финансирани 75% от държавата, 15% от местните власти и 10% от частни или европейски източници. Професионални екипи помагат на семействата в бидонвилите, незаконно обитаваните сгради или жилищата във всяко отношение: здраве, жилище, работа, образование, стабилизиране и обезопасяване на обекта."},"bilan":{"1":{"text":"8 600 бенефициенти от проектни дейности"},"3":{"text":"1 000 души с нов дом "},"4":{"text":"1 350 деца, посещаващи училище"},"5":{"text":"2 040 бенефициенти","info":"на здравна подкрепа"},"6":{"text":"615 сключени трудови договори"}},"cta":"Свалете последния доклад","secondParagraph":{"title":"Един проект на Междуведмствената делегация за настаняване и достъп до жилище","body":{"text1":"Цифровата платформа Закриване-бидонвили, стартирана през 2018 година от","link1":"МДНДЖ","text2":"е част от целта за трансформация на дейността на публичната администрация","text3":"Развитието на платформата продължава в тясно сътрудничество с нейните потребители.","text4":"Искате да научите повече за генезиса на проекта? Отидете на съответната страница на","link2":"официалния уебсайт на държавните стартъпи"},"items":{"1":{"link":"Предприемач в обществен интерес на Програмата за инвестиране ","text":"в бъдещето през 2019 година"},"2":{"link":"Програмата „Права, гражданство и равенство“ на Европейската комисия","text":"през първия триместър на 2020 година"},"3":{"link":"Фонд за ускоряване на държавни стартъпи 3","text":"на Междуведомствената дирекция за цифровизация през април 2020 година"},"4":{"link":"Френски фонд за трансформация на политики","text":"от DITP през октомври 2020"},"title":"Проектът е победител в множество отворени покани за проекти:"}}},"contactForm":{"email":"Вашият имейл","cta":"Свържете се с нас"}}')},cee3:function(e,t,i){"use strict";var a=i("47b0"),s=i.n(a);s.a},cfd5:function(e,t,i){e.exports=i.p+"img/map-ro.2a33bfb7.jpg"},d416:function(e,t,i){"use strict";var a=i("0fea"),s=i.n(a);s.a},d4e4:function(e,t,i){e.exports=i.p+"img/Formation.6c01318e.png"},d507:function(e,t,i){},d67e:function(e,t,i){e.exports=i.p+"img/map-fr.28fc1fb5.jpg"},d694:function(e,t,i){"use strict";var a=i("a863"),s=i.n(a);s.a},d815:function(e,t,i){},d89d:function(e,t,i){e.exports=i.p+"img/pin.ee8bc509.svg"},da0f:function(e,t,i){e.exports=i.p+"img/resorption-bidonvilles-3.1ab7f8ed.jpg"},dce0:function(e,t,i){e.exports=i.p+"img/resorption-bidonvilles-1.f2473868.jpg"},dd94:function(e,t,i){e.exports=i.p+"img/before.8322d5b3.jpg"},dd98:function(e,t,i){},e010:function(e,t,i){},e072:function(e,t,i){"use strict";var a=i("e93e"),s=i.n(a);s.a},e119:function(e,t,i){"use strict";var a=i("dd98"),s=i.n(a);s.a},e17b:function(e,t,i){},e1d3:function(e,t,i){"use strict";var a=i("27a3"),s=i.n(a);s.a},e2e4:function(e,t,i){e.exports=i.p+"img/after.9bcbbe3b.png"},e438:function(e,t,i){"use strict";var a=i("01b4"),s=i.n(a);s.a},e517:function(e,t,i){"use strict";var a=i("afa5"),s=i.n(a);s.a},e61f:function(e,t,i){e.exports=i.p+"img/logo-commission-europenne.69cc0d29.png"},e67e:function(e,t,i){},e744:function(e,t,i){"use strict";var a=i("af0d"),s=i.n(a);s.a},e93e:function(e,t,i){},e99b:function(e,t,i){},e9cc:function(e,t,i){},edfe:function(e,t,i){"use strict";var a=i("e010"),s=i.n(a);s.a},efa2:function(e,t,i){"use strict";var a=i("8683"),s=i.n(a);s.a},f090:function(e,t,i){"use strict";var a=i("b371"),s=i.n(a);s.a},f12c:function(e,t,i){"use strict";var a=i("a28d"),s=i.n(a);s.a},f20a:function(e,t,i){e.exports=i.p+"img/before.d5499aad.png"},f276:function(e,t,i){"use strict";var a=i("d507"),s=i.n(a);s.a},f6ce:function(e,t,i){"use strict";var a=i("a39e"),s=i.n(a);s.a},f867:function(e,t,i){"use strict";var a=i("bfb2"),s=i.n(a);s.a},f909:function(e,t,i){"use strict";var a=i("2b2e"),s=i.n(a);s.a},f925:function(e,t,i){},f93c:function(e,t,i){},fd3d:function(e){e.exports=JSON.parse('{"header":{"connect":"Pentru a vă conecta","contact":"Contactați-ne"},"hero":{"title":"Acționăm pentru resorbția de bidonville","subtitle":"Puneți o întrebare sau solicitați accesul"},"firstSection":{"features":{"position":"Găsiți informații utile foarterapid pe site","actions":"Esențialul acțiunilor disponibil în orice moment","exchange":"Schimb de informatie rapidă intre participanţi"},"context":{"title":"Resorbția de bidonville,","subtitle":"O platformă pentru a accelera resorbția de bidonville","text":"Un instrument de informare, partajare și ghidare , platforma oferă o soluție puternică și eficientă pentru resorbția de bidonville. Acesta permite crearea unei dinamici reale de colaborare, într-un teritoriu si între actorii dedicați obiectivului de resorbția de bidonville."},"before":"Înainte","after":"După","feedback":{"1":{"text":"Este foarte bine pentru că aveți informațiile online, nu vă confruntați cu un tabel Excel cu coduri pe care nu le înțelegeți.","author":"Prefectura Seine-Saint-Denis"},"2":{"text":"Platforma a făcut informațiile mai accesibile, deoarece tabelul Excelnu era partajat. Cu cât avem mai multeinstrumente de colaborare, cu atât mai bine.","author":"Orașul Poitiers"},"3":{"text":"Am fost în măsură să direcționez familia unei persoane pe care o acomapaniez la o casă de solidaritate de la locația lor situata într-un bidonville.","author":"Asociația din Haute-Garonne"}}},"firstBanner":{"text":"Actori ai resorbției de bidonville, partajați și faceţi cunoscute acțiunile voastre","cta":"Solicitaţi accesul"},"secondSection":{"title":"Dizolvarea platzurilor,","subtitle":"un obiectiv național","data":{"1":{"line1":"Peste","line2":"300 de platzur","line3":"în Franța metropolitană"},"2":{"line1":"Peste","line2":"16 000 de persoane","line3":"inclusiv 5.000 de minori"},"3":{"line1":"Majoritatea","line2":"europeni","line3":"români și bulgari"}},"firstParagraph":"Un bidonville este un teren, un maidan sau o clădire construită care în general e lipsită de servicii de bază (apă, electricitate, gestionarea deșeurilor) și ocupată ilegal de mai multe familii. Un bidonville mai est denumit si „plaț” în limbaj familiar.","secondParagraph":{"bold":"In 2018, Guvernul și-a stabilit un obiectiv clar pentru resorbția de bidonville, depășind abordarea centrată pe evacuare, într-o abordare cuprinzătoare care combină integrarea socială, respectarea ordinii publice și prevenirea reinstralarii.","normal":"În toateteritoriile în cauză, trebuie instituite acțiuni eficiente, umane și pragmatice multi-parteneriale.","link":"Aflați mai multe despre politica de resorbției de bidonville"},"video":{"text":"Înțelegerea resorbției de bidonville în 2 minute"}},"secondBanner":{"text":"Vecin, cetățean, rezident într-un bidonville... O informaţie? O întrebare? O alertă?","cta":"Contactaţi-ne"},"thirdSection":{"title":"Acţiunile desfăşurate in cifre","firstParagraph":{"bold":"Peste 30 de acțiuni desfășurate în 2019 de catre 35 de operatori.","normal":"Acestea sunt 75% finanțate de stat, 15% de autoritățile locale și 10% din fonduri private sau europene. Echipe de profesioniști însoțesc familiile în bidonville, cladirile dezafectate sau în locuință cuprinzând toate aspectele: sănătate, locuința, ocuparea forței de muncă, educație, stabilizare și securitatea locului."},"bilan":{"1":{"text":"8 600 de beneficiari ai acestor actiuni"},"3":{"text":"1 000 de persoane relocate"},"4":{"text":"1 350 elevi"},"5":{"text":"2 040 de beneficiari","info":"de sprijin medical"},"6":{"text":"615 contracte de muncă semnate"}},"cta":"Încarcaţi ultimul bilanţ","secondParagraph":{"title":"Un proiect realizat de Delegația Interministerială privind cazarea și accesul la locuințe","body":{"text1":"Platforma digitală „resorbția de bidonville”, lansată în 2018 de","link1":"Dihal","text2":"face parte dintr-un obiectiv de transformare a acțiunii publice.","text3":"Evoluțiile platformei continuă în strânsă colaborare cu utilizatorii săi.","text4":"Doriți să aflați mai multe despre crearea proiectului? Accesați fişa proiectulu","link2":"pe site-ul oficial: Start-Up de stat"},"items":{"1":{"link":"Antreprenor de interes general","text":"al Programului de investiții de viitor in2019"},"2":{"link":"rogramul Comisiei Europene \\"drepturi, cetățenie și egalitate\\"","text":"în primul trimestru al anului 2020"},"3":{"link":"Fonduri de Accelerare pentru Start-up de stat 3","text":"de la DINUM în aprilie 2020"},"4":{"link":"Fondul de transformare a politicii franceze","text":"de la DITP în octombrie 2020"},"title":"Proiectul a fost câștigătorul mai multor cereri de proiecte :"}}},"contactForm":{"email":"E-mailul dumneavoastră","cta":"Contactaţi-ne"}}')},fd66:function(e,t,i){"use strict";var a=i("60ec"),s=i.n(a);s.a},ff59:function(e,t,i){}}); -//# sourceMappingURL=index.3111f46b.js.map \ No newline at end of file diff --git a/dist/js/index.3111f46b.js.map b/dist/js/index.3111f46b.js.map deleted file mode 100644 index 27eb3f89e6..0000000000 --- a/dist/js/index.3111f46b.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/js/app/pages/plans.marks/plans.marks.vue?1382","webpack:///./src/js/app/pages/TownDetails/TownDetailsNewComment.vue?755c","webpack:///./src/js/app/pages/TownsList/assets/extra-communautaires.png","webpack:///./public/img/water-null.png","webpack:///./src/js/app/pages/LandingPage/LandingPageThirdSection/assets/logo-fabrique-numerique.png","webpack:///./src/js/app/pages/users.requestNewPassword/users.requestNewPassword.vue?b066","webpack:///./src/js/app/pages/TownDetails/TownDetailsLeftColumn.vue?4a6d","webpack:///./src/js/app/pages/LandingPage/LandingPageFirstSection/LandingPageUserFeedback/LandingPageUserFeedbackSection.vue?e31e","webpack:///./src/js/app/components/ui/Form/FormParagraph.vue?acd1","webpack:///./src/js/app/pages/LandingPage/LandingPageSecondSection/assets/map-en.jpg","webpack:///./src/js/app/pages/stats/stats.vue?db4e","webpack:///./src/js/app/pages/LandingPage/assets/resorption-bidonvilles-4.jpg","webpack:///./src/js/app/layouts/navbar/navbar.vue?e08c","webpack:///./src/js/app/layouts/userPermissions/userPermissions.vue?7cc1","webpack:///./src/js/app/pages/plans.list/plans.list.vue?3ee8","webpack:///./src/js/app/pages/dashboard/POIView.vue?3343","webpack:///./src/js/app/components/ui/Tooltip.vue?b10d","webpack:///./src/js/app/pages/users.validate/users.validate.vue?6a4a","webpack:///./src/js/app/components/form/input/audience/audience.vue?fa6c","webpack:///./src/js/app/components/ui/Form/FormParagraph.vue","webpack:///./src/js/app/components/PublicLayout/NavBar/assets/UK.svg","webpack:///./src/js/app/pages/TownsList/assets/eu.png","webpack:///./src/js/app/pages/TownsList/assets/fr.png","webpack:///./src/js/app/components/slide-note/slide-note.vue?226f","webpack:///./src/js/app/pages/TownsList/TownsListFilters/TownsListFilter.vue?5904","webpack:///./src/js/app/components/form/input/planFunding/planFunding.vue?c190","webpack:///./src/js/app/pages/legalMentions/legalMentions.vue?dc6d","webpack:///./src/js/app/components/PublicLayout/NavBar/assets/FR.svg","webpack:///./src/js/app/pages/users.create/users.create.vue?8eb8","webpack:///./src/js/app/pages/TownsList/TownsListSort/TownsListSort.vue?975b","webpack:///./src/js/app/components/form/input/collectivity/collectivity.vue?ed3b","webpack:///./src/js/app/pages/LandingPage/LandingPageResponsiveEmbed.vue?468c","webpack:///./src/js/app/components/PublicLayout/NavBar/assets/Marianne.svg","webpack:///./src/js/app/pages/userActivity.list/userActivity.list.vue?cf48","webpack:///./src/js/app/components/form/input/townList/townList.vue?2642","webpack:///./src/js/app/pages/LandingPage/LandingPageThirdSection/assets/logo_beta-gouv-fr.jpg","webpack:///./src/js/app/components/ui/Form/FormParagraph.vue?3d21","webpack:///./src/js/app/components/PublicLayout/NavBar/NavBarLogo.vue?4ed3","webpack:///./src/js/app/components/form/input/autocompleter/autocompleter.vue?c59a","webpack:///./src/js/app/components/form/input/planFunding/planFundingRow/planFundingRow.vue?f392","webpack:///./src/js/app/components/TownForm/TownForm.vue?b77a","webpack:///./src/js/app/pages/LandingPage/LandingPageSecondSection/assets/map-bg.png","webpack:///./public/img/status.svg","webpack:///./src/js/app/pages/users.list/users.list.vue?8fc5","webpack:///./src/js/app/components/TownForm/TownForm.vue?1667","webpack:///./src/js/app/pages/LandingPage/LandingPageFirstSection/assets/ro/after.png","webpack:///./public/img/water-no.png","webpack:///./src/js/app/components/comment-deletion/comment-deletion.vue?2134","webpack:///./src/js/app/pages/TownDetails/TownDetailsActorThemesModal.vue?1bee","webpack:///./src/js/app/pages/Contact/index.vue?028e","webpack:///./src/js/app/components/map/map.vue?9857","webpack:///./src/js/app/pages/dashboard/dashboard.vue?c995","webpack:///./public/img/water-yes.png","webpack:///./src/js/app/pages/LandingPage/LandingPageThirdSection/assets/logo-gouvernement.jpg","webpack:///./public/img/type.svg","webpack:///./src/js/app/pages/TownDetails/ui/TownDetailsPanel.vue?7d8d","webpack:///./src/js/app/pages/TownsList/TownsListSearchBar.vue?ca08","webpack:///./public/img/utensils.png","webpack:///./src/js/app/pages/users.activate/users.activate.vue?2f86","webpack:///./src/js/app/pages/dashboard/filterGroup/filterGroup.vue?fabf","webpack:///./src/js/app/pages/LandingPage/LandingPageThirdSection/assets/logo-entrepreneur-interet-general.png","webpack:///./src/js/app/pages/LandingPage/LandingPageFirstSection/assets/bg/before.png","webpack:///./src/js/App.vue?fe3d","webpack:///./src/js/App.vue","webpack:///./src/js/icons/index.js","webpack:///./src/js/app/messages/fr/index.js","webpack:///./src/js/app/messages/en/index.js","webpack:///./src/js/app/messages/ro/index.js","webpack:///./src/js/app/messages/bg/index.js","webpack:///./src/js/app/messages/index.js","webpack:///./src/js/app/components/ui/Button.vue?a5c7","webpack:///./src/js/app/components/ui/Icon.vue?ae6d","webpack:///src/js/app/components/ui/Icon.vue","webpack:///./src/js/app/components/ui/Icon.vue?c6fb","webpack:///./src/js/app/components/ui/Icon.vue","webpack:///src/js/app/components/ui/Button.vue","webpack:///./src/js/app/components/ui/Button.vue?149f","webpack:///./src/js/app/components/ui/Button.vue","webpack:///./src/js/app/components/ui/Form/input/TextInput.vue?fc44","webpack:///./src/js/app/components/ui/mixins/filteredProps.js","webpack:///./src/js/app/components/ui/Form/utils/InputLabel.vue?99a7","webpack:///src/js/app/components/ui/Form/utils/InputLabel.vue","webpack:///./src/js/app/components/ui/Form/utils/InputLabel.vue?b06b","webpack:///./src/js/app/components/ui/Form/utils/InputLabel.vue","webpack:///./src/js/app/components/ui/Form/utils/InputWrapper.vue?8086","webpack:///src/js/app/components/ui/Form/utils/InputWrapper.vue","webpack:///./src/js/app/components/ui/Form/utils/InputWrapper.vue?0274","webpack:///./src/js/app/components/ui/Form/utils/InputWrapper.vue","webpack:///./src/js/app/components/ui/Form/utils/InputError.vue?f00e","webpack:///./src/js/app/components/ui/Form/utils/InputError.vue","webpack:///./src/js/app/components/ui/Form/utils/InputIcon.vue?f11c","webpack:///src/js/app/components/ui/Form/utils/InputIcon.vue","webpack:///./src/js/app/components/ui/Form/utils/InputIcon.vue?5770","webpack:///./src/js/app/components/ui/Form/utils/InputIcon.vue","webpack:///./src/js/app/components/ui/Form/utils/getInputClasses.js","webpack:///src/js/app/components/ui/Form/input/TextInput.vue","webpack:///./src/js/app/components/ui/Form/input/TextInput.vue?950b","webpack:///./src/js/app/components/ui/Form/input/TextInput.vue","webpack:///./src/js/app/components/ui/Form/input/InlineTextInput.vue?8d99","webpack:///src/js/app/components/ui/Form/input/InlineTextInput.vue","webpack:///./src/js/app/components/ui/Form/input/InlineTextInput.vue?32c4","webpack:///./src/js/app/components/ui/Form/input/InlineTextInput.vue","webpack:///./src/js/app/components/ui/Form/input/TextArea.vue?697f","webpack:///src/js/app/components/ui/Form/input/TextArea.vue","webpack:///./src/js/app/components/ui/Form/input/TextArea.vue?4487","webpack:///./src/js/app/components/ui/Form/input/TextArea.vue","webpack:///./src/js/app/components/ui/Form/input/Checkbox.vue?32fb","webpack:///./src/js/app/components/ui/Form/utils/CheckableCard.vue?394e","webpack:///src/js/app/components/ui/Form/utils/CheckableCard.vue","webpack:///./src/js/app/components/ui/Form/utils/CheckableCard.vue?a359","webpack:///./src/js/app/components/ui/Form/utils/CheckableCard.vue","webpack:///src/js/app/components/ui/Form/input/Checkbox.vue","webpack:///./src/js/app/components/ui/Form/input/Checkbox.vue?7370","webpack:///./src/js/app/components/ui/Form/input/Checkbox.vue","webpack:///./src/js/app/components/ui/Form/input/Radio.vue?d407","webpack:///src/js/app/components/ui/Form/input/Radio.vue","webpack:///./src/js/app/components/ui/Form/input/Radio.vue?482f","webpack:///./src/js/app/components/ui/Form/input/Radio.vue","webpack:///./src/js/app/components/ui/Form/input/Select.vue?42ae","webpack:///src/js/app/components/ui/Form/input/Select.vue","webpack:///./src/js/app/components/ui/Form/input/Select.vue?a63c","webpack:///./src/js/app/components/ui/Form/input/Select.vue","webpack:///./src/js/app/components/ui/Form/input/SelectOption.vue?0a06","webpack:///src/js/app/components/ui/Form/input/SelectOption.vue","webpack:///./src/js/app/components/ui/Form/input/SelectOption.vue?9546","webpack:///./src/js/app/components/ui/Form/input/SelectOption.vue","webpack:///./src/js/app/components/ui/Form/FormGroup.vue?9656","webpack:///src/js/app/components/ui/Form/FormGroup.vue","webpack:///./src/js/app/components/ui/Form/FormGroup.vue?3c50","webpack:///./src/js/app/components/ui/Form/FormGroup.vue","webpack:///./src/js/app/components/ui/Form/InputGroup.vue?82f6","webpack:///src/js/app/components/ui/Form/InputGroup.vue","webpack:///./src/js/app/components/ui/Form/InputGroup.vue?8d1f","webpack:///./src/js/app/components/ui/Form/InputGroup.vue","webpack:///./src/js/app/components/ui/Form/utils/MandatoryStar.vue?9b6e","webpack:///./src/js/app/components/ui/Form/utils/MandatoryStar.vue","webpack:///./src/js/app/components/ui/Menu/Menu.vue?5ebc","webpack:///src/js/app/components/ui/Menu/Menu.vue","webpack:///./src/js/app/components/ui/Menu/Menu.vue?7321","webpack:///./src/js/app/components/ui/Menu/Menu.vue","webpack:///./src/js/app/components/ui/Menu/MenuItem.vue?d82f","webpack:///./src/js/app/components/ui/Menu/MenuItem.vue","webpack:///./src/js/app/components/ui/Dropdown.vue?9a22","webpack:///src/js/app/components/ui/Dropdown.vue","webpack:///./src/js/app/components/ui/Dropdown.vue?0061","webpack:///./src/js/app/components/ui/Dropdown.vue","webpack:///./src/js/app/components/ui/NotificationsGroup.vue?9104","webpack:///./src/js/app/components/ui/NotificationsGroup.vue","webpack:///./src/js/app/components/ui/Modal.vue?e190","webpack:///src/js/app/components/ui/Modal.vue","webpack:///./src/js/app/components/ui/Modal.vue?8230","webpack:///./src/js/app/components/ui/Modal.vue","webpack:///./src/js/app/components/ui/Callout.vue?aa4b","webpack:///src/js/app/components/ui/Callout.vue","webpack:///./src/js/app/components/ui/Callout.vue?3cd0","webpack:///./src/js/app/components/ui/Callout.vue","webpack:///./src/js/app/components/ui/SidePanel.vue?f5b9","webpack:///src/js/app/components/ui/SidePanel.vue","webpack:///./src/js/app/components/ui/SidePanel.vue?d904","webpack:///./src/js/app/components/ui/SidePanel.vue","webpack:///./src/js/app/components/ui/Autocomplete.vue?d1b7","webpack:///src/js/app/components/ui/Autocomplete.vue","webpack:///./src/js/app/components/ui/Autocomplete.vue?4a95","webpack:///./src/js/app/components/ui/Autocomplete.vue","webpack:///./src/js/app/components/ui/Spinner.vue?c3a3","webpack:///./src/js/app/components/ui/Spinner.vue","webpack:///./src/js/app/components/ui/Form/CheckableGroup.vue?c7ef","webpack:///src/js/app/components/ui/Form/CheckableGroup.vue","webpack:///./src/js/app/components/ui/Form/CheckableGroup.vue?fe80","webpack:///./src/js/app/components/ui/Form/CheckableGroup.vue","webpack:///./src/js/app/components/ui/Datepicker.vue?92a1","webpack:///./src/js/app/components/ui/Form/utils/InputInfo.vue?ea18","webpack:///./src/js/app/components/ui/Form/utils/InputInfo.vue","webpack:///src/js/app/components/ui/Datepicker.vue","webpack:///./src/js/app/components/ui/Datepicker.vue?9e69","webpack:///./src/js/app/components/ui/Datepicker.vue","webpack:///./src/js/app/components/ui/Tag.vue?b7e4","webpack:///src/js/app/components/ui/Tag.vue","webpack:///./src/js/app/components/ui/Tag.vue?186c","webpack:///./src/js/app/components/ui/Tag.vue","webpack:///./src/js/app/components/ui/Pagination.vue?b463","webpack:///src/js/app/components/ui/Pagination.vue","webpack:///./src/js/app/components/ui/Pagination.vue?8923","webpack:///./src/js/app/components/ui/Pagination.vue","webpack:///./src/js/app/components/ui/Map.vue?4c73","webpack:///./src/js/app/components/ui/Map/Tooltip.vue?2ea7","webpack:///src/js/app/components/ui/Map/Tooltip.vue","webpack:///./src/js/app/components/ui/Map/Tooltip.vue?0a6f","webpack:///./src/js/app/components/ui/Map/Tooltip.vue","webpack:///src/js/app/components/ui/Map.vue","webpack:///./src/js/app/components/ui/Map.vue?a36d","webpack:///./src/js/app/components/ui/Map.vue","webpack:///./src/js/app/components/ui/InfoBanner.vue?9b72","webpack:///src/js/app/components/ui/InfoBanner.vue","webpack:///./src/js/app/components/ui/InfoBanner.vue?863b","webpack:///./src/js/app/components/ui/InfoBanner.vue","webpack:///./src/js/app/components/ui/Tooltip.vue?122a","webpack:///src/js/app/components/ui/Tooltip.vue","webpack:///./src/js/app/components/ui/Tooltip.vue?e24d","webpack:///./src/js/app/components/ui/Tooltip.vue","webpack:///./src/js/app/components/ui/registerGlobalComponents.js","webpack:///./src/js/matomo/matomo.js","webpack:///./src/js/app/pages/LandingPage/index.vue?ff8c","webpack:///./src/js/app/components/PublicLayout/index.vue?fcf0","webpack:///./src/js/app/components/PublicLayout/NavBar/index.vue?255b","webpack:///./src/js/app/components/PublicLayout/NavBar/NavBarLogo.vue?9dd6","webpack:///./src/js/app/components/PublicLayout/NavBar/NavBarLogo.vue","webpack:///./src/js/app/components/PublicLayout/NavBar/NavBarSticky.vue?638a","webpack:///./src/js/app/components/PublicLayout/NavBar/NavBarMobileButton.vue?0948","webpack:///src/js/app/components/PublicLayout/NavBar/NavBarMobileButton.vue","webpack:///./src/js/app/components/PublicLayout/NavBar/NavBarMobileButton.vue?7688","webpack:///./src/js/app/components/PublicLayout/NavBar/NavBarMobileButton.vue","webpack:///./src/js/app/components/PublicLayout/PublicContainer.vue?762c","webpack:///./src/js/app/components/PublicLayout/PublicContainer.vue","webpack:///src/js/app/components/PublicLayout/NavBar/NavBarSticky.vue","webpack:///./src/js/app/components/PublicLayout/NavBar/NavBarSticky.vue?f840","webpack:///./src/js/app/components/PublicLayout/NavBar/NavBarSticky.vue","webpack:///./src/js/app/components/PublicLayout/NavBar/LanguagePicker.vue?ef78","webpack:///src/js/app/components/PublicLayout/NavBar/LanguagePicker.vue","webpack:///./src/js/app/components/PublicLayout/NavBar/LanguagePicker.vue?3b99","webpack:///./src/js/app/components/PublicLayout/NavBar/LanguagePicker.vue","webpack:///./src/js/app/components/PublicLayout/NavBar/NavBarMobileMenu.vue?3c5a","webpack:///src/js/app/components/PublicLayout/NavBar/NavBarMobileMenu.vue","webpack:///./src/js/app/components/PublicLayout/NavBar/NavBarMobileMenu.vue?ca00","webpack:///./src/js/app/components/PublicLayout/NavBar/NavBarMobileMenu.vue","webpack:///src/js/app/components/PublicLayout/NavBar/index.vue","webpack:///./src/js/app/components/PublicLayout/NavBar/index.vue?a153","webpack:///./src/js/app/components/PublicLayout/NavBar/index.vue","webpack:///./src/js/app/components/PublicLayout/PublicFooter.vue?a06d","webpack:///src/js/app/components/PublicLayout/PublicFooter.vue","webpack:///./src/js/app/components/PublicLayout/PublicFooter.vue?9ca7","webpack:///./src/js/app/components/PublicLayout/PublicFooter.vue","webpack:///src/js/app/components/PublicLayout/index.vue","webpack:///./src/js/app/components/PublicLayout/index.vue?5a63","webpack:///./src/js/app/components/PublicLayout/index.vue","webpack:///./src/js/app/pages/LandingPage/LandingPageHero/index.vue?6f86","webpack:///./src/js/app/pages/LandingPage/LandingPageContactForm.vue?7011","webpack:///src/js/app/pages/LandingPage/LandingPageContactForm.vue","webpack:///./src/js/app/pages/LandingPage/LandingPageContactForm.vue?80c3","webpack:///./src/js/app/pages/LandingPage/LandingPageContactForm.vue","webpack:///src/js/app/pages/LandingPage/LandingPageHero/index.vue","webpack:///./src/js/app/pages/LandingPage/LandingPageHero/index.vue?8379","webpack:///./src/js/app/pages/LandingPage/LandingPageHero/index.vue","webpack:///./src/js/app/pages/LandingPage/LandingPageFirstSection/index.vue?cd68","webpack:///./src/js/app/pages/LandingPage/LandingPageFirstSection/LandingPageFeatureBlock.vue?c180","webpack:///src/js/app/pages/LandingPage/LandingPageFirstSection/LandingPageFeatureBlock.vue","webpack:///./src/js/app/pages/LandingPage/LandingPageFirstSection/LandingPageFeatureBlock.vue?751e","webpack:///./src/js/app/pages/LandingPage/LandingPageFirstSection/LandingPageFeatureBlock.vue","webpack:///./src/js/app/pages/LandingPage/LandingPageFirstSection/LandingPageContextImage.vue?fc89","webpack:///src/js/app/pages/LandingPage/LandingPageFirstSection/LandingPageContextImage.vue","webpack:///./src/js/app/pages/LandingPage/LandingPageFirstSection/LandingPageContextImage.vue?0e2a","webpack:///./src/js/app/pages/LandingPage/LandingPageFirstSection/LandingPageContextImage.vue","webpack:///./src/js/app/pages/LandingPage/LandingPageFirstSection/LandingPageUserFeedback/index.vue?a000","webpack:///./src/js/app/pages/LandingPage/LandingPageFirstSection/LandingPageUserFeedback/LandingPageUserFeedbackBullet.vue?3833","webpack:///src/js/app/pages/LandingPage/LandingPageFirstSection/LandingPageUserFeedback/LandingPageUserFeedbackBullet.vue","webpack:///./src/js/app/pages/LandingPage/LandingPageFirstSection/LandingPageUserFeedback/LandingPageUserFeedbackBullet.vue?09e0","webpack:///./src/js/app/pages/LandingPage/LandingPageFirstSection/LandingPageUserFeedback/LandingPageUserFeedbackBullet.vue","webpack:///./src/js/app/pages/LandingPage/LandingPageFirstSection/LandingPageUserFeedback/LandingPageUserFeedbackSection.vue?c9a7","webpack:///src/js/app/pages/LandingPage/LandingPageFirstSection/LandingPageUserFeedback/LandingPageUserFeedbackSection.vue","webpack:///./src/js/app/pages/LandingPage/LandingPageFirstSection/LandingPageUserFeedback/LandingPageUserFeedbackSection.vue?7863","webpack:///./src/js/app/pages/LandingPage/LandingPageFirstSection/LandingPageUserFeedback/LandingPageUserFeedbackSection.vue","webpack:///src/js/app/pages/LandingPage/LandingPageFirstSection/LandingPageUserFeedback/index.vue","webpack:///./src/js/app/pages/LandingPage/LandingPageFirstSection/LandingPageUserFeedback/index.vue?6175","webpack:///./src/js/app/pages/LandingPage/LandingPageFirstSection/LandingPageUserFeedback/index.vue","webpack:///./src/js/app/pages/LandingPage/LandingPageResponsiveEmbed.vue?dfd8","webpack:///src/js/app/pages/LandingPage/LandingPageResponsiveEmbed.vue","webpack:///./src/js/app/pages/LandingPage/LandingPageResponsiveEmbed.vue?f55e","webpack:///./src/js/app/pages/LandingPage/LandingPageResponsiveEmbed.vue","webpack:///./src/js/app/pages/LandingPage/LandingPageEvents/EventTutorial.vue?de86","webpack:///./src/js/app/pages/LandingPage/LandingPageEvents/EventTutorial.vue","webpack:///src/js/app/pages/LandingPage/LandingPageFirstSection/index.vue","webpack:///./src/js/app/pages/LandingPage/LandingPageFirstSection/index.vue?22c4","webpack:///./src/js/app/pages/LandingPage/LandingPageFirstSection/index.vue","webpack:///./src/js/app/pages/LandingPage/LandingPageSecondSection/index.vue?c533","webpack:///./src/js/app/pages/LandingPage/LandingPageSecondSection/LandingPageDataBlock.vue?a7c3","webpack:///src/js/app/pages/LandingPage/LandingPageSecondSection/LandingPageDataBlock.vue","webpack:///./src/js/app/pages/LandingPage/LandingPageSecondSection/LandingPageDataBlock.vue?53c0","webpack:///./src/js/app/pages/LandingPage/LandingPageSecondSection/LandingPageDataBlock.vue","webpack:///src/js/app/pages/LandingPage/LandingPageSecondSection/index.vue","webpack:///./src/js/app/pages/LandingPage/LandingPageSecondSection/index.vue?fc39","webpack:///./src/js/app/pages/LandingPage/LandingPageSecondSection/index.vue","webpack:///./src/js/app/pages/LandingPage/LandingPageThirdSection/index.vue?277b","webpack:///./src/js/app/pages/LandingPage/LandingPageThirdSection/LandingPageBilanBlock.vue?bc9a","webpack:///src/js/app/pages/LandingPage/LandingPageThirdSection/LandingPageBilanBlock.vue","webpack:///./src/js/app/pages/LandingPage/LandingPageThirdSection/LandingPageBilanBlock.vue?de49","webpack:///./src/js/app/pages/LandingPage/LandingPageThirdSection/LandingPageBilanBlock.vue","webpack:///src/js/app/pages/LandingPage/LandingPageThirdSection/index.vue","webpack:///./src/js/app/pages/LandingPage/LandingPageThirdSection/index.vue?13ea","webpack:///./src/js/app/pages/LandingPage/LandingPageThirdSection/index.vue","webpack:///./src/js/app/pages/LandingPage/LandingPageBanner.vue?1eab","webpack:///src/js/app/pages/LandingPage/LandingPageBanner.vue","webpack:///./src/js/app/pages/LandingPage/LandingPageBanner.vue?f01b","webpack:///./src/js/app/pages/LandingPage/LandingPageBanner.vue","webpack:///./src/js/app/pages/LandingPage/CreditWrapper.vue?2b09","webpack:///src/js/app/pages/LandingPage/CreditWrapper.vue","webpack:///./src/js/app/pages/LandingPage/CreditWrapper.vue?ac29","webpack:///./src/js/app/pages/LandingPage/CreditWrapper.vue","webpack:///src/js/app/pages/LandingPage/index.vue","webpack:///./src/js/app/pages/LandingPage/index.vue?25b8","webpack:///./src/js/app/pages/LandingPage/index.vue","webpack:///./src/js/app/pages/signin/signin.vue?d41c","webpack:///./src/js/app/layouts/navbar/navbar.vue?8e2c","webpack:///./src/js/helpers/tabHelper.js","webpack:///./src/js/helpers/api/main.js","webpack:///./src/js/helpers/api/config.js","webpack:///./src/js/helpers/api/user.js","webpack:///./src/js/app/layouts/navbar/items.js","webpack:///./src/js/app/layouts/navbar/navbar.js","webpack:///src/js/app/layouts/navbar/navbar.vue","webpack:///./src/js/app/layouts/navbar/navbar.vue?847a","webpack:///./src/js/app/layouts/navbar/navbar.vue","webpack:///./src/js/app/components/form/form.vue?8187","webpack:///./src/js/app/components/form/input/input.vue?bbef","webpack:///./src/js/app/components/form/input/autocompleter/autocompleter.vue?0c60","webpack:///./src/js/app/components/form/input/autocompleter/autocompleter.js","webpack:///src/js/app/components/form/input/autocompleter/autocompleter.vue","webpack:///./src/js/app/components/form/input/autocompleter/autocompleter.vue?ced0","webpack:///./src/js/app/components/form/input/autocompleter/autocompleter.vue","webpack:///./src/js/app/components/form/input/address/address.vue?4a2e","webpack:///./src/js/helpers/addressHelper.js","webpack:///./src/js/app/components/form/input/address/address.js","webpack:///src/js/app/components/form/input/address/address.vue","webpack:///./src/js/app/components/form/input/address/address.vue?4ff1","webpack:///./src/js/app/components/form/input/address/address.vue","webpack:///./src/js/app/components/form/input/location/location.vue?3878","webpack:///./src/js/app/components/form/input/location/location.js","webpack:///src/js/app/components/form/input/location/location.vue","webpack:///./src/js/app/components/form/input/location/location.vue?788b","webpack:///./src/js/app/components/form/input/location/location.vue","webpack:///./src/js/app/components/form/input/address-with-location/address-with-location.vue?c1df","webpack:///./src/js/app/components/form/input/address-with-location/address-with-location.js","webpack:///src/js/app/components/form/input/address-with-location/address-with-location.vue","webpack:///./src/js/app/components/form/input/address-with-location/address-with-location.vue?6e0c","webpack:///./src/js/app/components/form/input/address-with-location/address-with-location.vue","webpack:///./src/js/app/components/form/input/townList/townList.vue?84c7","webpack:///./src/js/helpers/api/town.js","webpack:///./src/js/app/components/table/table.vue?1eec","webpack:///./src/js/app/components/tableFilter/tableFilter.vue?4cbf","webpack:///./src/js/app/components/tableFilter/tableFilter.js","webpack:///src/js/app/components/tableFilter/tableFilter.vue","webpack:///./src/js/app/components/tableFilter/tableFilter.vue?fc37","webpack:///./src/js/app/components/tableFilter/tableFilter.vue","webpack:///./src/js/app/components/table/table.js","webpack:///src/js/app/components/table/table.vue","webpack:///./src/js/app/components/table/table.vue?7934","webpack:///./src/js/app/components/table/table.vue","webpack:///./src/js/app/components/form/input/collectivity/collectivity.vue?3926","webpack:///./src/js/app/components/form/input/collectivity/collectivity.js","webpack:///src/js/app/components/form/input/collectivity/collectivity.vue","webpack:///./src/js/app/components/form/input/collectivity/collectivity.vue?cccc","webpack:///./src/js/app/components/form/input/collectivity/collectivity.vue","webpack:///./src/js/app/components/form/input/townList/townList.js","webpack:///src/js/app/components/form/input/townList/townList.vue","webpack:///./src/js/app/components/form/input/townList/townList.vue?d262","webpack:///./src/js/app/components/form/input/townList/townList.vue","webpack:///./src/js/app/components/form/input/planFunding/planFunding.vue?5258","webpack:///./src/js/app/components/form/input/planFunding/planFundingRow/planFundingRow.vue?b678","webpack:///./src/js/app/components/form/input/planFunding/planFundingRow/planFundingRow.js","webpack:///src/js/app/components/form/input/planFunding/planFundingRow/planFundingRow.vue","webpack:///./src/js/app/components/form/input/planFunding/planFundingRow/planFundingRow.vue?6d7c","webpack:///./src/js/app/components/form/input/planFunding/planFundingRow/planFundingRow.vue","webpack:///./src/js/app/components/form/input/planFunding/planFunding.js","webpack:///src/js/app/components/form/input/planFunding/planFunding.vue","webpack:///./src/js/app/components/form/input/planFunding/planFunding.vue?16df","webpack:///./src/js/app/components/form/input/planFunding/planFunding.vue","webpack:///./src/js/app/components/form/input/planHousing/planHousing.vue?2229","webpack:///src/js/app/components/form/input/planHousing/planHousing.vue","webpack:///./src/js/app/components/form/input/planHousing/planHousing.vue?2f7d","webpack:///./src/js/app/components/form/input/planHousing/planHousing.vue","webpack:///./src/js/app/components/form/input/organization/organization.vue?f433","webpack:///./src/js/app/components/form/input/organization/organization.js","webpack:///src/js/app/components/form/input/organization/organization.vue","webpack:///./src/js/app/components/form/input/organization/organization.vue?2a0b","webpack:///./src/js/app/components/form/input/organization/organization.vue","webpack:///./src/js/app/components/form/input/etp/etp.vue?cecc","webpack:///./src/js/app/components/form/input/etp/etp.js","webpack:///src/js/app/components/form/input/etp/etp.vue","webpack:///./src/js/app/components/form/input/etp/etp.vue?4fc2","webpack:///./src/js/app/components/form/input/etp/etp.vue","webpack:///./src/js/app/components/form/input/audience/audience.vue?6c69","webpack:///./src/js/app/components/form/input/audience/audience.js","webpack:///src/js/app/components/form/input/audience/audience.vue","webpack:///./src/js/app/components/form/input/audience/audience.vue?7797","webpack:///./src/js/app/components/form/input/audience/audience.vue","webpack:///./src/js/app/components/form/input/input.js","webpack:///src/js/app/components/form/input/input.vue","webpack:///./src/js/app/components/form/input/input.vue?8e58","webpack:///./src/js/app/components/form/input/input.vue","webpack:///./src/js/app/components/slide-note/slide-note.vue?d4e0","webpack:///./src/js/app/components/slide-note/slide-note.js","webpack:///src/js/app/components/slide-note/slide-note.vue","webpack:///./src/js/app/components/slide-note/slide-note.vue?55f3","webpack:///./src/js/app/components/slide-note/slide-note.vue","webpack:///./src/js/helpers/notificationHelper.js","webpack:///./src/js/app/components/form/form.js","webpack:///src/js/app/components/form/form.vue","webpack:///./src/js/app/components/form/form.vue?7c9c","webpack:///./src/js/app/components/form/form.vue","webpack:///./src/js/app/pages/signin/signin.js","webpack:///src/js/app/pages/signin/signin.vue","webpack:///./src/js/app/pages/signin/signin.vue?956d","webpack:///./src/js/app/pages/signin/signin.vue","webpack:///./src/js/app/pages/Contact/index.vue?bacf","webpack:///./src/js/helpers/api/contact.js","webpack:///./src/js/app/pages/Contact/PublicEstablishmentForm.vue?33d2","webpack:///./src/js/helpers/api/organization.js","webpack:///src/js/app/pages/Contact/PublicEstablishmentForm.vue","webpack:///./src/js/app/pages/Contact/PublicEstablishmentForm.vue?2944","webpack:///./src/js/app/pages/Contact/PublicEstablishmentForm.vue","webpack:///./src/js/app/pages/Contact/TerritorialCollectivityForm.vue?9c91","webpack:///src/js/app/pages/Contact/TerritorialCollectivityForm.vue","webpack:///./src/js/app/pages/Contact/TerritorialCollectivityForm.vue?d32a","webpack:///./src/js/app/pages/Contact/TerritorialCollectivityForm.vue","webpack:///./src/js/app/pages/Contact/AssociationForm.vue?ef43","webpack:///src/js/app/pages/Contact/AssociationForm.vue","webpack:///./src/js/app/pages/Contact/AssociationForm.vue?118a","webpack:///./src/js/app/pages/Contact/AssociationForm.vue","webpack:///./src/js/app/pages/Contact/AdministrationForm.vue?626a","webpack:///src/js/app/pages/Contact/AdministrationForm.vue","webpack:///./src/js/app/pages/Contact/AdministrationForm.vue?a7ea","webpack:///./src/js/app/pages/Contact/AdministrationForm.vue","webpack:///./src/js/app/pages/Contact/SocialShare.vue?d49b","webpack:///src/js/app/pages/Contact/SocialShare.vue","webpack:///./src/js/app/pages/Contact/SocialShare.vue?0ff2","webpack:///./src/js/app/pages/Contact/SocialShare.vue","webpack:///src/js/app/pages/Contact/index.vue","webpack:///./src/js/app/pages/Contact/index.vue?c1ef","webpack:///./src/js/app/pages/Contact/index.vue","webpack:///./src/js/app/pages/dashboard/dashboard.vue?3e89","webpack:///./src/js/app/pages/dashboard/filterGroup/filterGroup.vue?f10d","webpack:///./src/js/app/pages/dashboard/filterGroup/filterGroup.js","webpack:///src/js/app/pages/dashboard/filterGroup/filterGroup.vue","webpack:///./src/js/app/pages/dashboard/filterGroup/filterGroup.vue?11ca","webpack:///./src/js/app/pages/dashboard/filterGroup/filterGroup.vue","webpack:///./src/js/app/components/map/map.vue?79bd","webpack:///./src/js/app/components/address/address.vue?fd30","webpack:///./src/js/app/components/address/address.js","webpack:///src/js/app/components/address/address.vue","webpack:///./src/js/app/components/address/address.vue?bf57","webpack:///./src/js/app/components/address/address.vue","webpack:///./src/js/app/components/map/map.js","webpack:///src/js/app/components/map/map.vue","webpack:///./src/js/app/components/map/map.vue?6ee0","webpack:///./src/js/app/components/map/map.vue","webpack:///./src/js/app/components/quickview/quickview.vue?b285","webpack:///./src/js/app/components/quickview/quickview.js","webpack:///src/js/app/components/quickview/quickview.vue","webpack:///./src/js/app/components/quickview/quickview.vue?8e7d","webpack:///./src/js/app/components/quickview/quickview.vue","webpack:///./src/js/app/pages/dashboard/POIView.vue?c921","webpack:///src/js/app/pages/dashboard/POIView.vue","webpack:///./src/js/app/pages/dashboard/POIView.vue?873a","webpack:///./src/js/app/pages/dashboard/POIView.vue","webpack:///./src/js/helpers/api/poi.js","webpack:///./src/js/app/pages/dashboard/dashboard.js","webpack:///src/js/app/pages/dashboard/dashboard.vue","webpack:///./src/js/app/pages/dashboard/dashboard.vue?e701","webpack:///./src/js/app/pages/dashboard/dashboard.vue","webpack:///./src/js/app/pages/launcher/launcher.vue?301d","webpack:///./src/js/app/pages/launcher/launcher.js","webpack:///src/js/app/pages/launcher/launcher.vue","webpack:///./src/js/app/pages/launcher/launcher.vue?6b84","webpack:///./src/js/app/pages/launcher/launcher.vue","webpack:///./src/js/app/pages/TownsList/TownsList.vue?35e0","webpack:///./src/js/app/components/PrivateLayout/PrivateContainer.vue?304d","webpack:///./src/js/app/components/PrivateLayout/PrivateContainer.vue","webpack:///./src/js/app/components/PrivateLayout/index.vue?65a2","webpack:///src/js/app/components/PrivateLayout/index.vue","webpack:///./src/js/app/components/PrivateLayout/index.vue?4342","webpack:///./src/js/app/components/PrivateLayout/index.vue","webpack:///./src/js/app/pages/TownsList/TownCard.vue?5651","webpack:///./src/js/app/pages/TownsList/TownCardIcon.vue?f29a","webpack:///src/js/app/pages/TownsList/TownCardIcon.vue","webpack:///./src/js/app/pages/TownsList/TownCardIcon.vue?43c1","webpack:///./src/js/app/pages/TownsList/TownCardIcon.vue","webpack:///./src/js/app/pages/TownsList/getSince.js","webpack:///./src/js/app/pages/TownDetails/formatLivingConditions.js","webpack:///src/js/app/pages/TownsList/TownCard.vue","webpack:///./src/js/app/pages/TownsList/TownCard.vue?ba59","webpack:///./src/js/app/pages/TownsList/TownCard.vue","webpack:///./src/js/app/pages/TownsList/TownsListSearchBar.vue?aefd","webpack:///src/js/app/pages/TownsList/TownsListSearchBar.vue","webpack:///./src/js/app/pages/TownsList/TownsListSearchBar.vue?7564","webpack:///./src/js/app/pages/TownsList/TownsListSearchBar.vue","webpack:///./src/js/app/pages/TownsList/TownsListHeader/TownsListHeader.vue?15c3","webpack:///src/js/app/pages/TownsList/TownsListHeader/TownsListHeader.vue","webpack:///./src/js/app/pages/TownsList/TownsListHeader/TownsListHeader.vue?c6d4","webpack:///./src/js/app/pages/TownsList/TownsListHeader/TownsListHeader.vue","webpack:///./src/js/app/pages/TownsList/TownsListHeader/TownsListHeaderTab.vue?913d","webpack:///src/js/app/pages/TownsList/TownsListHeader/TownsListHeaderTab.vue","webpack:///./src/js/app/pages/TownsList/TownsListHeader/TownsListHeaderTab.vue?b037","webpack:///./src/js/app/pages/TownsList/TownsListHeader/TownsListHeaderTab.vue","webpack:///./src/js/app/pages/TownsList/TownsListFilters/TownsListFilters.vue?aa19","webpack:///./src/js/app/pages/TownsList/TownsListFilters/TownsListFilters.vue","webpack:///./src/js/app/pages/TownsList/TownsListFilters/TownsListFilter.vue?6bc1","webpack:///src/js/app/pages/TownsList/TownsListFilters/TownsListFilter.vue","webpack:///./src/js/app/pages/TownsList/TownsListFilters/TownsListFilter.vue?675e","webpack:///./src/js/app/pages/TownsList/TownsListFilters/TownsListFilter.vue","webpack:///./src/js/app/pages/TownsList/filterShantytowns.js","webpack:///./src/js/app/components/export2/Export.vue?530e","webpack:///src/js/app/components/export2/Export.vue","webpack:///./src/js/app/components/export2/Export.vue?1ddd","webpack:///./src/js/app/components/export2/Export.vue","webpack:///./src/js/app/pages/TownsList/TownsListSort/TownsListSort.vue?bf67","webpack:///src/js/app/pages/TownsList/TownsListSort/TownsListSort.vue","webpack:///./src/js/app/pages/TownsList/TownsListSort/TownsListSort.vue?2725","webpack:///./src/js/app/pages/TownsList/TownsListSort/TownsListSort.vue","webpack:///./src/js/app/pages/TownsList/formatDateSince.js","webpack:///./src/js/app/pages/TownsList/enrichShantytown.js","webpack:///./src/js/app/store/index.js","webpack:///src/js/app/pages/TownsList/TownsList.vue","webpack:///./src/js/app/pages/TownsList/TownsList.vue?3529","webpack:///./src/js/app/pages/TownsList/TownsList.vue","webpack:///./src/js/app/pages/TownCreate/TownCreate.vue?46c9","webpack:///./src/js/app/components/TownForm/TownForm.vue?55e1","webpack:///./src/js/app/components/TownForm/TownFormPanelInfo.vue?22a3","webpack:///src/js/app/components/TownForm/TownFormPanelInfo.vue","webpack:///./src/js/app/components/TownForm/TownFormPanelInfo.vue?5333","webpack:///./src/js/app/components/TownForm/TownFormPanelInfo.vue","webpack:///./src/js/app/components/TownForm/TownFormPanelLocation.vue?d09e","webpack:///./src/js/app/components/TownForm/inputs/InputAddress.vue?4a98","webpack:///src/js/app/components/TownForm/inputs/InputAddress.vue","webpack:///./src/js/app/components/TownForm/inputs/InputAddress.vue?f47b","webpack:///./src/js/app/components/TownForm/inputs/InputAddress.vue","webpack:///./src/js/app/components/TownForm/inputs/InputName.vue?1532","webpack:///src/js/app/components/TownForm/inputs/InputName.vue","webpack:///./src/js/app/components/TownForm/inputs/InputName.vue?e9ad","webpack:///./src/js/app/components/TownForm/inputs/InputName.vue","webpack:///./src/js/app/components/TownForm/inputs/InputCoordinates.vue?9964","webpack:///src/js/app/components/TownForm/inputs/InputCoordinates.vue","webpack:///./src/js/app/components/TownForm/inputs/InputCoordinates.vue?ceda","webpack:///./src/js/app/components/TownForm/inputs/InputCoordinates.vue","webpack:///src/js/app/components/TownForm/TownFormPanelLocation.vue","webpack:///./src/js/app/components/TownForm/TownFormPanelLocation.vue?1cbd","webpack:///./src/js/app/components/TownForm/TownFormPanelLocation.vue","webpack:///./src/js/app/components/TownForm/TownFormPanelCharacteristics.vue?edb1","webpack:///./src/js/app/components/TownForm/inputs/InputBuiltAt.vue?8ce8","webpack:///src/js/app/components/TownForm/inputs/InputBuiltAt.vue","webpack:///./src/js/app/components/TownForm/inputs/InputBuiltAt.vue?96a9","webpack:///./src/js/app/components/TownForm/inputs/InputBuiltAt.vue","webpack:///./src/js/app/components/TownForm/inputs/InputDeclaredAt.vue?e3d8","webpack:///src/js/app/components/TownForm/inputs/InputDeclaredAt.vue","webpack:///./src/js/app/components/TownForm/inputs/InputDeclaredAt.vue?5eba","webpack:///./src/js/app/components/TownForm/inputs/InputDeclaredAt.vue","webpack:///./src/js/app/components/TownForm/inputs/InputFieldType.vue?b041","webpack:///src/js/app/components/TownForm/inputs/InputFieldType.vue","webpack:///./src/js/app/components/TownForm/inputs/InputFieldType.vue?ecac","webpack:///./src/js/app/components/TownForm/inputs/InputFieldType.vue","webpack:///./src/js/app/components/TownForm/inputs/InputDetailedAddress.vue?ecd4","webpack:///src/js/app/components/TownForm/inputs/InputDetailedAddress.vue","webpack:///./src/js/app/components/TownForm/inputs/InputDetailedAddress.vue?453b","webpack:///./src/js/app/components/TownForm/inputs/InputDetailedAddress.vue","webpack:///./src/js/app/components/TownForm/inputs/InputOwnerType.vue?09a1","webpack:///src/js/app/components/TownForm/inputs/InputOwnerType.vue","webpack:///./src/js/app/components/TownForm/inputs/InputOwnerType.vue?c5d6","webpack:///./src/js/app/components/TownForm/inputs/InputOwnerType.vue","webpack:///./src/js/app/components/TownForm/inputs/InputOwner.vue?c02b","webpack:///src/js/app/components/TownForm/inputs/InputOwner.vue","webpack:///./src/js/app/components/TownForm/inputs/InputOwner.vue?d3f8","webpack:///./src/js/app/components/TownForm/inputs/InputOwner.vue","webpack:///src/js/app/components/TownForm/TownFormPanelCharacteristics.vue","webpack:///./src/js/app/components/TownForm/TownFormPanelCharacteristics.vue?836e","webpack:///./src/js/app/components/TownForm/TownFormPanelCharacteristics.vue","webpack:///./src/js/app/components/TownForm/TownFormPanelPeople.vue?1d4e","webpack:///./src/js/app/components/TownForm/inputs/InputPopulation.vue?4f4c","webpack:///src/js/app/components/TownForm/inputs/InputPopulation.vue","webpack:///./src/js/app/components/TownForm/inputs/InputPopulation.vue?e803","webpack:///./src/js/app/components/TownForm/inputs/InputPopulation.vue","webpack:///./src/js/app/components/TownForm/inputs/InputPopulationMinors.vue?0ded","webpack:///src/js/app/components/TownForm/inputs/InputPopulationMinors.vue","webpack:///./src/js/app/components/TownForm/inputs/InputPopulationMinors.vue?0f63","webpack:///./src/js/app/components/TownForm/inputs/InputPopulationMinors.vue","webpack:///./src/js/app/components/TownForm/inputs/InputSocialOrigins.vue?c3fd","webpack:///src/js/app/components/TownForm/inputs/InputSocialOrigins.vue","webpack:///./src/js/app/components/TownForm/inputs/InputSocialOrigins.vue?803b","webpack:///./src/js/app/components/TownForm/inputs/InputSocialOrigins.vue","webpack:///./src/js/app/components/TownForm/inputs/InputCensusStatus.vue?9ffc","webpack:///src/js/app/components/TownForm/inputs/InputCensusStatus.vue","webpack:///./src/js/app/components/TownForm/inputs/InputCensusStatus.vue?23b6","webpack:///./src/js/app/components/TownForm/inputs/InputCensusStatus.vue","webpack:///./src/js/app/components/TownForm/inputs/InputCensusConductedAt.vue?839f","webpack:///src/js/app/components/TownForm/inputs/InputCensusConductedAt.vue","webpack:///./src/js/app/components/TownForm/inputs/InputCensusConductedAt.vue?f0d0","webpack:///./src/js/app/components/TownForm/inputs/InputCensusConductedAt.vue","webpack:///./src/js/app/components/TownForm/inputs/InputCensusConductedBy.vue?28e2","webpack:///src/js/app/components/TownForm/inputs/InputCensusConductedBy.vue","webpack:///./src/js/app/components/TownForm/inputs/InputCensusConductedBy.vue?ac82","webpack:///./src/js/app/components/TownForm/inputs/InputCensusConductedBy.vue","webpack:///src/js/app/components/TownForm/TownFormPanelPeople.vue","webpack:///./src/js/app/components/TownForm/TownFormPanelPeople.vue?84e5","webpack:///./src/js/app/components/TownForm/TownFormPanelPeople.vue","webpack:///./src/js/app/components/TownForm/TownFormPanelLivingConditions.vue?91d5","webpack:///./src/js/app/components/TownForm/inputs/InputAccessToWater.vue?56c2","webpack:///src/js/app/components/TownForm/inputs/InputAccessToWater.vue","webpack:///./src/js/app/components/TownForm/inputs/InputAccessToWater.vue?afd5","webpack:///./src/js/app/components/TownForm/inputs/InputAccessToWater.vue","webpack:///./src/js/app/components/TownForm/inputs/InputWaterComments.vue?7967","webpack:///src/js/app/components/TownForm/inputs/InputWaterComments.vue","webpack:///./src/js/app/components/TownForm/inputs/InputWaterComments.vue?1384","webpack:///./src/js/app/components/TownForm/inputs/InputWaterComments.vue","webpack:///./src/js/app/components/TownForm/inputs/InputElectricityType.vue?8f2e","webpack:///src/js/app/components/TownForm/inputs/InputElectricityType.vue","webpack:///./src/js/app/components/TownForm/inputs/InputElectricityType.vue?755a","webpack:///./src/js/app/components/TownForm/inputs/InputElectricityType.vue","webpack:///./src/js/app/components/TownForm/inputs/InputElectricityComments.vue?2b47","webpack:///src/js/app/components/TownForm/inputs/InputElectricityComments.vue","webpack:///./src/js/app/components/TownForm/inputs/InputElectricityComments.vue?9c0a","webpack:///./src/js/app/components/TownForm/inputs/InputElectricityComments.vue","webpack:///./src/js/app/components/TownForm/inputs/InputAccessToSanitary.vue?9ab0","webpack:///src/js/app/components/TownForm/inputs/InputAccessToSanitary.vue","webpack:///./src/js/app/components/TownForm/inputs/InputAccessToSanitary.vue?ced2","webpack:///./src/js/app/components/TownForm/inputs/InputAccessToSanitary.vue","webpack:///./src/js/app/components/TownForm/inputs/InputSanitaryComments.vue?caa1","webpack:///src/js/app/components/TownForm/inputs/InputSanitaryComments.vue","webpack:///./src/js/app/components/TownForm/inputs/InputSanitaryComments.vue?bc2a","webpack:///./src/js/app/components/TownForm/inputs/InputSanitaryComments.vue","webpack:///./src/js/app/components/TownForm/inputs/InputTrashEvacuation.vue?dae6","webpack:///src/js/app/components/TownForm/inputs/InputTrashEvacuation.vue","webpack:///./src/js/app/components/TownForm/inputs/InputTrashEvacuation.vue?99da","webpack:///./src/js/app/components/TownForm/inputs/InputTrashEvacuation.vue","webpack:///./src/js/app/components/TownForm/inputs/InputWaterPotable.vue?6545","webpack:///./src/js/app/components/TownForm/ui/SubQuestionWrapper.vue?16e2","webpack:///src/js/app/components/TownForm/ui/SubQuestionWrapper.vue","webpack:///./src/js/app/components/TownForm/ui/SubQuestionWrapper.vue?c84f","webpack:///./src/js/app/components/TownForm/ui/SubQuestionWrapper.vue","webpack:///src/js/app/components/TownForm/inputs/InputWaterPotable.vue","webpack:///./src/js/app/components/TownForm/inputs/InputWaterPotable.vue?5bda","webpack:///./src/js/app/components/TownForm/inputs/InputWaterPotable.vue","webpack:///./src/js/app/components/TownForm/inputs/InputWaterContinuousAccess.vue?eeff","webpack:///src/js/app/components/TownForm/inputs/InputWaterContinuousAccess.vue","webpack:///./src/js/app/components/TownForm/inputs/InputWaterContinuousAccess.vue?88c0","webpack:///./src/js/app/components/TownForm/inputs/InputWaterContinuousAccess.vue","webpack:///./src/js/app/components/TownForm/inputs/InputWaterPublicPoint.vue?1c5a","webpack:///src/js/app/components/TownForm/inputs/InputWaterPublicPoint.vue","webpack:///./src/js/app/components/TownForm/inputs/InputWaterPublicPoint.vue?36d8","webpack:///./src/js/app/components/TownForm/inputs/InputWaterPublicPoint.vue","webpack:///./src/js/app/components/TownForm/inputs/InputWaterDistance.vue?11d4","webpack:///src/js/app/components/TownForm/inputs/InputWaterDistance.vue","webpack:///./src/js/app/components/TownForm/inputs/InputWaterDistance.vue?07dc","webpack:///./src/js/app/components/TownForm/inputs/InputWaterDistance.vue","webpack:///./src/js/app/components/TownForm/inputs/InputWaterRoadsToCross.vue?b459","webpack:///src/js/app/components/TownForm/inputs/InputWaterRoadsToCross.vue","webpack:///./src/js/app/components/TownForm/inputs/InputWaterRoadsToCross.vue?392a","webpack:///./src/js/app/components/TownForm/inputs/InputWaterRoadsToCross.vue","webpack:///./src/js/app/components/TownForm/inputs/InputWaterEveryoneHasAccess.vue?dbed","webpack:///src/js/app/components/TownForm/inputs/InputWaterEveryoneHasAccess.vue","webpack:///./src/js/app/components/TownForm/inputs/InputWaterEveryoneHasAccess.vue?e06b","webpack:///./src/js/app/components/TownForm/inputs/InputWaterEveryoneHasAccess.vue","webpack:///./src/js/app/components/TownForm/inputs/InputWaterStagnantWater.vue?c82b","webpack:///src/js/app/components/TownForm/inputs/InputWaterStagnantWater.vue","webpack:///./src/js/app/components/TownForm/inputs/InputWaterStagnantWater.vue?a420","webpack:///./src/js/app/components/TownForm/inputs/InputWaterStagnantWater.vue","webpack:///./src/js/app/components/TownForm/inputs/InputWaterHandWashAccess.vue?9716","webpack:///src/js/app/components/TownForm/inputs/InputWaterHandWashAccess.vue","webpack:///./src/js/app/components/TownForm/inputs/InputWaterHandWashAccess.vue?b249","webpack:///./src/js/app/components/TownForm/inputs/InputWaterHandWashAccess.vue","webpack:///./src/js/app/components/TownForm/inputs/InputWaterHandWashNumber.vue?eaa3","webpack:///src/js/app/components/TownForm/inputs/InputWaterHandWashNumber.vue","webpack:///./src/js/app/components/TownForm/inputs/InputWaterHandWashNumber.vue?06ac","webpack:///./src/js/app/components/TownForm/inputs/InputWaterHandWashNumber.vue","webpack:///./src/js/app/components/TownForm/inputs/InputSanitaryNumber.vue?5b75","webpack:///src/js/app/components/TownForm/inputs/InputSanitaryNumber.vue","webpack:///./src/js/app/components/TownForm/inputs/InputSanitaryNumber.vue?7daf","webpack:///./src/js/app/components/TownForm/inputs/InputSanitaryNumber.vue","webpack:///./src/js/app/components/TownForm/inputs/InputSanitaryInsalubrious.vue?ed94","webpack:///src/js/app/components/TownForm/inputs/InputSanitaryInsalubrious.vue","webpack:///./src/js/app/components/TownForm/inputs/InputSanitaryInsalubrious.vue?76bc","webpack:///./src/js/app/components/TownForm/inputs/InputSanitaryInsalubrious.vue","webpack:///./src/js/app/components/TownForm/inputs/InputSanitaryOnSite.vue?f1a8","webpack:///src/js/app/components/TownForm/inputs/InputSanitaryOnSite.vue","webpack:///./src/js/app/components/TownForm/inputs/InputSanitaryOnSite.vue?a30d","webpack:///./src/js/app/components/TownForm/inputs/InputSanitaryOnSite.vue","webpack:///./src/js/app/components/TownForm/inputs/InputTrashCansOnSite.vue?3a2b","webpack:///src/js/app/components/TownForm/inputs/InputTrashCansOnSite.vue","webpack:///./src/js/app/components/TownForm/inputs/InputTrashCansOnSite.vue?18d2","webpack:///./src/js/app/components/TownForm/inputs/InputTrashCansOnSite.vue","webpack:///./src/js/app/components/TownForm/inputs/InputTrashAccumulation.vue?9b64","webpack:///src/js/app/components/TownForm/inputs/InputTrashAccumulation.vue","webpack:///./src/js/app/components/TownForm/inputs/InputTrashAccumulation.vue?b59b","webpack:///./src/js/app/components/TownForm/inputs/InputTrashAccumulation.vue","webpack:///./src/js/app/components/TownForm/inputs/InputTrashEvacuationRegular.vue?c6eb","webpack:///src/js/app/components/TownForm/inputs/InputTrashEvacuationRegular.vue","webpack:///./src/js/app/components/TownForm/inputs/InputTrashEvacuationRegular.vue?2b57","webpack:///./src/js/app/components/TownForm/inputs/InputTrashEvacuationRegular.vue","webpack:///./src/js/app/components/TownForm/inputs/InputVermin.vue?f383","webpack:///src/js/app/components/TownForm/inputs/InputVermin.vue","webpack:///./src/js/app/components/TownForm/inputs/InputVermin.vue?0897","webpack:///./src/js/app/components/TownForm/inputs/InputVermin.vue","webpack:///./src/js/app/components/TownForm/inputs/InputVerminComments.vue?68d9","webpack:///src/js/app/components/TownForm/inputs/InputVerminComments.vue","webpack:///./src/js/app/components/TownForm/inputs/InputVerminComments.vue?8e9d","webpack:///./src/js/app/components/TownForm/inputs/InputVerminComments.vue","webpack:///./src/js/app/components/TownForm/inputs/InputFirePreventionMeasures.vue?5094","webpack:///src/js/app/components/TownForm/inputs/InputFirePreventionMeasures.vue","webpack:///./src/js/app/components/TownForm/inputs/InputFirePreventionMeasures.vue?c9a7","webpack:///./src/js/app/components/TownForm/inputs/InputFirePreventionMeasures.vue","webpack:///./src/js/app/components/TownForm/inputs/InputFirePreventionDiagnostic.vue?2599","webpack:///src/js/app/components/TownForm/inputs/InputFirePreventionDiagnostic.vue","webpack:///./src/js/app/components/TownForm/inputs/InputFirePreventionDiagnostic.vue?77f9","webpack:///./src/js/app/components/TownForm/inputs/InputFirePreventionDiagnostic.vue","webpack:///./src/js/app/components/TownForm/inputs/InputFirePreventionSiteAccessible.vue?937a","webpack:///src/js/app/components/TownForm/inputs/InputFirePreventionSiteAccessible.vue","webpack:///./src/js/app/components/TownForm/inputs/InputFirePreventionSiteAccessible.vue?2e3e","webpack:///./src/js/app/components/TownForm/inputs/InputFirePreventionSiteAccessible.vue","webpack:///./src/js/app/components/TownForm/inputs/InputFirePreventionComments.vue?cad7","webpack:///src/js/app/components/TownForm/inputs/InputFirePreventionComments.vue","webpack:///./src/js/app/components/TownForm/inputs/InputFirePreventionComments.vue?13ac","webpack:///./src/js/app/components/TownForm/inputs/InputFirePreventionComments.vue","webpack:///./src/js/app/components/TownForm/inputs/InputFirePreventionDevices.vue?7957","webpack:///src/js/app/components/TownForm/inputs/InputFirePreventionDevices.vue","webpack:///./src/js/app/components/TownForm/inputs/InputFirePreventionDevices.vue?3850","webpack:///./src/js/app/components/TownForm/inputs/InputFirePreventionDevices.vue","webpack:///src/js/app/components/TownForm/TownFormPanelLivingConditions.vue","webpack:///./src/js/app/components/TownForm/TownFormPanelLivingConditions.vue?5240","webpack:///./src/js/app/components/TownForm/TownFormPanelLivingConditions.vue","webpack:///./src/js/app/components/TownForm/TownFormPanelJudicial.vue?e5fe","webpack:///./src/js/app/components/TownForm/inputs/InputOwnerComplaint.vue?a6c8","webpack:///src/js/app/components/TownForm/inputs/InputOwnerComplaint.vue","webpack:///./src/js/app/components/TownForm/inputs/InputOwnerComplaint.vue?d623","webpack:///./src/js/app/components/TownForm/inputs/InputOwnerComplaint.vue","webpack:///./src/js/app/components/TownForm/inputs/InputJusticeProcedure.vue?f20d","webpack:///src/js/app/components/TownForm/inputs/InputJusticeProcedure.vue","webpack:///./src/js/app/components/TownForm/inputs/InputJusticeProcedure.vue?8f05","webpack:///./src/js/app/components/TownForm/inputs/InputJusticeProcedure.vue","webpack:///./src/js/app/components/TownForm/inputs/InputJusticeRendered.vue?907b","webpack:///src/js/app/components/TownForm/inputs/InputJusticeRendered.vue","webpack:///./src/js/app/components/TownForm/inputs/InputJusticeRendered.vue?5052","webpack:///./src/js/app/components/TownForm/inputs/InputJusticeRendered.vue","webpack:///./src/js/app/components/TownForm/inputs/InputJusticeRenderedAt.vue?d1b7","webpack:///src/js/app/components/TownForm/inputs/InputJusticeRenderedAt.vue","webpack:///./src/js/app/components/TownForm/inputs/InputJusticeRenderedAt.vue?ea2f","webpack:///./src/js/app/components/TownForm/inputs/InputJusticeRenderedAt.vue","webpack:///./src/js/app/components/TownForm/inputs/InputJusticeRenderedBy.vue?aeac","webpack:///src/js/app/components/TownForm/inputs/InputJusticeRenderedBy.vue","webpack:///./src/js/app/components/TownForm/inputs/InputJusticeRenderedBy.vue?1734","webpack:///./src/js/app/components/TownForm/inputs/InputJusticeRenderedBy.vue","webpack:///./src/js/app/components/TownForm/inputs/InputJusticeChallenged.vue?6e70","webpack:///src/js/app/components/TownForm/inputs/InputJusticeChallenged.vue","webpack:///./src/js/app/components/TownForm/inputs/InputJusticeChallenged.vue?a2cc","webpack:///./src/js/app/components/TownForm/inputs/InputJusticeChallenged.vue","webpack:///./src/js/app/components/TownForm/inputs/InputPoliceStatus.vue?ab0c","webpack:///src/js/app/components/TownForm/inputs/InputPoliceStatus.vue","webpack:///./src/js/app/components/TownForm/inputs/InputPoliceStatus.vue?32ac","webpack:///./src/js/app/components/TownForm/inputs/InputPoliceStatus.vue","webpack:///./src/js/app/components/TownForm/inputs/InputPoliceRequestedAt.vue?d7e5","webpack:///src/js/app/components/TownForm/inputs/InputPoliceRequestedAt.vue","webpack:///./src/js/app/components/TownForm/inputs/InputPoliceRequestedAt.vue?0efc","webpack:///./src/js/app/components/TownForm/inputs/InputPoliceRequestedAt.vue","webpack:///./src/js/app/components/TownForm/inputs/InputPoliceGrantedAt.vue?bc29","webpack:///src/js/app/components/TownForm/inputs/InputPoliceGrantedAt.vue","webpack:///./src/js/app/components/TownForm/inputs/InputPoliceGrantedAt.vue?cac0","webpack:///./src/js/app/components/TownForm/inputs/InputPoliceGrantedAt.vue","webpack:///./src/js/app/components/TownForm/inputs/InputBailiff.vue?2e05","webpack:///src/js/app/components/TownForm/inputs/InputBailiff.vue","webpack:///./src/js/app/components/TownForm/inputs/InputBailiff.vue?bc74","webpack:///./src/js/app/components/TownForm/inputs/InputBailiff.vue","webpack:///src/js/app/components/TownForm/TownFormPanelJudicial.vue","webpack:///./src/js/app/components/TownForm/TownFormPanelJudicial.vue?c7d4","webpack:///./src/js/app/components/TownForm/TownFormPanelJudicial.vue","webpack:///./src/js/app/components/TownForm/TownFormLeftColumn.vue?4b85","webpack:///./src/js/app/components/TownForm/ui/LeftColumnNavLink.vue?e782","webpack:///src/js/app/pages/TownDetails/ui/LeftColumnNavLink.vue","webpack:///./src/js/app/components/TownForm/ui/LeftColumnNavLink.vue?93f3","webpack:///./src/js/app/components/TownForm/ui/LeftColumnNavLink.vue","webpack:///src/js/app/components/TownForm/TownFormLeftColumn.vue","webpack:///./src/js/app/components/TownForm/TownFormLeftColumn.vue?51bf","webpack:///./src/js/app/components/TownForm/TownFormLeftColumn.vue","webpack:///./src/js/app/components/TownForm/TownFormErrorLog.vue?3838","webpack:///src/js/app/components/TownForm/TownFormErrorLog.vue","webpack:///./src/js/app/components/TownForm/TownFormErrorLog.vue?c81f","webpack:///./src/js/app/components/TownForm/TownFormErrorLog.vue","webpack:///src/js/app/components/TownForm/TownForm.vue","webpack:///./src/js/app/components/TownForm/TownForm.vue?d3bb","webpack:///./src/js/app/components/TownForm/TownForm.vue","webpack:///src/js/app/pages/TownCreate/TownCreate.vue","webpack:///./src/js/app/pages/TownCreate/TownCreate.vue?eaad","webpack:///./src/js/app/pages/TownCreate/TownCreate.vue","webpack:///./src/js/app/pages/TownUpdate/TownUpdate.vue?638d","webpack:///src/js/app/pages/TownUpdate/TownUpdate.vue","webpack:///./src/js/app/pages/TownUpdate/TownUpdate.vue?5ac6","webpack:///./src/js/app/pages/TownUpdate/TownUpdate.vue","webpack:///./src/js/app/pages/TownDetails/TownDetails.vue?f47b","webpack:///./src/js/app/pages/TownDetails/TownDetailsHeader.vue?e2e6","webpack:///src/js/app/pages/TownDetails/TownDetailsHeader.vue","webpack:///./src/js/app/pages/TownDetails/TownDetailsHeader.vue?c5d2","webpack:///./src/js/app/pages/TownDetails/TownDetailsHeader.vue","webpack:///./src/js/app/pages/TownDetails/TownDetailsLeftColumn.vue?06c2","webpack:///./src/js/app/pages/TownDetails/ui/LeftColumnNavLink.vue?8fe5","webpack:///./src/js/app/pages/TownDetails/ui/LeftColumnNavLink.vue?0006","webpack:///./src/js/app/pages/TownDetails/ui/LeftColumnNavLink.vue","webpack:///src/js/app/pages/TownDetails/TownDetailsLeftColumn.vue","webpack:///./src/js/app/pages/TownDetails/TownDetailsLeftColumn.vue?cb04","webpack:///./src/js/app/pages/TownDetails/TownDetailsLeftColumn.vue","webpack:///./src/js/app/pages/TownDetails/TownDetailsPanelCharacteristics.vue?3479","webpack:///./src/js/app/pages/TownDetails/ui/TownDetailsPanel.vue?ced7","webpack:///./src/js/app/pages/TownDetails/ui/TownDetailsPanel.vue","webpack:///./src/js/app/pages/TownDetails/ui/TownDetailsPanelSection.vue?41d6","webpack:///./src/js/app/pages/TownDetails/ui/TownDetailsPanelSection.vue","webpack:///src/js/app/pages/TownDetails/TownDetailsPanelCharacteristics.vue","webpack:///./src/js/app/pages/TownDetails/TownDetailsPanelCharacteristics.vue?a47c","webpack:///./src/js/app/pages/TownDetails/TownDetailsPanelCharacteristics.vue","webpack:///./src/js/app/pages/TownDetails/TownDetailsPanelPeople.vue?e4a8","webpack:///src/js/app/pages/TownDetails/TownDetailsPanelPeople.vue","webpack:///./src/js/app/pages/TownDetails/TownDetailsPanelPeople.vue?57e8","webpack:///./src/js/app/pages/TownDetails/TownDetailsPanelPeople.vue","webpack:///./src/js/app/pages/TownDetails/TownDetailsPanelLivingConditions.vue?5927","webpack:///./src/js/app/pages/TownDetails/ui/TownDetailsPanelLivingConditionsSection.vue?75ca","webpack:///./src/js/app/pages/TownDetails/ui/TownDetailsPanelLivingConditionsDetails.vue?58b3","webpack:///src/js/app/pages/TownDetails/ui/TownDetailsPanelLivingConditionsDetails.vue","webpack:///./src/js/app/pages/TownDetails/ui/TownDetailsPanelLivingConditionsDetails.vue?4ede","webpack:///./src/js/app/pages/TownDetails/ui/TownDetailsPanelLivingConditionsDetails.vue","webpack:///src/js/app/pages/TownDetails/ui/TownDetailsPanelLivingConditionsSection.vue","webpack:///./src/js/app/pages/TownDetails/ui/TownDetailsPanelLivingConditionsSection.vue?9132","webpack:///./src/js/app/pages/TownDetails/ui/TownDetailsPanelLivingConditionsSection.vue","webpack:///src/js/app/pages/TownDetails/TownDetailsPanelLivingConditions.vue","webpack:///./src/js/app/pages/TownDetails/TownDetailsPanelLivingConditions.vue?d988","webpack:///./src/js/app/pages/TownDetails/TownDetailsPanelLivingConditions.vue","webpack:///./src/js/app/pages/TownDetails/TownDetailsPanelJudicial.vue?3627","webpack:///src/js/app/pages/TownDetails/TownDetailsPanelJudicial.vue","webpack:///./src/js/app/pages/TownDetails/TownDetailsPanelJudicial.vue?d536","webpack:///./src/js/app/pages/TownDetails/TownDetailsPanelJudicial.vue","webpack:///./src/js/app/pages/TownDetails/TownDetailsPanelActors.vue?b42d","webpack:///./src/js/app/pages/TownDetails/ui/TownDetailsActorCard.vue?6812","webpack:///./src/js/app/pages/TownDetails/ui/TownDetailsActorTag.vue?ea8c","webpack:///./src/js/app/pages/TownDetails/ui/TownDetailsActorTag.vue","webpack:///src/js/app/pages/TownDetails/ui/TownDetailsActorCard.vue","webpack:///./src/js/app/pages/TownDetails/ui/TownDetailsActorCard.vue?ce27","webpack:///./src/js/app/pages/TownDetails/ui/TownDetailsActorCard.vue","webpack:///./src/js/app/pages/TownDetails/ui/TownDetailsSelfCard.vue?c98f","webpack:///./src/js/app/pages/TownDetails/ui/TownDetailsSelfTag.vue?056e","webpack:///src/js/app/pages/TownDetails/ui/TownDetailsSelfTag.vue","webpack:///./src/js/app/pages/TownDetails/ui/TownDetailsSelfTag.vue?7a5f","webpack:///./src/js/app/pages/TownDetails/ui/TownDetailsSelfTag.vue","webpack:///src/js/app/pages/TownDetails/ui/TownDetailsSelfCard.vue","webpack:///./src/js/app/pages/TownDetails/ui/TownDetailsSelfCard.vue?dc00","webpack:///./src/js/app/pages/TownDetails/ui/TownDetailsSelfCard.vue","webpack:///src/js/app/pages/TownDetails/TownDetailsPanelActors.vue","webpack:///./src/js/app/pages/TownDetails/TownDetailsPanelActors.vue?e086","webpack:///./src/js/app/pages/TownDetails/TownDetailsPanelActors.vue","webpack:///./src/js/app/pages/TownDetails/TownDetailsNewComment.vue?e27e","webpack:///src/js/app/pages/TownDetails/TownDetailsNewComment.vue","webpack:///./src/js/app/pages/TownDetails/TownDetailsNewComment.vue?29d2","webpack:///./src/js/app/pages/TownDetails/TownDetailsNewComment.vue","webpack:///./src/js/app/pages/TownDetails/TownDetailsComments.vue?4fca","webpack:///./src/js/app/pages/TownDetails/ui/CommentBlock.vue?68da","webpack:///src/js/app/pages/TownDetails/ui/CommentBlock.vue","webpack:///./src/js/app/pages/TownDetails/ui/CommentBlock.vue?5fe2","webpack:///./src/js/app/pages/TownDetails/ui/CommentBlock.vue","webpack:///src/js/app/pages/TownDetails/TownDetailsComments.vue","webpack:///./src/js/app/pages/TownDetails/TownDetailsComments.vue?3057","webpack:///./src/js/app/pages/TownDetails/TownDetailsComments.vue","webpack:///./src/js/app/pages/TownDetails/TownDetailsHistorySidePanel.vue?18af","webpack:///src/js/app/pages/TownDetails/TownDetailsHistorySidePanel.vue","webpack:///./src/js/app/pages/TownDetails/TownDetailsHistorySidePanel.vue?bf3f","webpack:///./src/js/app/pages/TownDetails/TownDetailsHistorySidePanel.vue","webpack:///./src/js/app/pages/TownDetails/TownDetailsCovidCommentsSidePanel.vue?ed30","webpack:///src/js/app/pages/TownDetails/TownDetailsCovidCommentsSidePanel.vue","webpack:///./src/js/app/pages/TownDetails/TownDetailsCovidCommentsSidePanel.vue?99e4","webpack:///./src/js/app/pages/TownDetails/TownDetailsCovidCommentsSidePanel.vue","webpack:///./src/js/app/pages/TownDetails/TownDetailsActorAlert.vue?4ea5","webpack:///./src/js/app/pages/TownDetails/TownDetailsActorAlert.vue","webpack:///./src/js/app/pages/TownDetails/TownDetailsCloseModal.vue?d6f1","webpack:///src/js/app/pages/TownDetails/TownDetailsCloseModal.vue","webpack:///./src/js/app/pages/TownDetails/TownDetailsCloseModal.vue?2adf","webpack:///./src/js/app/pages/TownDetails/TownDetailsCloseModal.vue","webpack:///./src/js/app/pages/TownDetails/TownDetailsActorThemesModal.vue?363b","webpack:///src/js/app/pages/TownDetails/TownDetailsActorThemesModal.vue","webpack:///./src/js/app/pages/TownDetails/TownDetailsActorThemesModal.vue?1d36","webpack:///./src/js/app/pages/TownDetails/TownDetailsActorThemesModal.vue","webpack:///./src/js/app/pages/TownDetails/TownDetailsInviteActorModal.vue?e153","webpack:///src/js/app/pages/TownDetails/TownDetailsInviteActorModal.vue","webpack:///./src/js/app/pages/TownDetails/TownDetailsInviteActorModal.vue?db7c","webpack:///./src/js/app/pages/TownDetails/TownDetailsInviteActorModal.vue","webpack:///src/js/app/pages/TownDetails/TownDetails.vue","webpack:///./src/js/app/pages/TownDetails/TownDetails.vue?d48c","webpack:///./src/js/app/pages/TownDetails/TownDetails.vue","webpack:///./src/js/app/pages/me/me.vue?e862","webpack:///./src/js/app/pages/me/me.js","webpack:///src/js/app/pages/me/me.vue","webpack:///./src/js/app/pages/me/me.vue?f254","webpack:///./src/js/app/pages/me/me.vue","webpack:///./src/js/app/pages/users.list/users.list.vue?1cb1","webpack:///./src/js/app/components/modal/modal.vue?d92c","webpack:///./src/js/app/components/modal/modal.js","webpack:///src/js/app/components/modal/modal.vue","webpack:///./src/js/app/components/modal/modal.vue?6c4a","webpack:///./src/js/app/components/modal/modal.vue","webpack:///./src/js/app/pages/users.list/users.list.js","webpack:///src/js/app/pages/users.list/users.list.vue","webpack:///./src/js/app/pages/users.list/users.list.vue?fad9","webpack:///./src/js/app/pages/users.list/users.list.vue","webpack:///./src/js/app/pages/users.create/users.create.vue?3d4c","webpack:///./src/js/app/pages/users.create/newUser.js","webpack:///./src/js/app/pages/users.create/users.create.js","webpack:///src/js/app/pages/users.create/users.create.vue","webpack:///./src/js/app/pages/users.create/users.create.vue?fd74","webpack:///./src/js/app/pages/users.create/users.create.vue","webpack:///./src/js/app/pages/users.activate/users.activate.vue?980c","webpack:///./src/js/app/pages/users.activate/users.activate.js","webpack:///src/js/app/pages/users.activate/users.activate.vue","webpack:///./src/js/app/pages/users.activate/users.activate.vue?0fcd","webpack:///./src/js/app/pages/users.activate/users.activate.vue","webpack:///./src/js/app/pages/users.validate/users.validate.vue?4c4e","webpack:///./src/js/app/layouts/userPermissions/userPermissions.vue?5a7f","webpack:///./src/js/app/layouts/userPermissions/userPermissions.js","webpack:///src/js/app/layouts/userPermissions/userPermissions.vue","webpack:///./src/js/app/layouts/userPermissions/userPermissions.vue?fb34","webpack:///./src/js/app/layouts/userPermissions/userPermissions.vue","webpack:///./src/js/app/pages/users.validate/users.validate.js","webpack:///src/js/app/pages/users.validate/users.validate.vue","webpack:///./src/js/app/pages/users.validate/users.validate.vue?b604","webpack:///./src/js/app/pages/users.validate/users.validate.vue","webpack:///./src/js/app/pages/users.upgrade/users.upgrade.vue?453f","webpack:///./src/js/app/pages/users.upgrade/users.upgrade.js","webpack:///src/js/app/pages/users.upgrade/users.upgrade.vue","webpack:///./src/js/app/pages/users.upgrade/users.upgrade.vue?dc8a","webpack:///./src/js/app/pages/users.upgrade/users.upgrade.vue","webpack:///./src/js/app/pages/users.requestNewPassword/users.requestNewPassword.vue?4a54","webpack:///./src/js/app/pages/users.requestNewPassword/users.requestNewPassword.js","webpack:///src/js/app/pages/users.requestNewPassword/users.requestNewPassword.vue","webpack:///./src/js/app/pages/users.requestNewPassword/users.requestNewPassword.vue?0272","webpack:///./src/js/app/pages/users.requestNewPassword/users.requestNewPassword.vue","webpack:///./src/js/app/pages/users.setNewPassword/users.setNewPassword.vue?24c1","webpack:///./src/js/app/pages/users.setNewPassword/users.setNewPassword.js","webpack:///src/js/app/pages/users.setNewPassword/users.setNewPassword.vue","webpack:///./src/js/app/pages/users.setNewPassword/users.setNewPassword.vue?e50b","webpack:///./src/js/app/pages/users.setNewPassword/users.setNewPassword.vue","webpack:///./src/js/app/pages/plans.list/plans.list.vue?734b","webpack:///./src/js/helpers/api/plan.js","webpack:///./src/js/app/pages/plans.list/plans.list.js","webpack:///src/js/app/pages/plans.list/plans.list.vue","webpack:///./src/js/app/pages/plans.list/plans.list.vue?f74f","webpack:///./src/js/app/pages/plans.list/plans.list.vue","webpack:///./src/js/app/pages/plans.create/plans.create.vue?edc9","webpack:///./src/js/helpers/api/geo.js","webpack:///./src/js/app/pages/plans.create/plans.create.js","webpack:///src/js/app/pages/plans.create/plans.create.vue","webpack:///./src/js/app/pages/plans.create/plans.create.vue?c00d","webpack:///./src/js/app/pages/plans.create/plans.create.vue","webpack:///./src/js/app/pages/plans.details/plans.details.vue?6bcb","webpack:///./src/js/app/pages/plans.details/plans.details.js","webpack:///src/js/app/pages/plans.details/plans.details.vue","webpack:///./src/js/app/pages/plans.details/plans.details.vue?2ad9","webpack:///./src/js/app/pages/plans.details/plans.details.vue","webpack:///./src/js/app/pages/plans.edit/plans.edit.vue?495f","webpack:///./src/js/app/pages/plans.edit/plans.edit.js","webpack:///src/js/app/pages/plans.edit/plans.edit.vue","webpack:///./src/js/app/pages/plans.edit/plans.edit.vue?4022","webpack:///./src/js/app/pages/plans.edit/plans.edit.vue","webpack:///./src/js/app/pages/plans.marks/plans.marks.vue?7a76","webpack:///./src/js/app/pages/plans.marks/plans.marks.js","webpack:///src/js/app/pages/plans.marks/plans.marks.vue","webpack:///./src/js/app/pages/plans.marks/plans.marks.vue?9a93","webpack:///./src/js/app/pages/plans.marks/plans.marks.vue","webpack:///./src/js/app/pages/stats/stats.vue?2b3c","webpack:///./src/js/helpers/api/stats.js","webpack:///./src/js/app/pages/stats/stats.js","webpack:///src/js/app/pages/stats/stats.vue","webpack:///./src/js/app/pages/stats/stats.vue?e6c4","webpack:///./src/js/app/pages/stats/stats.vue","webpack:///./src/js/app/pages/legalMentions/legalMentions.vue?2f19","webpack:///./src/js/app/pages/legalMentions/legalMentions.js","webpack:///src/js/app/pages/legalMentions/legalMentions.vue","webpack:///./src/js/app/pages/legalMentions/legalMentions.vue?66f9","webpack:///./src/js/app/pages/legalMentions/legalMentions.vue","webpack:///./src/js/app/pages/directory/directory.vue?c3a6","webpack:///./src/js/app/layouts/skeleton/skeleton.vue?fd38","webpack:///./src/js/app/layouts/skeleton/skeleton.js","webpack:///src/js/app/layouts/skeleton/skeleton.vue","webpack:///./src/js/app/layouts/skeleton/skeleton.vue?b8d7","webpack:///./src/js/app/layouts/skeleton/skeleton.vue","webpack:///./src/js/app/components/organization/organization.vue?29db","webpack:///./src/js/app/components/organization/organization.js","webpack:///src/js/app/components/organization/organization.vue","webpack:///./src/js/app/components/organization/organization.vue?a685","webpack:///./src/js/app/components/organization/organization.vue","webpack:///./src/js/helpers/api/statistics.js","webpack:///./src/js/app/pages/directory/directory.js","webpack:///src/js/app/pages/directory/directory.vue","webpack:///./src/js/app/pages/directory/directory.vue?23e7","webpack:///./src/js/app/pages/directory/directory.vue","webpack:///./src/js/app/pages/userActivity.list/userActivity.list.vue?00c7","webpack:///./src/js/helpers/api/userActivity.js","webpack:///./src/js/app/components/comment-deletion/comment-deletion.vue?1e33","webpack:///./src/js/app/components/comment-deletion/comment-deletion.js","webpack:///src/js/app/components/comment-deletion/comment-deletion.vue","webpack:///./src/js/app/components/comment-deletion/comment-deletion.vue?839b","webpack:///./src/js/app/components/comment-deletion/comment-deletion.vue","webpack:///./src/js/app/pages/userActivity.list/userActivity.list.js","webpack:///src/js/app/pages/userActivity.list/userActivity.list.vue","webpack:///./src/js/app/pages/userActivity.list/userActivity.list.vue?4ee3","webpack:///./src/js/app/pages/userActivity.list/userActivity.list.vue","webpack:///./src/js/app/pages/PublicStats/index.vue?fbcc","webpack:///./src/js/app/pages/PublicStats/StatsBlock.vue?edff","webpack:///src/js/app/pages/PublicStats/StatsBlock.vue","webpack:///./src/js/app/pages/PublicStats/StatsBlock.vue?3d90","webpack:///./src/js/app/pages/PublicStats/StatsBlock.vue","webpack:///./src/js/app/pages/PublicStats/StatsSection.vue?7ee9","webpack:///src/js/app/pages/PublicStats/StatsSection.vue","webpack:///./src/js/app/pages/PublicStats/StatsSection.vue?9f4e","webpack:///./src/js/app/pages/PublicStats/StatsSection.vue","webpack:///src/js/app/pages/PublicStats/index.vue","webpack:///./src/js/app/pages/PublicStats/index.vue?db4d","webpack:///./src/js/app/pages/PublicStats/index.vue","webpack:///./src/js/app/pages/covid/covid.vue?b938","webpack:///./src/js/helpers/api/highCovidComment.js","webpack:///./src/js/app/pages/covid/covid.js","webpack:///src/js/app/pages/covid/covid.vue","webpack:///./src/js/app/pages/covid/covid.vue?06a7","webpack:///./src/js/app/pages/covid/covid.vue","webpack:///./src/js/app/pages/Changelog/Changelog.vue?b04a","webpack:///src/js/app/pages/Changelog/Changelog.vue","webpack:///./src/js/app/pages/Changelog/Changelog.vue?f2a4","webpack:///./src/js/app/pages/Changelog/Changelog.vue","webpack:///./src/js/app/pages/CharteEngagement/CharteEngagement.vue?25ee","webpack:///src/js/app/pages/CharteEngagement/CharteEngagement.vue","webpack:///./src/js/app/pages/CharteEngagement/CharteEngagement.vue?7f4c","webpack:///./src/js/app/pages/CharteEngagement/CharteEngagement.vue","webpack:///./src/js/app/router.js","webpack:///./src/js/index.js","webpack:///./src/js/app/components/ui/Form/CheckableGroup.vue?e6c8","webpack:///./src/js/app/pages/plans.create/plans.create.vue?91df","webpack:///./src/js/app/pages/LandingPage/assets/resorption-bidonvilles-2.jpg","webpack:///./src/js/app/pages/TownsList/TownCard.vue?a5b2","webpack:///./src/js/app/components/form/input/location/location.vue?9302","webpack:///./src/js/app/pages/LandingPage/LandingPageFirstSection/assets/resorption-bidonvilles-dessin.png","webpack:///./src/js/app/components/ui/Map/Tooltip.vue?eec7","webpack:///./src/js/app/components/form/input/input.vue?40f5","webpack:///./src/js/app/pages/LandingPage/assets/resorption-bidonvilles-5.jpg","webpack:///./src/js/app/components/ui/Form/input/Radio.vue?9a22","webpack:///./public/img/people.svg","webpack:///./src/js/app/pages/me/me.vue?5b85","webpack:///./src/js/app/pages/LandingPage/LandingPageFirstSection/assets/en/after.png","webpack:///src/js/app/components/ui/Form/FormParagraph.vue","webpack:///./src/js/app/components/PublicLayout/NavBar/assets/RO.svg","webpack:///./src/js/app/pages/CharteEngagement/assets/A_mini_bidon.png","webpack:///./src/js/app/pages/covid/covid.vue?75bf","webpack:///./src/js/app/pages/LandingPage/LandingPageFirstSection/assets/ro/before.png","webpack:///./src/js/app/components/modal/modal.vue?18b2","webpack:///./src/js/app/components/PublicLayout/NavBar/assets/BG.svg","webpack:///./src/js/app/components/TownForm/TownFormLeftColumn.vue?c516","webpack:///./src/js/app/pages/TownDetails/TownDetails.vue?89bd","webpack:///./src/js/app/pages/plans.edit/plans.edit.vue?a8cd","webpack:///./src/js/app/components/TownForm/TownFormPanelInfo.vue?15f7","webpack:///./src/js/app/components/ui/Form/utils/InputWrapper.vue?7cea","webpack:///./src/js/app/components/form/input/address-with-location/address-with-location.vue?ddff","webpack:///./src/js/app/components/tableFilter/tableFilter.vue?153b","webpack:///./src/js/app/components/ui/Form/CheckableGroup.vue?cdb2","webpack:///./src/js/app/pages/LandingPage/LandingPageFirstSection/assets/fr/after.jpg","webpack:///./src/js/app/pages/TownsList/assets/police_siren.svg","webpack:///./src/js/app/pages/TownDetails/TownDetailsCloseModal.vue?bb9d","webpack:///./src/js/app/pages/LandingPage/LandingPageSecondSection/assets/map-ro.jpg","webpack:///./src/js/app/components/form/input/etp/etp.vue?dcbc","webpack:///./src/js/app/pages/LandingPage/assets/Formation.png","webpack:///./src/js/app/pages/LandingPage/LandingPageSecondSection/assets/map-fr.jpg","webpack:///./src/js/app/components/ui/SidePanel.vue?3036","webpack:///./public/img/pin.svg","webpack:///./src/js/app/pages/LandingPage/assets/resorption-bidonvilles-3.jpg","webpack:///./src/js/app/pages/LandingPage/assets/resorption-bidonvilles-1.jpg","webpack:///./src/js/app/pages/LandingPage/LandingPageFirstSection/assets/fr/before.jpg","webpack:///./src/js/app/components/address/address.vue?f8e9","webpack:///./src/js/app/components/quickview/quickview.vue?90d3","webpack:///./src/js/app/components/form/input/planHousing/planHousing.vue?2d56","webpack:///./src/js/app/pages/LandingPage/LandingPageFirstSection/assets/bg/after.png","webpack:///./src/js/app/pages/plans.details/plans.details.vue?2862","webpack:///./src/js/app/pages/users.upgrade/users.upgrade.vue?ab3d","webpack:///./src/js/app/pages/LandingPage/LandingPageThirdSection/assets/logo-commission-europenne.png","webpack:///./src/js/app/pages/directory/directory.vue?e864","webpack:///./src/js/app/components/ui/Form/input/Checkbox.vue?ceab","webpack:///./src/js/app/components/ui/NotificationsGroup.vue?70e3","webpack:///./src/js/app/components/organization/organization.vue?21d3","webpack:///./src/js/app/pages/users.setNewPassword/users.setNewPassword.vue?809a","webpack:///./src/js/app/pages/LandingPage/LandingPageFirstSection/assets/en/before.png","webpack:///./src/js/app/pages/signin/signin.vue?c145","webpack:///./src/js/app/components/form/form.vue?277d","webpack:///./src/js/app/pages/Changelog/Changelog.vue?50fe","webpack:///./src/js/app/components/form/input/address/address.vue?5a43","webpack:///./src/js/app/pages/TownDetails/TownDetailsHistorySidePanel.vue?3f5e"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","window","oldJsonpFunction","slice","component","render","_vm","this","_h","$createElement","_c","_self","staticClass","_v","_s","title","_e","_t","staticRenderFns","attrs","script","add","landingPage","contactPage","footer","fr","en","ro","bg","isLink","tag","class","sizeClasses","variantClasses","disabled","loading","href","type","on","onClick","iconPosition","icon","$slots","iconPositionClasses","spin","props","String","required","Boolean","variant","default","size","computed","left","right","sm","md","lg","primary","secondary","tertiary","primaryOutline","secondaryOutline","primaryOutlineAlt","primaryText","secondaryText","text","filter","undefined","methods","e","$emit","components","Icon","rules","validationName","label","id","scopedSlots","_u","fn","ref","errors","info","showMandatoryStar","width","prefixIcon","_b","classes","cypressName","$event","target","filteredProps","suffixIcon","propsToFilter","$props","keys","forEach","withoutMargin","hasErrors","positionClasses","position","getInputClasses","inputOptions","error","state","classic","mixins","placeholder","InputLabel","InputWrapper","InputError","InputIcon","Number","town","rows","cols","concat","containerClasses","isChecked","domProps","onChange","labelClasses","checkboxClasses","card","CheckableCard","checkValue","Array","currentValue","checked","item","includes","invisible","radioClasses","_g","$attrs","$listeners","withoutPadding","toggleMenu","isOpen","closeMenu","event","$el","contains","setTimeout","document","addEventListener","checkOutsideClick","removeEventListener","staticStyle","close","closeModal","Function","closeClickOutside","$refs","dialog","clickBackdrop","closePanel","search","searchInput","getResultValue","debounceTime","onItemSelect","rootProps","inputProps","inputListeners","resultListProps","resultListListeners","results","resultProps","directives","rawName","expression","isArray","_i","handleFocus","handleBlur","$$a","$$el","$$c","$$v","$$i","_q","composing","removeItem","focused","_l","index","inputClasses","defaultValue","val","defaultClasses","show","provider","syncValue","validate","newValue","blur","direction","dynamicComponent","dateLanguage","nativeOn","clear","InputInfo","then","datepicker","clearDate","color","onDelete","currentPage","onPrevious","onChangePage","nbPages","onNext","Math","max","min","hide","isVisible","DEFAULT_VIEW","Tooltip","zoom","map","marker","clickTimeout","lat","lng","getLatLng","center","coordinates","Satellite","tileLayer","Dessin","watch","syncMarker","refreshView","createMap","layers","mapLayers","emitInput","view","setView","getZoom","removeMarker","createMarker","setLatLng","draggable","clearTimeout","handleClick","addTo","remove","latlng","click","buttonLabel","closable","vueInstance","Button","TextInput","InlineTextInput","TextArea","Menu","MenuItem","Checkbox","Radio","Select","SelectOption","FormGroup","MandatoryStar","Dropdown","Modal","SidePanel","CheckableGroup","InputGroup","FormParagraph","Callout","Spinner","Autocomplete","Datepicker","Tag","Pagination","Map","InfoBanner","use","NotificationsGroup","rule","defaultOptions","debug","enableLinkTracking","requireConsent","trackInitialView","trackerFileName","loadScript","trackerScript","scriptPromise","Promise","resolve","reject","createElement","async","defer","src","head","getElementsByTagName","appendChild","onload","onerror","catch","msg","console","initMatomo","Vue","options","host","siteId","trackerUrl","trackerEndpoint","Matomo","Piwik","getTracker","$piwik","$matomo","trackPageView","router","afterEach","to","loc","location","protocol","maybeHash","url","fullPath","meta","analyticsIgnore","setCustomUrl","install","setupOptions","$t","stickyHeader","displayLanguagePicker","sticky","menuDisplayed","NavBarLogo","NavBarMobileButton","PublicContainer","$i18n","locale","proxy","pickLang","lang","LanguagePicker","NavBarSticky","NavBarMobileMenu","scrollTop","navbarHeight","offsetHeight","scrollY","handleScroll","NavBar","PublicFooter","preventDefault","onSubmit","email","$router","encodeURIComponent","LandingPageContactForm","active","setSection","author","interval","activeSection","clearInterval","setInterval","setNextSection","LandingPageUserFeedbackBullet","LandingPageUserFeedbackSection","style","videoRatio","_m","LandingPageContextImage","LandingPageFeatureBlock","LandingPageUserFeedback","LandingPageResponsiveEmbed","EventTutorial","line1","line2","line3","LandingPageDataBlock","LandingPageBilanBlock","cta","credit","CreditWrapper","PublicLayout","LandingPageHero","LandingPageFirstSection","LandingPageSecondSection","LandingPageThirdSection","LandingPageBanner","onComplete","model","callback","formData","formDefinition","showSidebar","subitem","assign","group","isCurrentRouteAMemberOf","opened","isSidebarOpened","hideSidebar","tab","closed","open","reload","focus","ERRORS","MISSING_TOKEN","EXPIRED_OR_INVALID_TOKEN","handleRequestResponse","success","failure","response","responseText","JSON","parse","user_message","developer_message","status","errorObject","code","logout","handleRequestFailure","request","method","headers","xhr","XMLHttpRequest","promise","setRequestHeader","token","getToken","ontimeout","send","stringify","abort","getApi","postApi","deleteApi","patchApi","putApi","indexOf","configuration","isLoaded","load","refreshToken","unload","set","chain","split","getPermission","permissionName","user","entity","feature","permissions","permission","allowed","hasPermission","closeChangelog","version","hasAcceptedCharte","charte_engagement_a_jour","login","password","localStorage","setItem","piwik","resetUserId","setCustomVariable","isLoggedIn","getItem","alreadyLoggedBefore","edit","list","sendActivationLink","denyAccess","checkActivationToken","checkPasswordToken","activate","userId","setPassword","upgrade","requestNewPassword","getDirectory","autocompleteOrganization","str","acceptCharte","charteVersion","charteAgreement","confidentialityAgreement","version_de_charte","charte_agreement","confidentiality_agreement","anonymous","items","loaded","filterItems","isItemAllowed","requiredPermissions","path","route","every","$route","matched","some","sidebar","menu","checkClickOutsideSidebar","descriptionTitle","description","section","refreshId","input","inputId","isInputVisible","fields","isInputDisabled","getInputAlert","onDataChange","$set","main","wording","numberOfFilteredErrors","details","replace","getInputById","submitPrefix","pending","submit","alertMessage","showPassword","$$selectedVal","selected","_value","multiple","groupName","option","optionsAreGrouped","_uid","currentLabel","onNavigation","onType","visibility","suggestionRequest","clearLabel","suggestions","float","showCategory","category","nonEmptyCategories","unselectedSuggestions","isExtra","idOfHighlightedItem","selectItem","allowMultiple","selectedItems","unselectItem","DEFAULT_TIMEOUT","autocompleter","createNew","previousLabel","timeout","indexOfHighligtedItem","sort","empty","reduce","acc","suggestion","selectedIds","_","unselectedSuggestionsFlat","reset","positionSpinner","resetSuggestions","scheduleSuggestionRequest","isSuggestionListEmpty","keyCode","cancelSuggestionRequest","requestSuggestions","resetSuggestionPromise","canLabelTriggerARequest","setSuggestions","handleSuggestionFailure","errorDetails","setLabel","refs","findIndex","spinner","marginLeft","maxMargin","clientWidth","offsetLeft","offsetWidth","measure","computeUid","geometry","removeDuplicates","features","usedUids","uid","onAutocompleteLoad","properties","citycode","addressType","city","context","autocomplete","strSearch","limit","queries","parsedLimit","parseInt","isNaN","join","autocompleteLocation","p1","p2","locationType","departement","Autocompleter","specificProps","tutorialWording","closeTutorial","DEFAULT_ZOOM","FRANCE_CENTER","tutorial","autoHideMarker","tutorialTitle","tutorialDescription","showTutorial","shouldShowTutorial","tutorialHasBeenClosed","syncMap","$nextTick","initialize","setTileLayers","control","shouldShowMarker","address","addressOptions","locationOptions","Address","Location","lon","loadingError","selectedTowns","statusOfVisibleTowns","showTowns","columns","pageContent","toggleTown","row","usename","fieldTypes","fieldType","populationTotal","filters","order","filterName","destroy","addComment","addCovidComment","deleteComment","townId","commentId","message","addActor","actor","removeActor","updateActorThemes","themes","removeActorTheme","themeId","inviteNewActor","findRelations","query","previousPage","indexOfFirstRowInCurrentPage","indexOfLastRowInCurrentPage","filteredContent","indexOfLastPage","nextPage","column","_obj","isFilterable","currentFilter","hideFilter","parsedFilters","toggleFilter","checkedFilters","parsedColumns","emptyLabel","display","visible","itemId","clean","container","DEFAULT_ITEMS_PER_PAGE","TableFilter","content","itemsPerPage","parseFilters","columnId","filterFn","ceil","args","Table","CollectivityInput","field_types","userLocation","organization","hasNationalPermission","geographic_level","defaultLocation","towns","closedAt","shantytown","currentLocation","focusedYear","minYear","showPreviousYear","maxYear","showNextYear","funding","inputMode","removeRow","onRowChange","addRow","allowEdition","financeType","amount","realAmount","relatedYear","showRealAmount","isCurrentYear","isFinite","financeTypes","finance_types","Date","getFullYear","PlanFundingRow","fundings","year","currentFundings","getCurrentFundings","find","siao","logement_social","dalo","accompagnes","non_accompagnes","heberges","people","families","deep","etp_types","types","total","parseFloat","parsedRows","outOnly","inOnly","in","out_positive","out_abandoned","out_excluded","households","women","minors","multipleValueInputs","AddressWithLocation","TownList","PlanFunding","Collectivity","Organization","Etp","Audience","PlanHousing","mandatory","defaultProps","language","mondayFirst","fullMonthName","format","calendarButton","calendarButtonIconContent","clearButton","v","slideNote","iconName","toggle","caret","maxHeight","body","refreshHeight","DEFAULT_DURATION","notify","duration","Input","SlideNote","steps","currentStepIndex","responses","breadcrumb","step","stepIndex","classNames","isSeparator","currentStep","sections","inputs","values","inputIds","isInputActive","filteredErrors","filteredData","goToNextStep","condition","inactiveMessage","Form","succes","handleSubmit","submitForm","commonFields","requestAccessFields","publicEstablishmentFields","organization_type","organization_public","territorialCollectivityFields","territorial_collectivity","associationFields","association","new_association_name","new_association_abbreviation","administrationFields","organization_administration","err","hash","contact","organizationType","organizationTerritory","organizationFunction","categories","categoryUid","getByCategory","getByType","typeId","getMembers","organizationId","getMembersOfCategory","categoryId","regionId","departementId","orgTypesOptions","orgTerritoryOptions","numberOfOrganizations","name_singular","abbreviation","newVal","organizations","level","location_type","collectivityName","collectivityFunction","associationName","newAssociationName","newAssociationAcronym","associationTerritory","associationFunction","associationNameOptions","associationTerritoryOptions","associations","departements","all","usedAssociations","administrationName","administrationFunction","administrationNameOptions","SocialShare","PublicEstablishmentForm","TerritorialCollectivityForm","AdministrationForm","AssociationForm","request_type","isFrenchLocale","isRequestAccess","is_actor","isRequestAccessAndActor","organization_category","legal","isPublicEstablishmentRequest","isTerritorialCollectivityRequest","isAssociationRequest","isAdministrationRequest","form","setErrors","first_name","last_name","access_request_message","quickview","originEvent","hideQuickview","poiview","poi","hidePOIView","filterGroup","faIcon","showQuickview","showPOIView","routeToTown","rendererProps","fetchData","toggler","showAddresses","modifiers","autofocus","onTyping","onFocus","onBlur","$forceUpdate","trim","indexOfHighlightedSuggestion","onSuggestionClick","TYPING_TIMEOUT","TYPING_MIN","autocompleteFunction","showMagnifier","typingMin","pendingRequest","typingTimeout","filled","previousQuery","onSelect","POI_ZOOM_LEVEL","pois","displaySearchbar","defaultView","markersGroup","markerClusterGroup","disableClusteringAtZoom","searchMarker","createSearchMarker","townSearchMarker","townMarkers","poiMarkers","poiMarkersVisible","hashedTownMarkers","syncTownMarkers","syncPOIMarkers","setAttribute","clearSearchMarker","centerMap","setSearchMarker","setupZoomControl","setupLayersControl","setupAddressTogglerControl","setupFieldTypesLegendControl","zoomControl","setPosition","layersControl","collapsed","addControl","adressToggler","AddressToggler","Control","extend","legends","Legend","addLayer","scrollWheelZoom","onZoomEnd","setupMapControls","setupMarkerGroups","setupView","zoomLevel","createPOIMarker","removeAllPOIMarkers","removeAllTownMarkers","createTownMarker","clearLayers","latitude","longitude","fieldTypeColors","accessToWater","divIcon","className","html","iconAnchor","getTownAddress","getTownCoordinates","getTownColor","waterImage","getTownWaterImage","handleTownMarkerClick","searchResult","markTownAsSearchResult","handlePOIMarkerClick","invalidateSize","_icon","querySelector","classList","townMarker","getMatchingTownMarker","innerHTML","action","showTown","updatedAt","formatDate","even","simplebar","origin","Event","ownerType","builtAt","App","populationCouples","populationMinors","populationMinors0To3","populationMinors3To6","populationMinors6To12","populationMinors12To16","populationMinors16To18","minorsInSchool","socialOrigins","socialOrigin","boolConverter","justiceProcedure","justiceRendered","policeStatus","converter","none","requested","granted","caracteristicSection","demographySection","justiceSection","ts","quickviewPanel","routerData","phone","temporarily_closed","temporary_information","solinum_id","trackOpenSoliguide","isActive","trackOpenPOI","trackEvent","getDefaultZoomFor","FilterGroup","Quickview","POIView","defaultMapView","owner_types","visibleTowns","visiblePOIs","allowedFilters","allowedFieldTypes","disallowedPopulation","disallowedStatuses","allowedOwnerTypes","resize","x","y","originalEvent","params","routeData","stretchToBottom","element","height","newHeight","absoluteOffsetTop","top","el","offsetTop","offsetParent","fieldTypeFilter","loadConfig","redirect","track","getEntryPoint","setUserId","is_superuser","hideExport","updateFilters","slot","onClickOpenTab","onClickCloseTab","isLoading","locationImg","filteredShantytowns","hasJusticePermission","justiceTotal","togglePrintModal","showExport","f","population","conditions","justice","actors","updateSort","printMode","filteredShantytownsByPage","elementsOnPage","isHover","addressSimple","statusName","statusSince","img","water","accessToSanitary","sanitary","electricityType","trashEvacuation","trash","vermin","firePreventionMeasures","firePrevention","justiceStatuses","date","lastUpdate","colorClass","validator","prop","inverted","negative","null","false","true","getSince","now","days","floor","abs","getTime","weeks","months","years","formatLivingConditions","positive","unknown","wordingWaterPotable","waterPotable","wordingWaterContinuousAccess","waterContinuousAccess","waterPublicPoint","waterDistance","wordingWaterRoadsToCross","waterRoadsToCross","wordingWaterEveryoneHasAccess","waterEveryoneHasAccess","wordingWaterStagnantWater","waterStagnantWater","waterHandWashAccessPopulationRatio","waterHandWashAccessNumber","wordingRatio","wordingWaterHandWashAccess","infoWaterHandWashAccess","waterHandWashAccess","wordingSanitaryOnSite","sanitaryOnSite","sanitaryNumberPopulationRatio","sanitaryNumber","wordingSanitaryRatio","wordingSanitaryNumber","infoSanitaryNumber","wordingSanitaryInsalubrious","sanitaryInsalubrious","trashCansRatio","trashCansOnSite","wordingTrashEvacuationRegular","trashEvacuationRegular","wordingTrashAccumulation","trashAccumulation","wordingFirePreventionDiagnostic","firePreventionDiagnostic","wordingFirePreventionDevices","firePreventionDevices","wordingFirePreventionSiteAccessible","firePreventionSiteAccessible","TownCardIcon","dateDiff","resultValue","getCategories","groupBy","categoryItems","titleWithActiveFilters","filterShantytowns","shantytowns","checkLocation","checkFieldType","checkPopulation","checkJustice","checkOrigin","checkConditions","checkActors","origins","filteredArray","ownerComplaint","closedTowns","download","existingOptions","formatDateSince","yearsText","enrichShantytown","electricityValue","justiceChallenged","justiceRenderedAt","policeRequestedAt","policeGrantedAt","statusDate","declaredAt","totalSolutions","closingSolutions","solution","householdsAffected","statusDetails","closed_by_justice","closed_by_admin","other","Store","detailedTown","mutations","page","actions","commit","role_id","originalTowns","updatedThemes","getters","townsLoading","townsError","townsFilters","townsSort","townsCurrentPage","PER_PAGE","TownsListSort","TownCard","PrivateContainer","PrivateLayout","TownsListSearchBar","TownsListHeader","TownsListHeaderTab","TownsListFilters","TownsListFilter","Export","onbeforeprint","onafterprint","data_justice","exportIsVisible","store","dispatch","print","unsupportedRegions","locationFilter","isRegion","isUnsupportedRegion","isInvalidDepartement","a","b","start","end","submitWording","back","closeInfo","togglerIcon","onAddressChange","InputAddress","InputName","InputCoordinates","built_at","ownerTypeIsUnknown","from","disableBefore","getLabelFor","ownerTypeId","InputBuiltAt","InputDeclaredAt","InputFieldType","InputDetailedAddress","InputOwnerType","InputOwner","owner_type","isUnknown","censusStatusIsUnknown","couples","populationMinorsInSchool","social_origins","statuses","conductedAt","InputPopulation","InputPopulationMinors","InputSocialOrigins","InputCensusStatus","InputCensusConductedAt","InputCensusConductedBy","census_status","access_to_water","water_hand_wash_access","water_public_point","access_to_sanitary","trash_evacuation","fire_prevention_measures","electricity_types","spaceBetween","withoutBorder","SubQuestionWrapper","ratio","InputFirePreventionSiteAccessible","InputTrashEvacuationRegular","InputTrashAccumulation","InputTrashCansOnSite","InputAccessToWater","InputWaterComments","InputElectricityType","InputElectricityComments","InputAccessToSanitary","InputSanitaryComments","InputTrashEvacuation","InputWaterPotable","InputWaterContinuousAccess","InputWaterPublicPoint","InputWaterDistance","InputWaterRoadsToCross","InputWaterEveryoneHasAccess","InputWaterStagnantWater","InputWaterHandWashAccess","InputWaterHandWashNumber","InputSanitaryNumber","InputSanitaryInsalubrious","InputSanitaryOnSite","InputVermin","InputVerminComments","InputFirePreventionMeasures","InputFirePreventionDiagnostic","InputFirePreventionComments","InputFirePreventionDevices","justice_procedure","justice_rendered","renderedAt","requestedAt","grantedAt","InputOwnerComplaint","InputJusticeProcedure","InputJusticeRendered","InputJusticeRenderedAt","InputJusticeRenderedBy","InputJusticeChallenged","InputPoliceStatus","InputPoliceRequestedAt","InputPoliceGrantedAt","InputBailiff","police_status","LeftColumnNavLink","entries","entry","isIntersecting","observer","IntersectionObserver","rootMargin","threshold","observe","TownFormLeftColumn","TownFormErrorLog","TownFormPanelInfo","TownFormPanelLocation","TownFormPanelCharacteristics","TownFormPanelPeople","TownFormPanelLivingConditions","TownFormPanelJudicial","showInfo","characteristics","declared_at","field_type","detailed_address","addressDetails","owner","intToStr","toNullableStr","censusStatus","census_conducted_at","censusConductedAt","census_conducted_by","censusConductedBy","living_conditions","boolToInt","water_comments","waterComments","electricity_type","electricity_comments","electricityComments","sanitary_comments","sanitaryComments","water_potable","water_continuous_access","water_distance","water_roads_to_cross","water_everyone_has_access","water_stagnant_water","water_hand_wash_access_number","sanitary_number","sanitary_insalubrious","sanitary_on_site","trash_cans_on_site","trash_accumulation","trash_evacuation_regular","vermin_comments","verminComments","fire_prevention_diagnostic","fire_prevention_devices","fire_prevention_site_accessible","fire_prevention_comments","firePreventionComments","judicial","owner_complaint","justice_rendered_at","justice_rendered_by","justiceRenderedBy","justice_challenged","police_requested_at","police_granted_at","bailiff","backPage","bool","int","month","getMonth","padStart","day","getDate","isValid","submitFn","strToInt","population_total","population_couples","population_minors","population_minors_0_3","population_minors_3_6","population_minors_6_12","population_minors_12_16","population_minors_16_18","minors_in_school","nullableStr","successNotificationWording","log","TownForm","openCancel","openCovid","deleteTown","openHistory","isNotAnActor","actorAlertVisible","openActorThemes","openInviteActorModal","comments","regular","historyOpen","covidOpen","closeOpen","actorThemesOpen","inviteActorOpen","covid","hasLocalizedPermission","routeToUpdate","scrollFix","getElementById","scrollTo","buildAt","copyCoordinates","TownDetailsPanel","TownDetailsPanelSection","select","execCommand","removeChild","toLocaleDateString","col","colIndex","css","populationHistory","socialDiagnostic","nullValue","changelog","diff","fieldKey","startsWith","createdAt","oldValue","cypressComments","collapse","cypressDetailsPrefix","TownDetailsPanelLivingConditionsDetails","TownDetailsPanelLivingConditionsSection","boolToStr","policeSiren","policeStatusLabel","self","toUpperCase","theme","actor_themes","TownDetailsActorTag","removeSelf","$store","TownDetailsSelfTag","TownDetailsActorCard","TownDetailsSelfCard","nbComments","newComment","isPrivate","cancelComment","commentError","commentErrors","private","comment","createdBy","firstName","lastName","CommentBlock","sortedComments","field","interventionType","covidErrors","equipe_maraude","equipe_sanitaire","equipe_accompagnement","distribution_alimentaire","personnes_orientees","personnes_avec_symptomes","besoin_action","submitClose","checkedSolutions","solutions","peopleAffected","updatedTown","closing_solutions","closed_at","closed_with_solutions","newSolutions","sol","statusValues","autre","successWording","user_id","formattedThemes","searching","resetForm","relations","TownDetailsActorAlert","TownDetailsPanelActors","TownDetailsCloseModal","TownDetailsActorThemesModal","TownDetailsHistorySidePanel","TownDetailsNewComment","TownDetailsComments","TownDetailsHeader","TownDetailsLeftColumn","TownDetailsPanelCharacteristics","TownDetailsPanelPeople","TownDetailsPanelLivingConditions","TownDetailsPanelJudicial","TownDetailsCovidCommentsSidePanel","TownDetailsInviteActorModal","confirm","alert","preloading","preloadError","preload","retryLoading","routeToUserValidation","formattedRow","tableProperties","wrapper","token_expires_in","tokenExpiresIn","users","thClass","tdClass","user_access","used_at","expires_at","created_at","enabled","isPopup","stepWording","organizationTitle","associationIsMissing","newUser","association_name","association_departement","opener","postMessage","role","hasPermissionsFor","national_permissions","local_permissions","optionIndex","checkedOptions","validation","deny","subsection","TYPES_TO_ICONS","arr","resolveIcon","UserPermissions","activationTokenExpiresIn","permissions_description","activation_token_expires_in","permission_options","maxlength","locationTitle","routeToPlan","started_at","expected_to_end_at","topic","location_details","government_contacts","operator_contacts","update","addState","planId","operation","userLocationType","plans","plan","getDepartementsForRegion","regionCode","getDepartementsForEpci","epciCode","me","topics","that","contactMissing","loadingAssociationContacts","startedAt","expectedToEndAt","in_and_out","goals","locationShantytowns","locationAddress","locationDetails","government","part","toLowerCase","departement_code","departement_name","contact_missing","finances","createUser","LEVEL_VALUES","epci","region","nation","featureLevel","userLevel","getDepartementsForCurrentUser","stepData","closingAlertStatus","closingStatus","setClosingAlertStatus","checkClosing","last_update","closingData","closingCommentDescription","closingErrors","canUpdate","canUpdateMarks","canClose","escapeHtml","final_comment","reachedMinFinanceIndex","currentFinanceIndex","reachedMaxFinanceIndex","finance","round","financeTotal","states","etpType","etp","audience","droit_commun","domiciliation","droits_caf","emploi_stable","sante","ame_valide","puma_valide","ame_en_cours","puma_en_cours","orientation","accompagnement","education","scolarisables","en_mediation","maternelles","elementaires","colleges","lycees","formation","pole_emploi","pole_emploi_femmes","mission_locale","mission_locale_femmes","contrats","contrats_femmes","formations","formations_femmes","autoentrepreneurs","autoentrepreneurs_femmes","are","are_femmes","logement","securisation","points_eau","wc","electricite","nombre_bennes","etpTypes","housingFields","remainingAudience","u","sum","originalObj","additionalObj","newStatus","yearsInError","builtData","housing","varyingSections","health","school","difficultes","work","safety","audienceSection","lastState","dateOfLastState","computeTotal","stats","numberOfShantytownOperations","statistics","userMessage","sectionId","loader","onLoaded","focusedOrganization","resetFocusedOrganization","localIsNational","setLevel","filteredOrganizations","usersTotal","isSlow","SLOW_DELAY","slowTimeout","locationName","hiddenUserIds","directoryViews","Skeleton","OrganizationInput","local","filtered","organizationName","contacts","raw","parsedOrganizations","pageBeginning","pageEnd","org","toBeDeleted","closePopin","onCommentDeleted","parsedActivities","onRowClick","time","confirmCommentDeletion","CommentDeletion","activities","checkedItems","rawAction","filteredActivities","activity","obj","rawDate","rawShantytown","shantytownActions","creation","closing","comment_id","userActivities","stopPropagation","numberOfDepartements","numberOfCollaboratorAndAssociationUsers","numberOfPublicEstablishments","numberOfTerritorialCollectivities","numberOfAssociations","numberOfNewUsers","numberOfNewUsersPerMonth","usersEvolutionDatasets","usersEvolutionLabels","verticalLines","horizontalLines","usersEvolutionMax","numberOfExports","numberOfComments","numberOfDirectoryViews","meanTimeBeforeCreationDeclaration","meanTimeBeforeClosingDeclaration","subtitle","StatsSection","StatsBlock","numberOfCollaboratorAndAssociationOrganizations","public_establishment","cumulativeData","smooth","fill","xLabels","yLabels","yLabelsTextFormatter","toFixed","average","highCovidComment","allowedDepartements","submitHighCovidComment","setFilter","highCovid","covidTags","departementsPromise","currentItem","image","currentItemIndex","previousItem","nextItem","markChangelogAsRead","app_version","charte","fichier","cancel","version_charte_engagement","entryPoint","guard","checkers","next","checker","saveEntryPoint","isPermitted","isUpgraded","hasNoPendingChangelog","guardians","loggedIn","saveEntrypoint","loadedAndUpgraded","loadedAndUpToDate","home","scrollBehavior","savedPosition","selector","routes","LandingPage","beforeEnter","PublicStats","Contact","Changelog","TownsList","CharteEngagement","MONTHS","long","short","freeze","unsafe","t1","t2","d1","d2","remainingMonths","timestamp","getHours","getMinutes","registerGlobalComponents","i18n","messages","h"],"mappings":"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","file":"js/index.3111f46b.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"index\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./plans.marks.vue?vue&type=style&index=0&id=8f52fc1c&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./plans.marks.vue?vue&type=style&index=0&id=8f52fc1c&lang=scss&scoped=true&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsNewComment.vue?vue&type=style&index=0&id=14c846be&scoped=true&lang=css&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsNewComment.vue?vue&type=style&index=0&id=14c846be&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"img/extra-communautaires.8492302e.png\";","module.exports = __webpack_public_path__ + \"img/water-null.48ff87a6.png\";","module.exports = __webpack_public_path__ + \"img/logo-fabrique-numerique.ad82b7e5.png\";","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.requestNewPassword.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.requestNewPassword.vue?vue&type=style&index=0&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsLeftColumn.vue?vue&type=style&index=0&id=54e4861e&scoped=true&lang=css&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsLeftColumn.vue?vue&type=style&index=0&id=54e4861e&scoped=true&lang=css&\"","import mod from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageUserFeedbackSection.vue?vue&type=style&index=0&id=a695c1c4&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageUserFeedbackSection.vue?vue&type=style&index=0&id=a695c1c4&lang=scss&scoped=true&\"","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormParagraph.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormParagraph.vue?vue&type=script&lang=js&\"","module.exports = __webpack_public_path__ + \"img/map-en.454a1e25.jpg\";","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./stats.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./stats.vue?vue&type=style&index=0&lang=scss&\"","module.exports = __webpack_public_path__ + \"img/resorption-bidonvilles-4.0d429297.jpg\";","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./navbar.vue?vue&type=style&index=0&id=b24b83de&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./navbar.vue?vue&type=style&index=0&id=b24b83de&lang=scss&scoped=true&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./userPermissions.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./userPermissions.vue?vue&type=style&index=0&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./plans.list.vue?vue&type=style&index=0&id=ca8ce470&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./plans.list.vue?vue&type=style&index=0&id=ca8ce470&lang=scss&scoped=true&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./POIView.vue?vue&type=style&index=0&id=263a7bb8&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./POIView.vue?vue&type=style&index=0&id=263a7bb8&scoped=true&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tooltip.vue?vue&type=style&index=0&id=e37a80c0&scoped=true&lang=css&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tooltip.vue?vue&type=style&index=0&id=e37a80c0&scoped=true&lang=css&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.validate.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.validate.vue?vue&type=style&index=0&lang=scss&\"","import mod from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./audience.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./audience.vue?vue&type=style&index=0&lang=scss&\"","import { render, staticRenderFns } from \"./FormParagraph.vue?vue&type=template&id=6f1a8b9f&\"\nimport script from \"./FormParagraph.vue?vue&type=script&lang=js&\"\nexport * from \"./FormParagraph.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","module.exports = __webpack_public_path__ + \"img/UK.951da937.svg\";","module.exports = __webpack_public_path__ + \"img/eu.9857ed8a.png\";","module.exports = __webpack_public_path__ + \"img/fr.a7b266bf.png\";","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./slide-note.vue?vue&type=style&index=0&id=569f8548&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./slide-note.vue?vue&type=style&index=0&id=569f8548&lang=scss&scoped=true&\"","import mod from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsListFilter.vue?vue&type=style&index=0&id=defa5cd8&scoped=true&lang=css&\"; export default mod; export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsListFilter.vue?vue&type=style&index=0&id=defa5cd8&scoped=true&lang=css&\"","import mod from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./planFunding.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./planFunding.vue?vue&type=style&index=0&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./legalMentions.vue?vue&type=style&index=0&id=ed8e96dc&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./legalMentions.vue?vue&type=style&index=0&id=ed8e96dc&lang=scss&scoped=true&\"","module.exports = __webpack_public_path__ + \"img/FR.3c609eda.svg\";","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.create.vue?vue&type=style&index=0&id=17835908&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.create.vue?vue&type=style&index=0&id=17835908&lang=scss&scoped=true&\"","import mod from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsListSort.vue?vue&type=style&index=0&id=80dfc67a&scoped=true&lang=css&\"; export default mod; export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsListSort.vue?vue&type=style&index=0&id=80dfc67a&scoped=true&lang=css&\"","import mod from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./collectivity.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./collectivity.vue?vue&type=style&index=0&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageResponsiveEmbed.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageResponsiveEmbed.vue?vue&type=style&index=0&lang=css&\"","module.exports = __webpack_public_path__ + \"img/Marianne.d37c6b1e.svg\";","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./userActivity.list.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./userActivity.list.vue?vue&type=style&index=0&lang=scss&\"","import mod from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./townList.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./townList.vue?vue&type=style&index=0&lang=scss&\"","module.exports = __webpack_public_path__ + \"img/logo_beta-gouv-fr.ced9be94.jpg\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('h1',{staticClass:\"font-bold text-xl\"},[_vm._v(\" \"+_vm._s(_vm.title)+\" \"),(_vm.showMandatoryStar)?_c('MandatoryStar'):_vm._e()],1),_c('p',{staticClass:\"mt-1 mb-4\"},[_vm._t(\"default\")],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavBarLogo.vue?vue&type=style&index=0&id=07ee7c4c&scoped=true&lang=css&\"; export default mod; export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavBarLogo.vue?vue&type=style&index=0&id=07ee7c4c&scoped=true&lang=css&\"","import mod from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./autocompleter.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./autocompleter.vue?vue&type=style&index=0&lang=scss&\"","import mod from \"-!../../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./planFundingRow.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./planFundingRow.vue?vue&type=style&index=0&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownForm.vue?vue&type=style&index=1&id=76d7e233&scoped=true&lang=css&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownForm.vue?vue&type=style&index=1&id=76d7e233&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"img/map-bg.d95207bf.png\";","module.exports = __webpack_public_path__ + \"img/status.d076deee.svg\";","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.list.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.list.vue?vue&type=style&index=0&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownForm.vue?vue&type=style&index=0&id=76d7e233&scoped=true&lang=css&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownForm.vue?vue&type=style&index=0&id=76d7e233&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"img/after.11d92026.png\";","module.exports = __webpack_public_path__ + \"img/water-no.1646343a.png\";","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./comment-deletion.vue?vue&type=style&index=0&id=38509d0a&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./comment-deletion.vue?vue&type=style&index=0&id=38509d0a&lang=scss&scoped=true&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsActorThemesModal.vue?vue&type=style&index=0&id=2c8fb903&scoped=true&lang=css&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsActorThemesModal.vue?vue&type=style&index=0&id=2c8fb903&scoped=true&lang=css&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./map.vue?vue&type=style&index=0&id=055bfb64&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./map.vue?vue&type=style&index=0&id=055bfb64&lang=scss&scoped=true&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./dashboard.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./dashboard.vue?vue&type=style&index=0&lang=scss&\"","module.exports = __webpack_public_path__ + \"img/water-yes.87235d21.png\";","module.exports = __webpack_public_path__ + \"img/logo-gouvernement.c2eee174.jpg\";","module.exports = __webpack_public_path__ + \"img/type.049e9884.svg\";","import mod from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsPanel.vue?vue&type=style&index=0&id=1d97ba82&scoped=true&lang=css&\"; export default mod; export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsPanel.vue?vue&type=style&index=0&id=1d97ba82&scoped=true&lang=css&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsListSearchBar.vue?vue&type=style&index=0&id=6c3fad6c&scoped=true&lang=css&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsListSearchBar.vue?vue&type=style&index=0&id=6c3fad6c&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"img/utensils.fe20af2e.png\";","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.activate.vue?vue&type=style&index=0&id=043c7c3f&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.activate.vue?vue&type=style&index=0&id=043c7c3f&lang=scss&scoped=true&\"","import mod from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./filterGroup.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./filterGroup.vue?vue&type=style&index=0&lang=scss&\"","module.exports = __webpack_public_path__ + \"img/logo-entrepreneur-interet-general.559c3e82.png\";","module.exports = __webpack_public_path__ + \"img/before.0c8a018e.png\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"app\"}},[_c('router-view'),_c('NotificationsGroup')],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=4e6410ee&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { library } from \"@fortawesome/fontawesome-svg-core\";\nimport {\n faTwitterSquare,\n faFacebookSquare\n} from \"@fortawesome/free-brands-svg-icons\";\nimport {\n faFlag,\n faLock,\n faPaperPlane,\n faUnlink,\n faUser,\n faUserCircle,\n faUserCheck,\n faUserShield,\n faArrowRight,\n faEye,\n faEyeSlash,\n faPencilAlt,\n faTimes,\n faMapMarkedAlt,\n faChartLine,\n faComments,\n faEnvelope,\n faPlayCircle,\n faFileExcel,\n faSortDown,\n faCaretSquareLeft,\n faCaretSquareRight,\n faCaretUp,\n faCaretDown,\n faComment,\n faTrashAlt,\n faHistory,\n faMapPin,\n faFilePdf,\n faUsers,\n faUserPlus,\n faFileDownload,\n faAddressBook,\n faSync,\n faInfoCircle,\n faList,\n faTable,\n faBookReader,\n faEuroSign,\n faPlusCircle,\n faIdCard,\n faUserMd,\n faBriefcase,\n faHome,\n faSeedling,\n faQuestion,\n faTint,\n faTintSlash,\n faHandHoldingMedical,\n faMapMarkerAlt,\n faBook,\n faFileSignature,\n faChevronUp,\n faChevronDown,\n faChevronLeft,\n faChevronRight,\n faSpinner,\n faArrowLeft,\n faSearch,\n faPlus,\n faCheck,\n faPen,\n faExclamationTriangle,\n faBan,\n faMale,\n faBalanceScale,\n faScroll,\n faCalendar,\n faPrint,\n faFile,\n faCopy\n} from \"@fortawesome/free-solid-svg-icons\";\n\nlibrary.add(faFlag);\nlibrary.add(faBan);\nlibrary.add(faChevronDown);\nlibrary.add(faPaperPlane);\nlibrary.add(faUnlink);\nlibrary.add(faUser);\nlibrary.add(faUserCheck);\nlibrary.add(faUserShield);\nlibrary.add(faArrowRight);\nlibrary.add(faEye);\nlibrary.add(faEyeSlash);\nlibrary.add(faPencilAlt);\nlibrary.add(faTimes);\nlibrary.add(faMapMarkedAlt);\nlibrary.add(faChartLine);\nlibrary.add(faComments);\nlibrary.add(faEnvelope);\nlibrary.add(faPlayCircle);\nlibrary.add(faFileExcel);\nlibrary.add(faSortDown);\nlibrary.add(faCaretSquareLeft);\nlibrary.add(faCaretSquareRight);\nlibrary.add(faCaretUp);\nlibrary.add(faCaretDown);\nlibrary.add(faComment);\nlibrary.add(faTrashAlt);\nlibrary.add(faHistory);\nlibrary.add(faMapPin);\nlibrary.add(faFilePdf);\nlibrary.add(faUsers);\nlibrary.add(faUserCircle);\nlibrary.add(faUserPlus);\nlibrary.add(faFileDownload);\nlibrary.add(faAddressBook);\nlibrary.add(faSync);\nlibrary.add(faInfoCircle);\nlibrary.add(faList);\nlibrary.add(faTable);\nlibrary.add(faBookReader);\nlibrary.add(faEuroSign);\nlibrary.add(faPlusCircle);\nlibrary.add(faIdCard);\nlibrary.add(faUserMd);\nlibrary.add(faBriefcase);\nlibrary.add(faHome);\nlibrary.add(faSeedling);\nlibrary.add(faQuestion);\nlibrary.add(faTint);\nlibrary.add(faTintSlash);\nlibrary.add(faHandHoldingMedical);\nlibrary.add(faMapMarkerAlt);\nlibrary.add(faBook);\nlibrary.add(faFileSignature);\nlibrary.add(faChevronUp);\nlibrary.add(faChevronLeft);\nlibrary.add(faChevronRight);\nlibrary.add(faArrowLeft);\nlibrary.add(faArrowRight);\nlibrary.add(faSpinner);\nlibrary.add(faTwitterSquare);\nlibrary.add(faFacebookSquare);\nlibrary.add(faSearch);\nlibrary.add(faPlus);\nlibrary.add(faCheck);\nlibrary.add(faPen);\nlibrary.add(faExclamationTriangle);\nlibrary.add(faMale);\nlibrary.add(faBalanceScale);\nlibrary.add(faScroll);\nlibrary.add(faCalendar);\nlibrary.add(faPrint);\nlibrary.add(faFile);\nlibrary.add(faCopy);\nlibrary.add(faLock);\n","import landingPage from \"./landingPage.json\";\nimport contactPage from \"./contactPage\";\nimport footer from \"./footer\";\n\nexport default {\n landingPage,\n contactPage,\n footer\n};\n","import landingPage from \"./landingPage.json\";\nimport contactPage from \"./contactPage\";\nimport footer from \"./footer\";\n\nexport default {\n landingPage,\n contactPage,\n footer\n};\n","import landingPage from \"./landingPage\";\nimport contactPage from \"./contactPage\";\nimport footer from \"./footer\";\n\nexport default {\n landingPage,\n contactPage,\n footer\n};\n","import landingPage from \"./landingPage\";\nimport contactPage from \"./contactPage\";\nimport footer from \"./footer\";\n\nexport default {\n landingPage,\n contactPage,\n footer\n};\n","import fr from \"./fr\";\nimport en from \"./en\";\nimport ro from \"./ro\";\nimport bg from \"./bg\";\n\nexport default {\n fr,\n en,\n ro,\n bg\n};\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c(_vm.isLink ? 'router-link' : 'button',{tag:\"component\",class:[\n 'btn inline-block relative',\n _vm.sizeClasses,\n _vm.variantClasses,\n this.disabled && 'opacity-50 cursor-not-allowed'\n ],attrs:{\"disabled\":_vm.disabled || _vm.loading,\"to\":_vm.isLink ? (_vm.disabled ? null : _vm.href) : null,\"type\":_vm.isLink ? null : _vm.type},on:{\"click\":_vm.onClick}},[_c('div',{class:[\n 'flex',\n 'items-center',\n _vm.iconPosition === 'right' ? 'flex-row-reverse' : 'flex-row',\n _vm.loading && 'invisible'\n ]},[(_vm.icon || _vm.$slots.icon)?_c('div',[_vm._t(\"icon\",[_c('Icon',{attrs:{\"icon\":_vm.icon}})])],2):_vm._e(),(_vm.$slots.default)?_c('div',{class:_vm.iconPositionClasses},[_vm._t(\"default\")],2):_vm._e()]),(_vm.loading)?_c('div',{staticClass:\"absolute inset-0 flex justify-center items-center\"},[_c('Icon',{attrs:{\"icon\":\"spinner\",\"spin\":\"\"}})],1):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('font-awesome-icon',{attrs:{\"icon\":_vm.icon,\"spin\":_vm.spin}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Icon.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Icon.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Icon.vue?vue&type=template&id=24637f1f&\"\nimport script from \"./Icon.vue?vue&type=script&lang=js&\"\nexport * from \"./Icon.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Button.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Button.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Button.vue?vue&type=template&id=144a644a&\"\nimport script from \"./Button.vue?vue&type=script&lang=js&\"\nexport * from \"./Button.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ValidationProvider',{attrs:{\"rules\":_vm.rules,\"name\":_vm.validationName || _vm.label,\"vid\":_vm.id},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('InputWrapper',{attrs:{\"hasErrors\":!!errors.length}},[_c('InputLabel',{attrs:{\"label\":_vm.label,\"info\":_vm.info,\"showMandatoryStar\":_vm.showMandatoryStar}}),_c('div',{staticClass:\"relative\",class:_vm.width},[(_vm.prefixIcon)?_c('InputIcon',{attrs:{\"position\":\"before\",\"icon\":_vm.prefixIcon}}):_vm._e(),_c('input',_vm._b({class:_vm.classes,attrs:{\"id\":_vm.id,\"data-cy-field\":_vm.cypressName},on:{\"input\":function($event){return _vm.$emit('input', $event.target.value)}}},'input',_vm.filteredProps,false)),(_vm.suffixIcon)?_c('InputIcon',{attrs:{\"position\":\"after\",\"icon\":_vm.suffixIcon}}):_vm._e()],1),_c('InputError',[_vm._v(_vm._s(errors[0]))])],1)]}}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default {\n computed: {\n filteredProps() {\n const propsToFilter = { ...this.$props };\n Object.keys(propsToFilter).forEach(key => {\n if (propsToFilter[key] === undefined) {\n delete propsToFilter[key];\n }\n });\n return propsToFilter;\n }\n }\n};\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.label)?_c('div',{staticClass:\"font-bold\"},[_vm._v(\" \"+_vm._s(_vm.label)+\" \"),(_vm.showMandatoryStar)?_c('MandatoryStar'):_vm._e()],1):_vm._e(),(_vm.info)?_c('div',{staticClass:\"mb-3 text-G600\"},[_vm._v(_vm._s(_vm.info))]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputLabel.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputLabel.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputLabel.vue?vue&type=template&id=5e39e83c&\"\nimport script from \"./InputLabel.vue?vue&type=script&lang=js&\"\nexport * from \"./InputLabel.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:['relative', _vm.withoutMargin ? '' : 'mb-6']},[(_vm.hasErrors)?_c('div',{staticClass:\"absolute inputWrapper-error w-1 h-full bg-red600\"}):_vm._e(),_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWrapper.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWrapper.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputWrapper.vue?vue&type=template&id=909b2322&\"\nimport script from \"./InputWrapper.vue?vue&type=script&lang=js&\"\nexport * from \"./InputWrapper.vue?vue&type=script&lang=js&\"\nimport style0 from \"./InputWrapper.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"text-error mt-2\"},[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./InputError.vue?vue&type=template&id=f3607a7c&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:['absolute inset-y-0 flex items-center', _vm.positionClasses]},[_vm._t(\"default\",[(_vm.icon)?_c('Icon',{attrs:{\"icon\":_vm.icon}}):_vm._e()])],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputIcon.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputIcon.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputIcon.vue?vue&type=template&id=cf5aed58&\"\nimport script from \"./InputIcon.vue?vue&type=script&lang=js&\"\nexport * from \"./InputIcon.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","// Common classes between TextInput / TextArea / Select\nexport default function getInputClasses(variant, inputOptions) {\n const { error, prefixIcon, suffixIcon, size } = inputOptions;\n\n return {\n state: [\n \"bg-G200 border-b-2 border-black rounded rounded-b-none w-full py-2 \",\n error && \"border-error\",\n prefixIcon && \"pl-10\",\n suffixIcon && \"pr-10\"\n ],\n classic: [\n \"border border-G200 rounded-md w-full py-2 px-4 outline-none focus:border-primary\",\n error && \"border-error\",\n prefixIcon && \"pl-10\",\n suffixIcon && \"pr-10\"\n ],\n default: [\n \"border-2 border-blue200 py-1 px-4 w-full outline-none focus:border-primary hover:border-inputHover\",\n size === \"sm\" ? \"text-xs\" : \"\",\n prefixIcon && \"pl-10\",\n suffixIcon && \"pr-10\"\n ]\n }[variant];\n}\n","\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextInput.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TextInput.vue?vue&type=template&id=14b1c0e9&\"\nimport script from \"./TextInput.vue?vue&type=script&lang=js&\"\nexport * from \"./TextInput.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"flex items-center\"},[(_vm.label)?_c('div',{staticClass:\"mr-2\"},[(_vm.label)?_c('div',{staticClass:\"mb-2 text-sm italic\"},[_vm._v(_vm._s(_vm.label))]):_vm._e()]):_vm._e(),_c('ValidationProvider',{attrs:{\"rules\":_vm.rules,\"name\":_vm.validationName || _vm.label,\"vid\":_vm.id},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('div',{staticClass:\"relative\"},[(_vm.prefixIcon)?_c('InputIcon',{attrs:{\"position\":\"before\",\"icon\":_vm.prefixIcon}}):_vm._e(),_c('input',_vm._b({class:_vm.classes,attrs:{\"id\":_vm.id,\"data-cy-field\":_vm.cypressName},on:{\"input\":function($event){return _vm.$emit('input', $event.target.value)}}},'input',_vm.filteredProps,false)),(_vm.suffixIcon)?_c('InputIcon',{attrs:{\"position\":\"after\",\"icon\":_vm.suffixIcon}}):_vm._e()],1),(errors[0])?_c('InputError',[_vm._v(_vm._s(errors[0]))]):_vm._e()]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InlineTextInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InlineTextInput.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InlineTextInput.vue?vue&type=template&id=430c0312&\"\nimport script from \"./InlineTextInput.vue?vue&type=script&lang=js&\"\nexport * from \"./InlineTextInput.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ValidationProvider',{attrs:{\"rules\":_vm.rules,\"name\":_vm.validationName || _vm.label,\"vid\":_vm.id},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('InputWrapper',{attrs:{\"hasErrors\":!!errors.length}},[_c('InputLabel',{attrs:{\"label\":_vm.label,\"info\":_vm.info}}),_c('div',{staticClass:\"relative\"},[(_vm.prefixIcon)?_c('InputIcon',{attrs:{\"position\":\"before\",\"icon\":_vm.prefixIcon}}):_vm._e(),_c('textarea',_vm._b({class:_vm.classes,attrs:{\"id\":_vm.id,\"data-cy-field\":_vm.cypressName},on:{\"input\":function($event){return _vm.$emit('input', $event.target.value)}}},'textarea',_vm.filteredProps,false)),_vm._v(\" \"),(_vm.suffixIcon)?_c('InputIcon',{attrs:{\"position\":\"after\",\"icon\":_vm.suffixIcon}}):_vm._e()],1),_c('InputError',[_vm._v(_vm._s(errors[0]))])],1)]}}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextArea.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextArea.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TextArea.vue?vue&type=template&id=3656cadf&\"\nimport script from \"./TextArea.vue?vue&type=script&lang=js&\"\nexport * from \"./TextArea.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:[(\"checkbox-\" + _vm.variant) ].concat( _vm.containerClasses)},[(_vm.variant === 'card' || _vm.variant === 'townCard')?_c('CheckableCard',{attrs:{\"variant\":_vm.variant,\"isChecked\":_vm.isChecked,\"data-cy-field\":_vm.cypressName,\"data-cy-label\":_vm.label,\"data-cy-checked\":_vm.isChecked}},[_c('input',_vm._b({staticClass:\"appearance-none absolute invisible\",attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":_vm.isChecked},on:{\"change\":_vm.onChange}},'input',_vm.filteredProps,false)),_c('div',[_vm._v(_vm._s(_vm.label))])]):_c('label',{class:[\n 'inline-flex cursor-pointer',\n _vm.info ? 'items-start' : 'items-center' ].concat( _vm.labelClasses\n )},[_c('input',_vm._b({class:_vm.checkboxClasses,attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":_vm.isChecked},on:{\"change\":_vm.onChange}},'input',_vm.filteredProps,false)),_vm._t(\"default\",[_c('div',{staticClass:\"ml-2\"},[_c('div',{staticClass:\"text-sm\"},[_vm._v(_vm._s(_vm.label))]),(_vm.info)?_c('div',{staticClass:\"text-xs\"},[_vm._v(_vm._s(_vm.info))]):_vm._e()])],{\"isChecked\":_vm.isChecked})],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('label',{class:_vm.checkboxClasses},[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CheckableCard.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CheckableCard.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CheckableCard.vue?vue&type=template&id=96b15d68&\"\nimport script from \"./CheckableCard.vue?vue&type=script&lang=js&\"\nexport * from \"./CheckableCard.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Checkbox.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Checkbox.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Checkbox.vue?vue&type=template&id=10081d2c&\"\nimport script from \"./Checkbox.vue?vue&type=script&lang=js&\"\nexport * from \"./Checkbox.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Checkbox.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:[(\"radio-\" + _vm.variant) ].concat( _vm.containerClasses)},[(_vm.variant === 'card' || _vm.variant === 'townCard')?_c('CheckableCard',{attrs:{\"variant\":_vm.variant,\"isChecked\":_vm.isChecked,\"data-cy-field\":_vm.cypressName,\"data-cy-label\":_vm.label,\"data-cy-checked\":(\"\" + _vm.isChecked)}},[_c('input',_vm._b({staticClass:\"appearance-none absolute invisible\",attrs:{\"type\":_vm.type},domProps:{\"checked\":_vm.isChecked},on:{\"change\":_vm.onChange}},'input',_vm.filteredProps,false)),_c('div',[_vm._v(_vm._s(_vm.label))])]):_c('label',{class:[\n 'inline-flex cursor-pointer',\n _vm.info ? 'items-start' : 'items-center' ].concat( _vm.labelClasses\n )},[_c('input',_vm._b({class:_vm.radioClasses,attrs:{\"type\":_vm.type,\"data-cy-field\":_vm.cypressName,\"data-cy-label\":_vm.label,\"data-cy-checked\":(\"\" + _vm.isChecked)},domProps:{\"checked\":_vm.isChecked},on:{\"change\":_vm.onChange}},'input',_vm.filteredProps,false)),_vm._t(\"default\",[_c('div',{staticClass:\"ml-2\"},[_c('div',[_vm._v(_vm._s(_vm.label))]),(_vm.info)?_c('div',{staticClass:\"text-xs\"},[_vm._v(_vm._s(_vm.info))]):_vm._e()])],{\"isChecked\":_vm.isChecked})],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Radio.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Radio.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Radio.vue?vue&type=template&id=64ce1bc6&\"\nimport script from \"./Radio.vue?vue&type=script&lang=js&\"\nexport * from \"./Radio.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Radio.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ValidationProvider',{attrs:{\"rules\":_vm.rules,\"name\":_vm.validationName || _vm.label,\"vid\":_vm.id},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('InputWrapper',{attrs:{\"hasErrors\":!!errors.length}},[_c('InputLabel',{attrs:{\"label\":_vm.label,\"info\":_vm.info}}),_c('div',{staticClass:\"relative\"},[_c('InputIcon',{attrs:{\"position\":\"before\",\"icon\":_vm.icon}}),_c('select',_vm._b({class:_vm.classes,attrs:{\"id\":_vm.id},on:{\"change\":function($event){return _vm.$emit('input', $event.target.value)}}},'select',_vm.filteredProps,false),[_vm._t(\"default\")],2),_c('InputIcon',{attrs:{\"position\":\"after\",\"icon\":\"chevron-down\"}})],1),_c('InputError',[_vm._v(_vm._s(errors[0]))])],1)]}}],null,true)})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Select.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Select.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Select.vue?vue&type=template&id=00f69210&\"\nimport script from \"./Select.vue?vue&type=script&lang=js&\"\nexport * from \"./Select.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('option',_vm._b({},'option',_vm.$props,false),[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SelectOption.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SelectOption.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SelectOption.vue?vue&type=template&id=1e23c83a&\"\nimport script from \"./SelectOption.vue?vue&type=script&lang=js&\"\nexport * from \"./SelectOption.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"shadow py-5 px-6\"},[_c('div',{staticClass:\"text-primary text-display-lg pb-4 border-b-2\"},[_vm._v(\" \"+_vm._s(_vm.title)+\" \")]),_c('div',{staticClass:\"pt-4\"},[_vm._t(\"default\")],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormGroup.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormGroup.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FormGroup.vue?vue&type=template&id=53b57c57&\"\nimport script from \"./FormGroup.vue?vue&type=script&lang=js&\"\nexport * from \"./FormGroup.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"mb-12\"},[_c('div',{staticClass:\"font-bold mb-4\"},[_vm._v(_vm._s(_vm.title))]),_c('div',{staticClass:\"text-sm mb-4\"},[_vm._v(_vm._s(_vm.info))]),_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputGroup.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputGroup.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputGroup.vue?vue&type=template&id=44a4cdf6&\"\nimport script from \"./InputGroup.vue?vue&type=script&lang=js&\"\nexport * from \"./InputGroup.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',{staticClass:\"text-red text-md\"},[_vm._v(\"*\")])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./MandatoryStar.vue?vue&type=template&id=189862ac&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',_vm._g(_vm._b({class:['rounded-md bg-white shadow-xs min-w-48' ].concat( _vm.classes),attrs:{\"role\":\"menu\",\"aria-orientation\":\"vertical\",\"aria-labelledby\":\"user-menu\"}},'div',_vm.$attrs,false),_vm.$listeners),[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Menu.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Menu.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Menu.vue?vue&type=template&id=ec8da7c2&\"\nimport script from \"./Menu.vue?vue&type=script&lang=js&\"\nexport * from \"./Menu.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',_vm._g(_vm._b({staticClass:\"block px-4 py-2 text-md hover:bg-gray-100 cursor-pointer\",attrs:{\"role\":\"menuitem\"}},'div',_vm.$attrs,false),_vm.$listeners),[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./MenuItem.vue?vue&type=template&id=daf1926a&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"relative\"},[_c('div',{on:{\"click\":_vm.toggleMenu}},[_vm._t(\"button\",null,{\"isOpen\":_vm.isOpen})],2),_c('div',{class:[\n 'origin-top-left-10 absolute z-10 left-0 mt-2 rounded-md shadow-lg transform transition ease-in-out duration-200',\n _vm.isOpen ? 'opacity-100' : 'opacity-0 hidden'\n ]},[_vm._t(\"menu\",null,{\"closeMenu\":_vm.closeMenu})],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Dropdown.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Dropdown.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Dropdown.vue?vue&type=template&id=01abdc93&\"\nimport script from \"./Dropdown.vue?vue&type=script&lang=js&\"\nexport * from \"./Dropdown.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('notifications',{staticClass:\"fixed top-0 z-20 w-64\",staticStyle:{\"width\":\"410px\"},attrs:{\"group\":\"notifications\",\"position\":\"top center\"},scopedSlots:_vm._u([{key:\"body\",fn:function(props){return [_c('div',{class:[\n 'text-white p-2 m-2',\n 'vue-notification',\n props.item.type\n ],on:{\"click\":props.close}},[_c('div',{staticClass:\"notification-icon\"}),_c('div',{staticClass:\"text-white\"},[_c('div',{staticClass:\"text-lg\"},[_vm._v(_vm._s(props.item.title))]),_c('div',{staticClass:\"text-sm\",domProps:{\"innerHTML\":_vm._s(props.item.text)}})])])]}}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./NotificationsGroup.vue?vue&type=template&id=7743ec3e&scoped=true&\"\nvar script = {}\nimport style0 from \"./NotificationsGroup.vue?vue&type=style&index=0&id=7743ec3e&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7743ec3e\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:[\n 'fixed z-40 inset-0 transform transition ease-in-out duration-300',\n _vm.isOpen ? 'opacity-100' : 'opacity-0 pointer-events-none'\n ]},[_c('div',{staticClass:\"absolute w-full h-full bg-gray-500 opacity-75\"}),_c('div',{class:[\n 'flex items-center justify-center min-h-screen ',\n _vm.containerClasses\n ]},[_c('div',{ref:\"dialog\",staticClass:\"opacity-100 z-50 shadow-xl overflow-hidden \",attrs:{\"role\":\"dialog\",\"aria-modal\":\"true\",\"aria-labelledby\":\"modal-headline\"}},[_c('div',{staticClass:\"bg-white\"},[_vm._t(\"header\",[_c('div',{staticClass:\"pt-10 px-10 pb-4 \"},[_c('div',{staticClass:\"flex justify-between border-b border-G400\"},[_c('div',{staticClass:\"text-display-md text-primary\"},[_vm._t(\"title\")],2),_c('Button',{attrs:{\"variant\":\"primaryText\",\"icon\":\"times\",\"size\":\"lg\"},on:{\"click\":_vm.closeModal}})],1)])]),_c('div',{staticClass:\"px-10 pt-6 pb-10\"},[_vm._t(\"body\")],2),(_vm.$slots.footer)?_c('div',{staticClass:\"px-4 pb-8 sm:px-6 flex justify-end\"},[_vm._t(\"footer\")],2):_vm._e()],2)])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Modal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Modal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Modal.vue?vue&type=template&id=425e341e&\"\nimport script from \"./Modal.vue?vue&type=script&lang=js&\"\nexport * from \"./Modal.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"bg-G200 py-8 px-8 border-l-4 border-primary\"},[_c('div',{staticClass:\"text-display-md mb-4\"},[_vm._v(_vm._s(_vm.title))]),_c('div',[_vm._t(\"default\")],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Callout.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Callout.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Callout.vue?vue&type=template&id=1dac0359&\"\nimport script from \"./Callout.vue?vue&type=script&lang=js&\"\nexport * from \"./Callout.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.isOpen)?_c('div',{ref:\"backdrop\",staticClass:\"fixed inset-0 bg-gray-500 opacity-75 z-backdrop\",on:{\"click\":_vm.clickBackdrop}}):_vm._e(),_c('div',{class:[\n 'fixed z-sidePanel top-0 bottom-0 right-0 overflow-y-auto full-height transform transition ease-in-out duration-500',\n _vm.isOpen ? 'translate-x-0' : 'translate-x-full'\n ]},[_c('div',{class:['min-h-screen w-128 bg-white']},[_vm._t(\"default\")],2)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidePanel.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidePanel.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SidePanel.vue?vue&type=template&id=5108da48&\"\nimport script from \"./SidePanel.vue?vue&type=script&lang=js&\"\nexport * from \"./SidePanel.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SidePanel.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ValidationProvider',{ref:\"provider\",attrs:{\"rules\":_vm.rules,\"name\":_vm.validationName || _vm.label,\"vid\":_vm.id},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('InputWrapper',{attrs:{\"hasErrors\":!!errors.length}},[_c('InputLabel',{attrs:{\"label\":_vm.label,\"info\":_vm.info}}),_c('AutocompleteVue',{attrs:{\"search\":_vm.search,\"default-value\":_vm.searchInput,\"placeholder\":_vm.placeholder,\"aria-label\":_vm.placeholder,\"getResultValue\":_vm.getResultValue,\"debounceTime\":_vm.debounceTime},on:{\"submit\":_vm.onItemSelect},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\n var rootProps = ref.rootProps;\n var inputProps = ref.inputProps;\n var inputListeners = ref.inputListeners;\n var resultListProps = ref.resultListProps;\n var resultListListeners = ref.resultListListeners;\n var results = ref.results;\n var resultProps = ref.resultProps;\nreturn [_c('div',_vm._b({},'div',rootProps,false),[_c('div',{staticClass:\"relative\"},[(_vm.prefixIcon)?_c('InputIcon',{staticClass:\"text-primary pl-6\",attrs:{\"position\":\"before\",\"icon\":_vm.prefixIcon}}):_vm._e(),(((inputProps).type)==='checkbox')?_c('input',_vm._g(_vm._b({directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.searchInput),expression:\"searchInput\"}],ref:\"searchInput\",staticClass:\"pl-12 pr-12\",class:_vm.classes,attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.searchInput)?_vm._i(_vm.searchInput,null)>-1:(_vm.searchInput)},on:{\"focus\":_vm.handleFocus,\"blur\":_vm.handleBlur,\"change\":function($event){var $$a=_vm.searchInput,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.searchInput=$$a.concat([$$v]))}else{$$i>-1&&(_vm.searchInput=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.searchInput=$$c}}}},'input',inputProps,false),inputListeners)):(((inputProps).type)==='radio')?_c('input',_vm._g(_vm._b({directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.searchInput),expression:\"searchInput\"}],ref:\"searchInput\",staticClass:\"pl-12 pr-12\",class:_vm.classes,attrs:{\"type\":\"radio\"},domProps:{\"checked\":_vm._q(_vm.searchInput,null)},on:{\"focus\":_vm.handleFocus,\"blur\":_vm.handleBlur,\"change\":function($event){_vm.searchInput=null}}},'input',inputProps,false),inputListeners)):_c('input',_vm._g(_vm._b({directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.searchInput),expression:\"searchInput\"}],ref:\"searchInput\",staticClass:\"pl-12 pr-12\",class:_vm.classes,attrs:{\"type\":(inputProps).type},domProps:{\"value\":(_vm.searchInput)},on:{\"focus\":_vm.handleFocus,\"blur\":_vm.handleBlur,\"input\":function($event){if($event.target.composing){ return; }_vm.searchInput=$event.target.value}}},'input',inputProps,false),inputListeners)),_c('InputIcon',{staticClass:\"pr-6\",attrs:{\"position\":\"after\"}},[(_vm.loading)?_c('Spinner'):_vm._e(),_c('div',{staticClass:\"cursor-pointer \",on:{\"click\":_vm.removeItem}},[(\n !_vm.loading &&\n _vm.value &&\n _vm.getResultValue(_vm.value) ===\n _vm.searchInput\n )?_c('Icon',{staticClass:\"text-primary text-display-sm\",attrs:{\"icon\":\"times\",\"data-cy-button\":\"clear\"}}):_vm._e()],1)],1)],1),_c('transition',{attrs:{\"name\":\"fade\"}},[(_vm.focused && _vm.searchInput)?_c('div',{class:[\n 'origin-top-left-10 absolute z-10 left-0 mt-2 w-full rounded-md shadow-lg'\n ]},[_vm._t(\"default\",[(!results.length)?_c('Menu',[_c('MenuItem',[_vm._v(\" Aucun résultat \")])],1):_c('Menu',_vm._g(_vm._b({},'Menu',resultListProps,false),resultListListeners),_vm._l((results),function(result,index){return _c('MenuItem',_vm._b({key:resultProps[index].id,class:[\n 'cursor-pointer',\n resultProps[index][\n 'aria-selected'\n ] && 'bg-gray-100'\n ]},'MenuItem',resultProps[index],false),[_c('div',[_vm._v(\" \"+_vm._s(_vm.getResultValue(result))+\" \")])])}),1)],{\"results\":results,\"resultListProps\":resultListProps,\"resultListListeners\":resultListListeners,\"resultProps\":resultProps,\"getResultValue\":_vm.getResultValue})],2):_vm._e()]),_c('div',[_vm._t(\"extra\",null,{\"removeItem\":_vm.removeItem})],2)],1)]}}],null,true)}),_c('InputError',[_vm._v(_vm._s(errors[0]))])],1)]}}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n {{ errors[0] }}\n \n \n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Autocomplete.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Autocomplete.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Autocomplete.vue?vue&type=template&id=63dff0dd&\"\nimport script from \"./Autocomplete.vue?vue&type=script&lang=js&\"\nexport * from \"./Autocomplete.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Icon',_vm._g(_vm._b({attrs:{\"icon\":\"spinner\",\"spin\":\"\"}},'Icon',_vm.$attrs,false),_vm.$listeners))}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./Spinner.vue?vue&type=template&id=98158632&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ValidationProvider',{attrs:{\"rules\":_vm.rules,\"name\":_vm.validationName || _vm.label,\"vid\":_vm.id},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('InputWrapper',{attrs:{\"withoutMargin\":_vm.withoutMargin}},[_c('InputLabel',{attrs:{\"label\":_vm.label,\"info\":_vm.info,\"id\":_vm.id,\"showMandatoryStar\":_vm.showMandatoryStar}}),_c('div',{class:'flex flex-col relative'},[(_vm.error)?_c('div',{staticClass:\"absolute h-full bg-error leftBorder\"}):_vm._e(),_c('div',{class:[\n 'flex',\n _vm.direction === 'vertical'\n ? 'flex-col checkableGroup--verticalLayout'\n : 'flex-row flex-wrap checkableGroup--horizontalLayout'\n ]},[_vm._t(\"default\")],2)]),(errors[0])?_c('InputError',[_vm._v(_vm._s(errors[0]))]):_vm._e()],1)]}}],null,true)})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CheckableGroup.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CheckableGroup.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CheckableGroup.vue?vue&type=template&id=fe57aba0&scoped=true&\"\nimport script from \"./CheckableGroup.vue?vue&type=script&lang=js&\"\nexport * from \"./CheckableGroup.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CheckableGroup.vue?vue&type=style&index=0&id=fe57aba0&scoped=true&lang=css&\"\nimport style1 from \"./CheckableGroup.vue?vue&type=style&index=1&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"fe57aba0\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ValidationProvider',{ref:\"provider\",attrs:{\"rules\":_vm.rules,\"name\":_vm.validationName || _vm.label,\"vid\":_vm.id},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('InputWrapper',{attrs:{\"hasErrors\":!!errors.length}},[_c('InputLabel',{attrs:{\"label\":_vm.label,\"info\":_vm.info,\"showMandatoryStar\":_vm.showMandatoryStar,\"id\":_vm.id}}),_c('div',{staticClass:\"relative\"},[_c('InputIcon',{staticClass:\"z-10 text-G400\",attrs:{\"position\":\"before\",\"icon\":\"calendar\"}}),_c(_vm.dynamicComponent,_vm._g(_vm._b({ref:\"datepicker\",tag:\"component\",attrs:{\"input-class\":_vm.inputClasses,\"language\":_vm.dateLanguage,\"monday-first\":true,\"data-cy-field\":_vm.cypressName}},'component',_vm.$attrs,false),_vm.$listeners)),(_vm.$attrs.value)?_c('InputIcon',{staticClass:\"text-primary text-display-sm cursor-pointer\",attrs:{\"position\":\"after\",\"icon\":\"times\",\"data-cy-button\":\"clear\"},nativeOn:{\"click\":function($event){return _vm.clear($event)}}}):_vm._e()],1),_c('InputError',[_vm._v(_vm._s(errors[0]))])],1)]}}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"mb-1 text-xs\"},[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./InputInfo.vue?vue&type=template&id=5ceb0958&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Datepicker.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Datepicker.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Datepicker.vue?vue&type=template&id=311c2bd9&\"\nimport script from \"./Datepicker.vue?vue&type=script&lang=js&\"\nexport * from \"./Datepicker.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:[_vm.color, 'inline-flex text-sm px-4 py-1 flex-row items-center']},[_vm._t(\"default\"),(_vm.onDelete)?_c('span',{staticClass:\"ml-2 cursor-pointer\",on:{\"click\":_vm.onDelete}},[_c('Icon',{attrs:{\"icon\":\"times\"}})],1):_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tag.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tag.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Tag.vue?vue&type=template&id=291ccd34&\"\nimport script from \"./Tag.vue?vue&type=script&lang=js&\"\nexport * from \"./Tag.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"flex flex-row items-center\"},[_c('Button',{staticClass:\"hover:bg-G200 rounded-full px-4 py-1 mx-2 focus:outline-none \",attrs:{\"icon\":\"chevron-left\",\"iconPosition\":\"left\",\"variant\":\"custom\",\"size\":\"custom\",\"disabled\":_vm.currentPage === 1},on:{\"click\":_vm.onPrevious}},[_vm._v(\"Précédent\")]),(_vm.currentPage > 1)?_c('div',{staticClass:\"h-8 w-8 hover:bg-G200 flex justify-center items-center rounded-full cursor-pointer\",on:{\"click\":function () { return _vm.onChangePage(1); }}},[_vm._v(\" 1 \")]):_vm._e(),_c('div',{class:[\n 'h-8 w-8 bg-primary text-white flex justify-center items-center rounded-full',\n _vm.currentPage === 1 ? '' : 'ml-4',\n _vm.currentPage === _vm.nbPages ? '' : 'mr-4'\n ]},[_vm._v(\" \"+_vm._s(_vm.currentPage)+\" \")]),(_vm.currentPage !== _vm.nbPages)?_c('div',{staticClass:\"h-8 w-8 hover:bg-G200 flex justify-center items-center rounded-full cursor-pointer\",on:{\"click\":function () { return _vm.onChangePage(_vm.nbPages); }}},[_vm._v(\" \"+_vm._s(_vm.nbPages)+\" \")]):_vm._e(),_c('Button',{staticClass:\"hover:bg-G200 rounded-full px-4 py-1 mx-2 focus:outline-none\",attrs:{\"icon\":\"chevron-right\",\"iconPosition\":\"right\",\"variant\":\"custom\",\"size\":\"custom\",\"disabled\":_vm.currentPage === _vm.nbPages},on:{\"click\":_vm.onNext}},[_vm._v(\"Suivant\")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Pagination.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Pagination.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Pagination.vue?vue&type=template&id=25cd9aae&\"\nimport script from \"./Pagination.vue?vue&type=script&lang=js&\"\nexport * from \"./Pagination.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"w-full h-full relative\"},[_c('Tooltip'),_c('div',{ref:\"container\",staticClass:\"w-full h-full\",attrs:{\"id\":\"map\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.isVisible)?_c('div',[_c('div',{staticClass:\"absolute w-full h-full opacity-50 bg-black\",staticStyle:{\"z-index\":\"1001\"}}),_c('div',{staticClass:\"absolute w-full\",staticStyle:{\"z-index\":\"1002\"}},[_c('div',{staticClass:\"mx-auto mt-6 w-8/12 text-sm bg-white p-3\"},[_c('p',[_vm._v(\" Si besoin, préciser la localisation en déplaçant le pointeur bleu sur la carte. \")]),_c('p',{staticClass:\"font-bold text-right cursor-pointer text-primary\",on:{\"click\":_vm.hide}},[_vm._v(\" J'ai compris \")])]),_c('div',{staticClass:\"arrow mx-auto\"})])]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tooltip.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tooltip.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Tooltip.vue?vue&type=template&id=afec8fd8&scoped=true&\"\nimport script from \"./Tooltip.vue?vue&type=script&lang=js&\"\nexport * from \"./Tooltip.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Tooltip.vue?vue&type=style&index=0&id=afec8fd8&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"afec8fd8\",\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Map.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Map.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Map.vue?vue&type=template&id=f692869a&\"\nimport script from \"./Map.vue?vue&type=script&lang=js&\"\nexport * from \"./Map.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"bg-yellow-200 px-4 flex items-center justify-between\"},[_c('div',[(_vm.icon)?_c('div',{staticClass:\"rounded-full inline-block bg-yellow-400 w-6 h-6 text-center text-xs align-middle leading-6\"},[_c('Icon',{attrs:{\"icon\":_vm.icon}})],1):_vm._e(),_vm._t(\"body\")],2),_c('div',[_vm._t(\"button\",[_c('Button',{on:{\"click\":_vm.click}},[_vm._v(_vm._s(_vm.buttonLabel))])]),(_vm.closable)?_c('span',{staticClass:\"ml-2\",on:{\"click\":_vm.close}},[_c('Icon',{staticClass:\"cursor-pointer\",attrs:{\"icon\":\"times\"}})],1):_vm._e()],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InfoBanner.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InfoBanner.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InfoBanner.vue?vue&type=template&id=77ccb40e&\"\nimport script from \"./InfoBanner.vue?vue&type=script&lang=js&\"\nexport * from \"./InfoBanner.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"has-tooltip inline-block\"},[_c('div',{staticClass:\"tooltip mt-10 ml-5 bg-yellow-200 shadow-md text-black py-4 px-6\"},[_vm._v(\" \"+_vm._s(_vm.text)+\" \")]),_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tooltip.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tooltip.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Tooltip.vue?vue&type=template&id=e37a80c0&scoped=true&\"\nimport script from \"./Tooltip.vue?vue&type=script&lang=js&\"\nexport * from \"./Tooltip.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Tooltip.vue?vue&type=style&index=0&id=e37a80c0&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"e37a80c0\",\n null\n \n)\n\nexport default component.exports","import AutocompleteVue from \"@trevoreyre/autocomplete-vue\";\nimport {\n ValidationProvider,\n ValidationObserver,\n extend,\n localize\n} from \"vee-validate\";\nimport * as rules from \"vee-validate/dist/rules\";\nimport fr from \"vee-validate/dist/locale/fr.json\";\nimport en from \"vee-validate/dist/locale/en\";\nimport ro from \"vee-validate/dist/locale/ro\";\nimport bg from \"vee-validate/dist/locale/bg\";\n\nimport notifications from \"vue-notification/dist/ssr\";\nimport Button from \"./Button.vue\";\nimport TextInput from \"./Form/input/TextInput.vue\";\nimport InlineTextInput from \"./Form/input/InlineTextInput.vue\";\nimport TextArea from \"./Form/input/TextArea.vue\";\nimport Icon from \"./Icon.vue\";\nimport Checkbox from \"./Form/input/Checkbox.vue\";\nimport Radio from \"./Form/input/Radio.vue\";\nimport Select from \"./Form/input/Select.vue\";\nimport SelectOption from \"./Form/input/SelectOption.vue\";\nimport FormGroup from \"./Form/FormGroup.vue\";\nimport InputGroup from \"./Form/InputGroup.vue\";\nimport MandatoryStar from \"./Form/utils/MandatoryStar.vue\";\nimport FormParagraph from \"./Form/FormParagraph.vue\";\nimport Menu from \"./Menu/Menu.vue\";\nimport MenuItem from \"./Menu/MenuItem.vue\";\nimport Dropdown from \"./Dropdown.vue\";\nimport NotificationsGroup from \"./NotificationsGroup.vue\";\nimport Modal from \"./Modal.vue\";\nimport Callout from \"./Callout.vue\";\nimport SidePanel from \"./SidePanel.vue\";\nimport Autocomplete from \"./Autocomplete.vue\";\nimport Spinner from \"./Spinner.vue\";\nimport CheckableGroup from \"./Form/CheckableGroup.vue\";\nimport Datepicker from \"./Datepicker.vue\";\nimport Tag from \"./Tag.vue\";\nimport Pagination from \"./Pagination.vue\";\nimport MapV2 from \"./Map.vue\";\nimport InfoBanner from \"./InfoBanner.vue\";\nimport Tooltip from \"./Tooltip.vue\";\n\nexport default function(vueInstance) {\n vueInstance.component(\"Button\", Button);\n vueInstance.component(\"TextInput\", TextInput);\n vueInstance.component(\"InlineTextInput\", InlineTextInput);\n vueInstance.component(\"TextArea\", TextArea);\n vueInstance.component(\"Icon\", Icon);\n vueInstance.component(\"Menu\", Menu);\n vueInstance.component(\"MenuItem\", MenuItem);\n vueInstance.component(\"Checkbox\", Checkbox);\n vueInstance.component(\"Radio\", Radio);\n vueInstance.component(\"Select\", Select);\n vueInstance.component(\"SelectOption\", SelectOption);\n vueInstance.component(\"FormGroup\", FormGroup);\n vueInstance.component(\"MandatoryStar\", MandatoryStar);\n vueInstance.component(\"Dropdown\", Dropdown);\n vueInstance.component(\"Modal\", Modal);\n vueInstance.component(\"SidePanel\", SidePanel);\n vueInstance.component(\"CheckableGroup\", CheckableGroup);\n vueInstance.component(\"InputGroup\", InputGroup);\n vueInstance.component(\"FormParagraph\", FormParagraph);\n vueInstance.component(\"Callout\", Callout);\n vueInstance.component(\"Spinner\", Spinner);\n vueInstance.component(\"AutocompleteV2\", Autocomplete);\n vueInstance.component(\"DatepickerV2\", Datepicker);\n vueInstance.component(\"Tag\", Tag);\n vueInstance.component(\"Pagination\", Pagination);\n vueInstance.component(\"MapV2\", MapV2);\n vueInstance.component(\"InfoBanner\", InfoBanner);\n vueInstance.component(\"Tooltip\", Tooltip);\n\n vueInstance.use(notifications);\n vueInstance.component(\"NotificationsGroup\", NotificationsGroup);\n vueInstance.component(\"ValidationProvider\", ValidationProvider);\n\n vueInstance.component(\"ValidationObserver\", ValidationObserver);\n\n vueInstance.component(\"AutocompleteVue\", AutocompleteVue);\n\n // Vee Validate (Form Validation)\n localize({\n en,\n fr,\n bg,\n ro\n });\n\n Object.keys(rules).forEach(rule => {\n extend(rule, {\n ...rules[rule] // copies rule configuration\n });\n });\n\n localize(\"fr\");\n}\n","/* eslint-disable no-param-reassign */\n/* eslint-disable no-console */\n\nconst defaultOptions = {\n debug: false,\n enableLinkTracking: true,\n requireConsent: false,\n trackInitialView: true,\n trackerFileName: \"piwik\"\n};\n\nfunction loadScript(trackerScript) {\n const scriptPromise = new Promise((resolve, reject) => {\n const script = document.createElement(\"script\");\n script.async = true;\n script.defer = true;\n script.src = trackerScript;\n\n const head = document.head || document.getElementsByTagName(\"head\")[0];\n head.appendChild(script);\n\n script.onload = resolve;\n script.onerror = reject;\n });\n\n scriptPromise.catch(error => {\n const msg = `[vue-matomo] An error occurred trying to load ${error.target.src}. `;\n (\"If the file exists you may have an ad- or trackingblocker enabled.\");\n\n console.error(msg);\n });\n\n return scriptPromise;\n}\n\nfunction initMatomo(Vue, options) {\n const { host, siteId, trackerFileName, trackerUrl } = options;\n const trackerEndpoint = trackerUrl || `${host}/${trackerFileName}.php`;\n\n const Matomo = window.Piwik.getTracker(trackerEndpoint, siteId);\n\n // Assign matomo to Vue\n Vue.prototype.$piwik = Matomo;\n Vue.prototype.$matomo = Matomo;\n\n if (options.requireConsent) {\n Matomo.requireConsent();\n }\n\n if (options.trackInitialView) {\n // Register first page view\n Matomo.trackPageView();\n }\n\n if (options.enableLinkTracking) {\n Matomo.enableLinkTracking();\n }\n\n // Track page navigations if router is specified\n if (options.router) {\n options.router.afterEach(to => {\n // Unfortunately the window location is not yet updated here\n // We need to make our own url using the data provided by the router\n const loc = window.location;\n\n // Protocol may or may not contain a colon\n let { protocol } = loc;\n if (protocol.slice(-1) !== \":\") {\n protocol += \":\";\n }\n\n const maybeHash = options.router.mode === \"hash\" ? \"/#\" : \"\";\n const url = `${protocol}//${loc.host}${maybeHash}${to.fullPath}`;\n\n if (to.meta.analyticsIgnore) {\n return;\n }\n\n if (options.debug) {\n console.debug(`[vue-matomo] Tracking ${url}`);\n }\n\n Matomo.setCustomUrl(url);\n Matomo.trackPageView();\n });\n }\n}\n\nexport default function install(Vue, setupOptions = {}) {\n const options = { ...defaultOptions, ...setupOptions };\n\n const { host, trackerFileName } = options;\n const trackerScript = `${host}/${trackerFileName}.js`;\n\n loadScript(trackerScript).then(() => initMatomo(Vue, options));\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('PublicLayout',{attrs:{\"displayLanguagePicker\":true}},[_c('PublicContainer',[_c('div',{staticClass:\"pt-4\"},[_c('div',{staticClass:\"max-w-screen-lg mx-auto pb-20\"},[_c('LandingPageHero',{staticClass:\"mt-20\"}),_c('LandingPageFirstSection')],1)])]),_c('LandingPageBanner',{attrs:{\"cta\":_vm.$t('landingPage.firstBanner.cta')}},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.firstBanner.text\"))+\" \")]),_c('CreditWrapper',{attrs:{\"credit\":\"© Diego Inglez de Souza\"}},[_c('img',{staticClass:\"h-128 w-full object-cover object-center\",attrs:{\"src\":require(\"./assets/resorption-bidonvilles-1.jpg\")}})]),_c('PublicContainer',[_c('div',{staticClass:\"max-w-screen-lg mx-auto py-20\"},[_c('LandingPageSecondSection')],1)]),_c('LandingPageBanner',{attrs:{\"cta\":_vm.$t('landingPage.secondBanner.cta')}},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.secondBanner.text\"))+\" \")]),_c('CreditWrapper',{attrs:{\"credit\":\"© Ville de Strasbourg\"}},[_c('img',{staticClass:\"h-128 w-full object-cover object-top\",attrs:{\"src\":require(\"./assets/resorption-bidonvilles-2.jpg\")}})]),_c('PublicContainer',[_c('div',{staticClass:\"max-w-screen-lg mx-auto py-20\"},[_c('LandingPageThirdSection'),_c('div',{staticClass:\"text-center mt-40\"},[_c('h2',{staticClass:\"text-display-lg text-secondary\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.hero.subtitle\"))+\" \")]),_c('LandingPageContactForm',{staticClass:\"mx-auto\"})],1)],1)]),_c('CreditWrapper',{attrs:{\"credit\":\"© Ville de Strasbourg\"}},[_c('div',{staticClass:\"grid grid-cols-3 w-full gap-0\"},[_c('img',{staticClass:\"h-64 w-full object-cover object-top\",attrs:{\"src\":require(\"./assets/resorption-bidonvilles-3.jpg\")}}),_c('img',{staticClass:\"h-64 w-full object-cover object-top\",attrs:{\"src\":require(\"./assets/resorption-bidonvilles-4.jpg\")}}),_c('img',{staticClass:\"h-64 w-full object-cover object-top\",attrs:{\"src\":require(\"./assets/resorption-bidonvilles-5.jpg\")}})])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('NavBar',{attrs:{\"stickyHeader\":_vm.stickyHeader,\"displayLanguagePicker\":_vm.displayLanguagePicker}}),_vm._t(\"default\"),_c('PublicFooter')],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{class:!_vm.sticky && 'hidden'},[_c('NavBarSticky',{attrs:{\"menuDisplayed\":_vm.menuDisplayed,\"toggleMenu\":_vm.toggleMenu}})],1),_c('div',{class:_vm.sticky && 'hidden'},[_c('PublicContainer',[_c('header',{staticClass:\"py-4 flex flex-row justify-between items-center\",attrs:{\"role\":\"navigation\"}},[_c('NavBarLogo'),_c('div',{staticClass:\"hidden md:flex flex-row\"},[_c('div',[_c('router-link',{attrs:{\"to\":\"/connexion\"}},[_c('Button',{attrs:{\"variant\":\"primary\"}},[_vm._v(_vm._s(_vm.$t(\"landingPage.header.connect\")))])],1)],1),(_vm.displayLanguagePicker)?_c('LanguagePicker',{staticClass:\"ml-2\"}):_vm._e()],1),_c('NavBarMobileButton',{staticClass:\"md:hidden\",attrs:{\"onClick\":_vm.toggleMenu}})],1)])],1),(_vm.menuDisplayed)?_c('NavBarMobileMenu',{staticClass:\"fixed top-0 right-0 mt-16 z-10\",attrs:{\"closeMenu\":_vm.closeMenu,\"displayLanguagePicker\":_vm.displayLanguagePicker}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('router-link',{attrs:{\"to\":\"/landing\"}},[_c('div',{staticClass:\"flex flex-row align-items\"},[_c('img',{staticClass:\"marianne\",attrs:{\"src\":require(\"./assets/Marianne.svg\"),\"alt\":\"france\"}}),_c('div',{staticClass:\"ml-2 text-display-xs md:text-display-sm text-black\"},[_vm._v(\" Résorption-bidonvilles \")])])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./NavBarLogo.vue?vue&type=template&id=07ee7c4c&scoped=true&\"\nvar script = {}\nimport style0 from \"./NavBarLogo.vue?vue&type=style&index=0&id=07ee7c4c&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"07ee7c4c\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"fixed z-10 top-0 left-0 w-full bg-white shadow\"},[_c('PublicContainer',[_c('header',{staticClass:\"py-4 flex flex-row justify-between items-center\",attrs:{\"role\":\"navigation\"}},[_c('NavBarLogo'),_c('div',{staticClass:\"hidden md:block\"},[_c('router-link',{staticClass:\"mr-2\",attrs:{\"to\":\"/contact\"}},[_c('Button',{attrs:{\"variant\":\"secondary\"}},[_vm._v(_vm._s(_vm.$t(\"landingPage.header.contact\")))])],1),_c('router-link',{attrs:{\"to\":\"/connexion\"}},[_c('Button',{attrs:{\"variant\":\"primary\"}},[_vm._v(_vm._s(_vm.$t(\"landingPage.header.connect\")))])],1)],1),_c('NavBarMobileButton',{staticClass:\"md:hidden\",attrs:{\"onClick\":_vm.toggleMenu}})],1)])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('button',{staticClass:\"focus:outline-none\",on:{\"click\":_vm.onClick}},[_c('svg',{staticClass:\"block h-6 w-6\",attrs:{\"stroke\":\"currentColor\",\"fill\":\"none\",\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\",\"stroke-width\":\"2\",\"d\":\"M4 6h16M4 12h16M4 18h16\"}})])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavBarMobileButton.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavBarMobileButton.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./NavBarMobileButton.vue?vue&type=template&id=fe2974b4&\"\nimport script from \"./NavBarMobileButton.vue?vue&type=script&lang=js&\"\nexport * from \"./NavBarMobileButton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container px-10 mx-auto\"},[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./PublicContainer.vue?vue&type=template&id=01b836ec&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavBarSticky.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavBarSticky.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./NavBarSticky.vue?vue&type=template&id=2ec84af4&\"\nimport script from \"./NavBarSticky.vue?vue&type=script&lang=js&\"\nexport * from \"./NavBarSticky.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Dropdown',{scopedSlots:_vm._u([{key:\"button\",fn:function(){return [_c('Button',{attrs:{\"variant\":\"primaryOutline\",\"icon\":\"chevron-down\"}},[(_vm.$i18n.locale === 'fr')?_c('img',{staticClass:\"inline-block h-6\",attrs:{\"src\":require(\"./assets/FR.svg\")}}):_vm._e(),(_vm.$i18n.locale === 'en')?_c('img',{staticClass:\"inline-block h-6\",attrs:{\"src\":require(\"./assets/UK.svg\")}}):_vm._e(),(_vm.$i18n.locale === 'ro')?_c('img',{staticClass:\"inline-block h-6\",attrs:{\"src\":require(\"./assets/RO.svg\")}}):_vm._e(),(_vm.$i18n.locale === 'bg')?_c('img',{staticClass:\"inline-block h-6\",attrs:{\"src\":require(\"./assets/BG.svg\")}}):_vm._e(),_vm._v(\" \"+_vm._s(\" \")+\" \"),_c('span',{staticClass:\"uppercase\"},[_vm._v(_vm._s(_vm.$i18n.locale))])])]},proxy:true},{key:\"menu\",fn:function(ref){\nvar closeMenu = ref.closeMenu;\nreturn [_c('Menu',{on:{\"click\":closeMenu}},[_c('MenuItem',{on:{\"click\":function($event){return _vm.pickLang('fr')}}},[_c('img',{staticClass:\"inline-block h-6\",attrs:{\"src\":require(\"./assets/FR.svg\")}}),_vm._v(\" FR \")]),_c('MenuItem',{on:{\"click\":function($event){return _vm.pickLang('en')}}},[_c('img',{staticClass:\"inline-block h-6\",attrs:{\"src\":require(\"./assets/UK.svg\")}}),_vm._v(\" EN \")]),_c('MenuItem',{on:{\"click\":function($event){return _vm.pickLang('ro')}}},[_c('img',{staticClass:\"inline-block h-6\",attrs:{\"src\":require(\"./assets/RO.svg\")}}),_vm._v(\" RO \")]),_c('MenuItem',{on:{\"click\":function($event){return _vm.pickLang('bg')}}},[_c('img',{staticClass:\"inline-block h-6\",attrs:{\"src\":require(\"./assets/BG.svg\")}}),_vm._v(\" BG \")])],1)]}}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LanguagePicker.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LanguagePicker.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LanguagePicker.vue?vue&type=template&id=0bd0a8ca&\"\nimport script from \"./LanguagePicker.vue?vue&type=script&lang=js&\"\nexport * from \"./LanguagePicker.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"origin-top-right right-0 mt-2 w-48 rounded-md shadow-lg\"},[_c('Menu',[_c('MenuItem',[_c('router-link',{attrs:{\"to\":\"/connexion\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.header.connect\"))+\" \")])],1),_c('MenuItem',[_c('router-link',{attrs:{\"to\":\"/contact\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.header.contact\"))+\" \")])],1),_c('MenuItem',[_c('LanguagePicker')],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavBarMobileMenu.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavBarMobileMenu.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./NavBarMobileMenu.vue?vue&type=template&id=00db3f68&\"\nimport script from \"./NavBarMobileMenu.vue?vue&type=script&lang=js&\"\nexport * from \"./NavBarMobileMenu.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=24818faa&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('footer',{staticClass:\"bg-black text-white py-8\",attrs:{\"role\":\"contentinfo\"}},[_c('PublicContainer',[_c('div',{staticClass:\"max-w-screen-lg mx-auto\"},[_c('div',{staticClass:\"md:flex flex-row justify-between\"},[_c('ul',[_c('li',[_c('font-awesome-icon',{attrs:{\"icon\":\"envelope\"}})],1),_c('li',[_c('h4',[_vm._v(_vm._s(_vm.$t(\"footer.contact\")))])]),_c('li',[_c('h4',[_c('a',{staticClass:\"underline\",attrs:{\"href\":\"mailto:contact@resorption-bidonvilles.beta.gouv.fr\"}},[_vm._v(\"contact@resorption-bidonvilles.beta.gouv.fr\")])])])]),_c('ul',[_c('li',[_c('router-link',{attrs:{\"to\":\"/statistiques-publiques\"}},[_vm._v(_vm._s(_vm.$t(\"footer.statistics\")))])],1),_c('li',[_c('router-link',{attrs:{\"to\":\"/mentions-legales\"}},[_vm._v(_vm._s(_vm.$t(\"footer.legal\")))])],1)])])])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PublicFooter.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PublicFooter.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./PublicFooter.vue?vue&type=template&id=faa6d674&\"\nimport script from \"./PublicFooter.vue?vue&type=script&lang=js&\"\nexport * from \"./PublicFooter.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=418293bc&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"text-center\"},[_c('h1',{staticClass:\"text-display-xl font\"},[_vm._v(_vm._s(_vm.$t(\"landingPage.hero.title\")))]),_c('h2',{staticClass:\"text-display-lg text-secondary mt-2\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.hero.subtitle\"))+\" \")]),_c('LandingPageContactForm',{staticClass:\"mx-auto\"})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('form',{staticClass:\"flex flex-row justify-center mt-4 w-full max-w-md\",on:{\"submit\":function($event){$event.preventDefault();return _vm.onSubmit($event)}}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.email),expression:\"email\"}],staticClass:\"hidden md:block border-2 border-G200 rounded-md flex-1 py-2 px-4 outline-none focus:border-G400\",attrs:{\"placeholder\":_vm.$t('landingPage.contactForm.email')},domProps:{\"value\":(_vm.email)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.email=$event.target.value}}}),_c('Button',{staticClass:\"ml-1\",attrs:{\"type\":\"submit\",\"variant\":\"secondary\"}},[_vm._v(_vm._s(_vm.$t(\"landingPage.contactForm.cta\")))])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageContactForm.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageContactForm.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LandingPageContactForm.vue?vue&type=template&id=ab5dc688&\"\nimport script from \"./LandingPageContactForm.vue?vue&type=script&lang=js&\"\nexport * from \"./LandingPageContactForm.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=ee38fc36&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('img',{staticClass:\"full-width mx-auto\",attrs:{\"src\":require(\"./assets/resorption-bidonvilles-dessin.png\")}}),(_vm.$i18n.locale === 'fr')?_c('EventTutorial'):_vm._e(),_c('div',{staticClass:\"max-w-screen-sm mx-auto mt-8\"},[_c('LandingPageResponsiveEmbed',[_c('iframe',{attrs:{\"src\":\"https://www.youtube.com/embed/AAD0QoOzIHM?modestbranding=1&autohide=1&showinfo=0\",\"frameborder\":\"0\",\"allow\":\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\",\"allowfullscreen\":\"\"}})])],1),_c('div',[_c('div',{staticClass:\"mt-24\"},[_c('div',{staticClass:\"max-w-screen-sm mx-auto\"},[_c('div',{staticClass:\"text-display-lg font-normal\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.firstSection.context.title\"))+\" \")]),_c('div',{staticClass:\"text-display-lg\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.firstSection.context.subtitle\"))+\" \")]),_c('div',{staticClass:\"mt-4\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.firstSection.context.text\"))+\" \")])])]),_c('div',{staticClass:\"md:grid md:grid-cols-3 gap-16 mt-16\"},[_c('LandingPageFeatureBlock',{attrs:{\"icon\":\"map-marked-alt\"}},[_vm._v(_vm._s(_vm.$t(\"landingPage.firstSection.features.position\")))]),_c('LandingPageFeatureBlock',{staticClass:\"my-8 md:my-0\",attrs:{\"icon\":\"chart-line\"}},[_vm._v(_vm._s(_vm.$t(\"landingPage.firstSection.features.actions\")))]),_c('LandingPageFeatureBlock',{attrs:{\"icon\":\"comments\"}},[_vm._v(_vm._s(_vm.$t(\"landingPage.firstSection.features.exchange\")))])],1),_c('div',{staticClass:\"md:flex md:flex-row mt-16\"},[_c('LandingPageContextImage',{attrs:{\"label\":_vm.$t('landingPage.firstSection.before')}},[(_vm.$i18n.locale === 'fr')?_c('img',{attrs:{\"src\":require(\"./assets/fr/before.jpg\")}}):_vm._e(),(_vm.$i18n.locale === 'en')?_c('img',{attrs:{\"src\":require(\"./assets/en/before.png\")}}):_vm._e(),(_vm.$i18n.locale === 'bg')?_c('img',{attrs:{\"src\":require(\"./assets/bg/before.png\")}}):_vm._e(),(_vm.$i18n.locale === 'ro')?_c('img',{attrs:{\"src\":require(\"./assets/ro/before.png\")}}):_vm._e()]),_c('div',{staticClass:\"hidden md:block border-solid border-r-2 border-gray-200 m-20\"}),_c('LandingPageContextImage',{attrs:{\"label\":_vm.$t('landingPage.firstSection.after')}},[(_vm.$i18n.locale === 'fr')?_c('img',{attrs:{\"src\":require(\"./assets/fr/after.jpg\")}}):_vm._e(),(_vm.$i18n.locale === 'en')?_c('img',{attrs:{\"src\":require(\"./assets/en/after.png\")}}):_vm._e(),(_vm.$i18n.locale === 'bg')?_c('img',{attrs:{\"src\":require(\"./assets/bg/after.png\")}}):_vm._e(),(_vm.$i18n.locale === 'ro')?_c('img',{attrs:{\"src\":require(\"./assets/ro/after.png\")}}):_vm._e()])],1),_c('LandingPageUserFeedback',{staticClass:\"mt-32\"})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('font-awesome-icon',{attrs:{\"icon\":_vm.icon,\"size\":\"3x\"}}),_c('h3',{staticClass:\"text-display-lg font-normal mt-2\"},[_vm._t(\"default\")],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageFeatureBlock.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageFeatureBlock.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LandingPageFeatureBlock.vue?vue&type=template&id=40944c55&\"\nimport script from \"./LandingPageFeatureBlock.vue?vue&type=script&lang=js&\"\nexport * from \"./LandingPageFeatureBlock.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"text-secondary text-display-md\"},[_vm._v(_vm._s(_vm.label))]),_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageContextImage.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageContextImage.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LandingPageContextImage.vue?vue&type=template&id=a36abd1e&\"\nimport script from \"./LandingPageContextImage.vue?vue&type=script&lang=js&\"\nexport * from \"./LandingPageContextImage.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"max-w-screen-sm mx-auto relative mt-16\"},[_c('LandingPageUserFeedbackSection',{attrs:{\"active\":_vm.active === 1,\"text\":_vm.$t('landingPage.firstSection.feedback.1.text'),\"author\":_vm.$t('landingPage.firstSection.feedback.1.author')}}),_c('LandingPageUserFeedbackSection',{attrs:{\"active\":_vm.active === 2,\"text\":_vm.$t('landingPage.firstSection.feedback.2.text'),\"author\":_vm.$t('landingPage.firstSection.feedback.2.author')}}),_c('LandingPageUserFeedbackSection',{attrs:{\"active\":_vm.active === 3,\"text\":_vm.$t('landingPage.firstSection.feedback.3.text'),\"author\":_vm.$t('landingPage.firstSection.feedback.3.author')}})],1),_c('div',{staticClass:\"mt-2 text-center\"},[_c('LandingPageUserFeedbackBullet',{attrs:{\"onClick\":function () { return _vm.setSection(1); },\"active\":_vm.active === 1}}),_c('LandingPageUserFeedbackBullet',{attrs:{\"onClick\":function () { return _vm.setSection(2); },\"active\":_vm.active === 2}}),_c('LandingPageUserFeedbackBullet',{attrs:{\"onClick\":function () { return _vm.setSection(3); },\"active\":_vm.active === 3}})],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('input',{class:[\n 'appearance-none h-3 w-3 mx-1 cursor-pointer rounded-full border border-black outline-none',\n _vm.active && 'bg-black border-transparent'\n ],attrs:{\"type\":\"radio\"},domProps:{\"checked\":_vm.active},on:{\"click\":_vm.onClick}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageUserFeedbackBullet.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageUserFeedbackBullet.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LandingPageUserFeedbackBullet.vue?vue&type=template&id=00e7ac5e&\"\nimport script from \"./LandingPageUserFeedbackBullet.vue?vue&type=script&lang=js&\"\nexport * from \"./LandingPageUserFeedbackBullet.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:_vm.active\n ? 'transition duration-500 block opacity-100 visible'\n : 'invisible opacity-0 absolute'},[_c('div',{staticClass:\"relative text-xl feedbackText\"},[_vm._v(_vm._s(_vm.text))]),_c('div',{staticClass:\"text-lg font-light\"},[_vm._v(_vm._s(_vm.author))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageUserFeedbackSection.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageUserFeedbackSection.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LandingPageUserFeedbackSection.vue?vue&type=template&id=a695c1c4&scoped=true&\"\nimport script from \"./LandingPageUserFeedbackSection.vue?vue&type=script&lang=js&\"\nexport * from \"./LandingPageUserFeedbackSection.vue?vue&type=script&lang=js&\"\nimport style0 from \"./LandingPageUserFeedbackSection.vue?vue&type=style&index=0&id=a695c1c4&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"a695c1c4\",\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=bfa08948&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"wrapper\",style:(_vm.paddingStyle)},[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageResponsiveEmbed.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageResponsiveEmbed.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LandingPageResponsiveEmbed.vue?vue&type=template&id=60de4ac9&\"\nimport script from \"./LandingPageResponsiveEmbed.vue?vue&type=script&lang=js&\"\nexport * from \"./LandingPageResponsiveEmbed.vue?vue&type=script&lang=js&\"\nimport style0 from \"./LandingPageResponsiveEmbed.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"full-width h-auto mx-auto mt-8 mb-16 bg-orange300 rounded-lg overflow-hidden\"},[_c('div',{staticClass:\"lg:flex\"},[_vm._m(0),_vm._m(1),_c('div',{staticClass:\"px-8 py-2 lg:p-8\"},[_c('a',{attrs:{\"href\":\"https://app.evalandgo.com/s/index.php?a=JTk2cCU5N2slOUElQjA=&id=JTk4ayU5QW4lOTYlQUY=\",\"target\":\"_blank\"}},[_c('Button',{staticClass:\"my-2\",attrs:{\"variant\":\"secondary\"}},[_vm._v(\"S'inscrire\")])],1),_c('p',{staticClass:\"text-sm font-bold\"},[_vm._v(\"Les jeudi à 10h\")]),_c('p',{staticClass:\"text-sm font-bold\"},[_vm._v(\"et vendredi à 14h - 45 min\")])])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"lg:flex-shrink-0 justify-center\"},[_c('img',{staticClass:\"m-4 h-40\",attrs:{\"src\":require(\"../assets/Formation.png\"),\"alt\":\"\"}})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"flex-shrink-0 lg:flex-shrink px-8 py-2 lg:py-8 lg:px-4\"},[_c('div',{staticClass:\"tracking-wide text-display-md text-primary\"},[_vm._v(\" Formation personnalisée \")]),_c('p',{staticClass:\"mt-2 text-md\"},[_vm._v(\" Prenez en main rapidement la plateforme \"),_c('em',[_vm._v(\"Résorption-bidonvilles\")]),_vm._v(\" grâce à une présentation personnalisée. Nous répondrons à toutes vos questions. \")])])}]\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./EventTutorial.vue?vue&type=template&id=246156e8&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=6e23cf72&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"md:grid md:grid-cols-3 md:gap-16\"},[_c('LandingPageDataBlock',{attrs:{\"line1\":_vm.$t('landingPage.secondSection.data.1.line1'),\"line2\":_vm.$t('landingPage.secondSection.data.1.line2'),\"line3\":_vm.$t('landingPage.secondSection.data.1.line3')}}),_c('LandingPageDataBlock',{staticClass:\"my-4 md:my-0\",attrs:{\"line1\":_vm.$t('landingPage.secondSection.data.2.line1'),\"line2\":_vm.$t('landingPage.secondSection.data.2.line2'),\"line3\":_vm.$t('landingPage.secondSection.data.2.line3')}}),_c('LandingPageDataBlock',{attrs:{\"line1\":_vm.$t('landingPage.secondSection.data.3.line1'),\"line2\":_vm.$t('landingPage.secondSection.data.3.line2'),\"line3\":_vm.$t('landingPage.secondSection.data.3.line3')}})],1),_c('div',{staticClass:\"max-w-screen-sm mx-auto \"},[_c('h2',{staticClass:\"mt-16\"},[_c('span',{staticClass:\"text-display-lg font-normal\"},[_vm._v(_vm._s(_vm.$t(\"landingPage.secondSection.title\")))]),_c('span',{staticClass:\"text-display-lg block\"},[_vm._v(_vm._s(_vm.$t(\"landingPage.secondSection.subtitle\")))])]),_c('div',{staticClass:\"mt-8\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.secondSection.firstParagraph\"))+\" \")]),_c('div',{staticClass:\"mt-8\"},[_c('span',{staticClass:\"font-bold\"},[_vm._v(_vm._s(_vm.$t(\"landingPage.secondSection.secondParagraph.bold\")))]),_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.secondSection.secondParagraph.normal\"))+\" \")]),_c('div',[_c('a',{staticClass:\"link\",attrs:{\"href\":\"https://www.ecologie.gouv.fr/resorption-des-campements-illicites-et-des-bidonvilles\"}},[_vm._v(_vm._s(_vm.$t(\"landingPage.secondSection.secondParagraph.link\")))])]),(_vm.$i18n.locale === 'fr')?_c('img',{staticClass:\"mt-20 w-full\",attrs:{\"src\":require(\"./assets/map-fr.jpg\")}}):_vm._e(),(_vm.$i18n.locale === 'en')?_c('img',{staticClass:\"mt-20 w-full\",attrs:{\"src\":require(\"./assets/map-en.jpg\")}}):_vm._e(),(_vm.$i18n.locale === 'bg')?_c('img',{staticClass:\"mt-20 w-full\",attrs:{\"src\":require(\"./assets/map-bg.png\")}}):_vm._e(),(_vm.$i18n.locale === 'ro')?_c('img',{staticClass:\"mt-20 w-full\",attrs:{\"src\":require(\"./assets/map-ro.jpg\")}}):_vm._e()]),_c('div',{staticClass:\"mt-20 md:flex md:flex-row items-center\"},[_c('div',{staticClass:\"block md:hidden mb-4 text-display-lg\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.secondSection.video.text\"))+\" \")]),_c('div',{staticClass:\"md:w-1/2 md:mr-16 bg-gray-500\"},[_c('LandingPageResponsiveEmbed',[_c('iframe',{attrs:{\"src\":\"https://www.dailymotion.com/embed/video/x7mf87e\",\"allowfullscreen\":\"\",\"allow\":\"autoplay; fullscreen\"}})])],1),_c('div',{staticClass:\"hidden md:blockw-1/2 text-display-lg\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.secondSection.video.text\"))+\" \")])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"text-md\"},[_vm._v(_vm._s(_vm.line1))]),_c('div',{staticClass:\"text-display-xl leading-none\"},[_vm._v(_vm._s(_vm.line2))]),_c('div',{staticClass:\"text-md\"},[_vm._v(_vm._s(_vm.line3))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageDataBlock.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageDataBlock.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LandingPageDataBlock.vue?vue&type=template&id=d603324e&\"\nimport script from \"./LandingPageDataBlock.vue?vue&type=script&lang=js&\"\nexport * from \"./LandingPageDataBlock.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=2c71e735&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"max-w-screen-sm mx-auto\"},[_c('h2',{staticClass:\"text-display-lg\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.thirdSection.title\"))+\" \")]),_c('div',{staticClass:\" mt-8\"},[_c('span',{staticClass:\"font-bold\"},[_vm._v(_vm._s(_vm.$t(\"landingPage.thirdSection.firstParagraph.bold\")))]),_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.thirdSection.firstParagraph.normal\"))+\" \")]),_vm._m(0),_c('div',{staticClass:\"grid grid-cols-1 md:grid-cols-2 gap-y-8 md:gap-x-16\"},[_c('LandingPageBilanBlock',{attrs:{\"icon\":\"users\",\"text\":_vm.$t('landingPage.thirdSection.bilan.1.text')}}),_c('LandingPageBilanBlock',{attrs:{\"icon\":\"hand-holding-medical\",\"text\":_vm.$t('landingPage.thirdSection.bilan.3.text')}}),_c('LandingPageBilanBlock',{attrs:{\"icon\":\"map-marker-alt\",\"text\":_vm.$t('landingPage.thirdSection.bilan.4.text')}}),_c('LandingPageBilanBlock',{attrs:{\"icon\":\"file-signature\",\"text\":_vm.$t('landingPage.thirdSection.bilan.6.text')}}),_c('LandingPageBilanBlock',{attrs:{\"icon\":\"book\",\"text\":_vm.$t('landingPage.thirdSection.bilan.5.text'),\"info\":_vm.$t('landingPage.thirdSection.bilan.5.info')}})],1),_c('div',{staticClass:\"text-center mt-8\"},[_c('a',{attrs:{\"href\":\"https://www.gouvernement.fr/sites/default/files/contenu/piece-jointe/2019/09/bilan_campements_2018_vecran.pdf\"}},[_c('Button',{attrs:{\"variant\":\"secondary\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.thirdSection.cta\"))+\" \")])],1)])]),_c('div',{staticClass:\"mt-32\"},[_c('div',{staticClass:\"max-w-screen-sm mx-auto\"},[_c('h2',{staticClass:\"text-display-lg\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.thirdSection.secondParagraph.title\"))+\" \")]),_c('div',{staticClass:\"mt-4\"},[_vm._v(\" \"+_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.body.text1\" ))+\" \"),_c('a',{staticClass:\"link\",attrs:{\"href\":\"https://www.ecologie.gouv.fr/resorption-des-campements-illicites-et-des-bidonvilles\"}},[_vm._v(_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.body.link1\" )))]),_vm._v(\", \"+_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.body.text2\" ))+\". \"),_c('span',{staticClass:\"font-bold\"},[_vm._v(\" \"+_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.body.text3\" ))+\" \")]),_vm._v(\" \"+_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.body.text4\" ))+\" \"),_c('a',{staticClass:\"link\",attrs:{\"href\":\"https://beta.gouv.fr/startups/resorption-bidonvilles.html\"}},[_vm._v(_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.body.link2\" ))+\".\")])]),_c('div',{staticClass:\"mt-8\"},[_c('div',[_vm._v(\" \"+_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.items.title\" ))+\" \")]),_c('ul',{staticClass:\"list-disc ml-8\"},[_c('li',[_c('a',{staticClass:\"link\",attrs:{\"href\":\"https://entrepreneur-interet-general.etalab.gouv.fr/defis/2019/resorption-bidonvilles.html\"}},[_vm._v(_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.items.1.link\" )))]),_vm._v(\" \"+_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.items.1.text\" ))+\" \")]),_c('li',[_c('a',{staticClass:\"link\",attrs:{\"href\":\"https://ec.europa.eu/info/funding-tenders/opportunities/portal/screen/how-to-participate/org-details/999999999/project/881989/program/31076817/details\"}},[_vm._v(_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.items.2.link\" )))]),_vm._v(_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.items.2.text\" ))+\" \")]),_c('li',[_c('a',{staticClass:\"link\",attrs:{\"href\":\"https://beta.gouv.fr/approche/fast/03-fast.html\"}},[_vm._v(_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.items.3.link\" )))]),_vm._v(\" \"+_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.items.3.text\" ))+\" \")]),_c('li',[_c('a',{staticClass:\"link\",attrs:{\"href\":\"https://www.modernisation.gouv.fr/action-publique-2022/fonds-pour-la-transformation-de-laction-publique/ftap-112-millions-deuros-pour-les-19-projets-laureats\"}},[_vm._v(_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.items.4.link\" )))]),_vm._v(\" \"+_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.items.4.text\" ))+\" \")])])]),_vm._m(1),_vm._m(2)])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"flex flex-row items-center my-8\"},[_c('div',{staticClass:\"bg-gray-500 h-px flex-1\"}),_c('div',{staticClass:\"inline-block bg-black text-white text-display-md px-4\"},[_vm._v(\" 2019 \")]),_c('div',{staticClass:\"bg-gray-500 h-px flex-1\"})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"flex flex-row flex-wrap items-center justify-between mt-8\"},[_c('a',{attrs:{\"href\":\"https://solidarites-sante.gouv.fr/\"}},[_c('img',{staticClass:\"h-24 m-2\",attrs:{\"src\":require(\"./assets/logo-gouvernement.jpg\")}})]),_c('a',{attrs:{\"href\":\"https://ec.europa.eu/info/index_en\"}},[_c('img',{staticClass:\"h-24 my-2\",attrs:{\"src\":require(\"./assets/logo-commission-europenne.png\")}})])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"flex flex-row flex-wrap items-center justify-between mt-8\"},[_c('a',{attrs:{\"href\":\"https://beta.gouv.fr/approche/incubateurs/mtes.html\"}},[_c('img',{staticClass:\"h-24 m-2\",attrs:{\"src\":require(\"./assets/logo-fabrique-numerique.png\")}})]),_c('a',{attrs:{\"href\":\"https://beta.gouv.fr/\"}},[_c('img',{staticClass:\"h-20 m-2\",attrs:{\"src\":require(\"./assets/logo_beta-gouv-fr.jpg\")}})]),_c('a',{attrs:{\"href\":\"https://entrepreneur-interet-general.etalab.gouv.fr/defis/2019/resorption-bidonvilles.html\"}},[_c('img',{staticClass:\"h-16 m-2\",attrs:{\"src\":require(\"./assets/logo-entrepreneur-interet-general.png\")}})])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"flex flex-row\"},[_c('div',[_c('font-awesome-icon',{staticClass:\"text-secondary\",attrs:{\"icon\":_vm.icon,\"size\":\"2x\"}})],1),_c('div',{staticClass:\"ml-2\"},[_c('span',{staticClass:\"font-bold text-display-md\"},[_vm._v(_vm._s(_vm.text))]),_c('span',[_vm._v(_vm._s(_vm.info))])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageBilanBlock.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageBilanBlock.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LandingPageBilanBlock.vue?vue&type=template&id=085a3c45&\"\nimport script from \"./LandingPageBilanBlock.vue?vue&type=script&lang=js&\"\nexport * from \"./LandingPageBilanBlock.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=a31a2632&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"bg-corail text-white full-width text-center py-8\"},[_c('PublicContainer',[_c('div',{staticClass:\"max-w-screen-md mx-auto\"},[_c('h2',{staticClass:\"text-display-lg text-white \"},[_vm._t(\"default\")],2),_c('div',{staticClass:\"pt-4\"},[_c('router-link',{attrs:{\"to\":\"/contact\"}},[_c('Button',{attrs:{\"variant\":\"primary\"}},[_vm._v(_vm._s(_vm.cta))])],1)],1)])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageBanner.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageBanner.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LandingPageBanner.vue?vue&type=template&id=3c28e919&\"\nimport script from \"./LandingPageBanner.vue?vue&type=script&lang=js&\"\nexport * from \"./LandingPageBanner.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"relative\"},[_vm._t(\"default\"),_c('div',{staticClass:\"absolute bottom-0 right-0 mr-4 text-white\"},[_vm._v(\" \"+_vm._s(_vm.credit)+\" \")])],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CreditWrapper.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CreditWrapper.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CreditWrapper.vue?vue&type=template&id=72d0c3ec&\"\nimport script from \"./CreditWrapper.vue?vue&type=script&lang=js&\"\nexport * from \"./CreditWrapper.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=5b1d281c&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--withMargin\"},[_c('NavBar'),_c('Form',_vm._b({on:{\"complete\":_vm.onComplete},model:{value:(_vm.formData),callback:function ($$v) {_vm.formData=$$v},expression:\"formData\"}},'Form',_vm.formDefinition,false))],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('header',{attrs:{\"role\":\"navigation\"}},[_c('div',{staticClass:\"topbar\"},[_c('div',{staticClass:\"topbar-container\"},[_c('router-link',{staticClass:\"topbar-home\",attrs:{\"to\":\"/landing\"}},[_c('img',{staticClass:\"topbar-marianne\",attrs:{\"src\":\"/img/logo-marianne.svg\",\"alt\":\"france\"}}),_c('span',{staticClass:\"topbar-domain\"},[_vm._v(\"resorption-bidonvilles.\")]),_c('img',{staticClass:\"topbar-betagouv\",attrs:{\"src\":\"/img/betagouvfr.svg\",\"alt\":\"beta.gouv.fr\"}})]),_c('span',{ref:\"menu\",staticClass:\"topbar-menu\",on:{\"click\":_vm.showSidebar}},[_vm._v(\"Menu\")]),_c('ul',{staticClass:\"nav__links\"},_vm._l((_vm.items),function(item){return _c('li',{key:item.target,staticClass:\"nav__item\"},[(item.items)?_c('div',{staticClass:\"dropdown\"},[_vm._v(_vm._s(item.label)+\" \"),_c('div',{staticClass:\"dropdown-content\"},_vm._l((item.items),function(subitem){return _c('router-link',{key:subitem.target,class:Object.assign(subitem.classes || {}, subitem.group ? { active: _vm.isCurrentRouteAMemberOf(subitem.group) } : {}),attrs:{\"to\":subitem.target}},[_vm._v(_vm._s(subitem.label))])}),1)]):_c('router-link',{class:Object.assign(item.classes || {}, item.group ? { active: _vm.isCurrentRouteAMemberOf(item.group) } : {}),attrs:{\"to\":item.target}},[_vm._v(_vm._s(item.label))])],1)}),0)],1)]),_c('div',{ref:\"sidebar\",staticClass:\"sidebar\",class:{ opened: _vm.isSidebarOpened }},[_c('div',{staticClass:\"sidebar-cross\",on:{\"click\":_vm.hideSidebar}},[_c('img',{attrs:{\"src\":\"/img/cross.svg\",\"alt\":\"Fermer\"}})]),_c('ul',{staticClass:\"nav__links\"},_vm._l((_vm.items),function(item){return _c('li',{key:item.target,staticClass:\"nav__item\"},[(item.items)?_c('div',{staticClass:\"dropdown\"},[_vm._v(_vm._s(item.label)+\" \"),_c('div',{staticClass:\"dropdown-content\"},_vm._l((item.items),function(subitem){return _c('router-link',{key:subitem.target,class:Object.assign(subitem.classes || {}, subitem.group ? { active: _vm.isCurrentRouteAMemberOf(subitem.group) } : {}),attrs:{\"to\":subitem.target}},[_vm._v(_vm._s(subitem.label))])}),1)]):_c('router-link',{class:Object.assign(item.classes || {}, item.group ? { active: _vm.isCurrentRouteAMemberOf(item.group) } : {}),attrs:{\"to\":item.target}},[_vm._v(_vm._s(item.label))])],1)}),0)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","let tab = null;\n\nexport function open(url) {\n if (tab === null || tab.closed) {\n tab = window.open(url, \"_blank\");\n } else {\n tab.location = url;\n tab.location.reload();\n tab.focus();\n }\n}\n\nexport default open;\n","import Vue from \"vue\";\nimport { getToken, logout } from \"#helpers/api/user\";\nimport { router } from \"#app/router\";\nimport { open as openTab } from \"#helpers/tabHelper\";\nimport version from \"#root/version.json\";\n\n/**\n * Generic error codes\n *\n * @readonly\n * @enum {number}\n */\nconst ERRORS = {\n MISSING_TOKEN: 1,\n EXPIRED_OR_INVALID_TOKEN: 2\n};\n\n/**\n * Handles a response from the API\n *\n * @param {Function} success Success callback\n * @param {Function} failure Failure callback\n */\nfunction handleRequestResponse(success, failure) {\n let response = null;\n try {\n response = this.responseText\n ? JSON.parse(this.responseText)\n : this.responseText;\n } catch (error) {\n failure({\n user_message: \"Une erreur inconnue est survenue\",\n developer_message: \"Failed to parsed the server's response\"\n });\n return;\n }\n\n if (response.success === true && response.response !== undefined) {\n success(response.response);\n return;\n }\n\n if (this.status / 200 < 1 || this.status / 200 >= 1.5) {\n const errorObject = (response && response.error) || response || {};\n switch (errorObject.code) {\n // handle generic errors\n case ERRORS.MISSING_TOKEN:\n case ERRORS.EXPIRED_OR_INVALID_TOKEN:\n logout(Vue.prototype.$piwik);\n router.push(\"/\");\n break;\n\n // for everything else, let the current component decide what's best\n default:\n failure(\n errorObject.user_message\n ? errorObject\n : {\n user_message: \"Une erreur inconnue est survenue\",\n developer_message:\n \"The server responded with an error status but did not provide error details\"\n }\n );\n }\n\n return;\n }\n\n success(response);\n}\n\n/**\n * Handles a failure of the request\n *\n * This is different from the API responding with an error.\n * This function handles failures in reaching the API server like timeouts\n * or internal server errors preventing the API from actually providing\n * us with a response.\n *\n * @param {Function} callback\n */\nfunction handleRequestFailure(callback) {\n callback();\n}\n\n/**\n * Sends an API request\n *\n * @param {string} method\n * @param {string} url\n * @param {Object} [data]\n * @param {Object.} [headers]\n *\n * @returns {Promise}\n */\nfunction request(method, url, data, headers = {}) {\n const xhr = new XMLHttpRequest();\n const promise = new Promise((success, failure) => {\n xhr.open(method, `${process.env.VUE_APP_API_URL}${url}`);\n\n Object.keys(headers).forEach(name => {\n xhr.setRequestHeader(name, headers[name]);\n });\n\n if (!Object.prototype.hasOwnProperty.call(headers, \"x-access-token\")) {\n const token = getToken();\n if (token !== null) {\n xhr.setRequestHeader(\"x-access-token\", token);\n }\n }\n\n xhr.setRequestHeader(\"x-app-version\", version);\n\n xhr.onload = handleRequestResponse.bind(xhr, success, failure);\n xhr.onerror = handleRequestFailure.bind(xhr, failure);\n xhr.ontimeout = handleRequestFailure.bind(xhr, failure);\n\n if (data !== undefined) {\n if (\n !Object.prototype.hasOwnProperty.call(headers, \"Content-Type\")\n ) {\n xhr.setRequestHeader(\"Content-Type\", \"application/json\");\n }\n\n xhr.send(JSON.stringify(data));\n } else {\n xhr.send();\n }\n });\n promise.abort = () => {\n xhr.abort();\n };\n\n return promise;\n}\n\n/**\n * Alias for GET requests\n *\n * @param {string} url\n * @param {Object} [data]\n * @param {Object.} [headers]\n *\n * @returns {Promise}\n */\nexport function getApi(url, data, headers) {\n return request(\"GET\", url, data, headers);\n}\n\n/**\n * Alias for POST requests\n *\n * @param {string} url\n * @param {Object} [data]\n * @param {Object.} [headers]\n *\n * @returns {Promise}\n */\nexport function postApi(url, data, headers) {\n return request(\"POST\", url, data, headers);\n}\n\n/**\n * Alias for DELETE requests\n *\n * @param {string} url\n * @param {Object} [data]\n * @param {Object.} [headers]\n *\n * @returns {Promise}\n */\nexport function deleteApi(url, data, headers) {\n return request(\"DELETE\", url, data, headers);\n}\n\n/**\n * Alias for PATCH requests\n *\n * @param {string} url\n * @param {Object} [data]\n * @param {Object.} [headers]\n *\n * @returns {Promise}\n */\nexport function patchApi(url, data, headers) {\n return request(\"PATCH\", url, data, headers);\n}\n\n/**\n * Alias for PUT requests\n *\n * @param {string} url\n * @param {Object} [data]\n * @param {Object.} [headers]\n *\n * @returns {Promise}\n */\nexport function putApi(url, data, headers) {\n return request(\"PUT\", url, data, headers);\n}\n\n/**\n * Opens a new tab with the given URL\n *\n * Appends the access token to the request\n *\n * @param {String} url\n */\nexport function open(url) {\n return openTab(\n `${url}${\n url.indexOf(\"?\") === -1 ? \"?\" : \"&\"\n }accessToken=${encodeURIComponent(getToken())}`\n );\n}\n","import { getApi, postApi } from \"#helpers/api/main\";\nimport { refreshToken } from \"#helpers/api/user\";\n\n/**\n * Loaded configuration\n *\n * @type {Configuration|null}\n */\nlet configuration = null;\n\n/**\n * Checks if the configuration for the current user is loaded\n *\n * The configuration consists in:\n * - data specific to the current user (email, name, etc., this kind of stuff)\n * - static data that can be reused all over the app (list of town's field types, owner types, and so on)\n *\n * The reason behind loading the static data is to avoid fetching it each time a component needs it,\n * which we can assume will be VERY OFTEN.\n * It makes us save a few useless HTTP requests in the future.\n *\n * @returns {boolean}\n */\nexport function isLoaded() {\n return configuration !== null;\n}\n\n/**\n * Loads the configuration for the current user\n *\n * If there is no user currently logged in, this request will fail.\n *\n * @returns {Promise}\n */\nexport function load() {\n return getApi(\"/config\").then(response => {\n // refresh the token, by the way\n refreshToken();\n\n configuration = response;\n return response;\n });\n}\n\n/**\n * Unloads the current configuration\n *\n * Should be used whenever the current user logs out\n */\nexport function unload() {\n configuration = null;\n}\n\n/**\n * Returns the current configuration\n *\n * @returns {Configuration|null}\n */\nexport function get() {\n return configuration;\n}\n\n/**\n * Updates the local configuration\n *\n * @param {String} property A chain of properties (example: user.first_name)\n * @param {Object} value The new value for the property\n *\n * @returns {undefined}\n */\nexport function set(property, value) {\n if (configuration === null) {\n return;\n }\n\n const chain = property.split(\".\");\n let ref = configuration;\n\n while (chain.length > 1) {\n if (ref === undefined) {\n return;\n }\n\n ref = ref[chain.shift()];\n }\n\n ref[chain[0]] = value;\n}\n\n/**\n * @param {String} permission\n *\n * @returns {Permission}\n */\nexport function getPermission(permissionName) {\n if (configuration === null || configuration.user === null) {\n return null;\n }\n\n const [entity, feature] = permissionName.split(\".\");\n if (\n !Object.prototype.hasOwnProperty.call(\n configuration.user.permissions,\n entity\n ) ||\n !Object.prototype.hasOwnProperty.call(\n configuration.user.permissions[entity],\n feature\n )\n ) {\n return null;\n }\n\n const permission = configuration.user.permissions[entity][feature];\n if (permission.allowed !== true) {\n return null;\n }\n\n return permission;\n}\n\n/**\n * Checks if the current user has a specific permission\n *\n * @param {String} permission\n *\n * @returns {boolean}\n */\nexport function hasPermission(permissionName) {\n const [entity, feature, data] = permissionName.split(\".\");\n const permission = getPermission(`${entity}.${feature}`);\n\n return (\n permission !== null && (data === undefined || permission[data] === true)\n );\n}\n\n/**\n * Marks a changelog as read\n *\n * @param {Number} version The latest version read by the user\n *\n * @returns {Promise}\n */\nexport function closeChangelog(version) {\n return postApi(\"/changelog\", { version });\n}\n\n/**\n * Indicates whether the current user has accepted the charte\n *\n * @returns {Boolean}\n */\nexport function hasAcceptedCharte() {\n if (configuration === null) {\n return false;\n }\n\n return configuration.user.charte_engagement_a_jour;\n}\n\n/**\n * @typedef {Object} Configuration\n * @property {UserConfiguration} user\n * @property {Array} field_types\n */\n\n/**\n * @typedef {Object} UserConfiguration\n * @property {string} email\n */\n","import { unload as unloadConfig } from \"#helpers/api/config\";\nimport { postApi, putApi, getApi, deleteApi } from \"#helpers/api/main\";\n\n/**\n * Sends a login request for the given user\n *\n * Please note that in case of success, a JWT token is stored in the local storage,\n * which is the only way we have to detect wether the current user is logged in\n * or not.\n * @see isLoggedIn()\n *\n * @param {string} email\n * @param {string} password\n *\n * @returns {Promise}\n */\nexport function login(email, password) {\n return postApi(\"/signin\", { email, password }).then(response => {\n localStorage.setItem(\"token\", response.token);\n return response;\n });\n}\n\n/**\n * Renews the access token for a few more time\n *\n * @returns {Promise}\n */\nexport function refreshToken() {\n return getApi(\"/refreshToken\").then(response => {\n localStorage.setItem(\"token\", response.token);\n });\n}\n\n/**\n * Logs the user out\n *\n * Basically, all we have to do is remove the token from local storage.\n *\n * @param {Matomo} piwik\n */\nexport function logout(piwik) {\n unloadConfig();\n localStorage.removeItem(\"token\");\n\n if (piwik) {\n piwik.resetUserId();\n piwik.setCustomVariable(1, \"superuser\", null);\n piwik.setCustomVariable(2, \"structure\", null);\n piwik.setCustomVariable(3, \"niveau_geo\", null);\n piwik.setCustomVariable(4, \"geo_nom\", null);\n }\n}\n\n/**\n * Checks if the current user is logged in or not\n *\n * This check is only based on the existence of an 'auth_token' entry in the local storage,\n * NOT on its validity.\n * This should not cause safety issues as the backend should always validate that token before\n * accepting any requests.\n *\n * @returns {boolean}\n */\nexport function isLoggedIn() {\n return localStorage.getItem(\"token\") !== null;\n}\n\n/**\n * Checks if the current visitor has already been logged at least once\n *\n * @returns {Boolean}\n */\nexport function alreadyLoggedBefore() {\n return localStorage.getItem(\"logged_once\") === true;\n}\n\n/**\n * Returns the access token of the current session (if any)\n *\n * @returns {string|null}\n */\nexport function getToken() {\n return localStorage.getItem(\"token\");\n}\n\n/**\n * POST /users\n */\nexport function create(data) {\n return postApi(\"/users\", data);\n}\n\n/**\n * Returns all available data about the current user\n *\n * @returns {Promise}\n */\nexport function me() {\n return getApi(\"/me\");\n}\n\n/**\n * Updates data about the current user\n *\n * @param {User_Data} data\n *\n * @returns {Promise}\n */\nexport function edit(data) {\n return postApi(\"/me\", data);\n}\n\n/**\n * Updates the default export for the current user\n *\n * @param {string} defaultExport\n *\n * @returns {Promise}\n */\nexport function setDefaultExport(defaultExport) {\n return postApi(\"/me/default-export\", {\n export: defaultExport\n });\n}\n\n/**\n * GET /users\n */\nexport function list() {\n return getApi(\"/users\");\n}\n\n/**\n * GET /users/:id\n */\nexport function get(id) {\n return getApi(`/users/${id}`);\n}\n\n/**\n * POST /users/:id/sendActivationLink\n */\nexport function sendActivationLink(user, data) {\n return postApi(`/users/${user}/sendActivationLink`, data);\n}\n\n/**\n * POST /users/:id/denyAccess\n */\nexport function denyAccess(user) {\n return postApi(`/users/${user}/denyAccess`);\n}\n\n/**\n * GET /activation-tokens/:token/check\n */\nexport function checkActivationToken(token) {\n return getApi(`/activation-tokens/${encodeURIComponent(token)}/check`);\n}\n\n/**\n * GET /password-tokens/:token/check\n */\nexport function checkPasswordToken(token) {\n return getApi(`/password-tokens/${encodeURIComponent(token)}/check`);\n}\n\n/**\n * POST /users/:id/activate\n */\nexport function activate(userId, data) {\n return postApi(`/users/${userId}/activate`, data);\n}\n\n/**\n * POST /users/:id/newPassword\n */\nexport function setPassword(userId, data) {\n return postApi(`/users/${userId}/newPassword`, data);\n}\n\n/**\n * POST /users/:id/upgrade\n */\nexport function upgrade(userId, data) {\n return postApi(`/users/${userId}/upgrade`, data);\n}\n\n/**\n * DELETE /users/:id\n */\nexport function remove(userId) {\n return deleteApi(`/users/${userId}`);\n}\n\n/**\n * POST /users/new-password\n */\nexport function requestNewPassword(email) {\n return postApi(\"/users/new-password\", { email });\n}\n\n/**\n * GET /directory\n */\nexport function getDirectory() {\n return getApi(\"/directory\");\n}\n\n/**\n * GET /organizations/search\n */\nexport function autocompleteOrganization(str) {\n return getApi(`/organizations/search?query=${encodeURIComponent(str)}`);\n}\n\n/**\n * PUT /users/:id/charte_engagement\n */\nexport function acceptCharte(\n userId,\n charteVersion,\n charteAgreement,\n confidentialityAgreement\n) {\n return putApi(`/users/${userId}/charte_engagement`, {\n version_de_charte: charteVersion,\n charte_agreement: charteAgreement,\n confidentiality_agreement: confidentialityAgreement\n });\n}\n\n/**\n * @typedef {Object} User_Data\n * @property {string} first_name\n * @property {string} last_name\n * @property {string} [password]\n */\n","export default {\n anonymous: [\n { label: \"Connexion\", target: \"/connexion\" },\n { label: \"Demander un accès\", target: \"/contact\" },\n {\n label: \"Aide\",\n items: [\n { label: \"Nous contacter\", target: \"/feedback\" },\n { label: \"Mentions légales\", target: \"/mentions-legales\" },\n { label: \"CGUs\", target: \"/conditions-d-utilisation\" }\n ]\n }\n ],\n loading: [\n {\n label: \"Aide\",\n items: [\n { label: \"Nous contacter\", target: \"/feedback\" },\n { label: \"Mentions légales\", target: \"/mentions-legales\" },\n { label: \"CGUs\", target: \"/conditions-d-utilisation\" }\n ]\n },\n { label: \"Déconnexion\", target: \"/deconnexion\" }\n ],\n loaded: [\n {\n label: \"Covid-19\",\n target: \"/covid-19\",\n classes: {\n \"router-link--covid\": true\n }\n },\n {\n label: \"Sites\",\n items: [\n {\n label: \"Liste des sites\",\n target: \"/liste-des-sites\",\n group: \"townList\"\n },\n {\n label: \"Déclarer un site\",\n target: \"/nouveau-site\",\n group: \"townCreation\"\n }\n ]\n },\n {\n label: \"Dispositifs\",\n items: [\n {\n label: \"Liste des dispositifs\",\n target: \"/liste-des-dispositifs\"\n },\n {\n label: \"Déclarer un dispositif\",\n target: \"/nouveau-dispositif\"\n }\n ]\n },\n {\n label: \"Annuaire\",\n target: \"/annuaire\",\n group: \"directory\"\n },\n {\n label: \"Administration\",\n items: [\n {\n label: \"Liste des utilisateurs\",\n target: \"/liste-des-utilisateurs\",\n group: \"users\"\n },\n {\n label: \"Créer un utilisateur\",\n target: \"/nouvel-utilisateur\",\n group: \"userCreation\"\n },\n {\n label: \"Statistiques\",\n target: \"/statistiques\",\n group: \"stats\"\n },\n {\n label: \"Historique des activités\",\n target: \"/historique-des-activites\",\n group: \"admin\"\n }\n ]\n },\n {\n label: \"Mon compte\",\n items: [\n {\n label: \"Gérer mon compte\",\n target: \"/mon-compte\",\n group: \"me\"\n },\n { label: \"Déconnexion\", target: \"/deconnexion\" }\n ]\n },\n {\n label: \"Aide\",\n items: [\n { label: \"Nous contacter\", target: \"/feedback\" },\n { label: \"Mentions légales\", target: \"/mentions-legales\" },\n { label: \"CGUs\", target: \"/conditions-d-utilisation\" }\n ]\n }\n ]\n};\n","import { isLoggedIn } from \"#helpers/api/user\";\nimport {\n isLoaded as isConfigLoaded,\n hasPermission,\n hasAcceptedCharte\n} from \"#helpers/api/config\";\nimport ITEMS from \"./items\";\n\nexport default {\n data() {\n return {\n isSidebarOpened: false\n };\n },\n computed: {\n items() {\n if (isLoggedIn() !== true) {\n return ITEMS.anonymous;\n }\n\n if (isConfigLoaded() !== true || hasAcceptedCharte() !== true) {\n return ITEMS.loading;\n }\n\n return this.filterItems(ITEMS.loaded);\n }\n },\n methods: {\n filterItems(items) {\n return items\n .map(item => {\n if (item.items) {\n return Object.assign(item, {\n items: item.items.filter(subitem =>\n this.isItemAllowed(subitem)\n )\n });\n }\n\n return item;\n })\n .filter(item => {\n if (item.items) {\n return item.items.length > 0;\n }\n\n return this.isItemAllowed(item);\n });\n },\n isItemAllowed(item) {\n const requiredPermissions = this.$router.resolve({\n path: item.target\n }).route.meta.permissions;\n\n if (!requiredPermissions) {\n return true;\n }\n\n return requiredPermissions.every(permission =>\n hasPermission(permission)\n );\n },\n isCurrentRouteAMemberOf(group) {\n return this.$route.matched.some(\n route => route.meta.group === group\n );\n },\n showSidebar() {\n this.isSidebarOpened = true;\n },\n hideSidebar() {\n this.isSidebarOpened = false;\n },\n checkClickOutsideSidebar(event) {\n // in case of a click outside the sidebar and NOT on the \"Menu\" link\n if (\n !this.$refs.sidebar.contains(event.target) &&\n event.target !== this.$refs.menu\n ) {\n this.hideSidebar();\n }\n }\n },\n mounted() {\n document.addEventListener(\"click\", this.checkClickOutsideSidebar);\n },\n destroyed() {\n document.removeEventListener(\"click\", this.checkClickOutsideSidebar);\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./navbar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./navbar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./navbar.vue?vue&type=template&id=b24b83de&scoped=true&lang=pug&\"\nimport script from \"./navbar.vue?vue&type=script&lang=js&\"\nexport * from \"./navbar.vue?vue&type=script&lang=js&\"\nimport style0 from \"./navbar.vue?vue&type=style&index=0&id=b24b83de&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"b24b83de\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"form\",attrs:{\"id\":\"top\"}},[_c('header',{staticClass:\"form-header\"},[_c('div',{staticClass:\"container\"},[_c('h1',{staticClass:\"form-title\"},[_vm._v(_vm._s(_vm.title || 'Formulaire'))])])]),_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"form-body\"},[_c('div',{staticClass:\"container\"},[(_vm.description)?_c('SlideNote',{attrs:{\"title\":_vm.descriptionTitle,\"content\":_vm.description}}):_vm._e(),_vm._l((_vm.fullSections),function(section){return _c('section',{staticClass:\"formSection\"},[_c('header',{staticClass:\"formSection-header\"},[(section.title)?_c('h1',{staticClass:\"formSection-title\"},[_c('span',{staticClass:\"formSection-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":section.icon || 'flag'}})],1),_vm._v(\" \"+_vm._s(section.title)+\" \")]):_vm._e(),(section.description)?_c('p',{staticClass:\"formSection-description\",domProps:{\"innerHTML\":_vm._s(section.description)}}):_vm._e()]),_c('div',[_c('span',{staticStyle:{\"display\":\"none\"}},[_vm._v(_vm._s(_vm.refreshId))]),_vm._l((section.inputs),function(input,inputId){return (_vm.isInputVisible(input))?_c('Input',_vm._b({key:inputId,attrs:{\"id\":inputId,\"errors\":(_vm.errors && _vm.errors.fields && _vm.errors.fields[inputId]) || undefined,\"disabled\":_vm.isInputDisabled(input),\"alertMessage\":_vm.getInputAlert(input)},on:{\"change\":_vm.onDataChange},model:{value:(_vm.data[inputId]),callback:function ($$v) {_vm.$set(_vm.data, inputId, $$v)},expression:\"data[inputId]\"}},'Input',input,false)):_vm._e()})],2)])}),(_vm.errors && _vm.errors.main)?_c('div',{staticClass:\"notification error\"},[_c('span',[_vm._v(_vm._s(_vm.wording.error + ' : ' + _vm.errors.main))]),(_vm.numberOfFilteredErrors > 0)?_c('p',[_vm._v(\"Les champs en erreur sont : \"),_c('ul',_vm._l((_vm.filteredErrors),function(details,inputId){return _c('li',[_c('a',{on:{\"click\":function($event){_vm.$router.replace('#top', function () { return _vm.$router.replace((\"#\" + inputId)); });}}},[_vm._v(_vm._s((_vm.getInputById(inputId) || {}).label || 'inconnu'))])])}),0)]):_vm._e()]):_vm._e(),_c('section',{staticClass:\"form-stepNav\"},[(_vm.submitPrefix)?_c('p',{domProps:{\"innerHTML\":_vm._s(_vm.submitPrefix)}}):_vm._e(),_c('button',{staticClass:\"form-stepButton button\",attrs:{\"data-cy-button\":\"submit\",\"disabled\":_vm.pending},on:{\"click\":_vm.submit}},[(!_vm.pending)?_c('span',[_vm._v(_vm._s(_vm.wording.submit))]):_c('img',{attrs:{\"src\":\"/img/spinner_light.svg\",\"width\":\"20\"}})])])],2)])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"form__group inputContainer\",class:{ error: _vm.errors.length > 0 },attrs:{\"id\":_vm.id}},[_c('label',{staticClass:\"input-label\"},[_vm._v(_vm._s(_vm.label)),(_vm.mandatory)?_c('sup',{staticClass:\"input-mandatory\"},[_vm._v(\" (*)\")]):_vm._e()]),(_vm.alertMessage)?_c('p',{staticClass:\"notification warning\"},[_vm._v(_vm._s(_vm.alertMessage))]):_c('div',[(_vm.description)?_c('p',{staticClass:\"input-description\",domProps:{\"innerHTML\":_vm._s(_vm.description)}}):_vm._e(),(_vm.errors.length > 0)?_c('div',{staticClass:\"notification error\"},_vm._l((_vm.errors),function(error){return _c('ul',[_c('li',[_vm._v(_vm._s(error))])])}),0):_vm._e(),(_vm.type === 'text')?_c('input',_vm._b({directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data),expression:\"data\"}],staticClass:\"input input--text\",attrs:{\"data-cy-field\":_vm.id,\"type\":\"text\",\"id\":(\"input-\" + _vm.id),\"disabled\":_vm.disabled,\"readonly\":_vm.disabled},domProps:{\"value\":(_vm.data)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.data=$event.target.value}}},'input',_vm.props,false)):_vm._e(),(_vm.type === 'hidden')?_c('input',_vm._b({directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data),expression:\"data\"}],staticClass:\"input input--hidden\",attrs:{\"data-cy-field\":_vm.id,\"type\":\"hidden\",\"id\":(\"input-\" + _vm.id),\"disabled\":_vm.disabled,\"readonly\":_vm.disabled},domProps:{\"value\":(_vm.data)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.data=$event.target.value}}},'input',_vm.props,false)):_vm._e(),((_vm.showPassword ? 'text' : 'password')==='checkbox'&&(_vm.type === 'password'))?_c('input',_vm._b({directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data),expression:\"data\"}],staticClass:\"input input--password\",attrs:{\"data-cy-field\":_vm.id,\"id\":(\"input-\" + _vm.id),\"disabled\":_vm.disabled,\"readonly\":_vm.disabled,\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.data)?_vm._i(_vm.data,null)>-1:(_vm.data)},on:{\"change\":function($event){var $$a=_vm.data,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.data=$$a.concat([$$v]))}else{$$i>-1&&(_vm.data=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.data=$$c}}}},'input',_vm.props,false)):((_vm.showPassword ? 'text' : 'password')==='radio'&&(_vm.type === 'password'))?_c('input',_vm._b({directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data),expression:\"data\"}],staticClass:\"input input--password\",attrs:{\"data-cy-field\":_vm.id,\"id\":(\"input-\" + _vm.id),\"disabled\":_vm.disabled,\"readonly\":_vm.disabled,\"type\":\"radio\"},domProps:{\"checked\":_vm._q(_vm.data,null)},on:{\"change\":function($event){_vm.data=null}}},'input',_vm.props,false)):(_vm.type === 'password')?_c('input',_vm._b({directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data),expression:\"data\"}],staticClass:\"input input--password\",attrs:{\"data-cy-field\":_vm.id,\"id\":(\"input-\" + _vm.id),\"disabled\":_vm.disabled,\"readonly\":_vm.disabled,\"type\":_vm.showPassword ? 'text' : 'password'},domProps:{\"value\":(_vm.data)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.data=$event.target.value}}},'input',_vm.props,false)):_vm._e(),(_vm.type === 'password')?_c('span',{staticClass:\"input--password-toggler\",on:{\"click\":function($event){_vm.showPassword = !_vm.showPassword}}},[_c('font-awesome-icon',{attrs:{\"icon\":_vm.showPassword ? 'eye' : 'eye-slash'}})],1):_vm._e(),(_vm.type === 'textarea')?_c('textarea',_vm._b({directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data),expression:\"data\"}],staticClass:\"input input--textarea\",attrs:{\"data-cy-field\":_vm.id,\"id\":(\"input-\" + _vm.id),\"disabled\":_vm.disabled,\"readonly\":_vm.disabled},domProps:{\"value\":(_vm.data)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.data=$event.target.value}}},'textarea',_vm.props,false)):_vm._e(),(_vm.type === 'number')?_c('input',_vm._b({directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data),expression:\"data\"}],staticClass:\"input input--number\",attrs:{\"data-cy-field\":_vm.id,\"type\":\"number\",\"id\":(\"input-\" + _vm.id),\"disabled\":_vm.disabled,\"readonly\":_vm.disabled},domProps:{\"value\":(_vm.data)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.data=$event.target.value}}},'input',_vm.props,false)):_vm._e(),(_vm.type === 'select' || _vm.type === 'selectMultiple')?_c('select',_vm._b({directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data),expression:\"data\"}],staticClass:\"input input--select\",attrs:{\"data-cy-field\":_vm.id,\"id\":(\"input-\" + _vm.id),\"multiple\":_vm.type === 'selectMultiple',\"disabled\":_vm.disabled},on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.data=$event.target.multiple ? $$selectedVal : $$selectedVal[0]}}},'select',_vm.props,false),[_vm._l((Object.keys(_vm.options)),function(groupName){return (_vm.optionsAreGrouped)?_c('optgroup',{attrs:{\"label\":_vm.options[groupName].label}},_vm._l((_vm.options[groupName].options),function(option){return _c('option',{domProps:{\"value\":option.value}},[_vm._v(_vm._s(option.label))])}),0):_vm._e()}),_vm._l((_vm.options),function(option){return (!_vm.optionsAreGrouped)?_c('option',{domProps:{\"value\":option.value}},[_vm._v(_vm._s(option.label))]):_vm._e()})],2):_vm._e(),(_vm.type === 'radio')?_c('ul',{staticClass:\"input input--radio\",attrs:{\"id\":(\"input-\" + _vm.id)}},_vm._l((_vm.options),function(option,index){return _c('li',{staticClass:\"input--radio-option\"},[_c('label',{attrs:{\"for\":(\"input\" + _vm._uid + \"-\" + index)}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data),expression:\"data\"}],staticClass:\"input input--radio\",attrs:{\"type\":\"radio\",\"data-cy-field\":_vm.id,\"data-cy-label\":option.label,\"id\":(\"input\" + _vm._uid + \"-\" + index),\"name\":(\"input\" + _vm._uid),\"disabled\":_vm.disabled},domProps:{\"value\":option.value,\"checked\":_vm._q(_vm.data,option.value)},on:{\"change\":function($event){_vm.data=option.value}}}),_vm._v(\" \"+_vm._s(option.label)+\" \")])])}),0):_vm._e(),(_vm.type === 'checkbox')?_c('ul',{staticClass:\"input--checkbox\",attrs:{\"id\":(\"input-\" + _vm.id)}},_vm._l((_vm.options),function(option,index){return _c('li',{staticClass:\"input--checkbox-option\"},[_c('label',{attrs:{\"for\":(\"input\" + _vm._uid + \"-\" + index)}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data),expression:\"data\"}],staticClass:\"input input--checkbox\",attrs:{\"type\":\"checkbox\",\"data-cy-field\":_vm.id,\"data-cy-label\":option.label,\"id\":(\"input\" + _vm._uid + \"-\" + index),\"name\":(\"input\" + _vm._uid),\"disabled\":_vm.disabled},domProps:{\"value\":option.value,\"checked\":Array.isArray(_vm.data)?_vm._i(_vm.data,option.value)>-1:(_vm.data)},on:{\"change\":function($event){var $$a=_vm.data,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=option.value,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.data=$$a.concat([$$v]))}else{$$i>-1&&(_vm.data=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.data=$$c}}}}),_vm._v(\" \"+_vm._s(option.label)+\" \")])])}),0):_vm._e(),(_vm.type === 'date')?_c('Datepicker',_vm._b({attrs:{\"data-cy-field\":_vm.id,\"input-class\":\"input input--date\",\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'Datepicker',_vm.props,false)):_vm._e(),(_vm.type === 'autocompleter')?_c('Autocompleter',_vm._b({attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'Autocompleter',_vm.props,false)):_vm._e(),(_vm.type === 'address')?_c('Address',_vm._b({attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'Address',_vm.props,false)):_vm._e(),(_vm.type === 'location')?_c('Location',_vm._b({attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'Location',_vm.props,false)):_vm._e(),(_vm.type === 'addressWithLocation')?_c('AddressWithLocation',_vm._b({attrs:{\"data-cy-field\":_vm.id,\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'AddressWithLocation',_vm.props,false)):_vm._e(),(_vm.type === 'townList')?_c('TownList',_vm._b({attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'TownList',_vm.props,false)):_vm._e(),(_vm.type === 'planFunding')?_c('PlanFunding',_vm._b({attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'PlanFunding',_vm.props,false)):_vm._e(),(_vm.type === 'collectivity')?_c('Collectivity',_vm._b({attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'Collectivity',_vm.props,false)):_vm._e(),(_vm.type === 'organization')?_c('Organization',_vm._b({attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'Organization',_vm.props,false)):_vm._e(),(_vm.type === 'etp')?_c('Etp',_vm._b({attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'Etp',_vm.props,false)):_vm._e(),(_vm.type === 'audience')?_c('Audience',_vm._b({attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'Audience',_vm.props,false)):_vm._e(),(_vm.type === 'planHousing')?_c('PlanHousing',_vm._b({attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'PlanHousing',_vm.props,false)):_vm._e()],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"autocompleter\"},[_c('div',{ref:\"measure\",staticClass:\"autocompleter-measure\"},[_vm._v(_vm._s(_vm.currentLabel))]),_c('div',{staticClass:\"autocompleter-textfield\"},[_c('div',{ref:\"prefixIcon\",staticClass:\"autocompleter-prefixIcon\"},[_c('img',{attrs:{\"src\":\"/img/search.svg\"}})]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.currentLabel),expression:\"currentLabel\"}],ref:\"input\",attrs:{\"type\":\"text\",\"disabled\":_vm.disabled,\"readonly\":_vm.disabled,\"placeholder\":_vm.placeholder},domProps:{\"value\":(_vm.currentLabel)},on:{\"keydown\":_vm.onNavigation,\"keyup\":_vm.onType,\"focus\":function($event){_vm.focused = true},\"blur\":function($event){_vm.focused = false},\"input\":function($event){if($event.target.composing){ return; }_vm.currentLabel=$event.target.value}}}),_c('div',{ref:\"spinner\",staticClass:\"autocompleter-spinner\",style:({ visibility: _vm.suggestionRequest.pending ? 'visible' : 'hidden' })},[_c('img',{attrs:{\"src\":\"/img/spinner_dark.svg\"}})]),(_vm.currentLabel && !_vm.disabled)?_c('span',{ref:\"suffixIcon\",staticClass:\"autocompleter-clearIcon\",on:{\"click\":_vm.clearLabel}}):_vm._e(),(_vm.suggestions !== null)?_c('div',{ref:\"suggestionContainer\",staticClass:\"autocompleter-suggestionContainer\",class:{ 'autocompleter-suggestionContainer--float': _vm.float, 'autocompleter-suggestionContainer--withoutCategories': !_vm.showCategory }},_vm._l((_vm.nonEmptyCategories),function(category){return (_vm.nonEmptyCategories.length > 0)?_c('div',{staticClass:\"autocompleter-suggestionCategoryContainer\"},[(_vm.showCategory)?_c('div',{staticClass:\"autocompleter-suggestionCategory\"},[_vm._v(_vm._s(category))]):_vm._e(),_c('ul',{staticClass:\"autocompleter-suggestionCategoryItems\"},_vm._l((_vm.unselectedSuggestions[category]),function(item){return _c('li',{staticClass:\"autocompleter-suggestionCategoryItem\",class:{ 'autocompleter-suggestionCategoryItem--empty': item.isExtra, 'active': item.id === _vm.idOfHighlightedItem },on:{\"click\":function($event){return _vm.selectItem(item)}}},[_vm._v(_vm._s(item.label))])}),0)]):_vm._e()}),0):_vm._e(),(_vm.suggestions === null && _vm.suggestionRequest.error && _vm.float)?_c('div',{staticClass:\"autocompleter-suggestionContainer autocompleter-suggestionContainer--float autocompleter-suggestionContainer--withoutCategories\"},[_c('div',{staticClass:\"autocompleter-suggestionCategoryContainer\"},[_c('ul',{staticClass:\"autocompleter-suggestionCategoryItems\"},[_c('li',{staticClass:\"autocompleter-suggestionCategoryItem autocompleter-suggestionCategoryItem--error\"},[_c('img',{attrs:{\"src\":\"/img/warning.svg\"}}),_vm._v(\" \"+_vm._s(_vm.suggestionRequest.error))])])])]):_vm._e()]),(_vm.suggestionRequest.error && !_vm.float)?_c('p',{staticClass:\"autocompleter-error\"},[_c('img',{attrs:{\"src\":\"/img/warning.svg\"}}),_c('span',[_vm._v(_vm._s(_vm.suggestionRequest.error))])]):_vm._e(),(_vm.allowMultiple && _vm.selectedItems.length > 0)?_c('div',{staticClass:\"autocompleter-selectionContainer\"},[_c('p',[_vm._v(_vm._s(_vm.wording.selectedItems)+\" :\")]),_c('table',{staticClass:\"table\"},[_c('thead',[_c('tr',[_c('th',[_vm._v(_vm._s(_vm.wording.label))]),_c('th',[_vm._v(\"Actions\")])])]),_c('tbody',_vm._l((_vm.selectedItems),function(item){return _c('tr',[_c('td',[_vm._v(_vm._s(item.label))]),_c('td',[(!_vm.disabled)?_c('img',{staticClass:\"autocompleter-removeItemIcon\",attrs:{\"src\":\"/img/remove.svg\"},on:{\"click\":function($event){return _vm.unselectItem(item)}}}):_vm._e()])])}),0)])]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * Default timeout before triggering a suggestion request\n *\n * In milliseconds.\n *\n * @type {Number}\n */\nconst DEFAULT_TIMEOUT = 200;\n\nexport default {\n props: {\n /**\n * Function that can generate autocompletion suggestions\n *\n * The function must:\n * - take a string as an argument\n * - return a promise\n * - that promise eventually resolves with an Array.\n *\n * @type {Function}\n */\n autocompleter: {\n type: Function,\n required: true\n },\n\n /**\n * Whether the category of each item should be displayed\n *\n * @type {Boolean}\n */\n showCategory: {\n type: Boolean,\n required: false,\n default: false\n },\n\n /**\n * Whether the component allows to select more than one item\n *\n * @type {Boolean}\n */\n allowMultiple: {\n type: Boolean,\n required: false,\n default: false\n },\n\n /**\n * Whether the suggestions should be in position absolute\n *\n * @type {Boolean}\n */\n float: {\n type: Boolean,\n required: false,\n default: true\n },\n\n /**\n * Custom wording\n *\n * @type {Object.}\n */\n wording: {\n type: Object,\n required: false,\n default() {\n return {\n // appears above the list of selected items\n selectedItems: \"Éléments sélectionnés\",\n // label for the column containing the label of each selected item\n label: \"Label\"\n };\n }\n },\n\n /**\n * Function to be called when the item 'Add new item' is selected\n *\n * Please note that the item 'Add new item' is automatically added to the list\n * only if this function is provided.\n *\n * @type {Function}\n */\n createNew: {\n type: Function,\n required: false,\n default: null\n },\n\n /**\n * Default selected items\n *\n * @type {Array.}\n */\n value: {\n type: Array,\n required: false,\n default() {\n return [];\n }\n },\n\n /**\n * Whether the input should be disabled or not\n *\n * @type {Boolean}\n */\n disabled: {\n type: Boolean,\n required: false,\n default: false\n },\n\n /**\n * Placeholder\n *\n * @type {String}\n */\n placeholder: {\n type: String,\n required: false\n }\n },\n\n data() {\n let label = \"\";\n if (!this.allowMultiple && this.value.length === 1) {\n [{ label }] = this.value;\n }\n\n return {\n /**\n * Selected items\n *\n * @type {Array.}\n */\n selectedItems: this.value,\n\n /**\n * Current label of the input\n *\n * @type {String}\n */\n currentLabel: label,\n\n /**\n * The label before the new input\n *\n * @type {String}\n */\n previousLabel: label,\n\n /**\n * Wether the textfield is focused or not\n *\n * @type {Boolean}\n */\n focused: false,\n\n /**\n * List of suggestions\n *\n * An empty array means that we received an empty list of suggestions.\n * Null means that we do not have a list of suggestions.\n *\n * @type {Array.|null}\n */\n suggestions: null,\n\n /**\n * Properties of the suggestion HTTP request\n */\n suggestionRequest: {\n /** @type {Timeout|null} */\n timeout: null,\n\n /** @type {Promise|null} */\n promise: null,\n\n /** @type {Boolean} */\n pending: false,\n\n /** @type {String|null} */\n error: null\n },\n\n /**\n * Index of the currently highlighted item\n *\n * Null, if the keyboard navigation is not triggered yet.\n *\n * @type {Number|null}\n */\n indexOfHighligtedItem: null\n };\n },\n\n computed: {\n /**\n * Ids of selected items\n *\n * @returns {Array.}\n */\n selectedIds() {\n return this.selectedItems.map(({ id }) => id);\n },\n\n /**\n * List of non-empty categories, in alphabetic order\n *\n * @returns {Array.}\n */\n nonEmptyCategories() {\n return Object.keys(this.unselectedSuggestions).sort();\n },\n\n /**\n * List of unselected suggestions, grouped by categories\n *\n * Please note that a special category can be created, named 'extra'.\n *\n * @returns {Object.>}\n */\n unselectedSuggestions() {\n if (this.suggestions === null) {\n return {};\n }\n\n // regular suggestions, grouped by category\n let empty = true;\n const suggestions = this.suggestions.reduce((acc, suggestion) => {\n if (\n this.allowMultiple &&\n this.selectedIds.indexOf(suggestion.id) !== -1\n ) {\n return acc;\n }\n if (!acc[suggestion.category]) {\n acc[suggestion.category] = [];\n }\n\n acc[suggestion.category].push(suggestion);\n empty = false;\n return acc;\n }, {});\n\n // extra suggestions\n if (this.createNew !== null) {\n suggestions._ = [\n {\n id: \"new\",\n label: `Créer \"${this.currentLabel}\"`,\n category: \"\",\n data: {},\n isExtra: true\n }\n ];\n } else if (empty) {\n suggestions._ = [\n {\n id: \"empty\",\n label: \"Aucun résultat\",\n category: \"\",\n data: {},\n isExtra: true\n }\n ];\n }\n\n return suggestions;\n },\n\n /**\n * Ordered list of unselected suggestions\n *\n * @returns {Array.}\n */\n unselectedSuggestionsFlat() {\n return this.nonEmptyCategories.reduce(\n (acc, category) => [\n ...acc,\n ...this.unselectedSuggestions[category]\n ],\n []\n );\n },\n\n /**\n * Indicates whether the list of unselected suggestions is empty\n *\n * Please note that extra suggestions are not taken into account here.\n *\n * @returns {Boolean}\n */\n isSuggestionListEmpty() {\n const list = this.unselectedSuggestionsFlat;\n if (list.length > 1) {\n return false;\n }\n\n if (list.length === 0) {\n return true;\n }\n\n return list[0].isExtra === true && list[0].id === \"empty\";\n },\n\n /**\n * Id of the currently highlighted item\n *\n * @returrns {String|Number|null}\n */\n idOfHighlightedItem() {\n if (this.indexOfHighligtedItem === null) {\n return null;\n }\n\n if (this.indexOfHighligtedItem < 0) {\n return null;\n }\n\n if (\n this.indexOfHighligtedItem >=\n this.unselectedSuggestionsFlat.length\n ) {\n return null;\n }\n\n return this.unselectedSuggestionsFlat[this.indexOfHighligtedItem]\n .id;\n }\n },\n\n watch: {\n // two-way binding\n value() {\n this.selectedItems = this.value;\n },\n\n disabled() {\n this.reset();\n }\n },\n\n mounted() {\n document.addEventListener(\"click\", this.checkOutsideClick);\n },\n\n destroyed() {\n document.removeEventListener(\"click\", this.checkOutsideClick);\n },\n\n methods: {\n /**\n * Handles a new input in the textfield\n *\n * Basically: if the content of the textfield changed, abort\n * the pending or scheduled suggestion request, and schedule\n * a new one.\n * Otherwise, do nothing.\n *\n * @returns {undefined}\n */\n onType() {\n this.positionSpinner();\n\n // ignore key inputs that did not cause a change in the label\n if (this.currentLabel === this.previousLabel) {\n return;\n }\n\n this.previousLabel = this.currentLabel;\n\n // schedule a suggestion request\n this.resetSuggestions();\n this.scheduleSuggestionRequest();\n },\n\n /**\n * Handles a new navigation input in the textfield\n *\n * Basically:\n * - if an arrow key has been pressed, navigate through the suggestions\n * - if the enter key has been pressed, select the currently highligted suggestion\n * - otherwise, reset the navigation\n *\n * @param {KeyboardEvent} event\n *\n * @returns {undefined}\n */\n onNavigation(event) {\n if (this.isSuggestionListEmpty) {\n this.indexOfHighligtedItem = null;\n return;\n }\n\n if (event.keyCode === 38) {\n // up arrow (= previous suggestion)\n if (this.indexOfHighligtedItem - 1 < 0) {\n this.indexOfHighligtedItem = null;\n } else {\n this.indexOfHighligtedItem -= 1;\n }\n } else if (event.keyCode === 40) {\n // down arrow (= next suggestion)\n if (this.unselectedSuggestionsFlat.length > 0) {\n if (this.indexOfHighligtedItem === null) {\n this.indexOfHighligtedItem = 0;\n } else {\n this.indexOfHighligtedItem = Math.min(\n this.unselectedSuggestionsFlat.length - 1,\n this.indexOfHighligtedItem + 1\n );\n }\n }\n } else if (event.keyCode === 13) {\n // key 'enter' (= select current suggestion)\n if (this.indexOfHighligtedItem !== null) {\n this.selectItem(\n this.unselectedSuggestionsFlat[\n this.indexOfHighligtedItem\n ]\n );\n this.$refs.input.focus();\n }\n } else {\n this.indexOfHighligtedItem = null;\n }\n },\n\n /**\n * Schedules a new suggestion request\n *\n * @returns {undefined}\n */\n scheduleSuggestionRequest() {\n this.cancelSuggestionRequest();\n this.suggestionRequest.timeout = setTimeout(\n this.requestSuggestions,\n DEFAULT_TIMEOUT\n );\n },\n\n /**\n * Cancels the pending or scheduled suggestion request\n *\n * @returns {undefined}\n */\n cancelSuggestionRequest() {\n // if a request is pending: abort!\n if (this.suggestionRequest.promise !== null) {\n this.suggestionRequest.promise.abort();\n }\n\n this.resetSuggestionPromise();\n\n // if a request is scheduled: clear!\n if (this.suggestionRequest.timeout !== null) {\n clearTimeout(this.suggestionRequest.timeout);\n this.suggestionRequest.timeout = null;\n }\n },\n\n /**\n * Resets the status of the suggestion request promise\n *\n * @returns {undefined}\n */\n resetSuggestionPromise() {\n this.suggestionRequest.promise = null;\n this.suggestionRequest.pending = false;\n this.suggestionRequest.error = null;\n },\n\n /**\n * Performs a suggestion request\n *\n * @returns {undefined}\n */\n requestSuggestions() {\n if (!this.canLabelTriggerARequest(this.currentLabel)) {\n return;\n }\n\n if (this.suggestionRequest.promise !== null) {\n this.cancelSuggestionRequest();\n }\n\n this.suggestionRequest.pending = true;\n this.suggestionRequest.promise = this.autocompleter(\n this.currentLabel\n );\n this.suggestionRequest.promise\n .then(this.setSuggestions)\n .catch(this.handleSuggestionFailure);\n },\n\n /**\n * Sets a new list of suggestions\n *\n * @param {Array.} suggestions\n *\n * @returns {undefined}\n */\n setSuggestions(suggestions) {\n this.resetSuggestionPromise();\n\n // do not show suggestions if the textfield is not focused anymore\n if (!this.focused) {\n return;\n }\n\n this.suggestions = suggestions;\n if (!this.isSuggestionListEmpty) {\n this.indexOfHighligtedItem = 0;\n }\n },\n\n /**\n * Handles a failure of the suggestion request\n *\n * @param {Object} error\n *\n * @returns {undefined}\n */\n handleSuggestionFailure(error) {\n let errorDetails = \"erreur inconnue\";\n if (error && error.user_message) {\n errorDetails = error.user_message;\n }\n\n this.resetSuggestionPromise();\n this.suggestionRequest.error = `Une erreur est survenue : ${errorDetails}`;\n },\n\n /**\n * Checks if the given label should lead to a suggestion request\n *\n * @param {String} label\n *\n * @returns {Boolean}\n */\n canLabelTriggerARequest(label) {\n return label !== \"\";\n },\n\n /**\n * Clears the textfield\n *\n * @returns {undefined}\n */\n clearLabel() {\n this.cancelSuggestionRequest();\n this.setLabel(\"\");\n\n if (this.allowMultiple === false) {\n this.selectedItems = [];\n this.$emit(\"input\", this.selectedItems);\n }\n },\n\n /**\n * Resets the textfield to initial state\n *\n * @returns {undefined}\n */\n reset() {\n this.cancelSuggestionRequest();\n this.$refs.input.blur();\n\n if (this.allowMultiple || this.selectedItems.length !== 1) {\n this.setLabel(\"\");\n } else {\n this.setLabel(this.selectedItems[0].label);\n }\n },\n\n /**\n * Resets the list of suggestions\n */\n resetSuggestions() {\n this.suggestions = null;\n },\n\n /**\n * Sets a new content for the textfield\n *\n * @param {String} label\n *\n * @returns {undefined}\n */\n setLabel(label) {\n this.currentLabel = label;\n this.previousLabel = label;\n this.resetSuggestions();\n },\n\n /**\n * Checks if the given click event comes from outside the input\n *\n * @param {MouseEvent} event\n *\n * @returns {undefined}\n */\n checkOutsideClick(event) {\n const refs = [\n \"prefixIcon\",\n \"input\",\n \"suffixIcon\",\n \"suggestionContainer\"\n ];\n\n // if the click does not come from the input, reset the field\n if (\n !refs.some(\n ref =>\n this.$refs[ref] &&\n this.$refs[ref].contains(event.target)\n )\n ) {\n this.reset();\n }\n },\n\n /**\n * Adds the given item to the selection\n *\n * @param {AutocompleteItem} item\n *\n * @returns {undefined}\n */\n selectItem(item) {\n // custom behavior for 'extra' items\n if (item.isExtra === true) {\n if (item.id === \"empty\") {\n return;\n }\n\n if (item.id === \"new\") {\n this.createNew(this.currentLabel);\n this.resetSuggestions();\n }\n\n return;\n }\n\n if (this.allowMultiple === false) {\n this.selectedItems = [item];\n this.reset();\n } else {\n // check if the item already is in the selection\n if (this.selectedItems.some(({ id }) => item.id === id)) {\n return;\n }\n\n this.selectedItems.push(item);\n }\n\n this.$emit(\"input\", this.selectedItems);\n },\n\n /**\n * Removes the given item from the selection\n *\n * @param {AutocompleteItem} item\n *\n * @returns {undefined}\n */\n unselectItem(item) {\n const index = this.selectedItems.findIndex(\n ({ id }) => item.id === id\n );\n if (index === -1) {\n return;\n }\n\n this.selectedItems.splice(index, 1);\n this.$emit(\"input\", this.selectedItems);\n },\n\n /**\n * Positions the spinner so that it appears just after the end of the label\n *\n * @returns {undefined}\n */\n positionSpinner() {\n this.$refs.spinner.style.marginLeft = 0;\n const maxMargin = this.$refs.input.clientWidth;\n this.$refs.spinner.offsetLeft - this.$refs.spinner.offsetWidth;\n this.$refs.spinner.style.marginLeft = `${Math.min(\n this.$refs.measure.clientWidth,\n maxMargin\n )}px`;\n }\n }\n};\n\n/**\n * Please note that the property 'data' is completely useless for this component itself,\n * but it might be used by the parent component.\n *\n * @typedef {Object} AutocompleteItem\n * @property {String|Number} id Unique identifier for that item\n * @property {String} label The string that should appear in the textfield\n * @property {String} category A category identifier. Used to group suggestions by category\n * @property {Object} [data] Any additional data related to the item.\n */\n","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./autocompleter.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./autocompleter.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./autocompleter.vue?vue&type=template&id=0ea14275&lang=pug&\"\nimport script from \"./autocompleter.vue?vue&type=script&lang=js&\"\nexport * from \"./autocompleter.vue?vue&type=script&lang=js&\"\nimport style0 from \"./autocompleter.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Autocompleter',_vm._b({attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'Autocompleter',_vm.options,false))}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { getApi } from \"#helpers/api/main\";\n\n/**\n * Computes the unique identifier of the given feature\n *\n * @param {Feature} feature\n *\n * @returns {string}\n */\nfunction computeUid(feature) {\n return `${feature.geometry.coordinates[0]}-${feature.geometry.coordinates[1]}`;\n}\n\n/**\n * Removes duplicate features from the given array of features\n *\n * @param {Array.} features\n *\n * @returns {Array.}\n */\nfunction removeDuplicates(features) {\n const usedUids = [];\n\n return features.filter(feature => {\n const uid = computeUid(feature);\n if (usedUids.indexOf(uid) !== -1) {\n return false;\n }\n\n usedUids.push(uid);\n return true;\n });\n}\n\n/**\n * Handles the response of an autocomplete request\n *\n * @param {Function} success Success callback\n * @param {Function} failure Failure callback\n */\nfunction onAutocompleteLoad(success, failure) {\n if (this.status !== 200) {\n failure();\n return;\n }\n\n try {\n const { features } = JSON.parse(this.responseText);\n success(\n removeDuplicates(features)\n .filter(\n feature => feature.properties && feature.properties.citycode\n )\n .map(feature => ({\n addressType: feature.properties.type,\n citycode: feature.properties.citycode,\n city: feature.properties.city,\n coordinates: feature.geometry.coordinates,\n id: feature.properties.id,\n label: `${feature.properties.label}, ${feature.properties.context}`,\n category: \"address\",\n data: {\n citycode: feature.properties.citycode,\n city: feature.properties.city,\n label: `${feature.properties.label}, ${feature.properties.context}`,\n coordinates: feature.geometry.coordinates\n }\n }))\n );\n } catch (error) {\n failure();\n }\n}\n\n/**\n * Returns autocompletion suggestion for the given address\n *\n * Based on https://adresse.data.gouv.fr/api\n *\n * @param {string} strSearch The string to be autocompleted\n * @param {number} limit The maximum number of suggestions to be returned\n *\n * @returns {Promise}\n */\nexport function autocomplete(strSearch, limit = 5) {\n const xhr = new XMLHttpRequest();\n const promise = new Promise((success, failure) => {\n const queries = [`q=${encodeURIComponent(strSearch)}`];\n\n const parsedLimit = parseInt(limit, 10);\n if (!Number.isNaN(parsedLimit)) {\n queries.push(`limit=${parsedLimit}`);\n }\n\n xhr.open(\n \"GET\",\n `https://api-adresse.data.gouv.fr/search/?${queries.join(\"&\")}`\n );\n xhr.onload = onAutocompleteLoad.bind(xhr, success, failure);\n xhr.onerror = failure;\n xhr.ontimeout = failure;\n xhr.send();\n });\n promise.abort = () => {\n xhr.abort();\n };\n\n return promise;\n}\n\n/**\n * Searches for cities/epcis/departements\n *\n * @param {string} strSearch The string to be autocompleted\n *\n * @returns {Promise}\n */\nexport function autocompleteLocation(strSearch) {\n const p1 = getApi(`/locations/search?q=${encodeURIComponent(strSearch)}`);\n const p2 = p1.then(results =>\n results.map(result => ({\n label:\n result.code.length === 5\n ? `(${result.code.slice(0, 2)}) ${result.name}`\n : result.name,\n code: result.code,\n type: result.label,\n locationType: result.type,\n departement: result.departement,\n data: {\n code: result.code,\n type: result.type\n }\n }))\n );\n p2.abort = p1.abort;\n return p2;\n}\n\n/**\n * Lists all departements\n *\n * @returns {Promise}\n */\nexport function departements() {\n return getApi(\"/departements\");\n}\n\n/**\n * @typedef {Object} Feature\n * @property {Feature_Properties} properties\n * @property {Feature_Geometry} geometry\n */\n\n/**\n * @typedef {Object} Feature_Properties\n * @property {string} label\n * @property {string} context\n */\n\n/**\n * @typedef {Object} Feature_Geometry\n * @property {Array.} coordinates An array of two double numbers, ie. the latitude and longitude\n */\n\n/**\n * @typedef {Suggestion}\n * @property {string} label\n * @property {Array.} coordinates\n */\n\n/**\n * @typedef {Object} Address\n * @property {String} id\n * @property {String} label\n * @property {AddressData} data\n */\n\n/**\n * @typedef {Object} AddressData\n * @property {String} citycode\n * @property {String} city\n * @property {String} label\n * @property {Point} coordinates\n */\n\nexport default autocomplete;\n","import Autocompleter from \"../autocompleter/autocompleter.vue\";\nimport { autocomplete as autocompleter } from \"#helpers/addressHelper\";\n\nexport default {\n components: {\n Autocompleter\n },\n\n props: {\n /**\n * @type {Address|null}\n */\n value: {\n type: Object,\n required: false,\n default() {\n return null;\n }\n },\n\n /**\n * Whether the input should be disabled or not\n *\n * @type {Boolean}\n */\n disabled: {\n type: Boolean,\n required: false,\n default: false\n },\n\n /**\n * Properties specific to the input\n *\n * @type {Object}\n */\n specificProps: {\n type: Object,\n required: false,\n default() {\n return {};\n }\n }\n },\n\n data() {\n return {\n /**\n * @type {Array.
}\n */\n data: this.value !== null ? [this.value] : [],\n\n /**\n * @type {Object}\n */\n options: { ...this.specificProps, autocompleter }\n };\n },\n\n watch: {\n // two-way binding\n value() {\n this.data = this.value !== null ? [this.value] : [];\n },\n data() {\n this.$emit(\"input\", this.data.length > 0 ? this.data[0] : null);\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./address.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./address.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./address.vue?vue&type=template&id=1485e3f7&lang=pug&\"\nimport script from \"./address.vue?vue&type=script&lang=js&\"\nexport * from \"./address.vue?vue&type=script&lang=js&\"\nimport style0 from \"./address.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"location\"},[_c('div',{ref:\"map\",staticClass:\"location-map\"}),(_vm.showTutorial)?_c('div',{staticClass:\"location-tutorial\"},[_c('div',{staticClass:\"location-tutorialWrapper\"},[_c('h1',{staticClass:\"location-tutorialTitle\"},[_vm._v(_vm._s(_vm.tutorialWording.title))]),_c('br'),_c('p',{staticClass:\"location-tutorialDescription\"},[_vm._v(_vm._s(_vm.tutorialWording.description))]),(_vm.showCloseTutorial)?_c('p',{staticClass:\"location-tutorialButton\"},[_c('button',{staticClass:\"button\",on:{\"click\":_vm.closeTutorial}},[_vm._v(\"J'ai compris\")])]):_vm._e()])]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import L from \"leaflet\";\nimport \"leaflet-providers\";\n\n/**\n * Default zoom\n *\n * @type {number}\n */\nconst DEFAULT_ZOOM = 6;\n\n/**\n * View for the center of France\n *\n * @type {MapView}\n */\nconst FRANCE_CENTER = {\n coordinates: [46.7755829, 2.0497727],\n zoom: DEFAULT_ZOOM\n};\n\nexport default {\n props: {\n /**\n * Location value\n *\n * @type {MapView}\n */\n value: {\n type: Object,\n required: false,\n default() {\n return FRANCE_CENTER;\n }\n },\n\n /**\n * Status of the tutorial\n *\n * @type {String}\n */\n tutorial: {\n type: String,\n required: false,\n default: \"auto\"\n },\n\n /**\n * Whether the marker should be hidden when the tutorial is visible\n *\n * @type {Boolean}\n */\n autoHideMarker: {\n type: Boolean,\n required: false,\n default: false\n },\n\n /**\n * Custom wording\n *\n * @type {Object.}\n */\n wording: {\n type: Object,\n required: false,\n default() {\n return {\n // appears above the list of selected items\n tutorialTitle: \"Sélectionner une position géographique\",\n // label for the column containing the label of each selected item\n tutorialDescription:\n \"Positionnez le marqueur en vous déplaçant sur la carte, puis en cliquant sur la localisation désirée.\"\n };\n }\n },\n\n /**\n * Whether the input should be disabled or not\n *\n * @type {Boolean}\n */\n disabled: {\n type: Boolean,\n required: false,\n default: false\n }\n },\n\n data() {\n return {\n /**\n * Map instance\n *\n * @type {Leaflet.Map}\n */\n map: null,\n\n /**\n * Marker\n *\n * @type {Leaflet.Marker}\n */\n marker: null,\n\n /**\n * Click timeout\n *\n * @type {Timeout|null}\n */\n clickTimeout: null,\n\n /**\n * Whether the tutorial should be shown, or not\n *\n * @type {Boolean}\n */\n showTutorial: this.shouldShowTutorial(this.tutorial),\n\n /**\n * Whether the tutorial has been closed at least once, or not\n *\n * @type {Boolean}\n */\n tutorialHasBeenClosed: false\n };\n },\n\n computed: {\n /**\n * Returns the current view for the marker\n *\n * @returns {MapView}\n */\n view() {\n const { lat, lng } = this.marker.getLatLng();\n\n return {\n coordinates: [lat, lng],\n zoom: this.map.getZoom() || DEFAULT_ZOOM\n };\n },\n\n /**\n * Wording for the tutorial\n *\n * @returns {Object.}\n */\n tutorialWording() {\n if (this.disabled === true) {\n return {\n title: \"\",\n description: \"\"\n };\n }\n\n return {\n title: this.wording.tutorialTitle,\n description: this.wording.tutorialDescription\n };\n },\n\n /**\n * Wether the close-tutorial button should be shown\n *\n * @returns {Boolean}\n */\n showCloseTutorial() {\n return !this.disabled && this.tutorial === \"auto\";\n }\n },\n\n watch: {\n value() {\n this.syncMap(this.value, false);\n },\n\n tutorial() {\n this.showTutorial = this.shouldShowTutorial(this.tutorial);\n },\n\n showTutorial() {\n this.syncMarker();\n },\n\n autoHideMarker() {\n this.syncMarker();\n },\n\n disabled() {\n if (this.disabled === true) {\n this.showTutorial = true;\n } else {\n this.showTutorial = this.shouldShowTutorial(this.tutorial);\n }\n }\n },\n\n mounted() {\n this.$nextTick(this.initialize);\n },\n\n methods: {\n /**\n * Initializes the map\n *\n * @returns {undefined}\n */\n initialize() {\n this.map = L.map(this.$refs.map);\n\n this.setTileLayers();\n this.createMarker();\n this.syncMap(this.value, false);\n },\n\n /**\n * Sets the tile layers for the given map\n *\n * This methods sets both:\n * - the default tile layer\n * - the tile layer control\n *\n * @returns {undefined}\n */\n setTileLayers() {\n const layers = {\n Satellite: L.tileLayer.provider(\"Esri.WorldImagery\"),\n Dessin: L.tileLayer.provider(\"OpenStreetMap.Mapnik\")\n };\n\n layers.Dessin.addTo(this.map);\n L.control.layers(layers).addTo(this.map);\n },\n\n /**\n * Creates the marker\n *\n * @returns {undefined}\n */\n createMarker() {\n this.marker = L.marker(this.value.coordinates, { draggable: true });\n this.map.addEventListener(\"click\", event => {\n clearTimeout(this.clickTimeout);\n this.clickTimeout = setTimeout(\n this.handleClick.bind(this, event),\n 200\n );\n });\n this.map.addEventListener(\"dblclick\", () => {\n clearTimeout(this.clickTimeout);\n this.clickTimeout = null;\n });\n this.marker.addEventListener(\"dragend\", () => {\n this.syncMap(this.view, true);\n });\n\n if (this.shouldShowMarker()) {\n this.marker.addTo(this.map);\n }\n },\n\n /**\n * Syncs the map view and the marker to the given value\n *\n * @param {View} view The new view value to be synced to\n * @param {boolean} [emitInput] Wether an 'input' event should be sent\n *\n * @returns {undefined}\n */\n syncMap(view, emitInput = false) {\n this.marker.setLatLng(view.coordinates);\n this.map.setView(view.coordinates, view.zoom);\n\n if (emitInput === true) {\n this.$emit(\"input\", view);\n }\n\n clearTimeout(this.clickTimeout);\n this.clickTimeout = null;\n },\n\n /**\n * Handles a click on the map\n *\n * @param {Event} event\n *\n * @returns {undefined}\n */\n handleClick({ latlng: { lat, lng } }) {\n this.marker.setLatLng([lat, lng]);\n this.syncMap(this.view, true);\n this.clickTimeout = null;\n },\n\n /**\n * Closes the tutorial\n *\n * @returns {undefined}\n */\n closeTutorial() {\n this.showTutorial = false;\n this.tutorialHasBeenClosed = true;\n },\n\n /**\n * Indicates whether the marker should be shown or not\n *\n * @returns {Boolean}\n */\n shouldShowMarker() {\n return this.autoHideMarker === false || this.showTutorial !== true;\n },\n\n /**\n * Updates the visibility of the marker\n *\n * @returns {undefined}\n */\n syncMarker() {\n if (this.marker === null) {\n return;\n }\n\n if (this.shouldShowMarker()) {\n this.marker.addTo(this.map);\n } else {\n this.marker.remove();\n }\n },\n\n /**\n * Indicates if the tutorial should be shown, with the given tutorial directive\n *\n * @param {String} tutorial\n *\n * @returns {Boolean}\n */\n shouldShowTutorial(tutorial) {\n if (tutorial === \"no\") {\n return false;\n }\n\n if (tutorial === \"yes\") {\n return true;\n }\n\n return !this.tutorialHasBeenClosed;\n }\n }\n};\n\n/**\n * An array containing, in that order, latitude and longitude\n * @typedef {Array.} Point\n */\n\n/**\n * A map view\n *\n * @typedef {Object} MapView\n * @property {Point} cooordinates\n * @property {number} zoom\n */\n","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./location.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./location.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./location.vue?vue&type=template&id=3a8bf702&lang=pug&\"\nimport script from \"./location.vue?vue&type=script&lang=js&\"\nexport * from \"./location.vue?vue&type=script&lang=js&\"\nimport style0 from \"./location.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('Address',_vm._b({attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.address),callback:function ($$v) {_vm.address=$$v},expression:\"address\"}},'Address',_vm.addressOptions,false)),_c('Location',_vm._b({ref:\"location\",attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.location),callback:function ($$v) {_vm.location=$$v},expression:\"location\"}},'Location',_vm.locationOptions,false))],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Address from \"../address/address.vue\";\nimport Location from \"../location/location.vue\";\n\nexport default {\n components: {\n Address,\n Location\n },\n\n props: {\n /**\n * @type {AddressWithLocationValue}\n */\n value: {\n type: Object,\n required: false,\n default() {\n return null;\n }\n },\n\n /**\n * Properties specific to the input\n *\n * @type {Object}\n */\n specificProps: {\n type: Object,\n required: false,\n default() {\n return {\n address: {},\n location: {}\n };\n }\n },\n\n /**\n * Whether the input should be disabled or not\n *\n * @type {Boolean}\n */\n disabled: {\n type: Boolean,\n required: false,\n default: false\n }\n },\n\n data() {\n return {\n /**\n * @type {Array.
}\n */\n address: this.value !== null ? this.value.address : undefined,\n\n /**\n * @type {MapView}\n */\n location: this.value !== null ? this.value.location : undefined\n };\n },\n\n computed: {\n /**\n * Options for the address component\n *\n * @returns {Object}\n */\n addressOptions() {\n return { ...this.specificProps.address };\n },\n\n /**\n * Options for the location component\n *\n * @returns {Object}\n */\n locationOptions() {\n return {\n ...this.specificProps.location,\n tutorial: this.address ? \"auto\" : \"yes\",\n autoHideMarker: !this.address,\n wording: this.address\n ? {\n tutorialTitle: \"Adresse détectée\",\n tutorialDescription:\n \"Vous pouvez déplacer le marqueur en cliquant à l'endroit souhaité sur la carte\"\n }\n : {\n tutorialTitle: \"Saisir une adresse\",\n tutorialDescription:\n \"Veuillez saisir une adresse dans le champ de texte ci-dessus avant d'accéder à la carte\"\n }\n };\n },\n\n /**\n * Current value of the address/location\n *\n * @returns {AddressWithLocationValue}\n */\n data() {\n if (!this.address) {\n return null;\n }\n\n return {\n address: this.address,\n location: this.location\n };\n }\n },\n\n watch: {\n // two-way binding\n value() {\n this.address = this.value !== null ? this.value.address : undefined;\n this.location =\n this.value !== null ? this.value.location : undefined;\n },\n address() {\n if (this.address) {\n const [lon, lat] = this.address.coordinates;\n this.location = {\n coordinates: [lat, lon],\n zoom: 15\n };\n }\n\n this.$emit(\"input\", this.data);\n },\n location() {\n this.$emit(\"input\", this.data);\n }\n }\n};\n\n/**\n * @typedef {Object} AddressWithLocationValue\n * @property {Address} address\n * @property {MapView} location\n */\n","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./address-with-location.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./address-with-location.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./address-with-location.vue?vue&type=template&id=2f53146c&lang=pug&\"\nimport script from \"./address-with-location.vue?vue&type=script&lang=js&\"\nexport * from \"./address-with-location.vue?vue&type=script&lang=js&\"\nimport style0 from \"./address-with-location.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.status === 'loading' || _vm.status === null)?_c('div',[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_vm._v(\" Chargement de la liste des sites en cours... \")]):_vm._e(),(_vm.status === 'error')?_c('div',{staticClass:\"error\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/warning.svg\",\"width\":\"20\"}}),_vm._v(\" Le chargement de la liste des sites a échoué : \"+_vm._s(_vm.loadingError)+\" \")]):_vm._e(),(_vm.status === 'loaded')?_c('div',[_c('p',{staticClass:\"selectionInfo\"},[_vm._v(\"Nombre total de sites sélectionnés : \"+_vm._s(_vm.selectedTowns.length))]),_c('div',{staticClass:\"switch\"},[_c('button',{class:{ active: _vm.statusOfVisibleTowns === 'open' },on:{\"click\":function($event){return _vm.showTowns('open')}}},[_vm._v(\"Sites existants\")]),_c('button',{class:{ active: _vm.statusOfVisibleTowns === 'closed' },on:{\"click\":function($event){return _vm.showTowns('closed')}}},[_vm._v(\"Sites fermés\")])]),_c('CollectivityInput',{staticClass:\"townList-search\",model:{value:(_vm.location),callback:function ($$v) {_vm.location=$$v},expression:\"location\"}}),_c('Table',{attrs:{\"columns\":_vm.columns,\"content\":_vm.pageContent,\"emptyLabel\":\"Aucun site\"},on:{\"click\":_vm.toggleTown},scopedSlots:_vm._u([{key:\"checkbox\",fn:function(props){return [_c('input',{attrs:{\"type\":\"checkbox\",\"disabled\":_vm.disabled},domProps:{\"checked\":_vm.selectedTowns.some(function (id) { return id === props.row.id; })},on:{\"change\":function($event){return _vm.toggleTown(props.row)}}})]}},{key:\"city\",fn:function(props){return [_vm._v(_vm._s(props.row.city.name))]}},{key:\"address\",fn:function(props){return [_vm._v(_vm._s(props.row.usename))]}},{key:\"fieldType\",fn:function(props){return [_c('span',{staticClass:\"fieldType\"},[_c('i',{style:((\"background-color: \" + (_vm.fieldTypes[props.row.fieldType.id].color)))}),_vm._v(\" \"),_c('span',[_vm._v(_vm._s(props.row.fieldType.label))])])]}},{key:\"people\",fn:function(props){return [(props.row.populationTotal === null)?_c('span',{staticClass:\"secondary\"},[_vm._v(\"NC\")]):_c('span',[_vm._v(_vm._s(props.row.populationTotal))])]}}],null,false,2250559664)})],1):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { getApi, postApi, putApi, deleteApi } from \"#helpers/api/main\";\n\n/**\n * Fetches all towns from the database\n *\n * @param {Object.} [filters]\n * @param {Array.} [order]\n *\n * @returns {Promise}\n */\nexport function all(filters = {}, order = []) {\n const queries = [];\n\n // filters\n Object.keys(filters).forEach(filterName => {\n queries.push(\n `${filterName}=${encodeURIComponent(filters[filterName])}`\n );\n });\n\n // order\n if (order.length > 0) {\n queries.push(\n `order=${order.map(s => encodeURIComponent(s)).join(\",\")}`\n );\n }\n\n return getApi(`/towns${queries.length > 0 ? `?${queries.join(\"&\")}` : \"\"}`);\n}\n\n/**\n * Fetchs a specific town from the database\n *\n * @param {string} id\n *\n * @returns {Promise}\n */\nexport function get(id) {\n return getApi(`/towns/${id}`);\n}\n\n/**\n * Creates a new town\n *\n * @param {Town_Data} data\n *\n * @returns {Promise}\n */\nexport function add(data) {\n return postApi(\"/towns\", data);\n}\n\n/**\n * Updates a town\n *\n * @param {string} id\n * @param {Town_Data} data\n *\n * @returns {Promise}\n */\nexport function edit(id, data) {\n return postApi(`/towns/${id}`, data);\n}\n\n/**\n * Closes a town\n *\n * @param {string} id\n * @param {Town_Data} data\n *\n * @returns {Promise}\n */\nexport function close(id, data) {\n return postApi(`/towns/${id}/close`, data);\n}\n\n/**\n * Deletes a town\n *\n * @param {string} id\n *\n * @returns {Promise}\n */\nexport function destroy(id) {\n return deleteApi(`/towns/${id}`);\n}\n\n/**\n * Adds a comment to a town\n *\n * @param {string} id Town id\n * @param {ShantytownComment_Data} data Comment data\n *\n * @returns {Promise}\n */\nexport function addComment(id, data) {\n return postApi(`/towns/${id}/comments`, data);\n}\n\n/**\n * Adds a covid comment to a town\n *\n * @param {string} id Town id\n * @param {ShantytownCovidComment_Data} data Comment data\n *\n * @returns {Promise}\n */\nexport function addCovidComment(id, data) {\n return postApi(`/towns/${id}/covidComments`, data);\n}\n\n/**\n * Edits a comment from a town\n *\n * @param {string} townId Town id\n * @param {number} commentId Comment id\n * @param {ShantytownComment_Data} data Comment data\n *\n * @returns {Promise}\n */\nexport function editComment(townId, commentId, comment) {\n return postApi(`/towns/${townId}/comments/${commentId}`, comment);\n}\n\n/**\n * Delete a comment from a town\n *\n * @param {string} townId Town id\n * @param {number} commentId Comment id\n * @param {String} message\n *\n * @returns {Promise}\n */\nexport function deleteComment(townId, commentId, message) {\n return deleteApi(`/towns/${townId}/comments/${commentId}`, { message });\n}\n\n/**\n * Gets all recent comments\n *\n * @returns {Promise}\n */\nexport function getRecentComments() {\n return getApi(\"/comments\");\n}\n\n/**\n * POST /towns/:id/actors\n */\nexport function addActor(townId, actor) {\n return postApi(`/towns/${townId}/actors`, actor);\n}\n\n/**\n * DELETE /towns/:id/actors/:user_id\n */\nexport function removeActor(townId, userId) {\n return deleteApi(`/towns/${townId}/actors/${userId}`);\n}\n\n/**\n * PUT /towns/:id/actors/:user_id\n */\nexport function updateActorThemes(townId, userId, themes) {\n return putApi(`/towns/${townId}/actors/${userId}`, { themes });\n}\n\n/**\n * DELETE /towns/:id/actors/:user_id/themes/:theme_id\n */\nexport function removeActorTheme(townId, userId, themeId) {\n return deleteApi(`/towns/${townId}/actors/${userId}/themes/${themeId}`);\n}\n\n/**\n * PUT /towns/:id/invitations\n */\nexport function inviteNewActor(townId, email) {\n return putApi(`/towns/${townId}/invitations`, { email });\n}\n\n/**\n * GET /towns/:id/relations\n */\nexport function findRelations(townId, query) {\n return getApi(`/towns/${townId}/relations?q=${encodeURIComponent(query)}`);\n}\n\n/**\n * @typedef {Object} Town_Data\n * @property {number} latitude,\n * @property {number} longitude,\n * @property {string} address,\n * @property {string} detailed_address,\n * @property {?Date} built_at,\n * @property {?number} population_total,\n * @property {?number} population_couples,\n * @property {?number} population_minors,\n * @property {Object} electricity_type,\n * @property {?boolean} access_to_water,\n * @property {?boolean} trash_evacuation,\n * @property {Array.} social_origins,\n * @property {number} field_type,\n * @property {number} owner_type,\n */\n\n/**\n * @typedef {Object} ShantytownComment_Data\n * @property {string} description\n */\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"rb-table\"},[_c('aside',{staticClass:\"rb-table-aside\"},[_vm._t(\"aside\",[_c('p')]),_c('div',{staticClass:\"rb-pagination\"},[_c('span',{staticClass:\"link\",class:{ 'link--disabled': _vm.currentPage === 0 },on:{\"click\":_vm.previousPage}},[_c('font-awesome-icon',{attrs:{\"icon\":\"caret-square-left\"}}),_vm._v(\" Précédent\")],1),_c('span',{staticClass:\"pagination-pages\"},[_vm._v(_vm._s(_vm.indexOfFirstRowInCurrentPage)+\" - \"+_vm._s(_vm.indexOfLastRowInCurrentPage)+\" sur \"+_vm._s(_vm.filteredContent.length))]),_c('span',{staticClass:\"link\",class:{ 'link--disabled': _vm.currentPage === _vm.indexOfLastPage },on:{\"click\":_vm.nextPage}},[_vm._v(\"Suivant \"),_c('font-awesome-icon',{attrs:{\"icon\":\"caret-square-right\"}})],1)])],2),_c('table',{staticClass:\"table\"},[_c('thead',[_c('tr',_vm._l((_vm.parsedColumns),function(column){\nvar _obj;\nreturn _c('th',{class:( _obj = { 'table-col--filterable': column.isFilterable, 'table-col--active': [column.id].length > 0 }, _obj[(\"table-col--\" + (column.id))] = true, _obj )},[(column.isFilterable)?_c('TableFilter',{attrs:{\"visible\":_vm.currentFilter === column.id},on:{\"outside-click\":_vm.hideFilter,\"clean\":_vm.hideFilter},model:{value:(_vm.parsedFilters[column.id]),callback:function ($$v) {_vm.$set(_vm.parsedFilters, column.id, $$v)},expression:\"parsedFilters[column.id]\"}}):_vm._e(),(column.isFilterable)?_c('span',{on:{\"click\":function($event){return _vm.toggleFilter(column.id)}}},[_vm._v(_vm._s(column.label)+\" \"),(_vm.checkedFilters[column.id].length > 0)?_c('span',{staticClass:\"badge\"},[_vm._v(_vm._s(_vm.checkedFilters[column.id].length))]):_vm._e(),_c('font-awesome-icon',{attrs:{\"icon\":\"sort-down\",\"size\":\"2x\"}})],1):_c('span',[_vm._v(_vm._s(column.label))])],1)}),0)]),_c('tbody',[(_vm.filteredContent.length === 0)?_c('tr',{staticClass:\"table-row--empty\"},[_c('td',{attrs:{\"colspan\":_vm.parsedColumns.length}},[_vm._v(_vm._s(_vm.emptyLabel))])]):_vm._e(),_vm._l((_vm.currentPageContent),function(row,index){return _c('tr',{class:index % 2 === 0 ? 'table-row--odd' : '',on:{\"click\":function($event){return _vm.click($event, row)}}},_vm._l((_vm.parsedColumns),function(column){return _c('td',{class:(\"table-col--\" + (column.id))},[_vm._t(column.id,[_c('span',{domProps:{\"innerHTML\":_vm._s(row[column.id])}})],{\"row\":row})],2)}),0)})],2)]),_c('aside',{staticClass:\"rb-table-aside\"},[_vm._t(\"aside\",[_c('p')]),_c('div',{staticClass:\"rb-pagination\"},[_c('span',{staticClass:\"link\",class:{ 'link--disabled': _vm.currentPage === 0 },on:{\"click\":_vm.previousPage}},[_c('font-awesome-icon',{attrs:{\"icon\":\"caret-square-left\"}}),_vm._v(\" Précédent\")],1),_c('span',{staticClass:\"pagination-pages\"},[_vm._v(_vm._s(_vm.indexOfFirstRowInCurrentPage)+\" - \"+_vm._s(_vm.indexOfLastRowInCurrentPage)+\" sur \"+_vm._s(_vm.filteredContent.length))]),_c('span',{staticClass:\"link\",class:{ 'link--disabled': _vm.currentPage === _vm.indexOfLastPage },on:{\"click\":_vm.nextPage}},[_vm._v(\"Suivant \"),_c('font-awesome-icon',{attrs:{\"icon\":\"caret-square-right\"}})],1)])],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:\"container\",staticClass:\"tableFilter\",style:({ display: _vm.visible === true ? 'block' : 'none' })},[_c('ul',_vm._l((_vm.items),function(item,itemId){return _c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(item.checked),expression:\"item.checked\"}],attrs:{\"type\":\"checkbox\",\"id\":(\"tableFilter-\" + _vm.id + \"-\" + itemId)},domProps:{\"checked\":Array.isArray(item.checked)?_vm._i(item.checked,null)>-1:(item.checked)},on:{\"change\":function($event){var $$a=item.checked,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(item, \"checked\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(item, \"checked\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(item, \"checked\", $$c)}}}}),_c('label',{attrs:{\"for\":(\"tableFilter-\" + _vm.id + \"-\" + itemId)}},[_vm._t(\"default\",[_vm._v(_vm._s(item.label))],{\"item\":item})],2)])}),0),_c('footer',[_c('span',{staticClass:\"link link--secondary\",on:{\"click\":_vm.clean}},[_vm._v(\"Effacer\")])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default {\n props: {\n value: {\n required: true,\n type: Array\n },\n\n visible: {\n required: false,\n type: Boolean,\n default: false\n }\n },\n\n data() {\n return {\n items: this.value,\n timeout: null,\n id: null\n };\n },\n\n watch: {\n value() {\n this.items = this.value;\n },\n\n items() {\n this.$emit(\"input\", this.items);\n },\n\n visible() {\n if (this.visible === true) {\n this.timeout = setTimeout(\n () =>\n document.addEventListener(\n \"click\",\n this.checkOutsideClick\n ),\n 500\n );\n } else {\n clearTimeout(this.timeout);\n document.removeEventListener(\"click\", this.checkOutsideClick);\n }\n }\n },\n\n mounted() {\n // eslint-disable-next-line no-underscore-dangle\n this.id = this._uid;\n },\n\n methods: {\n clean() {\n for (let i = 0; i < this.items.length; i += 1) {\n this.items[i].checked = false;\n }\n\n this.$emit(\"clean\");\n },\n\n checkOutsideClick(event) {\n if (\n !this.$refs.container ||\n !this.$refs.container.contains(event.target)\n ) {\n this.$emit(\"outside-click\", event);\n }\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./tableFilter.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./tableFilter.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./tableFilter.vue?vue&type=template&id=cdbe4124&scoped=true&lang=pug&\"\nimport script from \"./tableFilter.vue?vue&type=script&lang=js&\"\nexport * from \"./tableFilter.vue?vue&type=script&lang=js&\"\nimport style0 from \"./tableFilter.vue?vue&type=style&index=0&id=cdbe4124&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"cdbe4124\",\n null\n \n)\n\nexport default component.exports","import TableFilter from \"#app/components/tableFilter/tableFilter.vue\";\n\n/**\n * Default umber of items per page\n *\n * @const {Number}\n */\nconst DEFAULT_ITEMS_PER_PAGE = 10;\n\nexport default {\n components: {\n TableFilter\n },\n\n props: {\n /**\n * The list of columns\n *\n * @type {Array.}\n */\n columns: {\n type: Array,\n required: true\n },\n\n /**\n * The unfiltered content of the table\n *\n * @type {Array.} The object obviously depends on the list of columns\n */\n content: {\n type: Array,\n required: false,\n default() {\n return [];\n }\n },\n\n /**\n * The message to be shown whenever the table is empty\n *\n * @type {String}\n */\n emptyLabel: {\n type: String,\n required: false,\n default: \"Aucune donnée disponible pour les filtres sélectionnés\"\n },\n\n /**\n * Number of items per page\n *\n * @type {Number}\n */\n itemsPerPage: {\n type: Number,\n required: false,\n default: DEFAULT_ITEMS_PER_PAGE\n }\n },\n\n data() {\n return {\n /**\n * Map of filters for each column\n *\n * @type {Object.>}\n */\n parsedFilters: this.parseFilters(),\n\n /**\n * Column id for the currently visible filter\n *\n * @type {String|null}\n */\n currentFilter: null,\n\n /**\n * Index of the current page, starting from 0\n *\n * @type {Number}\n */\n currentPage: 0\n };\n },\n\n computed: {\n /**\n * Parses the list of columns and enriches it with automatically computed properties\n *\n * @returns {Array.}\n */\n parsedColumns() {\n return this.columns.map(column => ({\n ...column,\n isFilterable: column.filters !== undefined\n }));\n },\n\n /**\n * Returns the list of checked filter items for each column\n *\n * Please note that even columns with no defined filters appear in the result: they are\n * always matched with an empty array.\n *\n * @returns {Object.>}\n */\n checkedFilters() {\n return Object.keys(this.parsedFilters).reduce(\n (acc, columnId) => ({\n ...acc,\n [columnId]: this.parsedFilters[columnId].filter(\n ({ checked }) => checked === true\n )\n }),\n {}\n );\n },\n\n /**\n * Filters the content\n *\n * @returns {Array.}\n */\n filteredContent() {\n // every time the content of the table changes, reset the pagination\n this.currentPage = 0;\n\n // eslint-disable-next-line arrow-body-style\n return this.content.filter(row => {\n // keep the row only if the filters are matched for each column\n return this.columns.every(({ id: columnId, filterFn }) => {\n if (this.checkedFilters[columnId].length === 0) {\n return true;\n }\n\n return filterFn(row, this.checkedFilters[columnId]);\n });\n });\n },\n\n /**\n * Current page content\n *\n * @returns {Array.}\n */\n currentPageContent() {\n return this.filteredContent.slice(\n this.currentPage * this.itemsPerPage,\n this.currentPage * this.itemsPerPage + this.itemsPerPage\n );\n },\n\n /**\n * Index of the last available page, starting from 0\n *\n * @returns {Number}\n */\n indexOfLastPage() {\n return Math.max(\n 0,\n Math.ceil(this.filteredContent.length / this.itemsPerPage) - 1\n );\n },\n\n /**\n * Index of the first row displayed in current page, starting from 1\n *\n * @returns {Number}\n */\n indexOfFirstRowInCurrentPage() {\n return this.filteredContent.length > 0\n ? this.currentPage * this.itemsPerPage + 1\n : 0;\n },\n\n /**\n * Index of the last row displayed in current page, starting from 1\n *\n * @returns {Number}\n */\n indexOfLastRowInCurrentPage() {\n return Math.min(\n this.indexOfFirstRowInCurrentPage + this.itemsPerPage - 1,\n this.filteredContent.length\n );\n }\n },\n\n watch: {\n /**\n * Every time the list of columns of the table changes:\n *\n * - reset the pagination\n * - reset the filters\n */\n columns() {\n this.parsedFilters = this.parseFilters();\n this.currentPage = 0;\n },\n\n /**\n * Every time the content of the table changes:\n *\n * - reset the pagination\n * - reset the filters\n */\n content() {\n this.parsedFilters = this.parseFilters();\n this.currentFilter = null;\n this.currentPage = 0;\n }\n },\n\n methods: {\n /**\n * Propagates any click on a row\n *\n * @param {ClickEvent} event\n * @param {Object} row\n *\n * @returns {undefined}\n */\n click(event, row) {\n this.$emit(\"click\", row, event);\n },\n\n /**\n * Creates a map, matching a list of filter items for each column id\n *\n * Please note that columns with no defined filters will be in the map, matched with an\n * empty array.\n *\n * @returns {Object.>}\n */\n parseFilters() {\n return this.columns.reduce((acc, column) => {\n // columns with no filters get an empty array\n if (column.filters === undefined) {\n return { ...acc, [column.id]: [] };\n }\n\n // parse every filter item of this column (basically, initialize the value of `checked`)\n return {\n ...acc,\n [column.id]: column.filters.map(filter => {\n if (filter.checked !== undefined) {\n return filter;\n }\n\n return { ...filter, checked: false };\n })\n };\n }, {});\n },\n\n /**\n * Toggles the filter of a specific column\n *\n * @param {String} columnId\n *\n * @returns {undefined}\n */\n toggleFilter(columnId) {\n if (this.currentFilter === columnId) {\n this.currentFilter = null;\n } else {\n this.currentFilter = columnId;\n }\n },\n\n /**\n * Hides the currently visible filter\n *\n * @returns {undefined}\n */\n hideFilter() {\n this.currentFilter = null;\n },\n\n /**\n * Moves to previous page\n *\n * @returns {undefined}\n */\n previousPage() {\n this.currentPage = Math.max(0, this.currentPage - 1);\n },\n\n /**\n * Moves to next page\n *\n * @returns {undefined}\n */\n nextPage() {\n this.currentPage = Math.min(\n this.indexOfLastPage,\n this.currentPage + 1\n );\n }\n }\n};\n\n/**\n * @typedef {Object} TableFilterItem\n * @property {String} label\n * @property {Object} value\n * @property {Boolean} [checked=false] If not defined, it is automatically set to `false`\n */\n\n/**\n * @callback TableFilterFunction\n *\n * This function checks whether the given row should be visible, based on the given checked\n * filter items.\n *\n * @param {Object} row Any row from `content`\n * @param {Array.} checkedItems The list of checked items\n *\n * @returns {Boolean} True if the row should be visible, false otherwise\n */\n\n/**\n * @typedef {Object} TableColumn\n * @property {String} id\n * @property {String} label\n * @property {Array.} [filters] Mandatory if `filterFn` is provided\n * @property {TableFilterFunction} [filterFn] Mandatory if `filters` is provided\n * @property {Boolean} [isFilterable] This property is automatically computed\n * based on the definition of `filters`\n */\n","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./table.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./table.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./table.vue?vue&type=template&id=538c7406&lang=pug&\"\nimport script from \"./table.vue?vue&type=script&lang=js&\"\nexport * from \"./table.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Autocompleter',_vm._b({attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'Autocompleter',_vm.options,false))}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Autocompleter from \"../autocompleter/autocompleter.vue\";\nimport { autocompleteLocation as autocompleter } from \"#helpers/addressHelper\";\n\nexport default {\n components: {\n Autocompleter\n },\n\n props: {\n /**\n * @type {Address|null}\n */\n value: {\n type: Object,\n required: false,\n default() {\n return null;\n }\n },\n\n /**\n * Whether the input should be disabled or not\n *\n * @type {Boolean}\n */\n disabled: {\n type: Boolean,\n required: false,\n default: false\n },\n\n /**\n * Properties specific to the input\n *\n * @type {Object}\n */\n specificProps: {\n type: Object,\n required: false,\n default() {\n return {};\n }\n }\n },\n\n data() {\n return {\n /**\n * @type {Array.
}\n */\n data: this.value !== null ? [this.value] : [],\n\n /**\n * @type {Object}\n */\n options: {\n ...this.specificProps,\n showCategory: true,\n autocompleter: (...args) => {\n const p1 = autocompleter(...args);\n const p2 = p1.then(result =>\n result.map(({ label, code, type, locationType }) => ({\n id: code,\n label,\n category: type,\n data: {\n code,\n type: locationType\n }\n }))\n );\n p2.abort = p1.abort;\n return p2;\n }\n }\n };\n },\n\n watch: {\n // two-way binding\n value() {\n this.data = this.value !== null ? [this.value] : [];\n },\n data() {\n this.$emit(\"input\", this.data.length > 0 ? this.data[0] : null);\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./collectivity.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./collectivity.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./collectivity.vue?vue&type=template&id=0fec7cc4&lang=pug&\"\nimport script from \"./collectivity.vue?vue&type=script&lang=js&\"\nexport * from \"./collectivity.vue?vue&type=script&lang=js&\"\nimport style0 from \"./collectivity.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { get as getConfig, getPermission } from \"#helpers/api/config\";\nimport { all as fetchAll } from \"#helpers/api/town\";\nimport Table from \"#app/components/table/table.vue\";\nimport CollectivityInput from \"#app/components/form/input/collectivity/collectivity.vue\";\n\nexport default {\n components: {\n Table,\n CollectivityInput\n },\n\n props: {\n /**\n * @type {Array.}\n */\n value: {\n type: Array,\n required: false,\n default() {\n return [];\n }\n },\n\n /**\n * Whether the input should be disabled or not\n *\n * @type {Boolean}\n */\n disabled: {\n type: Boolean,\n required: false,\n default: false\n },\n\n /**\n * A function that takes a town as input, and returns a boolean\n *\n * @type {Function}\n */\n filter: {\n type: Function,\n required: false,\n default: null\n }\n },\n\n data() {\n const { field_types: fieldTypes, user } = getConfig();\n const permission = getPermission(\"shantytown.list\");\n\n const userLocation = {\n id:\n user.organization.location.type === \"nation\"\n ? null\n : user.organization.location[\n user.organization.location.type\n ].code,\n label:\n user.organization.location.type === \"nation\"\n ? \"France\"\n : user.organization.location[\n user.organization.location.type\n ].name,\n category: user.organization.location.type,\n data: {\n code:\n user.organization.location.type === \"nation\"\n ? null\n : user.organization.location[\n user.organization.location.type\n ].code,\n type: user.organization.location.type\n }\n };\n const hasNationalPermission = permission.geographic_level === \"nation\";\n\n let location;\n let defaultLocation;\n if (\n hasNationalPermission !== true ||\n user.organization.location.type === \"nation\"\n ) {\n defaultLocation = { ...userLocation };\n location = null;\n } else {\n defaultLocation = {\n id: null,\n label: \"France\",\n category: \"Pays\",\n data: {\n code: null,\n type: \"nation\"\n }\n };\n location = { ...userLocation };\n }\n\n return {\n location,\n defaultLocation,\n\n columns: [\n { id: \"checkbox\", label: \"\" },\n { id: \"city\", label: \"Commune\" },\n { id: \"address\", label: \"Adresse\" },\n { id: \"fieldType\", label: \"Type de site\" },\n { id: \"people\", label: \"Nombre de personnes\" }\n ],\n\n fieldTypes: fieldTypes.reduce(\n (acc, fieldType) => ({ ...acc, [fieldType.id]: fieldType }),\n {}\n ),\n\n /**\n * Data loading status\n *\n * @type {String|null} Either 'loading', 'loaded', 'error'\n */\n status: null,\n\n /**\n * Data loading error message\n *\n * @type {String|null}\n */\n loadingError: null,\n\n /**\n * List of towns\n *\n * @type {Array.}\n */\n towns: [],\n\n /**\n * Ids of selected towns\n *\n * @type {Array.}\n */\n selectedTowns: this.value,\n\n /**\n * Status of visible towns\n *\n * @type {'open'|'closed'}\n */\n statusOfVisibleTowns: \"open\"\n };\n },\n\n computed: {\n currentLocation() {\n return this.location || this.defaultLocation;\n },\n\n pageContent() {\n return this.towns\n .filter(({ closedAt }) => {\n if (this.statusOfVisibleTowns === \"open\") {\n return closedAt === null;\n }\n return closedAt !== null;\n })\n .filter(shantytown => {\n if (this.currentLocation.data.type === \"nation\") {\n return true;\n }\n\n const l = shantytown[this.currentLocation.data.type];\n return (\n l && `${l.code}` === `${this.currentLocation.data.code}`\n );\n });\n }\n },\n\n watch: {\n // two-way binding\n value() {\n this.selectedTowns = this.value;\n },\n\n selectedTowns() {\n this.$emit(\"input\", this.selectedTowns);\n }\n },\n\n mounted() {\n // on mount, try to load the list of shantytowns\n this.load();\n },\n\n methods: {\n /**\n * Loads shantytowns\n *\n * @returns {undefined}\n */\n load() {\n if (this.status === \"loaded\" || this.status === \"loading\") {\n return;\n }\n\n this.status = \"loading\";\n this.loadingError = null;\n\n fetchAll({}, [\"city.asc\", \"population.desc\"])\n .then(data => {\n this.status = \"loaded\";\n this.towns = data;\n })\n .catch(({ user_message: error }) => {\n this.status = \"error\";\n this.loadingError = error;\n });\n },\n\n /**\n * Changes which towns are displayed in the list\n *\n * @param {'open'|'closed'} status\n *\n * @returns {undefined}\n */\n showTowns(status) {\n this.statusOfVisibleTowns = status;\n },\n\n /**\n * Adds/removes a town from the list of selected towns\n *\n * @param {Shantytown} town\n *\n * @returns {undefined}\n */\n toggleTown({ id: townId }, event) {\n if (event && event.target && event.target.type === \"checkbox\") {\n return;\n }\n\n if (this.disabled) {\n return;\n }\n\n const index = this.selectedTowns.findIndex(id => id === townId);\n if (index !== -1) {\n this.selectedTowns.splice(index, 1);\n } else {\n this.selectedTowns.push(townId);\n }\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./townList.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./townList.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./townList.vue?vue&type=template&id=0307fd5d&lang=pug&\"\nimport script from \"./townList.vue?vue&type=script&lang=js&\"\nexport * from \"./townList.vue?vue&type=script&lang=js&\"\nimport style0 from \"./townList.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"planFunding\"},[_c('header',{staticClass:\"planFunding-header\"},[_c('font-awesome-icon',{staticClass:\"planFunding-yearSwitch\",class:{ 'planFunding-yearSwitch--disabled': this.focusedYear === this.minYear },attrs:{\"icon\":\"caret-square-left\"},on:{\"click\":_vm.showPreviousYear}}),_c('span',[_vm._v(_vm._s(_vm.focusedYear)+\" \")]),_c('font-awesome-icon',{staticClass:\"planFunding-yearSwitch\",class:{ 'planFunding-yearSwitch--disabled': this.focusedYear === this.maxYear },attrs:{\"icon\":\"caret-square-right\"},on:{\"click\":_vm.showNextYear}})],1),_c('table',{staticClass:\"table\"},[_vm._m(0),_c('tbody',[_vm._l((_vm.currentFundings),function(funding,index){return _c('PlanFundingRow',{key:index,attrs:{\"index\":index,\"inputMode\":_vm.inputMode,\"relatedYear\":_vm.focusedYear,\"disabled\":_vm.disabled},on:{\"onremove\":function($event){return _vm.removeRow(index)},\"input\":_vm.onRowChange},model:{value:(funding.data),callback:function ($$v) {_vm.$set(funding, \"data\", $$v)},expression:\"funding.data\"}})}),(_vm.inputMode === 'default')?_c('tr',[_c('td',{staticClass:\"planFunding-addRow\",class:{ 'planFunding-addRow--disabled': _vm.disabled },attrs:{\"colspan\":\"5\"},on:{\"click\":_vm.addRow}},[_vm._v(\"Ajouter une ligne de financement\")])]):_vm._e()],2)])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('thead',[_c('tr',[_c('th',{staticClass:\"planFunding-type\"},[_vm._v(\"Type de financements\")]),_c('th',{staticClass:\"planFunding-amount\"},[_vm._v(\"Montants\"),_c('br'),_vm._v(\"Prévus\")]),_c('th',{staticClass:\"planFunding-details\"},[_vm._v(\"Précision\")]),_c('th',{staticClass:\"planFunding-details\"},[_vm._v(\"Dépenses\"),_c('br'),_vm._v(\"exécutées\")]),_c('th')])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('tr',{staticClass:\"planFundingRow\",class:{ 'planFundingRow--disabled': _vm.disabled }},[_c('td',[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.type),expression:\"type\"}],attrs:{\"disabled\":_vm.disabled || _vm.inputMode === 'closing' || !_vm.allowEdition},on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.type=$event.target.multiple ? $$selectedVal : $$selectedVal[0]}}},_vm._l((_vm.financeTypes),function(financeType){return _c('option',{domProps:{\"value\":financeType.uid}},[_vm._v(_vm._s(financeType.name))])}),0)]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.amount),expression:\"amount\"}],attrs:{\"type\":\"text\",\"readonly\":_vm.disabled || _vm.inputMode === 'closing' || !_vm.allowEdition,\"disabled\":_vm.disabled || _vm.inputMode === 'closing' || !_vm.allowEdition},domProps:{\"value\":(_vm.amount)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.amount=$event.target.value}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.details),expression:\"details\"}],attrs:{\"type\":\"text\",\"readonly\":_vm.disabled || _vm.inputMode === 'closing' || !_vm.allowEdition,\"disabled\":_vm.disabled || _vm.inputMode === 'closing' || !_vm.allowEdition},domProps:{\"value\":(_vm.details)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.details=$event.target.value}}})]),(_vm.showRealAmount)?_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.realAmount),expression:\"realAmount\"}],attrs:{\"type\":\"text\",\"readonly\":_vm.disabled || !_vm.allowEdition,\"disabled\":_vm.disabled || !_vm.allowEdition},domProps:{\"value\":(_vm.realAmount)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.realAmount=$event.target.value}}})]):_c('td',[(_vm.index === 0)?_c('span',[_vm._v(\"À remplir entre janvier et mars de l'année prochaine\")]):_vm._e()]),_c('td',[_c('img',{attrs:{\"src\":\"/img/remove.svg\"},on:{\"click\":_vm.remove}})])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { get as getConfig } from \"#helpers/api/config\";\n\nexport default {\n props: {\n /**\n * @type {PlanFundingData}\n */\n value: {\n type: Object,\n required: false,\n default() {\n return {\n type: null,\n amount: 0.0,\n realAmount: null,\n details: \"\"\n };\n }\n },\n\n /**\n * Whether the input should be disabled or not\n *\n * @type {Boolean}\n */\n disabled: {\n type: Boolean,\n required: false,\n default: false\n },\n\n /**\n * Index of the row, starting from 0\n *\n * @type {Number}\n */\n index: {\n type: Number,\n required: true\n },\n\n /**\n * Year related to the row\n *\n * @type {Number}\n */\n relatedYear: {\n type: Number,\n required: true\n },\n\n /**\n * Input mode\n *\n * @see planFunding.js\n *\n * @type {\"default|\"closing\"}\n */\n inputMode: {\n type: String,\n required: false,\n default: \"default\"\n }\n },\n\n data() {\n const showRealAmount =\n this.inputMode !== \"default\" || !this.isCurrentYear();\n const allowEdition = !Number.isFinite(this.value.realAmount);\n\n return {\n /**\n * List of funding-types\n *\n * @type {Array.}\n */\n financeTypes: getConfig().finance_types || [],\n\n /**\n *\n */\n showRealAmount,\n allowEdition,\n\n // please see definition of PlanFundingData\n type: this.value.type,\n amount: this.value.amount,\n realAmount: showRealAmount ? this.value.realAmount : null,\n details: this.value.details\n };\n },\n\n watch: {\n // two-way binding\n value() {\n this.showRealAmount =\n this.inputMode !== \"default\" || !this.isCurrentYear();\n this.allowEdition = !Number.isFinite(this.value.realAmount);\n this.type = this.value.type;\n this.amount = this.value.amount;\n this.realAmount = this.showRealAmount\n ? this.value.realAmount\n : null;\n this.details = this.value.details;\n },\n\n type() {\n this.emitInput();\n },\n amount() {\n this.emitInput();\n },\n realAmount() {\n this.emitInput();\n },\n details() {\n this.emitInput();\n }\n },\n\n methods: {\n /**\n *\n */\n isCurrentYear() {\n return new Date().getFullYear() === this.relatedYear;\n },\n\n /**\n * Emits an input for data binding\n *\n * @returns {undefined}\n */\n emitInput() {\n this.$emit(\"input\", {\n type: this.type,\n amount: this.amount,\n realAmount: this.realAmount,\n details: this.details\n });\n },\n\n /**\n * Throws a 'remove' event\n *\n * @returns {undefined}\n */\n remove() {\n this.$emit(\"onremove\");\n }\n }\n};\n\n/**\n * @typedef {Object} FinanceType\n * @property {Number} uid\n * @property {String} name\n */\n","\n\n\n\n\n","import mod from \"-!../../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./planFundingRow.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./planFundingRow.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./planFundingRow.vue?vue&type=template&id=6c0ed8b8&lang=pug&\"\nimport script from \"./planFundingRow.vue?vue&type=script&lang=js&\"\nexport * from \"./planFundingRow.vue?vue&type=script&lang=js&\"\nimport style0 from \"./planFundingRow.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import PlanFundingRow from \"./planFundingRow/planFundingRow.vue\";\n\nexport default {\n components: {\n PlanFundingRow\n },\n\n props: {\n /**\n * @type {Array.}\n */\n value: {\n type: Array,\n required: false,\n default() {\n return [];\n }\n },\n\n /**\n * Whether the input should be disabled or not\n *\n * @type {Boolean}\n */\n disabled: {\n type: Boolean,\n required: false,\n default: false\n },\n\n /**\n * The oldest year that can be provided\n *\n * @type {Number|null}\n */\n minYear: {\n type: Number,\n required: false,\n default: null\n },\n\n /**\n * Input mode\n *\n * Three possible modes:\n * - \"default\": new rows are allowed, all inputs are enabled except the realAmount\n * of the current year\n * - \"closing\": new rows are not allowed, all inputs are disabled except empty realAmounts\n * (even the ones of the current year)p\n *\n * @type {\"default|\"closing\"}\n */\n inputMode: {\n type: String,\n required: false,\n default: \"default\"\n }\n },\n\n data() {\n return {\n /**\n * Upper limit for focusedYear\n *\n * @type {Number}\n */\n maxYear: new Date().getFullYear(),\n\n /**\n * Currently edited year\n *\n * @type {Number}\n */\n focusedYear: new Date().getFullYear(),\n\n /**\n * Funding rows\n *\n * @type {Array.}\n */\n fundings: this.value.map(({ year, data }) => ({\n year,\n data: data.map(d => ({\n data: d\n }))\n }))\n };\n },\n\n computed: {\n allowRealAmount() {\n return (\n this.inputMode === \"closing\" ||\n this.focusedYear < new Date().getFullYear()\n );\n },\n currentFundings() {\n const currentFundings = this.getCurrentFundings();\n if (currentFundings === undefined) {\n return [];\n }\n\n return currentFundings.data;\n }\n },\n\n watch: {\n // two-way binding\n value() {\n this.fundings = this.value.map(({ year, data }) => ({\n year,\n data: data.map(d => ({\n data: d\n }))\n }));\n }\n },\n\n methods: {\n /**\n * Returns the funding rows for currently selected year\n *\n * @returns {Array.}\n */\n getCurrentFundings() {\n return this.fundings.find(({ year }) => year === this.focusedYear);\n },\n\n /**\n * Adds a funding row\n *\n * @returns {undefined}\n */\n addRow() {\n if (this.disabled) {\n return;\n }\n\n let currentFundings = this.getCurrentFundings();\n if (currentFundings === undefined) {\n currentFundings = {\n year: this.focusedYear,\n data: []\n };\n this.fundings.push(currentFundings);\n }\n\n currentFundings.data.push({\n data: {\n type: null,\n amount: 0.0,\n realAmount: null,\n details: \"\"\n }\n });\n this.emitInput();\n },\n\n /**\n * Removes a funding row\n *\n * @param {Number} index\n *\n * @returns {undefined}\n */\n removeRow(index) {\n if (this.disabled) {\n return;\n }\n\n const currentFundings = this.getCurrentFundings();\n if (currentFundings === undefined) {\n return;\n }\n\n currentFundings.data.splice(index, 1);\n this.emitInput();\n },\n\n /**\n * Handles a change in the value of a row\n *\n * @returns {undefined}\n */\n onRowChange() {\n this.emitInput();\n },\n\n /**\n * Emits input for data binding\n *\n * @returns {undefined}\n */\n emitInput() {\n this.$emit(\n \"input\",\n this.fundings.map(({ year, data }) => ({\n year,\n data: data.map(({ data: d }) => d)\n }))\n );\n },\n\n /**\n * Switches to next year\n *\n * @returns {undefined}\n */\n showNextYear() {\n this.focusedYear = Math.min(this.maxYear, this.focusedYear + 1);\n },\n\n /**\n * Switches to previous year\n *\n * @returns {undefined}\n */\n showPreviousYear() {\n if (this.minYear === null) {\n this.focusedYear -= 1;\n } else {\n this.focusedYear = Math.max(this.minYear, this.focusedYear - 1);\n }\n }\n }\n};\n\n/**\n * @typedef {Object} PlanFundingData\n * @property {Number} type Type id\n * @property {Number} amount Amount in euros as a float number\n * @property {Number} realAmount Amount in euros as a float number\n * @property {String} details\n */\n\n/**\n * @typedef {Object} PlanFunding\n * @property {PlanFundingData} data\n */\n","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./planFunding.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./planFunding.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./planFunding.vue?vue&type=template&id=8b67ced2&lang=pug&\"\nimport script from \"./planFunding.vue?vue&type=script&lang=js&\"\nexport * from \"./planFunding.vue?vue&type=script&lang=js&\"\nimport style0 from \"./planFunding.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"rb-table\"},[_c('table',{staticClass:\"table\"},[_vm._m(0),_c('tbody',[_c('tr',[_c('th',[_vm._v(\"SIAO\")]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.siao.families),expression:\"data.siao.families\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.siao.families)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.siao, \"families\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.siao.people),expression:\"data.siao.people\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.siao.people)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.siao, \"people\", $event.target.value)}}})])]),_c('tr',[_c('th',[_vm._v(\"Logement social\")]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.logement_social.families),expression:\"data.logement_social.families\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.logement_social.families)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.logement_social, \"families\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.logement_social.people),expression:\"data.logement_social.people\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.logement_social.people)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.logement_social, \"people\", $event.target.value)}}})])]),_c('tr',[_c('th',[_vm._v(\"DALO\")]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.dalo.families),expression:\"data.dalo.families\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.dalo.families)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.dalo, \"families\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.dalo.people),expression:\"data.dalo.people\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.dalo.people)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.dalo, \"people\", $event.target.value)}}})])])])]),_c('table',{staticClass:\"table\"},[_vm._m(1),_c('tbody',[_c('tr',[_c('th',[_vm._v(\"Logement accompagné / adapté\")]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.accompagnes.families),expression:\"data.accompagnes.families\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.accompagnes.families)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.accompagnes, \"families\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.accompagnes.people),expression:\"data.accompagnes.people\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.accompagnes.people)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.accompagnes, \"people\", $event.target.value)}}})])]),_c('tr',[_vm._m(2),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.non_accompagnes.families),expression:\"data.non_accompagnes.families\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.non_accompagnes.families)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.non_accompagnes, \"families\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.non_accompagnes.people),expression:\"data.non_accompagnes.people\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.non_accompagnes.people)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.non_accompagnes, \"people\", $event.target.value)}}})])]),_c('tr',[_vm._m(3),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.heberges.families),expression:\"data.heberges.families\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.heberges.families)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.heberges, \"families\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.heberges.people),expression:\"data.heberges.people\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.heberges.people)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.heberges, \"people\", $event.target.value)}}})])])])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('thead',[_c('tr',[_c('th',[_vm._v(\"Demandes de logement\")]),_c('th',[_vm._v(\"Ménages\")]),_c('th',[_vm._v(\"Personnes\")])])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('thead',[_c('tr',[_c('th',[_vm._v(\"Accès à un logement ou hébergement\")]),_c('th',[_vm._v(\"Ménages\")]),_c('th',[_vm._v(\"Personnes\")])])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('th',[_vm._v(\" Logement sans accompagnement \"),_c('br'),_c('span',[_vm._v(\"(social ou privé)\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('th',[_vm._v(\" Hébergement \"),_c('span',[_vm._v(\"(hors mise à l'abri ou hébergement d'urgence)\")])])}]\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./planHousing.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./planHousing.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./planHousing.vue?vue&type=template&id=0c9f54ed&scoped=true&\"\nimport script from \"./planHousing.vue?vue&type=script&lang=js&\"\nexport * from \"./planHousing.vue?vue&type=script&lang=js&\"\nimport style0 from \"./planHousing.vue?vue&type=style&index=0&id=0c9f54ed&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"0c9f54ed\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Autocompleter',_vm._b({attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'Autocompleter',_vm.options,false))}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Autocompleter from \"../autocompleter/autocompleter.vue\";\nimport { autocompleteOrganization as autocompleter } from \"#helpers/api/user\";\n\nexport default {\n components: {\n Autocompleter\n },\n\n props: {\n /**\n * @type {Organization|null}\n */\n value: {\n type: Object,\n required: false,\n default() {\n return null;\n }\n },\n\n /**\n * Whether the input should be disabled or not\n *\n * @type {Boolean}\n */\n disabled: {\n type: Boolean,\n required: false,\n default: false\n },\n\n /**\n * Properties specific to the input\n *\n * @type {Object}\n */\n specificProps: {\n type: Object,\n required: false,\n default() {\n return {};\n }\n }\n },\n\n data() {\n return {\n /**\n * @type {Array.}\n */\n data: this.value !== null ? [this.value] : [],\n\n /**\n * @type {Object}\n */\n options: {\n ...this.specificProps,\n showCategory: true,\n autocompleter: (...args) => {\n const p1 = autocompleter(...args);\n const p2 = p1.then(result =>\n result.map(r => ({\n id: r.id,\n label: r.label,\n category: r.type.label,\n data: r\n }))\n );\n p2.abort = p1.abort;\n return p2;\n }\n }\n };\n },\n\n watch: {\n // two-way binding\n value() {\n this.data = this.value !== null ? [this.value] : [];\n },\n data() {\n this.$emit(\"input\", this.data.length > 0 ? this.data[0] : null);\n }\n }\n};\n","\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./organization.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./organization.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./organization.vue?vue&type=template&id=98f43ca8&lang=pug&\"\nimport script from \"./organization.vue?vue&type=script&lang=js&\"\nexport * from \"./organization.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_vm._l((_vm.rows),function(row,index){return (_vm.rows.length > 0)?_c('p',{staticClass:\"etp-row dataSection-line\"},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(row.type),expression:\"row.type\"}],staticClass:\"etp-type\",attrs:{\"disabled\":_vm.disabled},on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.$set(row, \"type\", $event.target.multiple ? $$selectedVal : $$selectedVal[0])}}},_vm._l((_vm.types),function(type){return _c('option',{domProps:{\"value\":type.uid}},[_vm._v(_vm._s(type.name))])}),0),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(row.total),expression:\"row.total\"}],staticClass:\"etp-total\",attrs:{\"type\":\"number\",\"disabled\":_vm.disabled,\"step\":\"0.1\"},domProps:{\"value\":(row.total)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(row, \"total\", $event.target.value)}}}),_vm._v(\" ETP \"),_c('font-awesome-icon',{staticClass:\"etp-removeButton\",attrs:{\"icon\":\"trash-alt\"},on:{\"click\":function($event){return _vm.removeRow(index)}}})],1):_vm._e()}),(_vm.rows.length === 0)?_c('p',[_vm._v(\"Aucun ETP enregistré pour le moment\")]):_vm._e(),_c('p',{staticClass:\"etp-addButton\",on:{\"click\":_vm.addRow}},[_c('font-awesome-icon',{attrs:{\"icon\":\"plus-circle\"}}),_c('span',[_vm._v(\"Ajouter\")])],1)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { get as getConfig } from \"#helpers/api/config\";\n\nexport default {\n props: {\n /**\n * Value\n *\n * @type {Array.}\n */\n value: {\n type: Array,\n required: false,\n default() {\n return [];\n }\n },\n\n /**\n * Whether the input should be disabled or not\n *\n * @type {Boolean}\n */\n disabled: {\n type: Boolean,\n required: false,\n default: false\n }\n },\n\n data() {\n const { etp_types: types } = getConfig();\n\n return {\n rows: this.value,\n types\n };\n },\n\n computed: {\n parsedRows() {\n return this.rows.map(row => ({\n type: row.type ? row.type : null,\n total: parseFloat(row.total)\n }));\n }\n },\n\n watch: {\n parsedRows() {\n this.emitInput();\n }\n },\n\n methods: {\n /**\n *\n */\n addRow() {\n if (this.disabled) {\n return;\n }\n\n this.rows.push({\n type: undefined,\n total: 0\n });\n this.emitInput();\n },\n\n /**\n *\n */\n removeRow(i) {\n if (this.disabled) {\n return;\n }\n\n if (i >= this.rows.length) {\n return;\n }\n\n this.rows.splice(i, 1);\n this.emitInput();\n },\n\n /**\n * Emits input for data binding\n *\n * @returns {undefined}\n */\n emitInput() {\n this.$emit(\"input\", this.parsedRows);\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./etp.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./etp.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./etp.vue?vue&type=template&id=6ee93220&lang=pug&\"\nimport script from \"./etp.vue?vue&type=script&lang=js&\"\nexport * from \"./etp.vue?vue&type=script&lang=js&\"\nimport style0 from \"./etp.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"rb-table\"},[_c('table',{staticClass:\"table\"},[_vm._m(0),_c('tbody',[(!_vm.outOnly)?_c('tr',[(!_vm.inOnly)?_c('td',[_c('strong',[_vm._v(\"Entrées\")]),_vm._v(\" dans le dispositif\")]):_vm._e(),(_vm.inOnly)?_c('td',[_vm._v(\"Publics intégrés au dispositif\")]):_vm._e(),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.in.households),expression:\"data.in.households\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.in.households)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.in, \"households\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.in.people),expression:\"data.in.people\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.in.people)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.in, \"people\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.in.women),expression:\"data.in.women\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.in.women)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.in, \"women\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.in.minors),expression:\"data.in.minors\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.in.minors)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.in, \"minors\", $event.target.value)}}})])]):_vm._e(),(!_vm.inOnly)?_c('tr',[_vm._m(1),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.out_positive.households),expression:\"data.out_positive.households\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.out_positive.households)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.out_positive, \"households\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.out_positive.people),expression:\"data.out_positive.people\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.out_positive.people)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.out_positive, \"people\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.out_positive.women),expression:\"data.out_positive.women\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.out_positive.women)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.out_positive, \"women\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.out_positive.minors),expression:\"data.out_positive.minors\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.out_positive.minors)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.out_positive, \"minors\", $event.target.value)}}})])]):_vm._e(),(!_vm.inOnly)?_c('tr',[_vm._m(2),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.out_abandoned.households),expression:\"data.out_abandoned.households\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.out_abandoned.households)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.out_abandoned, \"households\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.out_abandoned.people),expression:\"data.out_abandoned.people\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.out_abandoned.people)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.out_abandoned, \"people\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.out_abandoned.women),expression:\"data.out_abandoned.women\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.out_abandoned.women)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.out_abandoned, \"women\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.out_abandoned.minors),expression:\"data.out_abandoned.minors\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.out_abandoned.minors)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.out_abandoned, \"minors\", $event.target.value)}}})])]):_vm._e(),(!_vm.inOnly)?_c('tr',[_vm._m(3),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.out_excluded.households),expression:\"data.out_excluded.households\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.out_excluded.households)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.out_excluded, \"households\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.out_excluded.people),expression:\"data.out_excluded.people\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.out_excluded.people)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.out_excluded, \"people\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.out_excluded.women),expression:\"data.out_excluded.women\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.out_excluded.women)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.out_excluded, \"women\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.out_excluded.minors),expression:\"data.out_excluded.minors\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.out_excluded.minors)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.out_excluded, \"minors\", $event.target.value)}}})])]):_vm._e()])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('thead',[_c('tr',[_c('th',{staticClass:\"table-col\"}),_c('th',{staticClass:\"table-col\"},[_vm._v(\"Ménages\")]),_c('th',{staticClass:\"table-col\"},[_vm._v(\"Personnes\")]),_c('th',{staticClass:\"table-col\"},[_vm._v(\"dont femmes\"),_c('br'),_vm._v(\"(facultatif)\")]),_c('th',{staticClass:\"table-col\"},[_vm._v(\"dont mineurs\"),_c('br'),_vm._v(\"(facultatif)\")])])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('td',[_c('strong',[_vm._v(\"Sorties positivement\")]),_c('br'),_vm._v(\"fin accompagnement social et/ou\"),_c('br'),_vm._v(\"prise en charge dans un autre dispositif\")])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('td',[_c('strong',[_vm._v(\"Exclusion\")]),_vm._v(\" du dispositif\")])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('td',[_c('strong',[_vm._v(\"Abandon / départ volontaire\")])])}]\n\nexport { render, staticRenderFns }","/* eslint-disable object-shorthand */\nexport default {\n props: {\n /**\n * Value\n *\n * @type {Object}\n */\n value: {\n type: Object,\n required: false,\n default() {\n return {\n in: {\n households: 0,\n people: 0,\n women: 0,\n minors: 0\n },\n out_positive: {\n households: 0,\n people: 0,\n women: 0,\n minors: 0\n },\n out_abandoned: {\n households: 0,\n people: 0,\n women: 0,\n minors: 0\n },\n out_excluded: {\n households: 0,\n people: 0,\n women: 0,\n minors: 0\n }\n };\n }\n },\n\n /**\n * In-only\n *\n * Whether the \"in\" fields only should be shown\n *\n * @type {Boolean}\n */\n inOnly: {\n type: Boolean,\n required: false,\n default: false\n },\n\n /**\n * Out-only\n *\n * Whether the \"out\" fields only should be shown\n *\n * @type {Boolean}\n */\n outOnly: {\n type: Boolean,\n required: false,\n default: false\n },\n\n /**\n * Whether the input should be disabled or not\n *\n * @type {Boolean}\n */\n disabled: {\n type: Boolean,\n required: false,\n default: false\n }\n },\n\n data() {\n return {\n data: this.value\n };\n },\n\n watch: {\n \"data.in.households\"() {\n this.emitInput();\n },\n \"data.in.people\"() {\n this.emitInput();\n },\n \"data.in.women\"() {\n this.emitInput();\n },\n \"data.in.minors\"() {\n this.emitInput();\n },\n\n \"data.out_positive.households\"() {\n this.emitInput();\n },\n \"data.out_positive.people\"() {\n this.emitInput();\n },\n \"data.out_positive.women\"() {\n this.emitInput();\n },\n \"data.out_positive.minors\"() {\n this.emitInput();\n },\n\n \"data.out_abandoned.households\"() {\n this.emitInput();\n },\n \"data.out_abandoned.people\"() {\n this.emitInput();\n },\n \"data.out_abandoned.women\"() {\n this.emitInput();\n },\n \"data.out_abandoned.minors\"() {\n this.emitInput();\n },\n\n \"data.out_excluded.households\"() {\n this.emitInput();\n },\n \"data.out_excluded.people\"() {\n this.emitInput();\n },\n \"data.out_excluded.women\"() {\n this.emitInput();\n },\n \"data.out_excluded.minors\"() {\n this.emitInput();\n }\n },\n\n mounted() {\n this.emitInput();\n },\n\n methods: {\n emitInput() {\n this.$emit(\"input\", this.data);\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./audience.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./audience.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./audience.vue?vue&type=template&id=561fcbde&lang=pug&\"\nimport script from \"./audience.vue?vue&type=script&lang=js&\"\nexport * from \"./audience.vue?vue&type=script&lang=js&\"\nimport style0 from \"./audience.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Datepicker from \"vuejs-datepicker\";\nimport { fr as datepickerFr } from \"vuejs-datepicker/dist/locale\";\nimport Autocompleter from \"./autocompleter/autocompleter.vue\";\nimport Address from \"./address/address.vue\";\nimport Location from \"./location/location.vue\";\nimport AddressWithLocation from \"./address-with-location/address-with-location.vue\";\nimport TownList from \"./townList/townList.vue\";\nimport PlanFunding from \"./planFunding/planFunding.vue\";\nimport PlanHousing from \"./planHousing/planHousing.vue\";\nimport Collectivity from \"./collectivity/collectivity.vue\";\nimport Organization from \"./organization/organization.vue\";\nimport Etp from \"./etp/etp.vue\";\nimport Audience from \"./audience/audience.vue\";\n\n/**\n * Input types that accept a list of values\n *\n * @type {Array.}\n */\nconst multipleValueInputs = [\n \"selectMultiple\",\n \"checkbox\",\n \"autocompleter\",\n \"townList\",\n \"planFunding\",\n \"etp\"\n];\n\nexport default {\n components: {\n Datepicker,\n Autocompleter,\n Address,\n Location,\n AddressWithLocation,\n TownList,\n PlanFunding,\n Collectivity,\n Organization,\n Etp,\n Audience,\n PlanHousing\n },\n\n props: {\n /**\n * Unique id of the field\n *\n * @type {String}\n */\n id: {\n type: String,\n required: true\n },\n\n /**\n * Whether this input is mandatory or not\n *\n * @type {Boolean}\n */\n mandatory: {\n type: Boolean,\n required: true\n },\n\n /**\n * Input type\n *\n * @type {\n * 'hidden',\n * 'text',\n * 'password',\n * 'textarea',\n * 'number',\n * 'select',\n * 'selectMultiple',\n * 'radio',\n * 'checkbox',\n * 'date',\n * 'autocompleter',\n * 'address',\n * 'location',\n * 'addressWithLocation',\n * 'townList',\n * 'planFunding',\n * 'collectivity',\n * 'organization',\n * 'etp',\n * 'audience',\n * 'planHousing'\n * }\n */\n type: {\n type: String,\n required: false,\n default: \"text\"\n },\n\n /**\n * Label\n *\n * @type {String}\n */\n label: {\n type: String,\n required: true\n },\n\n /**\n * Description\n *\n * @type {String}\n */\n description: {\n type: String,\n required: false\n },\n\n /**\n * Options\n *\n * Used by inputs of type:\n * - select\n * - selectMultiple\n * - radio\n * - checkbox\n *\n * Please note that the InputOptionGroup is accepted for selects only.\n *\n * @type {Array.|Array.}\n */\n options: {\n type: Array,\n required: false,\n default() {\n return [];\n }\n },\n\n /**\n * Properties specific to the input\n *\n * @type {Object}\n */\n specificProps: {\n type: Object,\n required: false,\n default() {\n return {};\n }\n },\n\n /**\n * Value of the input\n *\n * @type {Object} Obviously depends on the input type\n */\n value: {\n required: false,\n default() {\n if (multipleValueInputs.indexOf(this.type) !== -1) {\n return [];\n }\n\n return undefined;\n }\n },\n\n /**\n * Whether the input should be disabled or not\n *\n * @type {Boolean}\n */\n disabled: {\n type: Boolean,\n required: false,\n default: false\n },\n\n /**\n * List of errors\n *\n * @type {Array.}\n */\n errors: {\n type: Array,\n required: false,\n default() {\n return [];\n }\n },\n\n /**\n * Message to be displayed as a prefix alert\n *\n * @type {String}\n */\n alertMessage: {\n type: String,\n required: false,\n default: null\n }\n },\n\n data() {\n return {\n data: this.value,\n showPassword: false // for type 'password' only\n };\n },\n\n computed: {\n props() {\n let defaultProps = {};\n if (this.type === \"date\") {\n defaultProps = {\n language: datepickerFr,\n mondayFirst: true,\n fullMonthName: true,\n format: \"dd MMMM yyyy\",\n calendarButton: true,\n calendarButtonIconContent: \"\",\n clearButton: true\n };\n }\n\n return Object.assign(defaultProps, this.specificProps);\n },\n\n optionsAreGrouped() {\n return (\n this.options &&\n Object.prototype.hasOwnProperty.call(this.options[0], \"options\")\n );\n }\n },\n\n mounted() {\n this.$nextTick(() => {\n this.$emit(\"input\", this.data);\n });\n },\n\n watch: {\n // two-way binding\n value() {\n this.data = this.value;\n },\n data() {\n this.$emit(\"input\", this.data);\n this.$emit(\"change\");\n },\n options() {\n if (Array.isArray(this.data)) {\n this.data = this.data.filter(\n v => this.options.indexOf(v) !== -1\n );\n } else if (this.options.indexOf(this.data) === -1) {\n this.data = undefined;\n }\n }\n }\n};\n\n/**\n * @typedef {Object} InputOption\n * @property {String|Number} value\n * @property {String} label\n */\n\n/**\n * @typedef {Object} InputOptionGroup\n * @property {String} label\n * @property {Array.} options\n */\n","\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./input.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./input.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./input.vue?vue&type=template&id=4a2f7e60&lang=pug&\"\nimport script from \"./input.vue?vue&type=script&lang=js&\"\nexport * from \"./input.vue?vue&type=script&lang=js&\"\nimport style0 from \"./input.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:{ slideNote: true, 'slideNote--visible': _vm.visible }},[_c('header',{staticClass:\"slideNote-header\"},[_c('h1',{staticClass:\"slideNote-title\"},[_c('font-awesome-icon',{attrs:{\"icon\":_vm.iconName}}),_vm._v(\" \"+_vm._s(_vm.title))],1),_c('span',{staticClass:\"slideNote-toggle\",on:{\"click\":_vm.toggle}},[_c('font-awesome-icon',{attrs:{\"icon\":_vm.caret,\"size\":\"2x\"}})],1)]),_c('div',{ref:\"body\",staticClass:\"slideNote-body\"},[_vm._t(\"content\",[_c('p',{ref:\"content\",staticClass:\"slideNote-content\",domProps:{\"innerHTML\":_vm._s(_vm.content)}})])],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default {\n props: {\n /**\n * Single-line title\n */\n title: {\n required: true,\n type: String\n },\n\n /**\n * HTML content\n */\n content: {\n required: false,\n type: String\n },\n\n /**\n * Whether the block should be visible by default\n *\n * @type {Boolean}\n */\n opened: {\n required: false,\n type: Boolean,\n default: true\n },\n\n /**\n * Font-awesome-icon\n *\n * @type {String}\n */\n icon: {\n required: false,\n type: String,\n default: \"info-circle\"\n }\n },\n\n data() {\n return {\n iconName: this.icon,\n maxHeight: null,\n visible: this.opened !== false\n };\n },\n\n computed: {\n caret() {\n return `caret-${this.visible === true ? \"up\" : \"down\"}`;\n }\n },\n\n mounted() {\n this.maxHeight = this.$refs.body.offsetHeight;\n this.refreshHeight();\n },\n\n methods: {\n toggle() {\n this.visible = !this.visible;\n this.refreshHeight();\n },\n refreshHeight() {\n if (this.visible === true) {\n this.$refs.body.style.maxHeight = `${this.maxHeight}px`;\n } else {\n this.$refs.body.style.maxHeight = \"0\";\n }\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./slide-note.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./slide-note.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./slide-note.vue?vue&type=template&id=569f8548&scoped=true&lang=pug&\"\nimport script from \"./slide-note.vue?vue&type=script&lang=js&\"\nexport * from \"./slide-note.vue?vue&type=script&lang=js&\"\nimport style0 from \"./slide-note.vue?vue&type=style&index=0&id=569f8548&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"569f8548\",\n null\n \n)\n\nexport default component.exports","import Vue from \"vue\";\n\n/**\n * Default duration of the notification, in milliseconds\n *\n * @const {Number}\n */\nconst DEFAULT_DURATION = 6000;\n\n/**\n * Proxy to vue-notification.notify()\n *\n * Its purpose is to set a default duration, if not already defined.\n *\n * @param {Object} options Please see vue-notification official documentation\n */\nexport function notify(options) {\n return Vue.notify(\n Object.prototype.hasOwnProperty.call(options, \"duration\")\n ? options\n : { ...options, duration: DEFAULT_DURATION }\n );\n}\n\nexport default notify;\n","import Input from \"./input/input.vue\";\nimport SlideNote from \"#app/components/slide-note/slide-note.vue\";\nimport { notify } from \"#helpers/notificationHelper\";\n\nexport default {\n components: {\n Input,\n SlideNote\n },\n\n props: {\n /**\n * Title of the form\n *\n * @type {String}\n */\n title: {\n type: String,\n required: false\n },\n\n /**\n * Description title of the form\n *\n * @type {String}\n */\n descriptionTitle: {\n type: String,\n required: false\n },\n\n /**\n * Description of the form\n *\n * @type {String}\n */\n description: {\n type: String,\n required: false\n },\n\n /**\n * List of steps\n *\n * @type {Array.}\n */\n steps: {\n type: Array,\n required: true\n },\n\n /**\n * Value of the inputs\n *\n * @type {Object.}\n */\n value: {\n type: Object,\n required: false,\n default() {\n return {};\n }\n }\n },\n\n data() {\n return {\n /**\n * Index used to force a refresh of the form\n *\n * @type {Number}\n */\n refreshId: 0,\n\n /**\n * Index of the current step\n *\n * @type {Number}\n */\n currentStepIndex: 0,\n\n /**\n * Data\n *\n * @type {Object.}\n */\n data: this.value,\n\n /**\n * Whether a submission is pending\n *\n * @type {Boolean}\n */\n pending: false,\n\n /**\n * Errors\n *\n * @type {Object}\n */\n errors: null,\n\n /**\n * Responses\n *\n * @type {Array.}\n */\n responses: []\n };\n },\n\n computed: {\n /**\n * Computes the list of all breadcrumb items\n *\n * The breadcrumb items includes:\n * - one item per form step\n * - one separator item in-between each form step\n *\n * @returns {Array.}\n */\n breadcrumbItems() {\n return this.steps\n .reduce(\n (breadcrumb, step, stepIndex) => [\n ...breadcrumb,\n ...[\n {\n ...step,\n classNames: {\n \"form-breadcrumbItem\": true,\n \"form-breadcrumbItem--current\":\n stepIndex === this.currentStepIndex,\n \"form-breadcrumbItem--done\":\n stepIndex < this.currentStepIndex\n },\n isSeparator: false,\n stepIndex\n },\n {\n classNames: {\n \"form-breadcrumbSeparator\": true\n },\n isSeparator: true\n }\n ]\n ],\n []\n )\n .slice(0, -1);\n },\n\n /**\n * Current step\n *\n * @returns {FormStep|null}\n */\n currentStep() {\n return this.steps[this.currentStepIndex] || null;\n },\n\n /**\n * List of sections of the current step\n *\n * @returns {Array.}\n */\n sections() {\n return this.currentStep ? this.currentStep.sections : [];\n },\n\n /**\n * List of sections of the current step with at least one input\n *\n * @returns {Array.}\n */\n fullSections() {\n return this.sections.filter(({ inputs }) =>\n Object.values(inputs).some(input => this.isInputVisible(input))\n );\n },\n\n /**\n * Inputs of the current step\n *\n * @returns {Array.}\n */\n inputs() {\n return this.currentStep.sections.reduce(\n (inputs, section) => ({ ...inputs, ...section.inputs }),\n {}\n );\n },\n\n /**\n * Wording\n *\n * @returns {FormStepWording}\n */\n wording() {\n return {\n submit: \"Étape suivante\",\n error: \"Certaines données saisies sont incorrectes\",\n success: null,\n ...(this.currentStep.wording || {})\n };\n },\n\n /**\n * Filtered data\n *\n * Basically, the data of active inputs.\n *\n * @returns {Object}\n */\n filteredData() {\n const inputIds = Object.keys(this.inputs);\n return inputIds\n .filter(id => this.isInputActive(this.inputs[id]))\n .reduce((data, id) => ({ ...data, [id]: this.data[id] }), {});\n },\n\n /**\n * Errors matching existing inputs\n *\n * @returns {Object}\n */\n filteredErrors() {\n if (!this.errors) {\n return null;\n }\n\n return Object.keys(this.errors.fields || {})\n .filter(inputId => this.inputs[inputId] !== undefined)\n .reduce(\n (errors, inputId) => ({\n ...errors,\n [inputId]: this.errors.fields[inputId]\n }),\n {}\n );\n },\n\n /**\n * Number of filtered errors\n *\n * @returns {Number}\n */\n numberOfFilteredErrors() {\n if (!this.filteredErrors) {\n return 0;\n }\n\n return Object.keys(this.filteredErrors).length;\n },\n\n /**\n *\n */\n submitPrefix() {\n return this.currentStep && this.currentStep.submitPrefix;\n }\n },\n\n watch: {\n // two-way binding\n value() {\n this.data = this.value;\n },\n data() {\n this.onDataChange();\n }\n },\n\n methods: {\n /**\n * Submits the current user's input for validation\n *\n * @returns {undefined}\n */\n submit() {\n if (!this.currentStep.submit) {\n this.goToNextStep(null);\n return;\n }\n\n if (this.pending === true) {\n return;\n }\n\n this.pending = true;\n this.errors = null;\n\n this.currentStep\n .submit(this.filteredData, this.responses)\n .then(response => {\n if (this.wording.success !== null) {\n notify({\n group: \"notifications\",\n type: \"success\",\n title: \"Succès\",\n text: this.wording.success\n });\n }\n\n this.$emit(\"stepcomplete\", this.currentStepIndex, response);\n this.goToNextStep(response);\n\n this.pending = false;\n this.errors = null;\n })\n .catch(error => {\n this.pending = false;\n this.errors = {\n main:\n (error && error.user_message) || \"erreur inconnue\",\n fields: (error && error.fields) || {}\n };\n });\n },\n\n /**\n * Shows the next step, if any\n *\n * @param {Object|null} response Response got from the submission promise\n *\n * @returns {undefined}\n */\n goToNextStep(response) {\n this.responses.push(response);\n\n if (this.currentStepIndex >= this.steps.length - 1) {\n this.$emit(\"complete\", response, this.responses);\n return;\n }\n\n this.currentStepIndex += 1;\n },\n\n /**\n * Finds an input based on the given id\n *\n * @param {String} inputId\n *\n * @returns {Input}\n */\n getInputById(inputId) {\n if (this.currentStep === null) {\n return null;\n }\n\n return this.inputs[inputId] || null;\n },\n\n /**\n * Handles a change in the value of one of the inputs\n *\n * @returns {undefined}\n */\n onDataChange() {\n this.refreshId += 1;\n this.$emit(\"input\", this.data);\n },\n\n /**\n * Indicates whether the given input is active or not\n *\n * @param {Input} input\n *\n * @returns {Boolean}\n */\n isInputActive(input) {\n if (!input.condition) {\n return true;\n }\n\n return input.condition(this.data);\n },\n\n /**\n * Indicates whether the given input is visible or not\n *\n * Please note that an input might be visible but inactive (meaning disabled and\n * not included in filtered-data).\n *\n * @param {Input} input\n *\n * @returns {Boolean}\n */\n isInputVisible(input) {\n return this.isInputActive(input) || input.inactiveMessage;\n },\n\n /**\n * Indicates whether the given input is disabled or not\n *\n * @param {Input} input\n *\n * @returns {Boolean}\n */\n isInputDisabled(input) {\n return (\n this.pending === true ||\n input.disabled === true ||\n (input.inactiveMessage && !this.isInputActive(input))\n );\n },\n\n /**\n * Returns the alert message to be displayed for the given input\n *\n * @param {Input} input\n *\n * @returns {String|Null}\n */\n getInputAlert(input) {\n if (input.inactiveMessage && !this.isInputActive(input)) {\n return input.inactiveMessage;\n }\n\n return null;\n }\n }\n};\n\n/**\n * @typedef {Object} FormStepWording\n * @property {String} submit Label of the button leading to the next step\n * @property {String} error Prefix of the error notification, in case of submissions failure\n * @property {String} success Content of the success notification, in case of submission success\n */\n\n/**\n * @typedef {Object} FormStep\n * @property {String} title Title of the step\n * @property {Array.} sections\n * @property {FormStepWording} [wording] Custom wording\n * @property {Function} [submit] Function called with the user's input. Should return a promise.\n * @property {String} [submitPrefix] Prefix text that is displayed above the submit button (HTML accepted)\n */\n\n/**\n * @typedef {Object} FormSection\n * @property {String} [title] Title of that section\n * @property {String} [description] Description of that section\n * @property {Object.} inputs List of inputs\n */\n\n/**\n * @typedef {Input} FormInput\n * @property {Function} [condition] A function that indicates if the input should be active or not\n * @property {String} [inactiveMessage] Message to be displayed if inactive (if not provided, the whole input will be invisible)\n */\n\n/**\n * @typedef {FormStep} FormBreadcrumbItem\n * @property {Object} classNames A map of dynamic CSS classes for that item\n * @property {Boolean} isSeparator Whether this item is a separator item or not\n * @property {Number} [stepIndex] Absolute index of the related form step (not set for separator items)\n */\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./form.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./form.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./form.vue?vue&type=template&id=38308f15&lang=pug&\"\nimport script from \"./form.vue?vue&type=script&lang=js&\"\nexport * from \"./form.vue?vue&type=script&lang=js&\"\nimport style0 from \"./form.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport { login } from \"#helpers/api/user\";\nimport Form from \"#app/components/form/form.vue\";\n\nexport default {\n components: {\n NavBar,\n Form\n },\n data() {\n return {\n formData: {},\n formDefinition: {\n title: \"Connexion à la plateforme\",\n\n steps: [\n {\n sections: [\n {\n inputs: {\n email: {\n type: \"text\",\n label: \"Votre courriel\",\n mandatory: true\n },\n password: {\n type: \"password\",\n label: \"Votre mot de passe\",\n mandatory: true\n }\n }\n }\n ],\n wording: {\n submit: \"Me connecter\",\n succes: \"Vous êtes désormais connecté\",\n error: \"La tentative de connexion a échoué\"\n },\n submitPrefix:\n 'J\\'ai perdu mon mot de passe',\n submit: ({ email, password }) => login(email, password)\n }\n ]\n }\n };\n },\n methods: {\n onComplete() {\n window.localStorage.setItem(\"logged_once\", true);\n this.$router.push({ path: \"/\" });\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./signin.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./signin.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./signin.vue?vue&type=template&id=0e202dfa&lang=pug&\"\nimport script from \"./signin.vue?vue&type=script&lang=js&\"\nexport * from \"./signin.vue?vue&type=script&lang=js&\"\nimport style0 from \"./signin.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('PublicLayout',{staticClass:\"contact\",attrs:{\"stickyHeader\":false,\"displayLanguagePicker\":true}},[_c('div',{staticClass:\"bg-corail full-width text-center py-8\"},[_c('div',{staticClass:\"max-w-3xl mx-auto\"},[_c('h1',{staticClass:\"text-display-lg text-white \"},[_vm._v(\" \"+_vm._s(_vm.$t(\"contactPage.title\"))+\" \")])])]),_c('PublicContainer',{staticClass:\"py-16\"},[_c('div',{staticClass:\"max-w-xl mx-auto\"},[_c('h2',{staticClass:\"text-display-lg mb-4\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"contactPage.contactUs\"))+\" \")]),_c('ValidationObserver',{ref:\"form\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nvar errors = ref.errors;\nreturn [_c('form',{staticClass:\"max-w-xl mt-12\",on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.submitForm)}}},[_c('InputGroup',[_c('TextInput',{attrs:{\"label\":_vm.$t('contactPage.email'),\"id\":\"email\",\"validationName\":\"Email\",\"rules\":\"required|email\"},model:{value:(_vm.commonFields.email),callback:function ($$v) {_vm.$set(_vm.commonFields, \"email\", $$v)},expression:\"commonFields.email\"}}),_c('TextInput',{attrs:{\"label\":_vm.$t('contactPage.firstname'),\"id\":\"first_name\",\"name\":\"Prénom\",\"rules\":\"required\"},model:{value:(_vm.commonFields.first_name),callback:function ($$v) {_vm.$set(_vm.commonFields, \"first_name\", $$v)},expression:\"commonFields.first_name\"}}),_c('TextInput',{attrs:{\"label\":_vm.$t('contactPage.lastname'),\"id\":\"last_name\",\"name\":\"Nom de famille\",\"rules\":\"required\"},model:{value:(_vm.commonFields.last_name),callback:function ($$v) {_vm.$set(_vm.commonFields, \"last_name\", $$v)},expression:\"commonFields.last_name\"}})],1),_c('CheckableGroup',{attrs:{\"label\":_vm.$t('contactPage.requestType'),\"name\":_vm.$t('contactPage.requestType'),\"id\":\"request_type\",\"direction\":\"row\"}},[_c('Checkbox',{attrs:{\"checkValue\":\"help\",\"label\":_vm.$t('contactPage.help'),\"variant\":\"card\"},model:{value:(_vm.commonFields.request_type),callback:function ($$v) {_vm.$set(_vm.commonFields, \"request_type\", $$v)},expression:\"commonFields.request_type\"}}),_c('Checkbox',{attrs:{\"checkValue\":\"report\",\"label\":_vm.$t('contactPage.report'),\"variant\":\"card\"},model:{value:(_vm.commonFields.request_type),callback:function ($$v) {_vm.$set(_vm.commonFields, \"request_type\", $$v)},expression:\"commonFields.request_type\"}}),_c('Checkbox',{attrs:{\"checkValue\":\"help-request\",\"label\":_vm.$t('contactPage.requestHelp'),\"variant\":\"card\"},model:{value:(_vm.commonFields.request_type),callback:function ($$v) {_vm.$set(_vm.commonFields, \"request_type\", $$v)},expression:\"commonFields.request_type\"}}),_c('Checkbox',{attrs:{\"checkValue\":\"info-request\",\"label\":_vm.$t('contactPage.requestInfo'),\"variant\":\"card\"},model:{value:(_vm.commonFields.request_type),callback:function ($$v) {_vm.$set(_vm.commonFields, \"request_type\", $$v)},expression:\"commonFields.request_type\"}}),_c('Checkbox',{attrs:{\"checkValue\":\"access-request\",\"label\":_vm.$t('contactPage.requestAccess'),\"variant\":\"card\"},model:{value:(_vm.commonFields.request_type),callback:function ($$v) {_vm.$set(_vm.commonFields, \"request_type\", $$v)},expression:\"commonFields.request_type\"}})],1),(_vm.isRequestAccess)?_c('CheckableGroup',{attrs:{\"label\":_vm.$t('contactPage.isActor'),\"info\":_vm.$t('contactPage.actorExample'),\"rules\":\"required\",\"id\":\"access_request\",\"direction\":\"row\"}},[_c('Radio',{attrs:{\"checkValue\":true,\"label\":_vm.$t('contactPage.yes'),\"variant\":\"card\"},model:{value:(_vm.commonFields.is_actor),callback:function ($$v) {_vm.$set(_vm.commonFields, \"is_actor\", $$v)},expression:\"commonFields.is_actor\"}}),_c('Radio',{attrs:{\"checkValue\":false,\"label\":_vm.$t('contactPage.no'),\"variant\":\"card\"},model:{value:(_vm.commonFields.is_actor),callback:function ($$v) {_vm.$set(_vm.commonFields, \"is_actor\", $$v)},expression:\"commonFields.is_actor\"}})],1):_vm._e(),(_vm.isRequestAccessAndActor)?_c('CheckableGroup',{attrs:{\"label\":_vm.$t('contactPage.whichEstablishment'),\"rules\":\"required\",\"id\":\"is_actor\"}},[_c('Radio',{attrs:{\"checkValue\":\"public_establishment\",\"label\":_vm.$t('contactPage.public'),\"variant\":\"card\"},model:{value:(\n _vm.requestAccessFields.organization_category\n ),callback:function ($$v) {_vm.$set(_vm.requestAccessFields, \"organization_category\", $$v)},expression:\"\\n requestAccessFields.organization_category\\n \"}}),_c('Radio',{attrs:{\"checkValue\":\"territorial_collectivity\",\"label\":_vm.$t('contactPage.territorialCollectivity'),\"variant\":\"card\"},model:{value:(\n _vm.requestAccessFields.organization_category\n ),callback:function ($$v) {_vm.$set(_vm.requestAccessFields, \"organization_category\", $$v)},expression:\"\\n requestAccessFields.organization_category\\n \"}}),_c('Radio',{attrs:{\"checkValue\":\"association\",\"label\":_vm.$t('contactPage.association'),\"variant\":\"card\"},model:{value:(\n _vm.requestAccessFields.organization_category\n ),callback:function ($$v) {_vm.$set(_vm.requestAccessFields, \"organization_category\", $$v)},expression:\"\\n requestAccessFields.organization_category\\n \"}}),_c('Radio',{attrs:{\"checkValue\":\"administration\",\"label\":_vm.$t('contactPage.administration'),\"variant\":\"card\"},model:{value:(\n _vm.requestAccessFields.organization_category\n ),callback:function ($$v) {_vm.$set(_vm.requestAccessFields, \"organization_category\", $$v)},expression:\"\\n requestAccessFields.organization_category\\n \"}})],1):_vm._e(),(_vm.isPublicEstablishmentRequest)?_c('PublicEstablishmentForm',{attrs:{\"organizationType\":_vm.publicEstablishmentFields.organization_type,\"organizationTerritory\":_vm.publicEstablishmentFields.organization_public,\"organizationFunction\":_vm.requestAccessFields.position},on:{\"update:organizationType\":function($event){return _vm.$set(_vm.publicEstablishmentFields, \"organization_type\", $event)},\"update:organization-type\":function($event){return _vm.$set(_vm.publicEstablishmentFields, \"organization_type\", $event)},\"update:organizationTerritory\":function($event){return _vm.$set(_vm.publicEstablishmentFields, \"organization_public\", $event)},\"update:organization-territory\":function($event){return _vm.$set(_vm.publicEstablishmentFields, \"organization_public\", $event)},\"update:organizationFunction\":function($event){return _vm.$set(_vm.requestAccessFields, \"position\", $event)},\"update:organization-function\":function($event){return _vm.$set(_vm.requestAccessFields, \"position\", $event)}}}):_vm._e(),(_vm.isTerritorialCollectivityRequest)?_c('TerritorialCollectivityForm',{attrs:{\"collectivityName\":_vm.territorialCollectivityFields.territorial_collectivity,\"collectivityFunction\":_vm.requestAccessFields.position},on:{\"update:collectivityName\":function($event){return _vm.$set(_vm.territorialCollectivityFields, \"territorial_collectivity\", $event)},\"update:collectivity-name\":function($event){return _vm.$set(_vm.territorialCollectivityFields, \"territorial_collectivity\", $event)},\"update:collectivityFunction\":function($event){return _vm.$set(_vm.requestAccessFields, \"position\", $event)},\"update:collectivity-function\":function($event){return _vm.$set(_vm.requestAccessFields, \"position\", $event)}}}):_vm._e(),(_vm.isAssociationRequest)?_c('AssociationForm',{attrs:{\"associationName\":_vm.associationFields.association,\"associationTerritory\":_vm.associationFields.departement,\"associationFunction\":_vm.associationFields.position,\"newAssociationName\":_vm.associationFields.new_association_name,\"newAssociationAcronym\":_vm.associationFields.new_association_abbreviation},on:{\"update:associationName\":function($event){return _vm.$set(_vm.associationFields, \"association\", $event)},\"update:association-name\":function($event){return _vm.$set(_vm.associationFields, \"association\", $event)},\"update:associationTerritory\":function($event){return _vm.$set(_vm.associationFields, \"departement\", $event)},\"update:association-territory\":function($event){return _vm.$set(_vm.associationFields, \"departement\", $event)},\"update:associationFunction\":function($event){return _vm.$set(_vm.associationFields, \"position\", $event)},\"update:association-function\":function($event){return _vm.$set(_vm.associationFields, \"position\", $event)},\"update:newAssociationName\":function($event){return _vm.$set(_vm.associationFields, \"new_association_name\", $event)},\"update:new-association-name\":function($event){return _vm.$set(_vm.associationFields, \"new_association_name\", $event)},\"update:newAssociationAcronym\":function($event){return _vm.$set(_vm.associationFields, \"new_association_abbreviation\", $event)},\"update:new-association-acronym\":function($event){return _vm.$set(_vm.associationFields, \"new_association_abbreviation\", $event)}}}):_vm._e(),(_vm.isAdministrationRequest)?_c('AdministrationForm',{attrs:{\"administrationName\":_vm.administrationFields.organization_administration,\"administrationFunction\":_vm.requestAccessFields.position},on:{\"update:administrationName\":function($event){return _vm.$set(_vm.administrationFields, \"organization_administration\", $event)},\"update:administration-name\":function($event){return _vm.$set(_vm.administrationFields, \"organization_administration\", $event)},\"update:administrationFunction\":function($event){return _vm.$set(_vm.requestAccessFields, \"position\", $event)},\"update:administration-function\":function($event){return _vm.$set(_vm.requestAccessFields, \"position\", $event)}}}):_vm._e(),_c('TextArea',{attrs:{\"rows\":8,\"label\":_vm.$t('contactPage.message'),\"id\":\"access_request_message\"},model:{value:(_vm.commonFields.access_request_message),callback:function ($$v) {_vm.$set(_vm.commonFields, \"access_request_message\", $$v)},expression:\"commonFields.access_request_message\"}}),_vm._v(\" \"),_c('CheckableGroup',{attrs:{\"validationName\":\"Accord\",\"rules\":\"required\",\"id\":\"legal\"}},[_c('Checkbox',{attrs:{\"checkValue\":\"confirm\",\"label\":_vm.$t('contactPage.legal')},model:{value:(_vm.commonFields.legal),callback:function ($$v) {_vm.$set(_vm.commonFields, \"legal\", $$v)},expression:\"commonFields.legal\"}})],1),(\n Object.values(errors).filter(function (err) { return err.length; })\n .length\n )?_c('div',{staticClass:\"bg-red-200 p-3 mb-8\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"contactPage.error\"))+\" \"),_c('ul',{staticClass:\"mt-4\"},_vm._l((errors),function(error,inputId){return _c('li',{directives:[{name:\"show\",rawName:\"v-show\",value:(error.length),expression:\"error.length\"}],key:inputId},[_c('router-link',{staticClass:\"link\",attrs:{\"to\":{ hash: inputId }}},[_vm._v(_vm._s(error[0]))])],1)}),0)]):_vm._e(),_c('div',{staticClass:\"flex justify-between mt-8\"},[_c('router-link',{attrs:{\"to\":\"/\"}},[_c('Button',{attrs:{\"variant\":\"primaryText\"}},[_vm._v(_vm._s(_vm.$t(\"contactPage.cancel\")))])],1),_c('Button',{attrs:{\"type\":\"submit\",\"variant\":\"primary\",\"loading\":_vm.loading}},[_vm._v(_vm._s(_vm.$t(\"contactPage.send\")))])],1)],1)]}}])}),_c('div',{staticClass:\"text-display-md mt-32 mb-2\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"contactPage.share\"))+\" \")]),_c('SocialShare',{staticClass:\"mb-8\"})],1)])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { postApi } from \"#helpers/api/main\";\n\n/**\n * POST /contact\n */\nexport function contact(data) {\n return postApi(\"/contact\", data);\n}\n\nexport default contact;\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('Select',{attrs:{\"label\":\"Précisez le type de structure\",\"value\":_vm.organizationType,\"rules\":\"required\",\"id\":\"organization_type\"},on:{\"input\":function (val) { return _vm.$emit('update:organizationType', val); }}},[_c('SelectOption',{attrs:{\"value\":\"none\"}},[_vm._v(\"- Selectionner un choix -\")]),_vm._l((_vm.orgTypesOptions),function(item){return _c('SelectOption',{key:item.value,attrs:{\"value\":item.value}},[_vm._v(_vm._s(item.label))])})],2),_c('Select',{attrs:{\"label\":\"Territoire de rattachement\",\"value\":_vm.organizationTerritory,\"rules\":\"required\",\"id\":\"organization_public\"},on:{\"input\":function (val) { return _vm.$emit('update:organizationTerritory', val); }}},[_c('SelectOption',[_vm._v(\"- Selectionner un choix -\")]),_vm._l((_vm.orgTerritoryOptions),function(item){return _c('SelectOption',{key:item.value,attrs:{\"value\":item.value}},[_vm._v(\" \"+_vm._s(item.label)+\" \")])})],2),_c('TextInput',{attrs:{\"label\":\"Votre fonction\",\"value\":_vm.organizationFunction,\"rules\":\"required\",\"id\":\"position\"},on:{\"input\":function (val) { return _vm.$emit('update:organizationFunction', val); }}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { getApi } from \"#helpers/api/main\";\n\n/**\n * Lists all categories\n *\n * @returns {Promise}\n */\nexport function categories() {\n return getApi(\"/organization-categories\");\n}\n\n/**\n * Lists all types of a specific category\n *\n * @param {String} categoryUid\n *\n * @returns {Promise}\n */\nexport function types(categoryUid) {\n return getApi(`/organization-categories/${categoryUid}/organization-types`);\n}\n\n/**\n * Lists all organizations of a specific category\n *\n * @param {String} categoryUid\n * @param {String} [search]\n *\n * @returns {Promise}\n */\nexport function getByCategory(categoryUid, search = null) {\n return getApi(\n `/organization-categories/${categoryUid}/organizations${\n search !== null ? `?search=${search}` : \"\"\n }`\n );\n}\n\n/**\n * Lists all organizations of a specific type\n *\n * @param {Number} typeId\n *\n * @returns {Promise}\n */\nexport function getByType(typeId) {\n return getApi(`/organization-types/${typeId}/organizations`);\n}\n\n/**\n * Lists all users of a specific organization\n *\n * @param {Number} organizationId\n *\n * @returns {Promise}\n */\nexport function getMembers(organizationId) {\n return getApi(`/organizations/${organizationId}/users`);\n}\n\n/**\n * Lists all users of a specific organization\n *\n * @param {Number} organizationId\n *\n * @returns {Promise}\n */\nexport function getMembersOfCategory(categoryId, regionId, departementId) {\n let query = \"\";\n if (departementId !== undefined) {\n query = `departementId=${encodeURIComponent(departementId)}`;\n } else if (regionId !== undefined) {\n query = `regionId=${encodeURIComponent(regionId)}`;\n }\n\n return getApi(`/organization-categories/${categoryId}/users?${query}`);\n}\n","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PublicEstablishmentForm.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PublicEstablishmentForm.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./PublicEstablishmentForm.vue?vue&type=template&id=2ba06527&\"\nimport script from \"./PublicEstablishmentForm.vue?vue&type=script&lang=js&\"\nexport * from \"./PublicEstablishmentForm.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('InputWrapper',[_c('InputLabel',{attrs:{\"label\":\"Nom de la structure\"}}),_c('ValidationProvider',{attrs:{\"rules\":\"required\",\"name\":\"Nom de la structure\",\"vid\":\"territorial_collectivity\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('div',{staticClass:\"v1\"},[_c('Collectivity',{attrs:{\"value\":_vm.collectivityName},on:{\"input\":function (val) { return _vm.$emit('update:collectivityName', val); }}})],1),_c('InputError',[_vm._v(_vm._s(errors[0]))])]}}])})],1),_c('TextInput',{attrs:{\"label\":\"Votre fonction\",\"value\":_vm.collectivityFunction,\"rules\":\"required\",\"id\":\"position\"},on:{\"input\":function (val) { return _vm.$emit('update:collectivityFunction', val); }}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TerritorialCollectivityForm.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TerritorialCollectivityForm.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TerritorialCollectivityForm.vue?vue&type=template&id=a733034c&\"\nimport script from \"./TerritorialCollectivityForm.vue?vue&type=script&lang=js&\"\nexport * from \"./TerritorialCollectivityForm.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('Select',{attrs:{\"label\":\"Précisez le type de structure\",\"value\":_vm.associationName,\"rules\":\"required\",\"id\":\"association\"},on:{\"input\":function (val) { return _vm.$emit('update:associationName', val); }}},[_c('optgroup',{attrs:{\"label\":\"Autre\"}},[_c('option',{attrs:{\"value\":\"Autre\"}},[_vm._v(\"Mon association n'est pas dans cette liste\")])]),_c('optgroup',{attrs:{\"label\":\"Associations connues\"}},_vm._l((_vm.associationNameOptions),function(item){return _c('option',{key:item.value,domProps:{\"value\":item.value}},[_vm._v(_vm._s(item.label))])}),0)]),(_vm.associationName === 'Autre')?_c('div',[_c('TextInput',{attrs:{\"label\":\"Précisez le nom complet\",\"value\":_vm.newAssociationName,\"rules\":\"required\",\"id\":\"new_association_name\"},on:{\"input\":function (val) { return _vm.$emit('update:newAssociationName', val); }}}),_c('TextInput',{attrs:{\"label\":\"Précisez l'acronyme, si besoin\",\"value\":_vm.newAssociationAcronym,\"id\":\"new_association_abbreviation\"},on:{\"input\":function (val) { return _vm.$emit('update:newAssociationAcronym', val); }}})],1):_vm._e(),_c('div',[_c('Select',{attrs:{\"label\":\"Territoire de rattachement\",\"value\":_vm.associationTerritory,\"rules\":\"required\",\"id\":\"departement\"},on:{\"input\":function (val) { return _vm.$emit('update:associationTerritory', val); }}},[_c('SelectOption',[_vm._v(\"- Selectionner un choix -\")]),_vm._l((_vm.associationTerritoryOptions),function(item){return _c('SelectOption',{key:item.value,attrs:{\"value\":item.value}},[_vm._v(\" \"+_vm._s(item.label)+\" \")])})],2)],1),_c('TextInput',{attrs:{\"label\":\"Votre fonction\",\"value\":_vm.associationFunction,\"rules\":\"required\",\"id\":\"position\"},on:{\"input\":function (val) { return _vm.$emit('update:associationFunction', val); }}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AssociationForm.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AssociationForm.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AssociationForm.vue?vue&type=template&id=4675bb9e&\"\nimport script from \"./AssociationForm.vue?vue&type=script&lang=js&\"\nexport * from \"./AssociationForm.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('Select',{attrs:{\"label\":\"Nom de la structure\",\"value\":_vm.administrationName,\"rules\":\"required\",\"id\":\"organization_administration\"},on:{\"input\":function (val) { return _vm.$emit('update:administrationName', val); }}},[_c('SelectOption',{attrs:{\"value\":\"none\"}},[_vm._v(\"- Selectionner un choix -\")]),_vm._l((_vm.administrationNameOptions),function(item){return _c('SelectOption',{key:item.value,attrs:{\"value\":item.value}},[_vm._v(_vm._s(item.label))])})],2),_c('TextInput',{attrs:{\"label\":\"Votre fonction\",\"value\":_vm.administrationFunction,\"rules\":\"required\",\"id\":\"position\"},on:{\"input\":function (val) { return _vm.$emit('update:administrationFunction', val); }}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdministrationForm.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdministrationForm.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdministrationForm.vue?vue&type=template&id=5af61384&\"\nimport script from \"./AdministrationForm.vue?vue&type=script&lang=js&\"\nexport * from \"./AdministrationForm.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('a',{attrs:{\"href\":(\"https://www.facebook.com/sharer/sharer.php?u=\" + _vm.url),\"target\":\"_blank\"}},[_c('Icon',{staticClass:\"text-display-lg\",attrs:{\"icon\":['fab', 'facebook-square']}})],1),_vm._v(\" \"+_vm._s(\" \")+\" \"),_c('a',{attrs:{\"href\":(\"http://www.twitter.com/share?url=\" + _vm.url),\"target\":\"_blank\"}},[_c('Icon',{staticClass:\"text-display-lg\",attrs:{\"icon\":['fab', 'twitter-square']}})],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SocialShare.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SocialShare.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SocialShare.vue?vue&type=template&id=1da2bd5b&\"\nimport script from \"./SocialShare.vue?vue&type=script&lang=js&\"\nexport * from \"./SocialShare.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=7408cbf8&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--dashboard\"},[_c('Quickview',{attrs:{\"town\":_vm.quickview.town,\"origin\":_vm.quickview.originEvent},on:{\"outside-click\":_vm.hideQuickview}}),_c('POIView',{attrs:{\"poi\":_vm.poiview.poi,\"origin\":_vm.poiview.originEvent},on:{\"outside-click\":_vm.hidePOIView}}),_c('NavBar'),_c('section',{staticClass:\"dashboard\"},[_c('simplebar',{ref:\"filters\",staticClass:\"filters\",attrs:{\"data-simplebar-auto-hide\":\"false\"}},_vm._l((_vm.allowedFilters),function(filterGroup){return _c('FilterGroup',{key:filterGroup.id,attrs:{\"id\":filterGroup.id,\"faIcon\":filterGroup.faIcon,\"icon\":filterGroup.icon,\"label\":filterGroup.label,\"options\":filterGroup.options,\"opened\":filterGroup.opened}})}),1),_c('div',{ref:\"main\",staticClass:\"content\",style:({ width: !_vm.loading && !_vm.error ? 'auto' : 0 })},[_c('Map',_vm._b({ref:\"map\",on:{\"town-click\":_vm.showQuickview,\"poi-click\":_vm.showPOIView,\"on-row-click\":_vm.routeToTown}},'Map',_vm.rendererProps,false))],1),(_vm.loading)?_c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Chargement des données en cours...\")])]):_vm._e(),(_vm.error)?_c('div',{staticClass:\"notification error full-width\"},[_c('span',[_vm._v(_vm._s(_vm.error)+\". \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.fetchData}},[_vm._v(\"Réessayer ?\")])])]):_vm._e()],1)],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"filterGroup\"},[_c('aside',[(_vm.faIcon !== null)?_c('font-awesome-icon',{attrs:{\"icon\":_vm.faIcon}}):_c('img',{attrs:{\"src\":_vm.icon,\"alt\":\"\"}})],1),_c('main',[_c('h1',{on:{\"click\":_vm.toggle}},[_vm._v(_vm._s(_vm.label)+\" \"),_c('span',{staticClass:\"filterGroup-toggle\"},[_vm._v(\"( \"+_vm._s(_vm.toggler)+\" )\")])]),_vm._l((_vm.options),function(option,index){return (_vm.status === 'open')?_c('div',{key:index},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(option.checked),expression:\"option.checked\"}],attrs:{\"type\":\"checkbox\",\"id\":_vm.id + '-' + (option.id || index)},domProps:{\"value\":option.value,\"checked\":Array.isArray(option.checked)?_vm._i(option.checked,option.value)>-1:(option.checked)},on:{\"change\":function($event){var $$a=option.checked,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=option.value,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(option, \"checked\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(option, \"checked\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(option, \"checked\", $$c)}}}}),_c('label',{staticClass:\"label-inline\",attrs:{\"for\":_vm.id + '-' + (option.id || index)}},[(option.icon !== undefined)?_c('font-awesome-icon',{style:({ color: '#' + option.icon.color }),attrs:{\"icon\":option.icon.id,\"fixed-width\":\"\"}}):_vm._e(),_c('span',[_vm._v(_vm._s(option.label))])],1),_c('br')]):_vm._e()})],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default {\n props: {\n id: String,\n icon: {\n type: String,\n required: false,\n default: null\n },\n faIcon: {\n type: String,\n required: false,\n default: null\n },\n label: String,\n options: Array,\n opened: {\n type: Boolean,\n default: false\n }\n },\n data() {\n return {\n status: this.opened === true ? \"open\" : \"closed\"\n };\n },\n computed: {\n toggler() {\n return this.status === \"open\" ? \"-\" : \"+\";\n }\n },\n methods: {\n toggle() {\n this.status = this.status === \"open\" ? \"closed\" : \"open\";\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./filterGroup.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./filterGroup.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./filterGroup.vue?vue&type=template&id=f4494468&lang=pug&\"\nimport script from \"./filterGroup.vue?vue&type=script&lang=js&\"\nexport * from \"./filterGroup.vue?vue&type=script&lang=js&\"\nimport style0 from \"./filterGroup.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('section',{staticClass:\"map\"},[(_vm.displaySearchbar)?_c('Address',{attrs:{\"placeholder\":_vm.placeholder},model:{value:(_vm.address),callback:function ($$v) {_vm.address=$$v},expression:\"address\"}}):_vm._e(),_c('div',{attrs:{\"id\":\"map\"}},[_c('div',{ref:\"adressToggler\",staticClass:\"leaflet-address-toggler\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.showAddresses),expression:\"showAddresses\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.showAddresses)?_vm._i(_vm.showAddresses,null)>-1:(_vm.showAddresses)},on:{\"change\":function($event){var $$a=_vm.showAddresses,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.showAddresses=$$a.concat([$$v]))}else{$$i>-1&&(_vm.showAddresses=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.showAddresses=$$c}}}}),_vm._v(\" Voir les adresses des sites \")]),_c('div',{ref:\"legends\",staticClass:\"leaflet-legend\"},[_c('h1',[_vm._v(\"Légende\")]),_vm._l((_vm.fieldTypes),function(fieldType){return _c('p',[_c('span',{style:({ 'background-color': fieldType.color })}),_vm._v(\" \"+_vm._s(fieldType.label)+\" \")])})],2)])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"search__group\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model.trim\",value:(_vm.query),expression:\"query\",modifiers:{\"trim\":true}}],attrs:{\"type\":\"text\",\"placeholder\":_vm.placeholder,\"autofocus\":_vm.autofocus},domProps:{\"value\":(_vm.query)},on:{\"keyup\":_vm.onTyping,\"keydown\":_vm.onNavigation,\"focus\":_vm.onFocus,\"blur\":[_vm.onBlur,function($event){return _vm.$forceUpdate()}],\"input\":function($event){if($event.target.composing){ return; }_vm.query=$event.target.value.trim()}}}),(_vm.suggestions.length)?_c('div',{staticClass:\"autocomplete\"},_vm._l((_vm.suggestions),function(suggestion,index){return _c('p',{staticClass:\"autocomplete-result\",class:{ active: index === _vm.indexOfHighlightedSuggestion },domProps:{\"innerHTML\":_vm._s((suggestion.type ? (\"\" + (suggestion.type) + \"
\") : '') + suggestion.label)},on:{\"mousedown\":function($event){return _vm.onSuggestionClick(suggestion)}}})}),0):_vm._e(),(_vm.showMagnifier)?_c('button',{staticClass:\"overlay-button\",attrs:{\"aria-label\":\"Recherche\"}},[_c('svg',{staticClass:\"icon icon-search\"},[_c('use',{attrs:{\"xlink:href\":\"#magnifier\"}})])]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { autocomplete } from \"#helpers/addressHelper\";\n\n/**\n * Delay before triggering an autocomplete, in milliseconds\n *\n * @const {number}\n */\nconst TYPING_TIMEOUT = 200;\n\n/**\n * Minimum length of the user's query before triggering an autocomplete\n *\n * @const {number}\n */\nconst TYPING_MIN = 3;\n\nexport default {\n props: {\n value: Object,\n autofocus: Boolean,\n placeholder: String,\n autocompleteFunction: {\n type: Function,\n default: autocomplete\n },\n showMagnifier: {\n type: Boolean,\n default: true\n },\n typingMin: {\n type: Number,\n default: TYPING_MIN\n }\n },\n data() {\n return {\n pendingRequest: null,\n typingTimeout: null,\n suggestions: [],\n filled: this.value !== null,\n query: (this.value !== null && this.value.label) || \"\",\n previousQuery: this.value !== null ? this.value.label : \"\",\n focused: false,\n indexOfHighlightedSuggestion: null\n };\n },\n mounted() {\n document.addEventListener(\"click\", this.checkOutsideClick);\n },\n beforeDestroy() {\n if (this.typingTimeout !== null) {\n clearTimeout(this.typingTimeout);\n this.typingTimeout = null;\n }\n },\n destroyed() {\n document.removeEventListener(\"click\", this.checkOutsideClick);\n },\n methods: {\n onTyping() {\n // ignore key inputs that did not cause a change in the value of the query\n if (this.previousQuery === this.query) {\n return;\n }\n\n this.previousQuery = this.query;\n if (this.typingTimeout !== null) {\n clearTimeout(this.typingTimeout);\n }\n\n this.filled = false;\n this.$emit(\"input\", null);\n this.setSuggestions([]);\n this.indexOfHighlightedSuggestion = null;\n this.typingTimeout = setTimeout(this.autocomplete, TYPING_TIMEOUT);\n },\n onFocus() {\n this.focused = true;\n },\n onBlur() {\n this.focused = false;\n\n if (this.pendingRequest !== null) {\n this.pendingRequest.abort();\n }\n\n if (this.filled === false) {\n this.query = \"\";\n this.previousQuery = \"\";\n }\n\n this.setSuggestions([]);\n },\n onNavigation(event) {\n if (event.keyCode === 38) {\n // up arrow (= previous suggestion)\n if (this.indexOfHighlightedSuggestion - 1 < 0) {\n this.indexOfHighlightedSuggestion = null;\n } else {\n this.indexOfHighlightedSuggestion -= 1;\n }\n } else if (event.keyCode === 40) {\n // down arrow (= next suggestion)\n if (this.suggestions.length > 0) {\n if (this.indexOfHighlightedSuggestion === null) {\n this.indexOfHighlightedSuggestion = 0;\n } else {\n this.indexOfHighlightedSuggestion = Math.min(\n this.suggestions.length - 1,\n this.indexOfHighlightedSuggestion + 1\n );\n }\n }\n } else if (event.keyCode === 13) {\n // key 'enter' (= select current suggestion)\n if (this.indexOfHighlightedSuggestion !== null) {\n this.onSelect(\n this.suggestions[this.indexOfHighlightedSuggestion]\n );\n }\n } else {\n this.indexOfHighlightedSuggestion = null;\n }\n },\n onSuggestionClick(suggestion) {\n this.onSelect(suggestion);\n },\n onSelect(value) {\n const { label } = value;\n this.$emit(\"input\", value);\n this.setSuggestions([]);\n this.filled = true;\n this.query = label;\n this.previousQuery = label;\n },\n autocomplete() {\n if (this.pendingRequest !== null) {\n this.pendingRequest.abort();\n }\n\n if (this.query.length < this.typingMin || this.focused !== true) {\n return;\n }\n\n this.pendingRequest = this.autocompleteFunction(this.query);\n this.pendingRequest\n .then(suggestions => {\n if (this.focused === true) {\n this.setSuggestions(suggestions);\n }\n })\n .catch(() => {\n this.pendingRequest = null;\n });\n },\n checkOutsideClick(event) {\n if (!this.$el.contains(event.target)) {\n this.setSuggestions([]);\n }\n },\n setSuggestions(suggestions) {\n this.suggestions = suggestions;\n\n if (this.suggestions.length > 0) {\n this.indexOfHighlightedSuggestion = 0;\n } else {\n this.indexOfHighlightedSuggestion = null;\n }\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./address.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./address.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./address.vue?vue&type=template&id=6b423108&scoped=true&lang=pug&\"\nimport script from \"./address.vue?vue&type=script&lang=js&\"\nexport * from \"./address.vue?vue&type=script&lang=js&\"\nimport style0 from \"./address.vue?vue&type=style&index=0&id=6b423108&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6b423108\",\n null\n \n)\n\nexport default component.exports","/* eslint-disable no-underscore-dangle */\n\nimport L from \"leaflet\";\nimport Address from \"#app/components/address/address.vue\";\nimport { get as getConfig } from \"#helpers/api/config\";\nimport \"leaflet-providers\";\nimport \"leaflet.markercluster/dist/MarkerCluster.css\";\nimport \"leaflet.markercluster/dist/MarkerCluster.Default.css\";\nimport \"leaflet.markercluster/dist/leaflet.markercluster\";\n\nimport waterYes from \"../../../../../public/img/water-yes.png\";\nimport utensils from \"../../../../../public/img/utensils.png\";\nimport waterNo from \"../../../../../public/img/water-no.png\";\nimport waterNull from \"../../../../../public/img/water-null.png\";\n\nconst DEFAULT_VIEW = [46.7755829, 2.0497727];\nconst POI_ZOOM_LEVEL = 13;\n\n/* **************************************************************************************************\n * Ce composant fait apparaître une carte qui propose deux fonctionnalités distinctes :\n *\n * - la possibilité de faire apparaître une liste de bidonvilles sur la carte, chacun d'entre eux\n * étant représenté par un marqueur dont la position est fixe (townMarker)\n * Cette fonctionnalité vient avec une légende spécifique et la possibilité de faire apparaître ou\n * non l'adresse des sites en question.\n *\n * - la possibilité de se déplacer sur la carte en recherchant une adresse via une barre de recherche\n * avec autocomplétion (searchbar)\n ************************************************************************************************* */\n\nexport default {\n components: {\n Address\n },\n\n props: {\n /* *****************************\n * Options pour la liste des sites\n * ************************** */\n\n /**\n * Liste des bidonvilles à afficher\n *\n * @type {Array.}\n */\n towns: {\n type: Array,\n required: false,\n default() {\n return [];\n }\n },\n\n /**\n * Liste des points d'interets à afficher\n *\n * @type {Array.}\n */\n pois: {\n type: Array,\n required: false,\n default() {\n return [];\n }\n },\n\n /* *****************************\n * Options de la searchbar\n * ************************** */\n\n /**\n * Indique si la searchbar doit être affichée ou non\n *\n * @type {Boolean}\n */\n displaySearchbar: {\n type: Boolean,\n required: false,\n default: true\n },\n\n /**\n * Placeholder de la searchbar\n *\n * @type {String}\n */\n placeholder: {\n type: String,\n required: false,\n default: \"Recherchez un lieu en saisissant une adresse\"\n },\n\n /* *****************************\n * Options génériques\n * ************************** */\n\n /**\n * Centre et niveau de zoom par défaut de la carte\n *\n * @type {MapView}\n */\n defaultView: {\n type: Object,\n default: () => ({\n // basically, centering on France\n center: DEFAULT_VIEW,\n zoom: 6\n })\n }\n },\n\n data() {\n return {\n /**\n * La carte\n *\n * @type {L.Map}\n */\n map: null,\n\n /**\n * Groupement de markers\n *\n * @type {Object.}\n */\n markersGroup: {\n towns: L.markerClusterGroup(),\n search: L.markerClusterGroup(),\n pois: L.markerClusterGroup({\n disableClusteringAtZoom: POI_ZOOM_LEVEL\n })\n },\n\n /**\n * Search marker\n *\n * @type {L.Marker}\n */\n searchMarker: this.createSearchMarker(),\n\n /**\n * Town marker that was marked as a search result\n *\n * @type {L.Marker}\n */\n townSearchMarker: null,\n\n /**\n * Town markers\n *\n * @type {Array.}\n */\n townMarkers: [],\n\n /**\n * POI markers\n *\n * @type {Array.}\n */\n poiMarkers: [],\n\n /**\n * POI markers visible\n *\n * @type Boolean\n */\n poiMarkersVisible: false,\n\n /**\n * Town markers, hashed by coordinates\n *\n * @type {Object.}\n */\n hashedTownMarkers: {},\n\n /**\n * Valeur de la searchbar\n *\n * @type {Address}\n */\n address: null,\n\n /**\n * Indique s'il faut afficher les adresses des sites sur la carte ou non\n *\n * Cette valeur est contrôlée par une checkbox directement sur la carte\n *\n * @type {Boolean}\n */\n showAddresses: false,\n\n /**\n * Liste des types de terrains existants\n *\n * @type {Array.}\n */\n fieldTypes: getConfig().field_types\n };\n },\n\n computed: {\n /**\n * Codes couleur des types de terrain, hashés par id\n *\n * @returns {Object.}\n */\n fieldTypeColors() {\n if (!this.fieldTypes) {\n return {};\n }\n\n return this.fieldTypes.reduce(\n (acc, fieldType) =>\n Object.assign(acc, {\n [fieldType.id]: fieldType.color\n }),\n {}\n );\n },\n\n /**\n * Liste des fonds de carte disponibles\n *\n * @returns {Object.}\n */\n mapLayers() {\n return {\n Satellite: L.tileLayer.provider(\"Esri.WorldImagery\"),\n Dessin: L.tileLayer.provider(\"OpenStreetMap.Mapnik\")\n };\n }\n },\n\n watch: {\n /**\n * Met à jour la liste des marqueurs de site\n */\n towns() {\n this.syncTownMarkers();\n },\n\n pois() {\n this.syncPOIMarkers();\n },\n\n /**\n * Affiche/masque les adresses des sites\n *\n * @returns {undefined}\n */\n showAddresses() {\n if (this.showAddresses === true) {\n document.body.setAttribute(\"class\", \"leaflet-show-addresses\");\n } else {\n document.body.setAttribute(\"class\", \"\");\n }\n },\n\n /**\n * Ajoute un résultat de recherche sur la carte\n *\n * @returns {undefined}\n */\n address() {\n if (this.address === null) {\n this.clearSearchMarker();\n return;\n }\n\n const {\n coordinates: [lon, lat],\n label,\n addressType: type\n } = this.address;\n this.centerMap([lat, lon], 20);\n\n this.$nextTick(() => {\n this.setSearchMarker(type, label, [lat, lon]);\n });\n }\n },\n\n mounted() {\n this.createMap();\n this.syncTownMarkers();\n },\n\n methods: {\n /**\n * Initialise tous les contrôles de la carte\n *\n * @returns {undefined}\n */\n setupMapControls() {\n this.setupZoomControl();\n this.setupLayersControl();\n this.setupAddressTogglerControl();\n this.setupFieldTypesLegendControl();\n },\n\n /**\n * Initialise le contrôle \"Zoom\"\n *\n * @returns {undefined}\n */\n setupZoomControl() {\n this.map.zoomControl.setPosition(\"bottomright\");\n },\n\n /**\n * Initialise le contrôle \"Fonds de carte\"\n *\n * @returns {undefined}\n */\n setupLayersControl() {\n const layersControl = L.control.layers(this.mapLayers, undefined, {\n collapsed: false\n });\n\n this.map.addControl(layersControl);\n },\n\n /**\n * Initialise le contrôle \"Voir les adresses des sites\"\n *\n * @returns {undefined}\n */\n setupAddressTogglerControl() {\n const { adressToggler } = this.$refs;\n const AddressToggler = L.Control.extend({\n options: {\n position: \"bottomleft\"\n },\n\n onAdd() {\n return adressToggler;\n }\n });\n\n this.map.addControl(new AddressToggler());\n },\n\n /**\n * Initialise le contrôle \"Légende\"\n *\n * @returns {undefined}\n */\n setupFieldTypesLegendControl() {\n const { legends } = this.$refs;\n const Legend = L.Control.extend({\n options: {\n position: \"bottomleft\"\n },\n\n onAdd() {\n return legends;\n }\n });\n\n this.map.addControl(new Legend());\n },\n\n /**\n * Initialise tous les clusters de markers\n *\n * @returns {undefined}\n */\n setupMarkerGroups() {\n this.map.addLayer(this.markersGroup.towns);\n this.map.addLayer(this.markersGroup.search);\n this.map.addLayer(this.markersGroup.pois);\n },\n\n /**\n * Met en place la vue par défaut sur la carte\n *\n * @returns {undefined}\n */\n setupView() {\n const { center, zoom } = this.defaultView;\n this.centerMap(center, zoom);\n },\n\n /**\n * Crée la carte et initialise sa vue et ses contrôles\n *\n * Attention, cette méthode n'initialise pas le contenu (les markers) de la carte !\n *\n * @returns {undefined}\n */\n createMap() {\n this.map = L.map(\"map\", {\n layers: this.mapLayers.Dessin, // fond de carte par défaut\n scrollWheelZoom: false // interdire le zoom via la molette de la souris\n });\n\n this.map.on(\"zoomend\", this.onZoomEnd);\n\n this.setupMapControls();\n this.setupMarkerGroups();\n this.setupView();\n },\n\n /**\n * Affiche les points d'interet à partir d'un certain niveau de zoom\n *\n * @returns {undefined}\n */\n onZoomEnd() {\n const zoomLevel = this.map.getZoom();\n\n if (!this.poiMarkersVisible && zoomLevel > POI_ZOOM_LEVEL) {\n this.poiMarkersVisible = true;\n this.pois.forEach(this.createPOIMarker);\n }\n\n if (this.poiMarkersVisible && zoomLevel <= POI_ZOOM_LEVEL) {\n this.poiMarkersVisible = false;\n this.removeAllPOIMarkers();\n }\n },\n\n /**\n * Supprime et recrée la liste des marqueurs de site\n *\n * @returns {undefined}\n */\n syncTownMarkers() {\n this.removeAllTownMarkers();\n this.towns.forEach(this.createTownMarker);\n },\n\n /**\n * Supprime et recrée la liste des marqueurs de site\n *\n * @returns {undefined}\n */\n syncPOIMarkers() {\n this.removeAllPOIMarkers();\n if (this.poiMarkersVisible) {\n this.pois.forEach(this.createPOIMarker);\n }\n },\n\n /**\n * Supprime tous les marqueurs de site existants\n *\n * @returns {undefined}\n */\n removeAllTownMarkers() {\n this.markersGroup.towns.clearLayers();\n this.townMarkers = [];\n this.hashedTownMarkers = {};\n },\n\n /**\n * Supprime tous les marqueurs de site existants\n *\n * @returns {undefined}\n */\n removeAllPOIMarkers() {\n this.markersGroup.pois.clearLayers();\n this.poiMarkers = [];\n },\n\n getTownAddress(town) {\n return town.usename;\n },\n\n getTownCoordinates(town) {\n const { latitude, longitude } = town;\n return [latitude, longitude];\n },\n\n getTownColor(town) {\n if (town.fieldType !== undefined) {\n return this.fieldTypeColors[town.fieldType.id];\n }\n\n return \"#cccccc\";\n },\n\n getTownWaterImage(town) {\n if (town.accessToWater === true) {\n return waterYes;\n }\n\n if (town.accessToWater === false) {\n return waterNo;\n }\n\n return waterNull;\n },\n\n /**\n * Crée le marqueur de résultat de recherche\n *\n * @returns {L.Marker}\n */\n createSearchMarker() {\n return L.marker(DEFAULT_VIEW, {\n title: \"A\",\n icon: L.divIcon({\n className: \"leaflet-marker\",\n html: `\n \n \n \n \n `,\n iconAnchor: [13, 28]\n })\n });\n },\n\n /**\n * Crée un marqueur de site et l'ajoute sur la carte\n *\n * @param {Shantytown} town\n *\n * @returns {undefined}\n */\n createTownMarker(town) {\n const address = this.getTownAddress(town);\n const coordinates = this.getTownCoordinates(town);\n const color = this.getTownColor(town);\n const waterImage = this.getTownWaterImage(town);\n\n const marker = L.marker(coordinates, {\n title: town.address,\n icon: L.divIcon({\n className: \"leaflet-marker\",\n html: `\n \n \n \n \n ${address}\n `,\n iconAnchor: [13, 28]\n })\n });\n marker.on(\"click\", this.handleTownMarkerClick.bind(this, town));\n marker.on(\"add\", () => {\n if (marker.searchResult === true) {\n this.markTownAsSearchResult(marker);\n }\n });\n\n marker.addTo(this.markersGroup.towns);\n this.townMarkers.push(marker);\n this.hashedTownMarkers[coordinates.join(\";\")] = marker;\n },\n\n /**\n * Crée un marqueur de site et l'ajoute sur la carte\n *\n * @param {Shantytown} town\n *\n * @returns {undefined}\n */\n createPOIMarker(poi) {\n const { latitude, longitude } = poi;\n const coordinates = [latitude, longitude];\n\n const marker = L.marker(coordinates, {\n title: poi.address,\n icon: L.divIcon({\n className: \"leaflet-marker\",\n html: `\n \n \n \n ${poi.address}\n `,\n iconAnchor: [13, 28]\n })\n });\n marker.on(\"click\", this.handlePOIMarkerClick.bind(this, poi));\n\n marker.addTo(this.markersGroup.pois);\n\n this.poiMarkers.push(marker);\n },\n\n /**\n * Gère un clic sur un marqueur de site\n *\n * @param {L.Marker} marker\n * @param {Event} event\n *\n * @returns {undefined}\n */\n handleTownMarkerClick(marker, event) {\n this.$emit(\"town-click\", marker, event);\n },\n\n /**\n * Gère un clic sur un marqueur de point d'interet\n *\n * @param {L.Marker} marker\n * @param {Event} event\n *\n * @returns {undefined}\n */\n handlePOIMarkerClick(marker, event) {\n this.$emit(\"poi-click\", marker, event);\n },\n\n /**\n * Met à jour le centre et le zoom de la carte\n *\n * @param {MapCoordinates} coordinates\n * @param {Number} zoom\n *\n * @returns {undefined}\n */\n centerMap(coordinates, zoom) {\n this.map.setView(coordinates, zoom);\n },\n\n /**\n * Force un redimensionnement de la carte pour prendre toute la place disponible\n *\n * @returns {undefined}\n */\n resize() {\n if (this.map === null) {\n return;\n }\n\n this.map.invalidateSize(true);\n },\n\n clearSearchMarker() {\n if (this.townSearchMarker !== null) {\n if (this.townSearchMarker._icon) {\n this.townSearchMarker._icon\n .querySelector(\".mapPin\")\n .classList.remove(\"mapPin--result\");\n }\n\n this.townSearchMarker.searchResult = false;\n this.townSearchMarker = null;\n return;\n }\n\n this.searchMarker.remove();\n },\n\n getMatchingTownMarker(coordinates) {\n return this.hashedTownMarkers[coordinates.join(\";\")] || null;\n },\n\n markTownAsSearchResult(marker) {\n this.townSearchMarker = marker;\n this.townSearchMarker.searchResult = true;\n marker._icon\n .querySelector(\".mapPin\")\n .classList.add(\"mapPin--result\");\n },\n\n setSearchMarker(type, address, coordinates) {\n this.clearSearchMarker();\n\n // check if there is a marker existing at that exact address\n const townMarker = this.getMatchingTownMarker(coordinates);\n if (townMarker !== null) {\n this.markTownAsSearchResult(townMarker);\n return;\n }\n\n this.searchMarker.addTo(this.markersGroup.search);\n this.searchMarker.setLatLng(coordinates);\n\n this.searchMarker._icon.querySelector(\n \".mapPin-address\"\n ).innerHTML = address;\n\n let action = \"add\";\n if (type !== \"housenumber\") {\n action = \"remove\";\n }\n\n this.searchMarker._icon\n .querySelector(\".mapPin\")\n .classList[action](\"mapPin--street\");\n }\n }\n};\n\n/**\n * @typedef {Array} MapCoordinates\n * @property {Float} [0] Latitude\n * @property {Float} [1] Longitude\n */\n\n/**\n * @typedef {Object} MapView\n * @property {MapCoordinates} center Coordonnées géographiques du centre de la vue\n * @property {Number} zoom Niveau de zoom, voir la documentation de Leaflet\n */\n\n/**\n * @typedef {Object} Address Une adresse au format adresse.data.gouv.fr\n * @property {String} label Adresse complète\n * @property {String} city Nom de la ville\n * @property {String} citycode Code communal (/!\\ différent du code postal)\n * @property {MapCoordinates} coordinates Coordonnées géographiques\n */\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./map.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./map.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./map.vue?vue&type=template&id=055bfb64&scoped=true&lang=pug&\"\nimport script from \"./map.vue?vue&type=script&lang=js&\"\nexport * from \"./map.vue?vue&type=script&lang=js&\"\nimport style0 from \"./map.vue?vue&type=style&index=0&id=055bfb64&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"055bfb64\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:{ active: _vm.active }},[_c('div',{staticClass:\"shadow\"}),_c('simplebar',{ref:\"quickviewPanel\",staticClass:\"quickview\",attrs:{\"data-simplebar-auto-hide\":\"false\"}},[(_vm.town)?_c('header',{staticClass:\"quickview-header\"},[_c('div',{staticClass:\"quickview-actions\"},[_c('button',{staticClass:\"actionButton\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.showTown}},[_vm._v(\"Voir le site\")]),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){return _vm.$emit('outside-click')}}},[_c('svg',{staticClass:\"icon icon-cross\"},[_c('use',{attrs:{\"xlink:href\":\"#round-cross\"}})])])]),_c('h1',{staticClass:\"quickview-title\"},[_c('a',{on:{\"click\":_vm.showTown}},[_vm._v(_vm._s(_vm.town.address.split(/[0-9]{5}/)[0].replace(/[0-9]/g, '').replace(/,/g, ' ').replace(/\\s{2,}/g, ' ')))])]),_c('h2',{staticClass:\"quickview-subtitle\"},[_vm._v(\"Site de \"+_vm._s(_vm.town.city.name))]),(_vm.town.name)?_c('h2',{staticClass:\"quickview-name\"},[_vm._v(_vm._s(_vm.town.name))]):_vm._e(),(_vm.town.updatedAt !== undefined)?_c('h2',{staticClass:\"quickview-time\"},[_vm._v(\"(Dernière modification le \"),_c('time',[_vm._v(_vm._s(_vm.formatDate(_vm.town.updatedAt)))]),_vm._v(\")\")]):_vm._e()]):_vm._e(),_vm._l((_vm.sections),function(section,index){return _c('section',{class:{ even: index % 2 !== 0 }},[_c('header',[_c('h1',[_vm._v(_vm._s(section.title))])]),_c('table',[_c('tbody',_vm._l((section.rows),function(row){return _c('tr',[(row.label)?_c('th',[_vm._v(_vm._s(row.label)+\" :\")]):_vm._e(),_c('td',{attrs:{\"colspan\":row.label ? 1 : 2}},[_vm._v(_vm._s(row.value))])])}),0)])])})],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import simplebar from \"simplebar-vue\";\nimport { hasPermission } from \"#helpers/api/config\";\nimport { open } from \"#helpers/tabHelper\";\n\nexport default {\n components: {\n simplebar\n },\n props: {\n town: Object,\n origin: Event // this event is the one that caused that quick-view to appear\n },\n computed: {\n active() {\n return !!this.town;\n },\n caracteristicSection() {\n if (!this.town) {\n return null;\n }\n\n const rows = [];\n if (this.town.fieldType !== undefined) {\n rows.push({\n label: \"Type de site\",\n value: this.town.fieldType.label\n });\n }\n if (this.town.ownerType !== undefined) {\n rows.push({\n label: \"Type de propriétaire\",\n value: this.town.ownerType.label\n });\n }\n if (this.town.builtAt !== undefined) {\n rows.push({\n label: \"Date d'installation\",\n value: this.town.builtAt\n ? App.formatDate(this.town.builtAt)\n : \"Inconnue\"\n });\n }\n\n if (rows.length === 0) {\n return null;\n }\n\n return {\n title: \"Caractéristiques\",\n rows\n };\n },\n demographySection() {\n if (!this.town) {\n return null;\n }\n\n const rows = [];\n if (this.town.populationTotal !== undefined) {\n rows.push({\n label: \"Nombre de personnes\",\n value:\n this.town.populationTotal !== null\n ? this.town.populationTotal\n : \"inconnu\"\n });\n }\n if (this.town.populationCouples !== undefined) {\n rows.push({\n label: \"Nombre de ménages\",\n value:\n this.town.populationCouples !== null\n ? this.town.populationCouples\n : \"inconnu\"\n });\n }\n if (this.town.populationMinors !== undefined) {\n rows.push({\n label: \"Nombre de mineurs\",\n value:\n this.town.populationMinors !== null\n ? this.town.populationMinors\n : \"inconnu\"\n });\n }\n if (this.town.populationMinors0To3 !== undefined) {\n rows.push({\n label: \"Nombre de mineurs (0-3 ans)\",\n value:\n this.town.populationMinors0To3 !== null\n ? this.town.populationMinors0To3\n : \"inconnu\"\n });\n }\n if (this.town.populationMinors3To6 !== undefined) {\n rows.push({\n label: \"Nombre de mineurs (3-6 ans)\",\n value:\n this.town.populationMinors3To6 !== null\n ? this.town.populationMinors3To6\n : \"inconnu\"\n });\n }\n\n if (this.town.populationMinors6To12 !== undefined) {\n rows.push({\n label: \"Nombre de mineurs (6-12 ans)\",\n value:\n this.town.populationMinors6To12 !== null\n ? this.town.populationMinors6To12\n : \"inconnu\"\n });\n }\n\n if (this.town.populationMinors12To16 !== undefined) {\n rows.push({\n label: \"Nombre de mineurs (12-16 ans)\",\n value:\n this.town.populationMinors12To16 !== null\n ? this.town.populationMinors12To16\n : \"inconnu\"\n });\n }\n\n if (this.town.populationMinors16To18 !== undefined) {\n rows.push({\n label: \"Nombre de mineurs (16-18 ans)\",\n value:\n this.town.populationMinors16To18 !== null\n ? this.town.populationMinors16To18\n : \"inconnu\"\n });\n }\n\n if (this.town.minorsInSchool !== undefined) {\n rows.push({\n label:\n \"Nombre d'enfants inscrits dans un établissement scolaire\",\n value:\n this.town.minorsInSchool !== null\n ? this.town.minorsInSchool\n : \"inconnu\"\n });\n }\n\n if (this.town.socialOrigins !== undefined) {\n rows.push({\n label: \"Origines\",\n value: this.town.socialOrigins.length > 0 ? \"\" : \"inconnu\"\n });\n\n this.town.socialOrigins.forEach(socialOrigin => {\n rows.push({\n value: socialOrigin.label\n });\n });\n }\n\n if (rows.length === 0) {\n return null;\n }\n\n return {\n title: \"Habitants\",\n rows\n };\n },\n justiceSection() {\n if (!this.town) {\n return null;\n }\n\n const rows = [];\n const boolConverter = {\n [true]: \"oui\",\n [false]: \"non\"\n };\n if (this.town.justiceProcedure !== undefined) {\n rows.push({\n label: \"Existence d'une procédure judiciaire\",\n value:\n boolConverter[this.town.justiceProcedure] || \"inconnu\"\n });\n }\n if (this.town.justiceRendered !== undefined) {\n rows.push({\n label: \"Décision de justice rendue\",\n value: boolConverter[this.town.justiceRendered] || \"inconnu\"\n });\n }\n if (this.town.policeStatus !== undefined) {\n const converter = {\n none: \"non demandé\",\n requested: \"demandé\",\n granted: \"obtenu\"\n };\n rows.push({\n label: \"Concours de la force publique demandé\",\n value: converter[this.town.policeStatus] || \"inconnu\"\n });\n }\n\n if (rows.length === 0) {\n return null;\n }\n\n return {\n title: \"Procédure judiciaire d'expulsion\",\n rows\n };\n },\n sections() {\n return [\n this.caracteristicSection,\n this.demographySection,\n this.justiceSection\n ].filter(section => section !== null);\n }\n },\n mounted() {\n document.addEventListener(\"click\", this.checkOutsideClick);\n },\n destroyed() {\n document.removeEventListener(\"click\", this.checkOutsideClick);\n },\n methods: {\n hasPermission,\n formatDate: ts => App.formatDate(ts),\n checkOutsideClick(event) {\n if (!this.town) {\n return;\n }\n\n // ignore the origin event\n if (event === this.origin) {\n return;\n }\n\n // if the click was outside ourselves, share the info\n if (!this.$refs.quickviewPanel.$el.contains(event.target)) {\n this.$emit(\"outside-click\", event);\n }\n },\n showTown() {\n const routerData = this.$router.resolve(`/site/${this.town.id}`);\n open(routerData.href);\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./quickview.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./quickview.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./quickview.vue?vue&type=template&id=12c43bda&scoped=true&lang=pug&\"\nimport script from \"./quickview.vue?vue&type=script&lang=js&\"\nexport * from \"./quickview.vue?vue&type=script&lang=js&\"\nimport style0 from \"./quickview.vue?vue&type=style&index=0&id=12c43bda&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"12c43bda\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:{ active: _vm.active }},[_c('div',{staticClass:\"shadow\"}),_c('simplebar',{ref:\"quickviewPanel\",staticClass:\"quickview\",attrs:{\"data-simplebar-auto-hide\":\"false\"}},[(_vm.poi)?_c('header',{staticClass:\"quickview-header\"},[_c('div',{staticClass:\"px-4\"},[_c('div',{staticClass:\"text-right\"},[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){return _vm.$emit('outside-click')}}},[_c('svg',{staticClass:\"icon icon-cross\"},[_c('use',{attrs:{\"xlink:href\":\"#round-cross\"}})])])]),_c('h1',{staticClass:\"quickview-title\"},[_vm._v(\" Point de distribution alimentaire \")]),_c('div',{staticClass:\"text-G600 uppercase text-sm my-2 \"},[_vm._v(\" source: soliguide.fr \")]),(_vm.poi.name)?_c('h4',{staticClass:\"my-4\"},[_vm._v(\" \"+_vm._s(_vm.poi.name)+\" \")]):_vm._e(),(_vm.poi.address)?_c('div',[_vm._v(\" \"+_vm._s(_vm.poi.address)+\" \")]):_vm._e(),(_vm.poi.phone)?_c('div',{staticClass:\"my-2\"},[_vm._v(\" Tel: \"+_vm._s(_vm.poi.phone)+\" \")]):_vm._e(),(_vm.poi.email)?_c('div',{staticClass:\"my-2\"},[_vm._v(\" Email: \"+_vm._s(_vm.poi.email)+\" \")]):_vm._e(),(_vm.poi.language)?_c('div',{staticClass:\"my-2\"},[_vm._v(\" Langue: \"+_vm._s(_vm.poi.language)+\" \")]):_vm._e(),(_vm.poi.temporarily_closed)?_c('div',{staticClass:\"my-2\"},[_vm._v(\" \"+_vm._s(_vm.poi.temporarily_closed)+\" \")]):_vm._e(),(_vm.poi.temporary_information)?_c('div',{staticClass:\"my-2\"},[_vm._v(\" \"+_vm._s(_vm.poi.temporary_information)+\" \")]):_vm._e(),(_vm.poi.solinum_id)?_c('a',{staticClass:\"my-2\",attrs:{\"target\":\"_blank\",\"href\":'https://soliguide.fr/fiche/' + _vm.poi.solinum_id},on:{\"click\":_vm.trackOpenSoliguide}},[_vm._v(\" Voir plus \")]):_vm._e()])]):_vm._e()])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./POIView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./POIView.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./POIView.vue?vue&type=template&id=263a7bb8&scoped=true&\"\nimport script from \"./POIView.vue?vue&type=script&lang=js&\"\nexport * from \"./POIView.vue?vue&type=script&lang=js&\"\nimport style0 from \"./POIView.vue?vue&type=style&index=0&id=263a7bb8&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"263a7bb8\",\n null\n \n)\n\nexport default component.exports","import { getApi } from \"#helpers/api/main\";\n\n/**\n * Fetches all pois from the database\n *\n *\n * @returns {Promise}\n */\nexport function all() {\n return getApi(`/pois`);\n}\n","import simplebar from \"simplebar-vue\";\nimport NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport FilterGroup from \"./filterGroup/filterGroup.vue\";\nimport Map from \"#app/components/map/map.vue\";\nimport Quickview from \"#app/components/quickview/quickview.vue\";\nimport POIView from \"./POIView.vue\";\nimport { all as fetchAllTowns } from \"#helpers/api/town\";\nimport { all as fetchAllPois } from \"#helpers/api/poi\";\nimport { get as getConfig, getPermission } from \"#helpers/api/config\";\nimport { open } from \"#helpers/tabHelper\";\n\nimport iconType from \"../../../../../public/img/type.svg\";\nimport iconPeople from \"../../../../../public/img/people.svg\";\nimport iconStatus from \"../../../../../public/img/status.svg\";\nimport iconPin from \"../../../../../public/img/pin.svg\";\n\n/**\n * Returns the appropriate zoom level for the given location type\n *\n * @param {String} locationType\n *\n * @returns {Number}\n */\nfunction getDefaultZoomFor(locationType) {\n switch (locationType) {\n case \"nation\":\n case \"region\":\n return 6;\n\n default:\n case \"departement\":\n case \"epci\":\n case \"city\":\n return 10;\n }\n}\n\nexport default {\n components: {\n NavBar,\n FilterGroup,\n Map,\n Quickview,\n POIView,\n simplebar\n },\n data() {\n const { user } = getConfig();\n\n return {\n error: undefined,\n loading: false,\n defaultMapView: {\n center: [\n user.organization.location.latitude,\n user.organization.location.longitude\n ],\n zoom: getDefaultZoomFor(user.organization.location.type)\n },\n towns: [],\n pois: [],\n quickview: {\n town: null,\n originEvent: null\n },\n poiview: {\n poi: null,\n originEvent: null\n },\n permission: getPermission(\"shantytown.list\"),\n filters: [\n {\n faIcon: \"tint\",\n label: \"Accès à l'eau\",\n id: \"accessToWater\",\n options: [\n {\n value: true,\n label: \"Oui\",\n checked: true,\n icon: { id: \"tint\", color: \"00a0e3\" }\n },\n {\n value: false,\n label: \"Non\",\n checked: true,\n icon: { id: \"tint-slash\", color: \"ADB9C9\" }\n },\n {\n value: null,\n label: \"Inconnu\",\n checked: true,\n icon: { id: \"question\", color: \"ADB9C9\" }\n }\n ],\n opened: true\n },\n {\n icon: iconType,\n label: \"Types de site\",\n id: \"fieldType\",\n options: [],\n opened: true\n },\n {\n icon: iconPeople,\n label: \"Nombre de personnes\",\n id: \"population\",\n options: [\n { value: null, label: \"Inconnu\", checked: true },\n {\n value: \"-9\",\n label: \"Moins de 10 personnes\",\n checked: true\n },\n {\n value: \"10-99\",\n label: \"Entre 10 et 99 personnes\",\n checked: true\n },\n {\n value: \"100-\",\n label: \"100 personnes et plus\",\n checked: true\n }\n ]\n },\n {\n icon: iconStatus,\n label: \"Statut des sites\",\n id: \"status\",\n options: [\n { value: \"closed\", label: \"Disparus\", checked: false },\n { value: \"opened\", label: \"Existants\", checked: true }\n ]\n },\n {\n icon: iconPeople,\n label: \"Type de propriétaire\",\n id: \"ownerType\",\n options: getConfig().owner_types.map(type => ({\n value: type.id,\n label: type.label,\n checked: true\n }))\n },\n {\n icon: iconPin,\n label: \"Points d'intérêts\",\n id: \"poi\",\n options: [\n {\n value: \"food_bank\",\n label: \"Distribution alimentaire\",\n checked: true\n }\n ],\n opened: true\n }\n ]\n };\n },\n computed: {\n allowedFilters() {\n if (!this.permission) {\n return [];\n }\n\n return this.filters.filter(\n filter =>\n !filter.permissions ||\n filter.permissions.every(\n permission => this.permission[permission]\n )\n );\n },\n rendererProps() {\n return {\n towns: this.visibleTowns,\n pois: this.visiblePOIs,\n defaultView: this.defaultMapView\n };\n },\n visiblePOIs() {\n let pois = this.pois;\n\n this.allowedFilters.forEach(filterGroup => {\n switch (filterGroup.id) {\n case \"poi\":\n {\n pois = pois.filter(\n () => filterGroup.options[0].checked\n );\n }\n break;\n\n default:\n }\n });\n\n return pois;\n },\n visibleTowns() {\n let visibleTowns = this.towns;\n\n this.allowedFilters.forEach(filterGroup => {\n switch (filterGroup.id) {\n case \"accessToWater\":\n {\n const allowed = filterGroup.options\n .filter(option => option.checked)\n .map(option => option.value);\n\n visibleTowns = visibleTowns.filter(\n town =>\n allowed.indexOf(town.accessToWater) !== -1\n );\n }\n break;\n\n case \"fieldType\":\n {\n const allowedFieldTypes = filterGroup.options\n .filter(option => option.checked)\n .map(option => option.value);\n\n visibleTowns = visibleTowns.filter(\n town =>\n town.fieldType &&\n allowedFieldTypes.indexOf(\n town.fieldType.id\n ) !== -1\n );\n }\n break;\n\n case \"population\":\n {\n const disallowedPopulation = filterGroup.options\n .filter(option => !option.checked)\n .map(option => option.value);\n\n disallowedPopulation.forEach(value => {\n if (value === null) {\n visibleTowns = visibleTowns.filter(\n town => town.populationTotal !== null\n );\n return;\n }\n\n let [min, max] = value.split(\"-\");\n min = parseInt(min, 10);\n max = parseInt(max, 10);\n\n visibleTowns = visibleTowns.filter(town => {\n if (town.populationTotal === null) {\n return true;\n }\n\n if (\n !Number.isNaN(min) &&\n !Number.isNaN(max)\n ) {\n return (\n town.populationTotal < min ||\n town.populationTotal > max\n );\n }\n\n if (!Number.isNaN(min)) {\n return town.populationTotal < min;\n }\n\n if (!Number.isNaN(max)) {\n return town.populationTotal > max;\n }\n\n return true;\n });\n });\n }\n break;\n\n case \"status\":\n {\n const disallowedStatuses = filterGroup.options\n .filter(option => !option.checked)\n .map(option => option.value);\n\n disallowedStatuses.forEach(value => {\n if (value === \"closed\") {\n visibleTowns = visibleTowns.filter(\n town => town.status === \"open\"\n );\n } else if (value === \"opened\") {\n visibleTowns = visibleTowns.filter(\n town => town.status !== \"open\"\n );\n }\n });\n }\n break;\n\n case \"ownerType\":\n {\n const allowedOwnerTypes = filterGroup.options\n .filter(option => option.checked)\n .map(option => option.value);\n\n visibleTowns = visibleTowns.filter(\n town =>\n town.ownerType &&\n allowedOwnerTypes.indexOf(\n town.ownerType.id\n ) !== -1\n );\n }\n break;\n\n default:\n }\n });\n\n return visibleTowns;\n }\n },\n created() {\n this.fetchData();\n },\n mounted() {\n window.addEventListener(\"resize\", this.resize);\n },\n beforeDestroy() {\n window.removeEventListener(\"resize\", this.resize);\n },\n methods: {\n sortNumber(x, y) {\n if (x === \"inconnu\" && y === \"inconnu\") {\n return 0;\n }\n\n if (x === \"inconnu\") {\n return -1;\n }\n\n if (y === \"inconnu\") {\n return 1;\n }\n\n if (x < y) {\n return -1;\n }\n\n if (x > y) {\n return 1;\n }\n\n return 0;\n },\n showQuickview(town, event) {\n this.quickview = {\n town,\n originEvent: event.originalEvent\n };\n },\n showPOIView(poi, event) {\n this.poiview = {\n poi,\n originEvent: event.originalEvent\n };\n },\n hideQuickview() {\n this.quickview = {\n town: null,\n originEvent: null\n };\n },\n hidePOIView() {\n this.poiview = {\n town: null,\n originEvent: null\n };\n },\n routeToTown(params) {\n const routeData = this.$router.resolve(`/site/${params.row.id}`);\n open(routeData.href);\n },\n resize() {\n if (!this.$refs.main) {\n return;\n }\n\n this.stretchToBottom(this.$refs.main);\n this.stretchToBottom(this.$refs.filters.$el);\n },\n stretchToBottom(element) {\n const height = element.offsetHeight;\n const newHeight =\n height +\n (document.body.offsetHeight -\n (this.absoluteOffsetTop(element) + height));\n\n // eslint-disable-next-line\n element.style.height = `${newHeight}px`;\n },\n absoluteOffsetTop(element) {\n let top = 0;\n let el = element;\n\n do {\n top += el.offsetTop || 0;\n el = el.offsetParent;\n } while (el);\n\n return top;\n },\n fetchData() {\n if (this.loading === true) {\n return;\n }\n\n this.loading = true;\n this.error = undefined;\n\n Promise.all([fetchAllTowns(), fetchAllPois()])\n .then(([towns, pois]) => {\n const { field_types: fieldTypes } = getConfig();\n\n this.loading = false;\n\n // build the field-type filter\n const fieldTypeFilter = this.filters.filter(\n ({ id }) => id === \"fieldType\"\n )[0];\n fieldTypeFilter.options = [\n // options based on field-types returned by the api\n ...fieldTypes.map(fieldType => ({\n id: fieldType.id,\n value: fieldType.id,\n label: fieldType.label,\n checked: true\n }))\n ];\n\n this.towns = towns;\n this.pois = pois;\n this.$nextTick(() => {\n this.resize();\n this.$refs.map.resize();\n });\n })\n .catch(errors => {\n this.error = errors.user_message;\n this.loading = false;\n });\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./dashboard.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./dashboard.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./dashboard.vue?vue&type=template&id=9f1f45ac&lang=pug&\"\nimport script from \"./dashboard.vue?vue&type=script&lang=js&\"\nexport * from \"./dashboard.vue?vue&type=script&lang=js&\"\nimport style0 from \"./dashboard.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('NavBar'),_c('section',{staticClass:\"section section-white\"},[_c('div',{staticClass:\"container\"},[(_vm.error)?_c('div',{staticClass:\"notification error full-width\"},[_c('span',[_vm._v(_vm._s(_vm.error)+\". \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.loadConfig}},[_vm._v(\"Réessayer ?\")])])]):_c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Initialisation de la plateforme en cours...\")])])])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport { isLoaded as isConfigLoaded, load, get } from \"#helpers/api/config\";\nimport { getEntryPoint } from \"#app/router\";\n\nexport default {\n data() {\n return {\n error: null\n };\n },\n components: {\n NavBar\n },\n mounted() {\n this.loadConfig();\n },\n methods: {\n loadConfig() {\n if (isConfigLoaded() === true) {\n this.redirect();\n return;\n }\n\n this.error = null;\n load()\n .then(() => {\n this.redirect();\n })\n .catch(response => {\n this.error = response.user_message;\n });\n },\n redirect() {\n const { user } = get();\n this.track(user);\n this.$router.push(getEntryPoint());\n },\n track(user) {\n if (!this.$piwik) {\n return;\n }\n\n this.$piwik.setUserId(user.id);\n this.$piwik.setCustomVariable(1, \"superuser\", user.is_superuser);\n this.$piwik.setCustomVariable(\n 2,\n \"structure\",\n user.organization.type.abbreviation ||\n user.organization.type.name_singular\n );\n this.$piwik.setCustomVariable(\n 3,\n \"niveau_geo\",\n user.organization.location.type\n );\n this.$piwik.setCustomVariable(\n 4,\n \"geo_nom\",\n user.organization.location[user.organization.location.type]\n ? user.organization.location[\n user.organization.location.type\n ].name\n : null\n );\n }\n }\n};\n","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./launcher.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./launcher.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./launcher.vue?vue&type=template&id=3c5db2b9&lang=pug&\"\nimport script from \"./launcher.vue?vue&type=script&lang=js&\"\nexport * from \"./launcher.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('PrivateLayout',[(_vm.exportIsVisible)?_c('Export',{attrs:{\"towns\":[],\"location\":_vm.currentLocation,\"closedTowns\":_vm.filters.status !== 'open'},on:{\"close\":_vm.hideExport}}):_vm._e(),_c('div',{staticClass:\"bg-G100 print:hidden\"},[_c('PrivateContainer',{staticClass:\"py-6\"},[_c('h1',{staticClass:\"text-display-md text-center mb-4\"},[_vm._v(\" Rechercher une commune, un département... ? \")]),_c('TownsListSearchBar',{attrs:{\"value\":_vm.filters.location},on:{\"input\":function (val) { return _vm.updateFilters('location', val); }}})],1)],1),_c('PrivateContainer',{staticClass:\"pt-10\"},[_c('TownsListHeader',{staticClass:\"mb-6\",attrs:{\"search\":_vm.filters.location}},[_c('template',{slot:\"filters\"},[_c('TownsListHeaderTab',{staticClass:\"mr-8\",attrs:{\"active\":_vm.filters.status === 'open'},on:{\"click\":_vm.onClickOpenTab}},[_vm._v(\"Sites existants\")]),_c('TownsListHeaderTab',{attrs:{\"active\":_vm.filters.status === 'close'},on:{\"click\":_vm.onClickCloseTab}},[_vm._v(\"Sites fermés\")])],1),_c('template',{slot:\"title\"},[_c('div',{staticClass:\"text-display-xl mb-2\"},[_vm._v(_vm._s(_vm.title))]),(!_vm.isLoading)?_c('div',{staticClass:\"flex items-center\"},[_c('div',{staticClass:\"mr-4\"},[_c('img',{attrs:{\"src\":_vm.locationImg,\"width\":\"80\",\"height\":\"80\"}})]),_c('div',[_c('div',[_c('div',[_vm._v(_vm._s(_vm.populationTotal)+\" personnes\")]),_c('div',[_vm._v(\" \"+_vm._s(_vm.filteredShantytowns.length)+\" sites \")]),(_vm.hasJusticePermission && _vm.justiceTotal)?_c('div',[_vm._v(\" \"+_vm._s(_vm.justiceTotal)+\" site(s) avec une procédure judiciaire \")]):_vm._e()])])]):_vm._e()]),_c('template',{slot:\"buttons\"},[_c('Button',{staticClass:\"mr-6 mb-2 md:mb-0\",attrs:{\"icon\":\"print\",\"iconPosition\":\"left\",\"variant\":\"primaryOutline\"},on:{\"click\":_vm.togglePrintModal}},[_vm._v(\"Imprimer\")]),(_vm.hasPermission('shantytown.export'))?_c('Button',{staticClass:\"mr-6 mb-2 md:mb-0\",attrs:{\"icon\":\"file-excel\",\"iconPosition\":\"left\",\"variant\":\"primary\",\"disabled\":_vm.filteredShantytowns.length === 0},on:{\"click\":_vm.showExport}},[_vm._v(\"Exporter\")]):_vm._e(),(_vm.hasPermission('shantytown.create'))?_c('router-link',{attrs:{\"to\":\"/nouveau-site\"}},[_c('Button',{staticClass:\"whitespace-no-wrap\",attrs:{\"icon\":\"plus\",\"iconPosition\":\"left\",\"variant\":\"secondary\"}},[_vm._v(\" Déclarer un nouveau site\")])],1):_vm._e()],1)],2),(!_vm.isLoading)?_c('div',[_c('div',{staticClass:\"md:flex items-end mb-4 justify-between print:hidden\"},[_c('TownsListFilters',[_c('TownsListFilter',{staticClass:\"mr-2 mb-2\",attrs:{\"title\":\"Type de sites\",\"value\":_vm.filters.fieldType,\"options\":_vm.fieldTypes.map(function (f) { return ({\n label: f.label,\n value: f.id\n }); })},on:{\"input\":function (val) { return _vm.updateFilters('fieldType', val); }}}),_c('TownsListFilter',{staticClass:\"mr-2 mb-2\",attrs:{\"title\":\"Nombre de personnes\",\"value\":_vm.filters.population,\"options\":[\n { value: null, label: 'Inconnu' },\n { value: '-9', label: 'Moins de 10 personnes' },\n {\n value: '10-99',\n label: 'Entre 10 et 99 personnes'\n },\n {\n value: '100-',\n label: 'Plus de 100 personnes'\n }\n ]},on:{\"input\":function (val) { return _vm.updateFilters('population', val); }}}),_c('TownsListFilter',{staticClass:\"mr-2 mb-2\",attrs:{\"title\":\"Origines\",\"value\":_vm.filters.origin,\"options\":[\n {\n value: 1,\n label: 'Français'\n },\n {\n value: 2,\n label: 'Union européenne'\n },\n {\n value: 3,\n label: 'Hors Union européenne'\n },\n {\n value: null,\n label: 'Inconnu'\n }\n ]},on:{\"input\":function (val) { return _vm.updateFilters('origin', val); }}}),_c('TownsListFilter',{staticClass:\"mr-2 mb-2\",attrs:{\"title\":\"Conditions de vie\",\"value\":_vm.filters.conditions,\"options\":[\n {\n value: 'accessToWater',\n label: 'eau'\n },\n {\n value: 'accessToSanitary',\n label: 'toilettes'\n },\n {\n value: 'accessToElectricity',\n label: 'électricité'\n },\n {\n value: 'accessToTrash',\n label: 'évac. des déchets'\n },\n\n {\n value: 'vermin',\n label: 'pres. de nuisibles'\n },\n {\n value: 'firePreventionMeasures',\n label: 'prev. incendie'\n }\n ]},on:{\"input\":function (val) { return _vm.updateFilters('conditions', val); }},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\n var label = ref.label;\nreturn [_c('div',{staticClass:\"text-red flex items-center\"},[_c('div',{staticClass:\"mr-2\"},[_c('Icon',{attrs:{\"icon\":\"times\"}}),_vm._v(\"/\"),_c('Icon',{staticClass:\"text-xs\",attrs:{\"icon\":\"question\"}})],1),_vm._v(\" \"+_vm._s(label)+\" \")])]}}],null,false,1485956960)}),(_vm.hasJusticePermission)?_c('TownsListFilter',{staticClass:\"mr-2 mb-2\",attrs:{\"title\":\"Procédure judiciaire\",\"value\":_vm.filters.justice,\"options\":[\n { value: null, label: 'Inconnu' },\n { value: 'none', label: 'Aucune' },\n {\n value: 'ownerComplaint',\n label: 'Plainte déposée'\n },\n {\n value: 'justiceProcedure',\n label: 'Procédure en cours'\n },\n {\n value: 'justiceRendered',\n label: 'Décision rendue'\n }\n ]},on:{\"input\":function (val) { return _vm.updateFilters('justice', val); }}}):_vm._e(),_c('TownsListFilter',{staticClass:\"mr-2 mb-2\",attrs:{\"title\":\"Intervenants\",\"value\":_vm.filters.actors,\"options\":[\n { value: 'yes', label: 'Oui' },\n { value: 'no', label: 'Non' }\n ]},on:{\"input\":function (val) { return _vm.updateFilters('actors', val); }}})],1),_c('TownsListSort',{staticClass:\"mb-2\",attrs:{\"value\":_vm.sort,\"status\":_vm.filters.status},on:{\"input\":_vm.updateSort}})],1),_c('div',[_vm._l((_vm.printMode\n ? _vm.filteredShantytowns\n : _vm.filteredShantytownsByPage),function(shantytown){return _c('TownCard',{key:shantytown.id,staticClass:\"mb-6\",attrs:{\"shantytown\":shantytown,\"hasJusticePermission\":_vm.hasJusticePermission}})}),_c('div',{staticClass:\"flex flex-col items-end mb-12 print:hidden mt-2\"},[(_vm.nbPages > 1)?_c('Pagination',{staticClass:\"md:mt-0 mb-2\",attrs:{\"currentPage\":_vm.currentPage,\"nbPages\":_vm.nbPages,\"onChangePage\":_vm.onChangePage}}):_vm._e(),_c('div',{staticClass:\"pr-6 text-G600\"},[_vm._v(_vm._s(_vm.elementsOnPage))])],1)],2),(!_vm.filteredShantytowns.length)?_c('div',{staticClass:\"text-center text-G600 italic pt-4\"},[_vm._v(\" Aucun site ne correspond à votre recherche, essayez d'autres filtres ou périmètre géographique \")]):_vm._e()]):_c('div',{staticClass:\"text-center text-primary text-display-lg mt-16\"},[_c('Spinner')],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container px-10 mx-auto print:px-0 print:max-w-none\"},[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./PrivateContainer.vue?vue&type=template&id=304b0962&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"v1 print:hidden\"},[_c('NavBar')],1),_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=2e2cd091&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:[\n 'rounded-sm cursor-pointer border preventPrintBreak',\n _vm.isHover ? 'bg-blue100 border-transparent' : ''\n ],on:{\"mouseenter\":function($event){_vm.isHover = true},\"mouseleave\":function($event){_vm.isHover = false}}},[_c('router-link',{attrs:{\"to\":(\"site/\" + (_vm.shantytown.id))}},[_c('div',{staticClass:\"pt-6\"},[_c('div',{staticClass:\"text-md px-6\"},[_c('div',{staticClass:\"text-primary text-display-md \"},[_c('span',{staticClass:\"font-bold\"},[_vm._v(\" \"+_vm._s(_vm.shantytown.addressSimple)+\" \"),(_vm.shantytown.name)?_c('span',[_vm._v(\"« \"+_vm._s(_vm.shantytown.name)+\" »\")]):_vm._e()]),_c('span',{staticClass:\"font-normal\"},[_vm._v(\" \"+_vm._s(_vm.shantytown.city.name)+\" \")])])]),_c('div',{staticClass:\"md:grid print:grid cardGridTemplateColumns gap-10 px-6 py-4\"},[_c('div',[_c('div',{staticClass:\"flex items-center customAlign\"},[_c('Icon',{staticClass:\"text-lg\",style:((\"color: \" + (_vm.shantytown.fieldType.color))),attrs:{\"icon\":\"map-marker-alt\"}}),_c('div',{staticClass:\"font-bold ml-2\"},[_vm._v(\" \"+_vm._s(_vm.shantytown.fieldType.label)+\" \")])],1),_c('div',{staticClass:\"ml-5\"},[_c('div',[_vm._v(\" \"+_vm._s(_vm.shantytown.statusName)+\" depuis \"),_c('br'),_c('span',{staticClass:\"font-bold\"},[_vm._v(_vm._s(_vm.shantytown.statusSince))])])])]),_c('div',[(_vm.shantytown.populationTotal === null)?_c('div',{staticClass:\"font-bold\"},[_vm._v(\" Population : inconnu \")]):_c('div',{staticClass:\"text-lg font-bold flex items-center\"},[_c('div',{staticClass:\"mr-2\"},[_vm._v(\" \"+_vm._s(_vm.shantytown.populationTotal)+\" \")]),_c('div',[_c('Icon',{attrs:{\"icon\":\"male\"}}),_vm._v(_vm._s(\" \")+\" \"),(_vm.shantytown.populationTotal >= 25)?_c('span',[_c('Icon',{attrs:{\"icon\":\"male\"}}),_vm._v(_vm._s(\" \"))],1):_vm._e(),(_vm.shantytown.populationTotal >= 75)?_c('span',[_c('Icon',{attrs:{\"icon\":\"male\"}}),_vm._v(_vm._s(\" \"))],1):_vm._e(),(_vm.shantytown.populationTotal >= 100)?_c('span',[_c('Icon',{attrs:{\"icon\":\"male\"}})],1):_vm._e()],1)]),_c('div',[(!_vm.shantytown.socialOrigins.length)?_c('div',{staticClass:\"text-G600\"},[_vm._v(\" Origine : inconnu \")]):_vm._l((_vm.shantytown.socialOrigins),function(origin){return _c('div',{key:origin.id,staticClass:\"flex\"},[_c('img',{staticClass:\" w-6 h-4 mr-2 mt-1\",attrs:{\"src\":_vm.socialOrigin(origin).img}}),_c('div',[_vm._v(_vm._s(_vm.socialOrigin(origin).label))])])})],2)]),_c('div',[_c('div',[_c('TownCardIcon',{attrs:{\"value\":_vm.shantytown.accessToWater,\"details\":_vm.details.water}},[_vm._v(\"eau\")]),_c('TownCardIcon',{attrs:{\"value\":_vm.shantytown.accessToSanitary,\"details\":_vm.details.sanitary}},[_vm._v(\"toilettes\")]),_c('TownCardIcon',{attrs:{\"value\":_vm.shantytown.electricityType.value}},[_vm._v(\"électricité\")]),_c('TownCardIcon',{attrs:{\"value\":_vm.shantytown.trashEvacuation,\"details\":_vm.details.trash}},[_vm._v(\"évac. des déchets\")]),_c('TownCardIcon',{attrs:{\"value\":_vm.shantytown.vermin,\"details\":_vm.details.vermin,\"inverted\":\"\"}},[_vm._v(\"pres. de nuisibles\")]),_c('TownCardIcon',{attrs:{\"value\":_vm.shantytown.firePreventionMeasures,\"details\":_vm.details.firePrevention}},[_vm._v(\"prev. incendie\")])],1)]),(_vm.hasJusticePermission)?_c('div',[(\n !_vm.shantytown.justiceStatuses ||\n !_vm.shantytown.justiceStatuses.length\n )?_c('div',{staticClass:\"text-G600\"},[_c('Icon',{attrs:{\"icon\":\"ban\"}}),_vm._v(\" Aucune procédure judiciaire en cours \")],1):_c('div',_vm._l((_vm.shantytown.justiceStatuses),function(status){return _c('div',{key:status.label,staticClass:\"flex \"},[(status.icon)?_c('Icon',{attrs:{\"icon\":status.icon}}):_vm._e(),(status.img)?_c('img',{staticClass:\"w-5 h-4 mt-1\",attrs:{\"src\":status.img}}):_vm._e(),_c('div',{staticClass:\"ml-2\"},[_c('span',{staticClass:\"font-bold\"},[_vm._v(_vm._s(status.label))]),(status.date)?_c('span',{staticClass:\"secondary\"},[_vm._v(\" le \"+_vm._s(_vm.formatDate(status.date, \"d/m/y\")))]):_vm._e()])],1)}),0)]):_vm._e(),_c('div',{staticClass:\"flex\"},[_c('div',{class:{\n 'text-G600': _vm.shantytown.actors.length === 0,\n 'text-primary': _vm.shantytown.actors.length > 0,\n 'font-bold': _vm.shantytown.actors.length > 0\n }},[_c('span',[_c('Icon',{attrs:{\"icon\":\"user-circle\"}})],1)]),_c('div',{staticClass:\"ml-2 flex-grow\"},[(_vm.shantytown.actors.length === 0)?_c('span',{staticClass:\"text-G600\"},[_vm._v(\" Aucun intervenant\")]):_c('span',{staticClass:\"text-primary font-bold\"},[_vm._v(_vm._s(_vm.shantytown.actors.length)+\" intervenant\"+_vm._s(_vm.shantytown.actors.length > 1 ? \"s\" : \"\"))]),(_vm.shantytown.actors.length > 0)?_c('ul',{staticClass:\"text-primary\"},_vm._l((_vm.mergedActors),function(actor){return _c('li',{key:actor.id},[_vm._v(\" - \"+_vm._s(actor.name)+\" \")])}),0):_vm._e()])])]),_c('div',{staticClass:\"flex justify-between items-center px-4 pt-4 print:hidden\"},[_c('Tag',{staticClass:\"text-xs\"},[_vm._v(\" \"+_vm._s(_vm.lastUpdate)+\" \")]),_c('div',{staticClass:\"print:hidden\"},[(_vm.isOpen)?_c('transition',{attrs:{\"name\":\"fade\"}},[(_vm.isHover)?_c('router-link',{attrs:{\"to\":(\"site/\" + (_vm.shantytown.id) + \"/mise-a-jour\")}},[_c('Button',{staticClass:\"text-display-sm hover:underline -mb-1\",attrs:{\"variant\":\"primaryText\",\"icon\":\"pen\",\"iconPosition\":\"left\"}},[_vm._v(\"Mettre à jour\")])],1):_vm._e()],1):_vm._e(),_c('Button',{staticClass:\"text-display-sm hover:underline -mb-1\",attrs:{\"variant\":\"primaryText\",\"icon\":\"arrow-right\"}},[_vm._v(\"Voir la fiche du site\")])],1)],1)])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:['flex items-center', _vm.colorClass]},[_c('div',{staticClass:\"mr-2 w-4\"},[_c('Icon',{attrs:{\"icon\":_vm.icon}})],1),_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownCardIcon.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownCardIcon.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownCardIcon.vue?vue&type=template&id=63d1f991&\"\nimport script from \"./TownCardIcon.vue?vue&type=script&lang=js&\"\nexport * from \"./TownCardIcon.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export default function getSince(ts) {\n const now = new Date();\n const then = new Date(ts * 1000);\n\n const days = Math.floor(\n Math.abs(now.getTime() - then.getTime()) / (1000 * 3600 * 24)\n );\n\n const weeks = Math.floor(days / 7);\n const months = Math.floor(days / 30);\n const years = Math.floor(days / 365);\n\n return {\n days,\n weeks,\n months,\n years\n };\n}\n","export function formatLivingConditions(town) {\n const result = {\n water: {\n negative: [],\n positive: [],\n unknown: []\n },\n sanitary: {\n negative: [],\n positive: [],\n unknown: []\n },\n trash: {\n negative: [],\n positive: [],\n unknown: []\n },\n firePrevention: {\n negative: [],\n positive: [],\n unknown: []\n }\n };\n\n // Eau potable\n const wordingWaterPotable = \"Eau potable\";\n if (town.waterPotable !== null) {\n town.waterPotable\n ? result.water.positive.push({ text: wordingWaterPotable })\n : result.water.negative.push({ text: \"Eau non potable\" });\n } else {\n result.water.unknown.push({ text: wordingWaterPotable });\n }\n\n // Eau continu\n const wordingWaterContinuousAccess =\n \"Accès continu, c’est-à-dire qu’il ne varie pas en qualité et quantité dans la journée et les saisons, sans limite dans le temps\";\n if (town.waterContinuousAccess !== null) {\n town.waterContinuousAccess\n ? result.water.positive.push({ text: wordingWaterContinuousAccess })\n : result.water.negative.push({\n text:\n \"Accès non continu, c’est-à-dire qu’il varie en qualité et quantité dans la journée et les saisons, sans limite dans le temps\"\n });\n } else {\n result.water.unknown.push({ text: wordingWaterContinuousAccess });\n }\n\n // Point d'eau public\n if (town.waterPublicPoint !== null) {\n town.waterPublicPoint &&\n result.water.negative.push({ text: \"Point d'eau public\" });\n } else {\n result.water.unknown.push({ text: \"Point d'eau public\" });\n }\n\n // Distance du point d'eau\n if (town.waterDistance !== null) {\n town.waterDistance === \"0-20\"\n ? result.water.positive.push({\n text: \"Accès situé sur site ou à moins de 20 mètres\"\n })\n : result.water.negative.push({\n text: \"Accès situé à plus de 20 mètres\"\n });\n } else {\n result.water.unknown.push({ text: \"Localisation de l'accès\" });\n }\n\n // Franchissement de rues\n const wordingWaterRoadsToCross =\n \"Pas de franchissement de rue ou route pour accéder aux points d’eau\";\n if (town.waterRoadsToCross !== null) {\n !town.waterRoadsToCross\n ? result.water.positive.push({ text: wordingWaterRoadsToCross })\n : result.water.negative.push({\n text: \"Franchissement de rue ou route nécessaire\"\n });\n } else {\n result.water.unknown.push({ text: wordingWaterRoadsToCross });\n }\n\n // Acces pour tous\n const wordingWaterEveryoneHasAccess = \"Accès pour tous les habitants\";\n if (town.waterEveryoneHasAccess !== null) {\n town.waterEveryoneHasAccess\n ? result.water.positive.push({\n text: wordingWaterEveryoneHasAccess\n })\n : result.water.negative.push({\n text: \"Pas d’accès pour tous les habitants\"\n });\n } else {\n result.water.unknown.push({ text: wordingWaterEveryoneHasAccess });\n }\n\n // Eau stagnante\n const wordingWaterStagnantWater =\n \"Pas d’eaux stagnantes autour du point de distribution\";\n if (town.waterStagnantWater !== null) {\n !town.waterStagnantWater\n ? result.water.positive.push({ text: wordingWaterStagnantWater })\n : result.water.negative.push({\n text: \"Eaux stagnantes autour du point de distribution\"\n });\n } else {\n result.water.unknown.push({ text: wordingWaterStagnantWater });\n }\n\n // Présence de bacs de lavage & nombre\n const waterHandWashAccessPopulationRatio =\n town.populationTotal && town.waterHandWashAccessNumber\n ? Math.floor(\n Number(town.populationTotal) /\n Number(town.waterHandWashAccessNumber)\n )\n : null;\n const wordingRatio = waterHandWashAccessPopulationRatio\n ? ` - soit 1 bac de lavage pour ${waterHandWashAccessPopulationRatio} personnes`\n : \"\";\n const wordingWaterHandWashAccess = `${town.waterHandWashAccessNumber ||\n \"Présence de\"} bac${\n town.waterHandWashAccessNumber > 1 ? \"s\" : \"\"\n } de lavage des mains${wordingRatio}`;\n const infoWaterHandWashAccess =\n \"il est conseillé au moins 1 bac de lavage pour 20 personnes\";\n\n if (\n town.waterHandWashAccess &&\n waterHandWashAccessPopulationRatio &&\n waterHandWashAccessPopulationRatio < 20\n ) {\n result.water.positive.push({\n text: wordingWaterHandWashAccess,\n info: infoWaterHandWashAccess\n });\n } else if (\n town.waterHandWashAccess &&\n waterHandWashAccessPopulationRatio &&\n waterHandWashAccessPopulationRatio > 20\n ) {\n result.water.negative.push({\n text: wordingWaterHandWashAccess,\n info: infoWaterHandWashAccess\n });\n } else if (\n town.waterHandWashAccess &&\n !waterHandWashAccessPopulationRatio\n ) {\n result.water.positive.push({\n text: wordingWaterHandWashAccess\n });\n } else if (town.waterHandWashAccess === false) {\n result.water.negative.push({\n text: \"Pas de de bacs de lavage des mains\",\n info: infoWaterHandWashAccess\n });\n } else {\n result.water.unknown.push({\n text: wordingWaterHandWashAccess,\n info: infoWaterHandWashAccess\n });\n }\n\n // Toilettes sur site\n const wordingSanitaryOnSite = \"Accès sur site\";\n if (town.sanitaryOnSite !== null) {\n town.sanitaryOnSite\n ? result.sanitary.positive.push({ text: wordingSanitaryOnSite })\n : result.sanitary.negative.push({\n text: \"Accès aux abords du site\"\n });\n } else {\n result.sanitary.unknown.push({ text: wordingSanitaryOnSite });\n }\n\n // Nombre de toilettes & Ratio\n const sanitaryNumberPopulationRatio = Math.floor(\n Number(town.populationTotal) / Number(town.sanitaryNumber)\n );\n const wordingSanitaryRatio = town.sanitaryNumber\n ? ` - soit 1 toilette pour ${sanitaryNumberPopulationRatio} personnes`\n : \"\";\n const wordingSanitaryNumber = `${town.sanitaryNumber ||\n \"Présence de\"} toilette${\n town.sanitaryNumber > 1 ? \"s\" : \"\"\n }${wordingSanitaryRatio}`;\n const infoSanitaryNumber =\n \"il est conseillé au moins 1 toilette pour 20 personnes\";\n\n if (town.sanitaryNumber && sanitaryNumberPopulationRatio < 20) {\n result.sanitary.positive.push({\n text: wordingSanitaryNumber,\n info: infoSanitaryNumber\n });\n } else if (town.sanitaryNumber && sanitaryNumberPopulationRatio > 20) {\n result.sanitary.negative.push({\n text: wordingSanitaryNumber,\n info: infoSanitaryNumber\n });\n } else {\n result.sanitary.unknown.push({\n text: \"Nombre de toilettes\",\n info: infoSanitaryNumber\n });\n }\n\n // Sanitaire Insalubre\n const wordingSanitaryInsalubrious =\n \"Pas de marques de défécation à l’air libre\";\n if (town.sanitaryInsalubrious !== null) {\n !town.sanitaryInsalubrious\n ? result.sanitary.positive.push({\n text: wordingSanitaryInsalubrious\n })\n : result.sanitary.negative.push({\n text: \"Marques de défecation à l’air libre\"\n });\n } else {\n result.sanitary.unknown.push({ text: wordingSanitaryInsalubrious });\n }\n\n // Nombre de poubelles/bennes\n const trashCansRatio = Math.floor(\n Number(town.populationTotal) / Number(town.trashCansOnSite)\n );\n if (town.trashCansOnSite !== null) {\n result.trash.positive.push({\n text: `${town.trashCansOnSite} poubelle${\n town.trashCansOnSite > 1 ? \"s\" : \"\"\n } / benne${\n town.trashCansOnSite > 1 ? \"s\" : \"\"\n } sont à proximité immédiate du site (moins de 100 mètres) - soit 1 pour ${trashCansRatio} personnes`\n });\n } else {\n result.trash.unknown.push({\n text:\n \"Nombre de poubelles / bennes à proximité immédiate du site (moins de 100 mètres)\"\n });\n }\n\n // Evacuation régulière des déchets\n const wordingTrashEvacuationRegular =\n \"Collecte régulière des poubelles / bennes. C’est-à-dire au moins une fois par semaine, à partir d’un point de dépôt spécialement aménagé sur le site ou à proximité immédiate\";\n if (town.trashEvacuationRegular !== null) {\n town.trashEvacuationRegular\n ? result.trash.positive.push({\n text: wordingTrashEvacuationRegular\n })\n : result.trash.negative.push({\n text: \"Pas de collecte régulière des poubelles / bennes\"\n });\n } else {\n result.trash.unknown.push({ text: wordingTrashEvacuationRegular });\n }\n\n // Accumulation des déchets\n const wordingTrashAccumulation =\n \"Pas d’accumulation de déchets sur le site ou aux abords\";\n if (town.trashAccumulation !== null) {\n !town.trashAccumulation\n ? result.trash.positive.push({ text: wordingTrashAccumulation })\n : result.trash.negative.push({\n text: \"Accumulation de déchets sur le site ou aux abords\"\n });\n } else {\n result.trash.unknown.push({ text: wordingTrashAccumulation });\n }\n\n // Diagnostic de prévention\n const wordingFirePreventionDiagnostic =\n \"Diagnostic prévention incendie par le SDIS réalisé\";\n if (town.firePreventionDiagnostic !== null) {\n town.firePreventionDiagnostic\n ? result.firePrevention.positive.push({\n text: wordingFirePreventionDiagnostic\n })\n : result.firePrevention.negative.push({\n text:\n \"Pas de diagnostic prévention incendie réalisé par le SDIS\"\n });\n } else {\n result.firePrevention.unknown.push({\n text: wordingFirePreventionDiagnostic\n });\n }\n\n // Mesure spécifiques\n const wordingFirePreventionDevices = \"Mesures spécifiques en place\";\n if (town.firePreventionDevices !== null) {\n town.firePreventionDevices\n ? result.firePrevention.positive.push({\n text: wordingFirePreventionDevices\n })\n : result.firePrevention.negative.push({\n text:\n \"Pas de mesure spécifiques (formation, extincteurs...) en place\"\n });\n } else {\n result.firePrevention.unknown.push({\n text: wordingFirePreventionDevices\n });\n }\n\n // Site accessible aux pompiers\n const wordingFirePreventionSiteAccessible = \"Site accessible aux pompiers\";\n if (town.firePreventionSiteAccessible !== null) {\n town.firePreventionSiteAccessible\n ? result.firePrevention.positive.push({\n text: wordingFirePreventionSiteAccessible\n })\n : result.firePrevention.negative.push({\n text: \"Site pas accessible aux pompiers\"\n });\n } else {\n result.firePrevention.unknown.push({\n text: wordingFirePreventionSiteAccessible\n });\n }\n\n return result;\n}\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownCard.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownCard.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownCard.vue?vue&type=template&id=73342ee7&scoped=true&\"\nimport script from \"./TownCard.vue?vue&type=script&lang=js&\"\nexport * from \"./TownCard.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TownCard.vue?vue&type=style&index=0&id=73342ee7&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"73342ee7\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"mx-auto searchbox -mb-6\"},[_c('AutocompleteV2',{attrs:{\"defaultValue\":this.$props.value,\"search\":_vm.search,\"getResultValue\":_vm.resultValue,\"loading\":_vm.loading,\"prefixIcon\":\"search\",\"inputClasses\":['rounded-full shadow-sm']},on:{\"submit\":function($event){return _vm.$emit('input', $event)}},scopedSlots:_vm._u([{key:\"extra\",fn:function(ref){\nvar removeItem = ref.removeItem;\nreturn [_c('div',{staticClass:\"py-1 px-2 text-right\"},[_c('Button',{staticClass:\"font-bold\",attrs:{\"variant\":\"primaryText\",\"size\":\"sm\"},on:{\"click\":removeItem}},[_vm._v(\"Voir tous les sites de France\")])],1)]}},{key:\"default\",fn:function(ref){\n var results = ref.results;\n var resultListProps = ref.resultListProps;\n var resultListListeners = ref.resultListListeners;\n var resultProps = ref.resultProps;\n var getResultValue = ref.getResultValue;\nreturn [(!results.length)?_c('Menu',[_c('MenuItem',[_vm._v(\" Aucun résultat \")])],1):_vm._e(),_c('Menu',_vm._g(_vm._b({},'Menu',resultListProps,false),resultListListeners),_vm._l((_vm.getCategories(results)),function(category){return _c('div',{key:category.label,staticClass:\"flex flex-row border-b-2 border-G100\"},[_c('div',{staticClass:\"px-4 py-2 w-48 text-G600 border-r-2 border-G100 text-sm text-right pr-4\"},[_vm._v(\" \"+_vm._s(category.label)+\" \")]),_c('div',{staticClass:\"flex-1\"},_vm._l((results),function(r,index){return _c('MenuItem',_vm._b({key:resultProps[index].id,class:[\n 'flex flex-col cursor-pointer hover:bg-G100',\n r.type === category.label\n ? 'block'\n : 'hidden',\n resultProps[index]['aria-selected'] &&\n 'bg-G100'\n ]},'MenuItem',resultProps[index],false),[_vm._v(\" \"+_vm._s(getResultValue(r))+\" \")])}),1)])}),0)]}}]),model:{value:(_vm.result),callback:function ($$v) {_vm.result=$$v},expression:\"result\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsListSearchBar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsListSearchBar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownsListSearchBar.vue?vue&type=template&id=6c3fad6c&scoped=true&\"\nimport script from \"./TownsListSearchBar.vue?vue&type=script&lang=js&\"\nexport * from \"./TownsListSearchBar.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TownsListSearchBar.vue?vue&type=style&index=0&id=6c3fad6c&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6c3fad6c\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"block md:flex justify-between items-baseline\"},[_c('div',[_c('div',{staticClass:\"flex items-center mb-4 print:hidden\"},[_vm._t(\"filters\")],2),_c('div',[_vm._t(\"title\")],2)]),_c('div',{staticClass:\"block md:flex items-center print:hidden\"},[_vm._t(\"buttons\")],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsListHeader.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsListHeader.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownsListHeader.vue?vue&type=template&id=b1e27708&\"\nimport script from \"./TownsListHeader.vue?vue&type=script&lang=js&\"\nexport * from \"./TownsListHeader.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',_vm._g({class:[\n 'border-b-2 pb-1',\n _vm.active\n ? 'text-primary font-bold border-primary'\n : 'cursor-pointer border-transparent'\n ]},_vm.$listeners),[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsListHeaderTab.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsListHeaderTab.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownsListHeaderTab.vue?vue&type=template&id=5a313299&\"\nimport script from \"./TownsListHeaderTab.vue?vue&type=script&lang=js&\"\nexport * from \"./TownsListHeaderTab.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"mb-2\"},[_vm._v(\"Filtrer par\")]),_c('div',{staticClass:\"flex items-center flex-wrap\"},[_vm._t(\"default\")],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./TownsListFilters.vue?vue&type=template&id=2fc307e6&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Dropdown',{scopedSlots:_vm._u([{key:\"button\",fn:function(ref){\nvar isOpen = ref.isOpen;\nreturn [_c('Button',{class:[\n 'px-4 rounded focus:outline-none border border-primary whitespace-nowrap',\n isOpen\n ? 'bg-primary text-white hover:text-white focus:text-white'\n : 'hover:bg-blue200 hover:text-primary text-primary'\n ],attrs:{\"variant\":\"custom\",\"size\":\"sm\",\"icon\":isOpen ? 'chevron-up' : 'chevron-down',\"iconPosition\":\"right\"}},[_vm._v(_vm._s(_vm.titleWithActiveFilters))])]}},{key:\"menu\",fn:function(){return [_c('Menu',{attrs:{\"containerClasses\":\"py-0\"}},[_vm._l((_vm.options),function(option){return _c('div',{key:option.id,staticClass:\"flex items-center whitespace-no-wrap text-sm menuWidth\"},[_c('Checkbox',{attrs:{\"checkValue\":option.value,\"value\":_vm.value,\"variant\":\"invisible\",\"containerClasses\":\"w-full\",\"labelClasses\":\"w-full block\"},on:{\"input\":function($event){return _vm.$emit('input', $event)}},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\n var isChecked = ref.isChecked;\nreturn [_c('div',{staticClass:\"flex items-center justify-between w-full hover:bg-blue200 py-2 px-3 text-primary\"},[_vm._t(\"default\",[_c('div',{staticClass:\"flex-1\"},[_vm._v(_vm._s(option.label))])],{\"label\":option.label}),(isChecked)?_c('div',{staticClass:\"ml-4\"},[_c('Icon',{attrs:{\"icon\":\"check\"}})],1):_vm._e()],2)]}}],null,true)})],1)}),_c('div',{staticClass:\"px-1 py-1 border-t \"},[_c('Button',{staticClass:\"hover:underline\",attrs:{\"size\":\"sm\",\"variant\":\"primaryText\"},on:{\"click\":function($event){return _vm.$emit('input', [])}}},[_vm._v(\" Effacer \")])],1)],2)]},proxy:true}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsListFilter.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsListFilter.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownsListFilter.vue?vue&type=template&id=defa5cd8&scoped=true&\"\nimport script from \"./TownsListFilter.vue?vue&type=script&lang=js&\"\nexport * from \"./TownsListFilter.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TownsListFilter.vue?vue&type=style&index=0&id=defa5cd8&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"defa5cd8\",\n null\n \n)\n\nexport default component.exports","export function filterShantytowns(shantytowns, filters) {\n return shantytowns.filter(shantytown => {\n if (filters.status === \"open\" && shantytown.status !== \"open\") {\n return false;\n }\n\n if (filters.status === \"close\" && shantytown.status === \"open\") {\n return false;\n }\n\n if (filters.location && !checkLocation(shantytown, filters)) {\n return false;\n }\n\n if (\n filters.fieldType.length > 0 &&\n !checkFieldType(shantytown, filters.fieldType)\n ) {\n return false;\n }\n\n if (\n filters.population.length > 0 &&\n !checkPopulation(shantytown, filters.population)\n ) {\n return false;\n }\n\n if (\n filters.justice.length > 0 &&\n !checkJustice(shantytown, filters.justice)\n ) {\n return false;\n }\n\n if (\n filters.origin.length > 0 &&\n !checkOrigin(shantytown, filters.origin)\n ) {\n return false;\n }\n\n if (\n filters.conditions.length > 0 &&\n !checkConditions(shantytown, filters.conditions)\n ) {\n return false;\n }\n\n if (\n filters.actors.length > 0 &&\n !checkActors(shantytown, filters.actors)\n ) {\n return false;\n }\n\n return true;\n });\n}\n\nfunction checkConditions(shantytown, filters) {\n return filters.some(filter => {\n if (filter === \"accessToSanitary\") {\n return !shantytown.accessToSanitary;\n }\n\n if (filter === \"accessToWater\") {\n return !shantytown.accessToWater;\n }\n\n if (filter === \"accessToTrash\") {\n return !shantytown.trashEvacuation;\n }\n\n if (filter === \"accessToElectricity\") {\n return !shantytown.electricityType.value;\n }\n\n if (filter === \"vermin\") {\n return shantytown.vermin;\n }\n\n if (filter === \"firePreventionMeasures\") {\n return !shantytown.firePreventionMeasures;\n }\n\n return true;\n });\n}\n\nfunction checkOrigin(shantytown, filters) {\n if (!shantytown.socialOrigins) {\n return false;\n }\n\n if (!shantytown.socialOrigins.length && filters.includes(null)) {\n return true;\n }\n\n const origins = shantytown.socialOrigins.map(origin => origin.id);\n\n const filteredArray = origins.filter(value => filters.includes(value));\n\n return filteredArray.length;\n}\n\nfunction checkLocation(shantytown, filters) {\n if (filters.location.type === \"nation\") {\n return true;\n }\n\n const l = shantytown[filters.location.locationType];\n\n if (!l) {\n return true;\n }\n\n if (l.code === `${filters.location.code}`) {\n return true;\n }\n\n return l.main === `${filters.location.code}`;\n}\n\n/**\n *\n */\nfunction checkFieldType(shantytown, filters) {\n return filters.indexOf(shantytown.fieldType.id) !== -1;\n}\n\n/**\n *\n */\nfunction checkPopulation(shantytown, filters) {\n return filters.some(value => {\n if (value === null) {\n return shantytown.populationTotal === null;\n }\n\n if (shantytown.populationTotal === null) {\n return false;\n }\n\n const [min, max] = value.split(\"-\");\n if (min !== \"\" && parseInt(min, 10) > shantytown.populationTotal) {\n return false;\n }\n\n if (max !== \"\" && parseInt(max, 10) < shantytown.populationTotal) {\n return false;\n }\n\n return true;\n });\n}\n\n/**\n *\n */\nfunction checkJustice(shantytown, filters) {\n return filters.some(value => {\n if (value === \"ownerComplaint\") {\n return shantytown.ownerComplaint === true;\n }\n\n if (shantytown.justiceRendered === true) {\n return value === \"justiceRendered\";\n }\n\n if (shantytown.justiceProcedure === true) {\n return value === \"justiceProcedure\";\n }\n\n return value === null;\n });\n}\n\n/**\n *\n */\nfunction checkActors(shantytown, filters) {\n if (filters.includes(\"yes\") && shantytown.actors.length > 0) {\n return true;\n }\n\n if (filters.includes(\"no\") && shantytown.actors.length === 0) {\n return true;\n }\n\n return filters.length === 0;\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Modal',{staticClass:\"modalContainer\",attrs:{\"isOpen\":true,\"closeModal\":_vm.close,\"closeClickOutside\":\"\"},scopedSlots:_vm._u([{key:\"header\",fn:function(){return [_c('div',{staticClass:\"pt-10 px-10 pb-4 flex justify-between border-b border-G200\"},[_c('div',{staticClass:\"text-primary\"},[_c('div',{staticClass:\"text-display-md text-primary\"},[_vm._v(\" \"+_vm._s(_vm.closedTowns ? \"Exporter les sites fermés\" : \"Exporter les sites existants\")+\" \")]),_c('div',{staticClass:\"font-bold mt-2\"},[_vm._v(_vm._s(_vm.location.label))])]),_c('div',{staticClass:\"ml-16\"},[_c('Button',{attrs:{\"variant\":\"primaryText\"},on:{\"click\":_vm.close}},[_vm._v(\" Annuler\")]),_c('Button',{staticClass:\"ml-6\",attrs:{\"icon\":\"file-excel\",\"iconPosition\":\"left\"},on:{\"click\":_vm.download}},[_vm._v(\"Exporter\")])],1)])]},proxy:true},{key:\"body\",fn:function(){return [_c('div',[_c('div',{staticClass:\"font-bold mb-1\"},[_vm._v(\" Les données exportées par défaut \")]),_c('ul',[_c('li',[_vm._v(\"- Localisation\")]),_c('li',[_vm._v(\" - Caractéristiques du site \")]),_c('li',[_vm._v(\" - Habitants \")])])]),_c('div',{staticClass:\"mt-4\"},[_c('p',{staticClass:\"font-bold mb-1\"},[_vm._v(\" Cochez les informations supplémentaires que vous souhaitez exporter \")]),_vm._l((_vm.availableOptions),function(option){return _c('Checkbox',{key:option.id,attrs:{\"checkValue\":option.id,\"label\":((option.label) + \" \" + (option.description || ''))},model:{value:(_vm.options),callback:function ($$v) {_vm.options=$$v},expression:\"options\"}})})],2)]},proxy:true}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Export.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Export.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Export.vue?vue&type=template&id=fd85a630&\"\nimport script from \"./Export.vue?vue&type=script&lang=js&\"\nexport * from \"./Export.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"mb-2\"},[_vm._v(\"Trier par\")]),_c('div',{staticClass:\"flex items-center\"},[_c('Dropdown',{scopedSlots:_vm._u([{key:\"button\",fn:function(ref){\nvar isOpen = ref.isOpen;\nreturn [_c('Button',{class:[\n 'px-4 rounded focus:outline-none border border-primary whitespace-no-wrap ',\n isOpen\n ? 'bg-primary text-white hover:text-white focus:text-white'\n : 'hover:bg-blue200 hover:text-primary text-primary'\n ],attrs:{\"variant\":\"custom\",\"size\":\"sm\",\"icon\":isOpen ? 'chevron-up' : 'chevron-down',\"iconPosition\":\"right\"}},[_vm._v(_vm._s(_vm.title)+\" \")])]}},{key:\"menu\",fn:function(){return [_c('Menu',{attrs:{\"containerClasses\":\"py-0\"}},_vm._l((_vm.options[_vm.status]),function(option){return _c('div',{key:option.id,staticClass:\"flex items-center whitespace-no-wrap text-sm menuWidth\"},[_c('Radio',{attrs:{\"checkValue\":option.value,\"value\":_vm.value,\"variant\":\"invisible\",\"containerClasses\":\"w-full\",\"labelClasses\":\"w-full block\"},on:{\"input\":function($event){return _vm.$emit('input', $event)}},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\n var isChecked = ref.isChecked;\nreturn [_c('div',{staticClass:\"flex items-center justify-between w-full hover:bg-blue200 py-2 px-3 text-primary\"},[_c('div',{staticClass:\"flex-1\"},[_vm._v(_vm._s(option.label))]),(isChecked)?_c('div',{staticClass:\"ml-4\"},[_c('Icon',{attrs:{\"icon\":\"check\"}})],1):_vm._e()])]}}],null,true)})],1)}),0)]},proxy:true}])})],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsListSort.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsListSort.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownsListSort.vue?vue&type=template&id=80dfc67a&scoped=true&\"\nimport script from \"./TownsListSort.vue?vue&type=script&lang=js&\"\nexport * from \"./TownsListSort.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TownsListSort.vue?vue&type=style&index=0&id=80dfc67a&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"80dfc67a\",\n null\n \n)\n\nexport default component.exports","import getSince from \"./getSince\";\n\nexport default function formatDateSince(date) {\n const { days, years, months } = getSince(date);\n\n if (years > 0) {\n const yearsText = `${years} an${years > 1 ? \"s\" : \"\"}`;\n return months % 12 > 0\n ? `${yearsText} et ${months % 12} mois`\n : yearsText;\n }\n\n if (months > 0) {\n return `${months} mois`;\n }\n\n if (days > 0) {\n return `${days} jours`;\n }\n\n return \"Aujourd'hui\";\n}\n","/**\n * Enriches the given town with computed properties\n *\n * @param {Shantytown} shantytowns\n *\n * @returns {EnrichedShantytown}\n */\n\nimport policeSiren from \"./assets/police_siren.svg\";\nimport formatDateSince from \"./formatDateSince\";\n\nexport default function enrichShantytown(shantytown, fieldTypes) {\n const fieldTypeColors = fieldTypes.reduce(\n (acc, fieldType) =>\n Object.assign(acc, {\n [fieldType.id]: fieldType.color\n }),\n {}\n );\n\n // electricity\n let electricityValue = true;\n if (shantytown.electricityType.label === \"Inconnu\") {\n electricityValue = null;\n } else if (shantytown.electricityType.label === \"Non\") {\n electricityValue = false;\n }\n\n // justice statuses\n const justiceStatuses = [];\n\n if (shantytown.ownerComplaint === true) {\n justiceStatuses.push({\n icon: \"scroll\",\n label: \"Plainte déposée\"\n });\n }\n\n if (\n shantytown.justiceProcedure &&\n !shantytown.justiceChallenged &&\n !shantytown.justiceRendered\n ) {\n justiceStatuses.push({\n icon: \"balance-scale\",\n label: \"Procédure en cours\"\n });\n }\n\n if (shantytown.justiceProcedure && shantytown.justiceRendered) {\n justiceStatuses.push({\n icon: \"balance-scale\",\n label: \"Décision rendue\",\n date: shantytown.justiceRenderedAt\n });\n }\n\n if (shantytown.justiceProcedure && shantytown.justiceChallenged === true) {\n justiceStatuses.push({\n icon: \"balance-scale\",\n label: \"Contentieux\"\n });\n }\n\n switch (shantytown.policeStatus) {\n case \"none\":\n justiceStatuses.push({\n img: policeSiren,\n label: \"Concours de la force publique non demandé\"\n });\n break;\n\n case \"requested\":\n justiceStatuses.push({\n img: policeSiren,\n label: \"Concours de la force publique demandé\",\n date: shantytown.policeRequestedAt\n });\n break;\n\n case \"granted\":\n justiceStatuses.push({\n img: policeSiren,\n label: \"Concours de la force publique accordé\",\n date: shantytown.policeGrantedAt\n });\n break;\n\n default:\n case null:\n break;\n }\n\n // status\n let statusName;\n let statusDate;\n if (shantytown.status === \"open\") {\n if (shantytown.builtAt) {\n statusName = \"Existe\";\n statusDate = shantytown.builtAt;\n } else if (shantytown.declaredAt) {\n statusName = \"Signalé\";\n statusDate = shantytown.declaredAt;\n } else {\n statusName = null;\n statusDate = null;\n }\n } else {\n statusName = \"Fermé\";\n statusDate = shantytown.closedAt;\n }\n\n const statusSince = statusDate ? formatDateSince(statusDate) : \"\";\n\n // closing solutions\n const totalSolutions = shantytown.closingSolutions.reduce(\n (total, solution) => {\n if (!solution.householdsAffected) {\n return total;\n }\n\n return (total || 0) + solution.householdsAffected;\n },\n null\n );\n\n // final object\n return {\n ...shantytown,\n statusName,\n statusDate,\n statusSince,\n statusDetails: statusDetails[shantytown.status],\n fieldType: {\n ...shantytown.fieldType,\n color: fieldTypeColors[shantytown.fieldType.id]\n },\n electricityType: {\n ...shantytown.electricityType,\n value: electricityValue\n },\n justiceStatuses,\n totalSolutions\n };\n}\n\nconst statusDetails = {\n closed_by_justice: \"Exécution d'une décision de justice\",\n closed_by_admin: \"Exécution d'une décision administrative\",\n other: \"Autre\",\n unknown: \"Raison inconnue\"\n};\n","import Vue from \"vue\";\nimport Vuex from \"vuex\";\nimport {\n all as fetchAll,\n get as fetchOne,\n addActor,\n removeActor,\n updateActorThemes,\n removeActorTheme,\n inviteNewActor\n} from \"#helpers/api/town\";\nimport enrichShantytown from \"#app/pages/TownsList/enrichShantytown\";\nimport { get as getConfig } from \"#helpers/api/config\";\n\nVue.use(Vuex);\n\nexport default new Vuex.Store({\n state: {\n towns: {\n data: [],\n loading: true,\n error: null,\n sort: \"updatedAt\",\n filters: {\n population: [],\n fieldType: [],\n justice: [],\n origin: [],\n conditions: [],\n status: \"open\",\n location: null,\n actors: []\n },\n currentPage: 1\n },\n detailedTown: null\n },\n mutations: {\n setLoading(state, value) {\n state.towns.loading = value;\n },\n setTowns(state, towns) {\n state.towns.data = towns;\n },\n setError(state, err) {\n state.towns.error = err;\n },\n setSort(state, sort) {\n state.towns.sort = sort;\n },\n setFilters(state, filters) {\n state.towns.filters = filters;\n },\n setLocation(state, location) {\n state.towns.filters.location = location;\n },\n setCurrentPage(state, page) {\n state.towns.currentPage = page;\n },\n setDetailedTown(state, town) {\n state.detailedTown = town;\n },\n updateShantytownActors(state, { townId, actors }) {\n if (\n state.detailedTown !== null &&\n state.detailedTown.id === townId\n ) {\n state.detailedTown.actors = actors;\n }\n\n const town = state.towns.data.find(({ id }) => id === townId);\n if (town !== undefined) {\n town.actors = actors;\n }\n },\n updateShantytownActorThemes(state, { townId, userId, themes }) {\n if (\n state.detailedTown !== null &&\n state.detailedTown.id === townId\n ) {\n const actor = state.detailedTown.actors.find(\n ({ id }) => id === userId\n );\n if (actor !== undefined) {\n actor.themes = themes;\n }\n }\n\n const town = state.towns.data.find(({ id }) => id === townId);\n if (town !== undefined) {\n const actor = town.actors.find(({ id }) => id === userId);\n if (actor !== undefined) {\n actor.themes = themes;\n }\n }\n }\n },\n actions: {\n async fetchTowns({ commit }) {\n commit(\"setLoading\", true);\n try {\n const { user, field_types: fieldTypes } = getConfig();\n\n if (\n user.organization.location.type !== \"nation\" &&\n user.role_id !== \"national_admin\"\n ) {\n commit(\"setLocation\", {\n id:\n user.organization.location[\n user.organization.location.type\n ].code,\n label:\n user.organization.location[\n user.organization.location.type\n ].name,\n category: user.organization.location.type,\n locationType: user.organization.location.type,\n code:\n user.organization.location[\n user.organization.location.type\n ].code,\n data: {\n code:\n user.organization.location[\n user.organization.location.type\n ].code,\n type: user.organization.location.type\n }\n });\n }\n\n const originalTowns = await fetchAll();\n const towns = originalTowns.map(s =>\n enrichShantytown(s, fieldTypes)\n );\n commit(\"setTowns\", towns);\n commit(\"setLoading\", false);\n } catch (err) {\n commit(\"setError\", err);\n commit(\"setLoading\", false);\n }\n },\n\n async fetchTownDetails({ commit }, id) {\n const { field_types: fieldTypes } = getConfig();\n const town = enrichShantytown(await fetchOne(id), fieldTypes);\n commit(\"setDetailedTown\", town);\n },\n\n async addTownActor({ commit }, { townId, actor }) {\n const { actors } = await addActor(townId, actor);\n commit(\"updateShantytownActors\", { townId, actors });\n },\n\n async removeTownActor({ commit }, { townId, userId }) {\n const { actors } = await removeActor(townId, userId);\n commit(\"updateShantytownActors\", { townId, actors });\n },\n\n async updateTownActorThemes({ commit }, { townId, userId, themes }) {\n const { themes: updatedThemes } = await updateActorThemes(\n townId,\n userId,\n themes\n );\n commit(\"updateShantytownActorThemes\", {\n townId,\n userId,\n themes: updatedThemes\n });\n },\n\n async removeTownActorTheme({ commit }, { townId, userId, themeId }) {\n const { themes } = await removeActorTheme(townId, userId, themeId);\n commit(\"updateShantytownActorThemes\", { townId, userId, themes });\n },\n\n inviteNewTownActor(args, { townId, email }) {\n return inviteNewActor(townId, email);\n }\n },\n getters: {\n towns: state => {\n return state.towns.data;\n },\n detailedTown: state => {\n return state.detailedTown;\n },\n townsLoading: state => {\n return state.towns.loading;\n },\n townsError: state => {\n return state.towns.error;\n },\n townsFilters: state => {\n return state.towns.filters;\n },\n townsSort: state => {\n return state.towns.sort;\n },\n townsCurrentPage: state => {\n return state.towns.currentPage;\n }\n }\n});\n","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsList.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsList.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownsList.vue?vue&type=template&id=19f18e67&\"\nimport script from \"./TownsList.vue?vue&type=script&lang=js&\"\nexport * from \"./TownsList.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('PrivateLayout',[_c('TownForm',{attrs:{\"mode\":\"create\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ValidationObserver',{ref:\"form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.submit($event)}},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('form',[_c('div',{staticClass:\"bg-G100 py-8\"},[_c('PrivateContainer',{staticClass:\"flex justify-between items-baseline\"},[_c('div',{staticClass:\"text-display-lg\"},[_vm._v(_vm._s(_vm.submitWording))]),_c('div',[_c('Button',{attrs:{\"variant\":\"primaryText\"},on:{\"click\":_vm.back}},[_vm._v(\"Annuler\")]),_c('Button',{staticClass:\"ml-5\",attrs:{\"variant\":\"tertiary\",\"loading\":_vm.loading,\"data-cy-button\":\"submit\"}},[_vm._v(\"Valider\")])],1)])],1),_c('PrivateContainer',{staticClass:\"flex pt-10\"},[_c('TownFormLeftColumn',{staticClass:\"leftColumnWidth\"}),_c('div',{staticClass:\"flex-1\"},[(_vm.showInfo)?_c('TownFormPanelInfo',{on:{\"close\":function($event){return _vm.closeInfo()}}}):_vm._e(),_c('TownFormErrorLog',{staticClass:\"mt-8 mb-8\",attrs:{\"id\":\"erreurs\",\"errors\":errors}}),_c('TownFormPanelLocation',{staticClass:\"mt-10\",model:{value:(_vm.town.location),callback:function ($$v) {_vm.$set(_vm.town, \"location\", $$v)},expression:\"town.location\"}}),_c('TownFormPanelCharacteristics',{staticClass:\"mt-10 townPanelShadow\",attrs:{\"id\":\"characteristics\"},model:{value:(_vm.town.characteristics),callback:function ($$v) {_vm.$set(_vm.town, \"characteristics\", $$v)},expression:\"town.characteristics\"}}),_c('TownFormPanelPeople',{staticClass:\"mt-10 townPanelShadow\",attrs:{\"id\":\"people\"},model:{value:(_vm.town.people),callback:function ($$v) {_vm.$set(_vm.town, \"people\", $$v)},expression:\"town.people\"}}),_c('TownFormPanelLivingConditions',{staticClass:\"mt-10 townPanelShadow\",attrs:{\"id\":\"living_conditions\",\"population\":_vm.town.people.population},model:{value:(_vm.town.living_conditions),callback:function ($$v) {_vm.$set(_vm.town, \"living_conditions\", $$v)},expression:\"town.living_conditions\"}}),_c('TownFormPanelJudicial',{staticClass:\"mt-10 townPanelShadow\",attrs:{\"id\":\"judicial\"},model:{value:(_vm.town.judicial),callback:function ($$v) {_vm.$set(_vm.town, \"judicial\", $$v)},expression:\"town.judicial\"}}),_c('div',{staticClass:\"mt-8 text-right italic text-red font-bold\"},[_vm._v(\" * : Réponses obligatoires \")])],1)],1),_c('div',{staticClass:\"pt-12 pb-16\"},[_c('PrivateContainer',{staticClass:\"flex justify-end items-baseline\"},[_c('Button',{attrs:{\"variant\":\"primaryText\"},on:{\"click\":_vm.back}},[_vm._v(\"Annuler\")]),_c('Button',{staticClass:\"ml-5\",attrs:{\"variant\":\"tertiary\",\"loading\":_vm.loading}},[_vm._v(\"Valider\")])],1)],1)],1)]}}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"rounded-full inline-block bg-yellow-400 w-6 h-6 text-center text-xs align-middle leading-6\"},[_c('Icon',{attrs:{\"icon\":\"flag\"}})],1),_c('span',{staticClass:\"ml-2 font-bold\"},[_vm._v(\"Qu'est-ce qu'un site ?\")]),_c('span',{staticClass:\"ml-2\",on:{\"click\":_vm.toggle}},[_c('Icon',{staticClass:\"cursor-pointer\",attrs:{\"icon\":_vm.togglerIcon}})],1),_c('transition',{attrs:{\"name\":\"toggle\",\"mode\":\"out-in\"}},[(_vm.visible)?_c('div',{staticClass:\"bg-yellow-200 p-6 mt-2 flex\"},[_vm._v(\" Un site est un bidonville ou squat occupé de manière informelle à des fins d'habitation par plusieurs familles ou personnes, les services de base (eau, électricité, gestion des déchets…) y sont généralement absents. Tous les sites, quelque soit l'origine et le nombre des personnes, peuvent être renseignés. \")]):_vm._e()])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormPanelInfo.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormPanelInfo.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownFormPanelInfo.vue?vue&type=template&id=640d947d&scoped=true&\"\nimport script from \"./TownFormPanelInfo.vue?vue&type=script&lang=js&\"\nexport * from \"./TownFormPanelInfo.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TownFormPanelInfo.vue?vue&type=style&index=0&id=640d947d&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"640d947d\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"bg-gray-200 flex\"},[_c('div',{staticClass:\"p-5 flex-grow\"},[_c('FormParagraph',{attrs:{\"title\":\"Adresse\",\"showMandatoryStar\":true}},[_c('InputAddress',{on:{\"change\":_vm.onAddressChange},model:{value:(_vm.input.address),callback:function ($$v) {_vm.$set(_vm.input, \"address\", $$v)},expression:\"input.address\"}})],1),_c('FormParagraph',{attrs:{\"title\":\"Appellation du site\"}},[_c('InputName',{model:{value:(_vm.input.name),callback:function ($$v) {_vm.$set(_vm.input, \"name\", $$v)},expression:\"input.name\"}})],1)],1),(_vm.input.address.label)?_c('div',{staticClass:\"w-96 h-96\"},[_c('InputCoordinates',{model:{value:(_vm.input.coordinates),callback:function ($$v) {_vm.$set(_vm.input, \"coordinates\", $$v)},expression:\"input.coordinates\"}})],1):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('AutocompleteV2',{attrs:{\"id\":\"address\",\"label\":\"\",\"prefixIcon\":\"search\",\"search\":_vm.autocomplete,\"getResultValue\":_vm.getResultValue,\"validationName\":\"Adresse\",\"data-cy-field\":\"address\",\"defaultValue\":_vm.value},on:{\"submit\":_vm.submit}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputAddress.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputAddress.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputAddress.vue?vue&type=template&id=a788fd2e&\"\nimport script from \"./InputAddress.vue?vue&type=script&lang=js&\"\nexport * from \"./InputAddress.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TextInput',{attrs:{\"id\":\"name\",\"label\":\"\",\"info\":\"Exemples : Entrepôt de la Poste, Rond-point du centre...\",\"cypressName\":\"name\"},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputName.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputName.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputName.vue?vue&type=template&id=57536b9d&\"\nimport script from \"./InputName.vue?vue&type=script&lang=js&\"\nexport * from \"./InputName.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('MapV2',{attrs:{\"zoom\":_vm.zoom},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputCoordinates.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputCoordinates.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputCoordinates.vue?vue&type=template&id=43397fc8&\"\nimport script from \"./InputCoordinates.vue?vue&type=script&lang=js&\"\nexport * from \"./InputCoordinates.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormPanelLocation.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormPanelLocation.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownFormPanelLocation.vue?vue&type=template&id=122226e9&\"\nimport script from \"./TownFormPanelLocation.vue?vue&type=script&lang=js&\"\nexport * from \"./TownFormPanelLocation.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('FormGroup',{attrs:{\"title\":\"Caractéristiques du site\"}},[_c('FormParagraph',{staticClass:\"w-128\",attrs:{\"title\":\"Quelles sont les dates clés du site ?\"}},[_c('div',{staticClass:\"w-64\"},[_c('InputBuiltAt',{model:{value:(_vm.input.built_at),callback:function ($$v) {_vm.$set(_vm.input, \"built_at\", $$v)},expression:\"input.built_at\"}}),_c('InputDeclaredAt',{attrs:{\"disableBefore\":_vm.input.built_at},model:{value:(_vm.input.declared_at),callback:function ($$v) {_vm.$set(_vm.input, \"declared_at\", $$v)},expression:\"input.declared_at\"}})],1),_c('InputFieldType',{model:{value:(_vm.input.field_type),callback:function ($$v) {_vm.$set(_vm.input, \"field_type\", $$v)},expression:\"input.field_type\"}}),_c('InputDetailedAddress',{model:{value:(_vm.input.detailed_address),callback:function ($$v) {_vm.$set(_vm.input, \"detailed_address\", $$v)},expression:\"input.detailed_address\"}})],1),_c('FormParagraph',{staticClass:\"w-128\",attrs:{\"title\":\"Quel est le propriétaire ?\",\"showMandatoryStar\":true}},[_c('InputOwnerType',{ref:\"ownerType\",model:{value:(_vm.input.owner_type),callback:function ($$v) {_vm.$set(_vm.input, \"owner_type\", $$v)},expression:\"input.owner_type\"}}),(!_vm.ownerTypeIsUnknown)?_c('InputOwner',{model:{value:(_vm.input.owner),callback:function ($$v) {_vm.$set(_vm.input, \"owner\", $$v)},expression:\"input.owner\"}}):_vm._e()],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('DatepickerV2',{attrs:{\"id\":\"built_at\",\"label\":\"Date d'installation\",\"rules\":\"required\",\"showMandatoryStar\":true,\"disabled-dates\":{ from: new Date() },\"cypressName\":\"built_at\"},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputBuiltAt.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputBuiltAt.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputBuiltAt.vue?vue&type=template&id=39abd0ab&\"\nimport script from \"./InputBuiltAt.vue?vue&type=script&lang=js&\"\nexport * from \"./InputBuiltAt.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('DatepickerV2',{attrs:{\"id\":\"declared_at\",\"label\":\"Date de signalement\",\"rules\":\"declaredAfterInstallation:@built_at\",\"disabled-dates\":{ to: this.disableBefore, from: new Date() },\"cypressName\":\"declared_at\"},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputDeclaredAt.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputDeclaredAt.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputDeclaredAt.vue?vue&type=template&id=4c805684&\"\nimport script from \"./InputDeclaredAt.vue?vue&type=script&lang=js&\"\nexport * from \"./InputDeclaredAt.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\"Type de site\",\"id\":\"field_type\",\"showMandatoryStar\":true,\"rules\":\"required\"}},_vm._l((_vm.values),function(value){return _c('Radio',{key:value.id,attrs:{\"variant\":\"card\",\"label\":value.label,\"checkValue\":value.id,\"cypressName\":\"field_type\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputFieldType.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputFieldType.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputFieldType.vue?vue&type=template&id=7c1fb40c&\"\nimport script from \"./InputFieldType.vue?vue&type=script&lang=js&\"\nexport * from \"./InputFieldType.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TextInput',{attrs:{\"label\":\"Informations d'accès\",\"info\":\"Saisissez ici toutes les informations qui, en plus de l'adresse, peuvent être utiles pour l'accès au site.\",\"cypressName\":\"detailed_address\"},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputDetailedAddress.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputDetailedAddress.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputDetailedAddress.vue?vue&type=template&id=322f64ae&\"\nimport script from \"./InputDetailedAddress.vue?vue&type=script&lang=js&\"\nexport * from \"./InputDetailedAddress.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\" \",\"id\":\"owner_type\",\"validationName\":\"Type de propriétaire\",\"rules\":\"required\"}},_vm._l((_vm.values),function(value){return _c('Radio',{key:value.id,attrs:{\"variant\":\"card\",\"label\":value.label,\"checkValue\":value.id,\"cypressName\":\"owner_type\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputOwnerType.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputOwnerType.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputOwnerType.vue?vue&type=template&id=b94be39a&\"\nimport script from \"./InputOwnerType.vue?vue&type=script&lang=js&\"\nexport * from \"./InputOwnerType.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TextInput',{attrs:{\"id\":\"owner\",\"label\":\"Nom\",\"cypressName\":\"owner\"},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputOwner.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputOwner.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputOwner.vue?vue&type=template&id=26fba180&\"\nimport script from \"./InputOwner.vue?vue&type=script&lang=js&\"\nexport * from \"./InputOwner.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormPanelCharacteristics.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormPanelCharacteristics.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownFormPanelCharacteristics.vue?vue&type=template&id=6b9fb9e0&\"\nimport script from \"./TownFormPanelCharacteristics.vue?vue&type=script&lang=js&\"\nexport * from \"./TownFormPanelCharacteristics.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('FormGroup',{attrs:{\"title\":\"Habitants\"}},[_c('FormParagraph',{attrs:{\"title\":\"Combien d'habitants vivent sur le site ?\"}},[_c('InputPopulation',{model:{value:(_vm.input.population),callback:function ($$v) {_vm.$set(_vm.input, \"population\", $$v)},expression:\"input.population\"}}),_c('InputPopulationMinors',{model:{value:(_vm.input.populationMinors),callback:function ($$v) {_vm.$set(_vm.input, \"populationMinors\", $$v)},expression:\"input.populationMinors\"}})],1),_c('FormParagraph',{attrs:{\"title\":\"Quelle est l'origine des habitants ?\"}},[_c('InputSocialOrigins',{model:{value:(_vm.input.social_origins),callback:function ($$v) {_vm.$set(_vm.input, \"social_origins\", $$v)},expression:\"input.social_origins\"}})],1),_c('FormParagraph',{attrs:{\"title\":\"Quel est le statut du diagnostic social ?\",\"showMandatoryStar\":true}},[_c('InputCensusStatus',{ref:\"censusStatus\",model:{value:(_vm.input.census_status),callback:function ($$v) {_vm.$set(_vm.input, \"census_status\", $$v)},expression:\"input.census_status\"}}),(!_vm.censusStatusIsUnknown)?_c('div',{staticClass:\"w-64\"},[_c('InputCensusConductedAt',{model:{value:(_vm.input.census_conducted_at),callback:function ($$v) {_vm.$set(_vm.input, \"census_conducted_at\", $$v)},expression:\"input.census_conducted_at\"}})],1):_vm._e(),(!_vm.censusStatusIsUnknown)?_c('InputCensusConductedBy',{model:{value:(_vm.input.census_conducted_by),callback:function ($$v) {_vm.$set(_vm.input, \"census_conducted_by\", $$v)},expression:\"input.census_conducted_by\"}}):_vm._e()],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"mb-3 text-G600\"},[_vm._v(\" Le nombre de personnes sur un site est mouvant, les données fournies par les acteurs - même des estimations - participent à l'amélioration de la connaissance. \")]),_c('div',{staticClass:\"flex\"},[_c('TextInput',{staticClass:\"w-32\",attrs:{\"id\":\"population_total\",\"label\":\"Personnes\",\"rules\":\"numeric|min_value:0\",\"cypressName\":\"population_total\"},model:{value:(_vm.input.populationTotal),callback:function ($$v) {_vm.$set(_vm.input, \"populationTotal\", $$v)},expression:\"input.populationTotal\"}}),_c('TextInput',{staticClass:\"w-32 ml-5\",attrs:{\"id\":\"population_couples\",\"label\":\"Ménages\",\"rules\":\"numeric|min_value:0|couplesLesserThanTotal:@population_total\",\"cypressName\":\"population_couples\"},model:{value:(_vm.input.populationCouples),callback:function ($$v) {_vm.$set(_vm.input, \"populationCouples\", $$v)},expression:\"input.populationCouples\"}}),_c('TextInput',{staticClass:\"w-32 ml-5\",attrs:{\"id\":\"population_minors\",\"label\":\"Mineurs\",\"rules\":\"numeric|min_value:0|minorsLesserThanTotal:@population_total\",\"cypressName\":\"population_minors\"},model:{value:(_vm.input.populationMinors),callback:function ($$v) {_vm.$set(_vm.input, \"populationMinors\", $$v)},expression:\"input.populationMinors\"}})],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputPopulation.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputPopulation.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputPopulation.vue?vue&type=template&id=757c9d5c&\"\nimport script from \"./InputPopulation.vue?vue&type=script&lang=js&\"\nexport * from \"./InputPopulation.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"flex\"},[_c('TextInput',{staticClass:\"w-32\",attrs:{\"id\":\"population_minors_0_3\",\"label\":\"0 - 3 ans\",\"rules\":\"numeric|min_value:0\",\"cypressName\":\"population_minors_0_3\"},model:{value:(_vm.input.populationMinors0To3),callback:function ($$v) {_vm.$set(_vm.input, \"populationMinors0To3\", $$v)},expression:\"input.populationMinors0To3\"}}),_c('TextInput',{staticClass:\"w-32 ml-5\",attrs:{\"id\":\"population_minors_3_6\",\"label\":\"3 - 6 ans\",\"rules\":\"numeric|min_value:0\",\"cypressName\":\"population_minors_3_6\"},model:{value:(_vm.input.populationMinors3To6),callback:function ($$v) {_vm.$set(_vm.input, \"populationMinors3To6\", $$v)},expression:\"input.populationMinors3To6\"}}),_c('TextInput',{staticClass:\"w-32 ml-5\",attrs:{\"id\":\"population_minors_6_12\",\"label\":\"6 - 12 ans\",\"rules\":\"numeric|min_value:0\",\"cypressName\":\"population_minors_6_12\"},model:{value:(_vm.input.populationMinors6To12),callback:function ($$v) {_vm.$set(_vm.input, \"populationMinors6To12\", $$v)},expression:\"input.populationMinors6To12\"}}),_c('TextInput',{staticClass:\"w-32 ml-5\",attrs:{\"id\":\"population_minors_12_16\",\"label\":\"12 - 16 ans\",\"rules\":\"numeric|min_value:0\",\"cypressName\":\"population_minors_12_16\"},model:{value:(_vm.input.populationMinors12To16),callback:function ($$v) {_vm.$set(_vm.input, \"populationMinors12To16\", $$v)},expression:\"input.populationMinors12To16\"}}),_c('TextInput',{staticClass:\"w-32 ml-5\",attrs:{\"id\":\"population_minors_16_18\",\"label\":\"16 - 18 ans\",\"rules\":\"numeric|min_value:0\",\"cypressName\":\"population_minors_16_18\"},model:{value:(_vm.input.populationMinors16To18),callback:function ($$v) {_vm.$set(_vm.input, \"populationMinors16To18\", $$v)},expression:\"input.populationMinors16To18\"}})],1),_c('div',{staticClass:\"flex\"},[_c('TextInput',{attrs:{\"id\":\"minors_in_school\",\"label\":\"Inscrits en établissement scolaire\",\"width\":\"w-32\",\"rules\":\"numeric|min_value:0\",\"cypressName\":\"minors_in_school\"},model:{value:(_vm.input.minorsInSchool),callback:function ($$v) {_vm.$set(_vm.input, \"minorsInSchool\", $$v)},expression:\"input.minorsInSchool\"}})],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputPopulationMinors.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputPopulationMinors.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputPopulationMinors.vue?vue&type=template&id=f8962378&\"\nimport script from \"./InputPopulationMinors.vue?vue&type=script&lang=js&\"\nexport * from \"./InputPopulationMinors.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\" \"}},_vm._l((_vm.values),function(value){return _c('Checkbox',{key:value.id,attrs:{\"variant\":\"card\",\"label\":value.label,\"checkValue\":value.id,\"cypressName\":\"social_origins\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputSocialOrigins.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputSocialOrigins.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputSocialOrigins.vue?vue&type=template&id=1fb0df3b&\"\nimport script from \"./InputSocialOrigins.vue?vue&type=script&lang=js&\"\nexport * from \"./InputSocialOrigins.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\" \",\"id\":\"census_status\",\"rules\":\"required\",\"validationName\":\"Statut du diagnostic social\"}},_vm._l((_vm.statuses),function(status){return _c('Radio',{key:status.value,attrs:{\"variant\":\"card\",\"label\":status.label,\"checkValue\":status.value,\"cypressName\":\"census_status\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputCensusStatus.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputCensusStatus.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputCensusStatus.vue?vue&type=template&id=579e8b3f&\"\nimport script from \"./InputCensusStatus.vue?vue&type=script&lang=js&\"\nexport * from \"./InputCensusStatus.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('DatepickerV2',{attrs:{\"id\":\"census_conducted_at\",\"rules\":\"required|censusConductedAfterCreation:@built_at\",\"label\":\"Date du diagnostic\",\"data-cy-field\":\"census_conducted_at\",\"showMandatoryStar\":true},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputCensusConductedAt.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputCensusConductedAt.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputCensusConductedAt.vue?vue&type=template&id=4056eb74&\"\nimport script from \"./InputCensusConductedAt.vue?vue&type=script&lang=js&\"\nexport * from \"./InputCensusConductedAt.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TextInput',{attrs:{\"id\":\"census_conducted_by\",\"label\":\"Intervenant en charge du diagnostic\",\"rules\":\"required\",\"cypressName\":\"census_conducted_by\",\"showMandatoryStar\":true},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputCensusConductedBy.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputCensusConductedBy.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputCensusConductedBy.vue?vue&type=template&id=24500c11&\"\nimport script from \"./InputCensusConductedBy.vue?vue&type=script&lang=js&\"\nexport * from \"./InputCensusConductedBy.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormPanelPeople.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormPanelPeople.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownFormPanelPeople.vue?vue&type=template&id=f78162a4&\"\nimport script from \"./TownFormPanelPeople.vue?vue&type=script&lang=js&\"\nexport * from \"./TownFormPanelPeople.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('FormGroup',{attrs:{\"title\":\"Conditions de vie et environnement\"}},[_c('FormParagraph',{attrs:{\"title\":\"Les habitants ont-ils accès à l'eau ?\",\"showMandatoryStar\":true}},[_c('InputAccessToWater',{model:{value:(_vm.input.access_to_water),callback:function ($$v) {_vm.$set(_vm.input, \"access_to_water\", $$v)},expression:\"input.access_to_water\"}}),(_vm.input.access_to_water === 1)?_c('div',{staticClass:\"ml-12\"},[_c('InputWaterPotable',{model:{value:(_vm.input.water_potable),callback:function ($$v) {_vm.$set(_vm.input, \"water_potable\", $$v)},expression:\"input.water_potable\"}}),_c('InputWaterContinuousAccess',{model:{value:(_vm.input.water_continuous_access),callback:function ($$v) {_vm.$set(_vm.input, \"water_continuous_access\", $$v)},expression:\"input.water_continuous_access\"}}),_c('InputWaterPublicPoint',{model:{value:(_vm.input.water_public_point),callback:function ($$v) {_vm.$set(_vm.input, \"water_public_point\", $$v)},expression:\"input.water_public_point\"}}),_c('InputWaterDistance',{model:{value:(_vm.input.water_distance),callback:function ($$v) {_vm.$set(_vm.input, \"water_distance\", $$v)},expression:\"input.water_distance\"}}),_c('InputWaterRoadsToCross',{model:{value:(_vm.input.water_roads_to_cross),callback:function ($$v) {_vm.$set(_vm.input, \"water_roads_to_cross\", $$v)},expression:\"input.water_roads_to_cross\"}}),_c('InputWaterEveryoneHasAccess',{model:{value:(_vm.input.water_everyone_has_access),callback:function ($$v) {_vm.$set(_vm.input, \"water_everyone_has_access\", $$v)},expression:\"input.water_everyone_has_access\"}}),_c('InputWaterStagnantWater',{model:{value:(_vm.input.water_stagnant_water),callback:function ($$v) {_vm.$set(_vm.input, \"water_stagnant_water\", $$v)},expression:\"input.water_stagnant_water\"}}),_c('div',{},[_c('InputWaterHandWashAccess',{attrs:{\"withoutBorder\":\"\"},model:{value:(_vm.input.water_hand_wash_access),callback:function ($$v) {_vm.$set(_vm.input, \"water_hand_wash_access\", $$v)},expression:\"input.water_hand_wash_access\"}}),(_vm.input.water_hand_wash_access > 0)?_c('InputWaterHandWashNumber',{attrs:{\"population\":_vm.population},model:{value:(_vm.input.water_hand_wash_access_number),callback:function ($$v) {_vm.$set(_vm.input, \"water_hand_wash_access_number\", $$v)},expression:\"input.water_hand_wash_access_number\"}}):_vm._e()],1)],1):_vm._e(),_c('div',{staticClass:\"ml-12 mt-6\"},[_c('InputWaterComments',{attrs:{\"rules\":_vm.input.access_to_water === 1 &&\n _vm.input.water_public_point > 0\n ? 'required'\n : ''},model:{value:(_vm.input.water_comments),callback:function ($$v) {_vm.$set(_vm.input, \"water_comments\", $$v)},expression:\"input.water_comments\"}})],1)],1),_c('FormParagraph',{attrs:{\"title\":\"Les habitants ont-ils accès à des toilettes ?\",\"showMandatoryStar\":true}},[_c('InputAccessToSanitary',{model:{value:(_vm.input.access_to_sanitary),callback:function ($$v) {_vm.$set(_vm.input, \"access_to_sanitary\", $$v)},expression:\"input.access_to_sanitary\"}}),(_vm.input.access_to_sanitary === 1)?_c('div',{staticClass:\"ml-12\"},[_c('InputSanitaryOnSite',{model:{value:(_vm.input.sanitary_on_site),callback:function ($$v) {_vm.$set(_vm.input, \"sanitary_on_site\", $$v)},expression:\"input.sanitary_on_site\"}}),_c('InputSanitaryNumber',{attrs:{\"population\":_vm.population},model:{value:(_vm.input.sanitary_number),callback:function ($$v) {_vm.$set(_vm.input, \"sanitary_number\", $$v)},expression:\"input.sanitary_number\"}}),_c('InputSanitaryInsalubrious',{staticClass:\"mb-6\",model:{value:(_vm.input.sanitary_insalubrious),callback:function ($$v) {_vm.$set(_vm.input, \"sanitary_insalubrious\", $$v)},expression:\"input.sanitary_insalubrious\"}})],1):_vm._e(),_c('div',{staticClass:\"ml-12 mt-6\"},[_c('InputSanitaryComments',{model:{value:(_vm.input.sanitary_comments),callback:function ($$v) {_vm.$set(_vm.input, \"sanitary_comments\", $$v)},expression:\"input.sanitary_comments\"}})],1)],1),_c('FormParagraph',{attrs:{\"title\":\"Les habitants ont-ils accès à l'électricité ?\",\"showMandatoryStar\":true}},[_c('InputElectricityType',{model:{value:(_vm.input.electricity_type),callback:function ($$v) {_vm.$set(_vm.input, \"electricity_type\", $$v)},expression:\"input.electricity_type\"}}),_c('div',{staticClass:\"ml-12\"},[_c('InputElectricityComments',{model:{value:(_vm.input.electricity_comments),callback:function ($$v) {_vm.$set(_vm.input, \"electricity_comments\", $$v)},expression:\"input.electricity_comments\"}})],1)],1),_c('FormParagraph',{attrs:{\"title\":\"Le ramassage des déchets est-il organisé ?\",\"showMandatoryStar\":true}},[_c('InputTrashEvacuation',{model:{value:(_vm.input.trash_evacuation),callback:function ($$v) {_vm.$set(_vm.input, \"trash_evacuation\", $$v)},expression:\"input.trash_evacuation\"}}),(_vm.input.trash_evacuation === 1)?_c('div',{staticClass:\"ml-12\"},[_c('InputTrashEvacuationRegular',{model:{value:(_vm.input.trash_evacuation_regular),callback:function ($$v) {_vm.$set(_vm.input, \"trash_evacuation_regular\", $$v)},expression:\"input.trash_evacuation_regular\"}}),_c('InputTrashAccumulation',{model:{value:(_vm.input.trash_accumulation),callback:function ($$v) {_vm.$set(_vm.input, \"trash_accumulation\", $$v)},expression:\"input.trash_accumulation\"}}),_c('InputTrashCansOnSite',{model:{value:(_vm.input.trash_cans_on_site),callback:function ($$v) {_vm.$set(_vm.input, \"trash_cans_on_site\", $$v)},expression:\"input.trash_cans_on_site\"}})],1):_vm._e()],1),_c('FormParagraph',{attrs:{\"title\":\"Y a-t-il des nuisibles sur le site ou à proximité ?\"}},[_c('InputVermin',{model:{value:(_vm.input.vermin),callback:function ($$v) {_vm.$set(_vm.input, \"vermin\", $$v)},expression:\"input.vermin\"}}),_c('div',{staticClass:\"ml-12\"},[_c('InputVerminComments',{model:{value:(_vm.input.vermin_comments),callback:function ($$v) {_vm.$set(_vm.input, \"vermin_comments\", $$v)},expression:\"input.vermin_comments\"}})],1)],1),_c('FormParagraph',{attrs:{\"title\":\"Y a-t-il des mesures prévention incendie ?\"}},[_c('InputFirePreventionMeasures',{model:{value:(_vm.input.fire_prevention_measures),callback:function ($$v) {_vm.$set(_vm.input, \"fire_prevention_measures\", $$v)},expression:\"input.fire_prevention_measures\"}}),(_vm.input.fire_prevention_measures === 1)?_c('div',{staticClass:\"ml-12\"},[_c('InputFirePreventionDiagnostic',{model:{value:(_vm.input.fire_prevention_diagnostic),callback:function ($$v) {_vm.$set(_vm.input, \"fire_prevention_diagnostic\", $$v)},expression:\"input.fire_prevention_diagnostic\"}}),_c('InputFirePreventionSiteAccessible',{model:{value:(_vm.input.fire_prevention_site_accessible),callback:function ($$v) {_vm.$set(_vm.input, \"fire_prevention_site_accessible\", $$v)},expression:\"input.fire_prevention_site_accessible\"}}),_c('InputFirePreventionDevices',{model:{value:(_vm.input.fire_prevention_devices),callback:function ($$v) {_vm.$set(_vm.input, \"fire_prevention_devices\", $$v)},expression:\"input.fire_prevention_devices\"}})],1):_vm._e(),_c('div',{staticClass:\"ml-12 mt-6\"},[_c('InputFirePreventionComments',{model:{value:(_vm.input.fire_prevention_comments),callback:function ($$v) {_vm.$set(_vm.input, \"fire_prevention_comments\", $$v)},expression:\"input.fire_prevention_comments\"}})],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\" \",\"direction\":\"horizontal\",\"id\":\"access_to_water\",\"validationName\":\"Accès à l'eau\",\"rules\":\"required\",\"withoutMargin\":true}},[_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Oui\",\"checkValue\":1,\"cypressName\":\"access_to_water\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Non\",\"checkValue\":0,\"cypressName\":\"access_to_water\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Inconnu\",\"checkValue\":-1,\"cypressName\":\"access_to_water\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputAccessToWater.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputAccessToWater.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputAccessToWater.vue?vue&type=template&id=1dfbb97a&\"\nimport script from \"./InputAccessToWater.vue?vue&type=script&lang=js&\"\nexport * from \"./InputAccessToWater.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TextArea',{attrs:{\"id\":\"water_comments\",\"rules\":_vm.rules === 'required' ? 'waterComments' : '',\"label\":\"Modalités d'accès\",\"info\":\"Exemples : citerne remplie par les pompiers tous les jours, 3 robinets raccordés par la collectivité, borne incendie… Champ obligatoire si le point d'eau est public.\",\"placeholder\":\"Votre message\",\"cypressName\":\"water_comments\"},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterComments.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterComments.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputWaterComments.vue?vue&type=template&id=2cc53c54&\"\nimport script from \"./InputWaterComments.vue?vue&type=script&lang=js&\"\nexport * from \"./InputWaterComments.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\" \",\"direction\":\"horizontal\",\"id\":\"electricity_type\",\"validationName\":\"Accès à l'électricité\",\"rules\":\"required\"}},_vm._l((_vm.values),function(value){return _c('Radio',{key:value.id,attrs:{\"variant\":\"card\",\"label\":value.label,\"checkValue\":value.id,\"cypressName\":\"electricity_type\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputElectricityType.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputElectricityType.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputElectricityType.vue?vue&type=template&id=034f2bb5&\"\nimport script from \"./InputElectricityType.vue?vue&type=script&lang=js&\"\nexport * from \"./InputElectricityType.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TextArea',{attrs:{\"id\":\"electricity_comments\",\"label\":\"Modalités d'accès\",\"info\":\"Exemples : groupe électrogène, raccordement à une usine...\",\"cypressName\":\"electricity_comments\",\"placeholder\":\"Votre message\"},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputElectricityComments.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputElectricityComments.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputElectricityComments.vue?vue&type=template&id=96c8bf72&\"\nimport script from \"./InputElectricityComments.vue?vue&type=script&lang=js&\"\nexport * from \"./InputElectricityComments.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\" \",\"direction\":\"horizontal\",\"id\":\"access_to_sanitary\",\"validationName\":\"Accès à des toilettes\",\"rules\":\"required\",\"withoutMargin\":true}},[_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Oui\",\"checkValue\":1,\"cypressName\":\"access_to_sanitary\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Non\",\"checkValue\":0,\"cypressName\":\"access_to_sanitary\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Inconnu\",\"checkValue\":-1,\"cypressName\":\"access_to_sanitary\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputAccessToSanitary.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputAccessToSanitary.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputAccessToSanitary.vue?vue&type=template&id=3353aead&\"\nimport script from \"./InputAccessToSanitary.vue?vue&type=script&lang=js&\"\nexport * from \"./InputAccessToSanitary.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TextArea',{attrs:{\"id\":\"sanitary_comments\",\"label\":\"Modalités d'accès\",\"info\":\"Exemples : toilettes sèches avec fosse / sèches sans fosse, chimiques, raccordées au réseau des eaux usées \",\"cypressName\":\"sanitary_comments\",\"placeholder\":\"Votre message\"},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputSanitaryComments.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputSanitaryComments.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputSanitaryComments.vue?vue&type=template&id=7617d886&\"\nimport script from \"./InputSanitaryComments.vue?vue&type=script&lang=js&\"\nexport * from \"./InputSanitaryComments.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\" \",\"direction\":\"horizontal\",\"id\":\"trash_evacuation\",\"validationName\":\"Évacuation des déchets\",\"rules\":\"required\"}},[_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Oui\",\"checkValue\":1,\"cypressName\":\"trash_evacuation\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Non\",\"checkValue\":0,\"cypressName\":\"trash_evacuation\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Inconnu\",\"checkValue\":-1,\"cypressName\":\"trash_evacuation\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputTrashEvacuation.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputTrashEvacuation.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputTrashEvacuation.vue?vue&type=template&id=10c10272&\"\nimport script from \"./InputTrashEvacuation.vue?vue&type=script&lang=js&\"\nexport * from \"./InputTrashEvacuation.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"L'eau est-elle potable ?\"}},[_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"type\":\"checkbox\",\"label\":\"Oui\",\"checkValue\":1,\"cypressName\":\"water_potable\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"type\":\"checkbox\",\"label\":\"Non\",\"checkValue\":0,\"cypressName\":\"water_potable\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:[\n 'flex flex-row items-center py-1',\n _vm.spaceBetween ? 'justify-between' : '',\n _vm.withoutBorder ? '' : 'border-b border-color-G600'\n ]},[_c('div',{class:['max-w-2xl', !_vm.spaceBetween && 'mr-4']},[_vm._v(_vm._s(_vm.label))]),_c('div',{staticClass:\"flex-shrink-0 ml-2\"},[_vm._t(\"default\")],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SubQuestionWrapper.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SubQuestionWrapper.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SubQuestionWrapper.vue?vue&type=template&id=27c09bd0&\"\nimport script from \"./SubQuestionWrapper.vue?vue&type=script&lang=js&\"\nexport * from \"./SubQuestionWrapper.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterPotable.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterPotable.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputWaterPotable.vue?vue&type=template&id=47486ec1&\"\nimport script from \"./InputWaterPotable.vue?vue&type=script&lang=js&\"\nexport * from \"./InputWaterPotable.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"L'accès est-il continu ? c'est-à-dire qu'il ne varie pas en qualité et en quantité dans la journée et les saisons, sans limite dans le temps.\"}},[_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"label\":\"Oui\",\"checkValue\":1,\"type\":\"checkbox\",\"cypressName\":\"water_continuous_access\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"label\":\"Non\",\"checkValue\":0,\"type\":\"checkbox\",\"cypressName\":\"water_continuous_access\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterContinuousAccess.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterContinuousAccess.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputWaterContinuousAccess.vue?vue&type=template&id=3e6a02e4&\"\nimport script from \"./InputWaterContinuousAccess.vue?vue&type=script&lang=js&\"\nexport * from \"./InputWaterContinuousAccess.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"Est-ce un point d'eau public ? (robinet, fontaine publique...)\"}},[_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"label\":\"Oui\",\"type\":\"checkbox\",\"checkValue\":1,\"cypressName\":\"water_public_point\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"label\":\"Non\",\"type\":\"checkbox\",\"checkValue\":0,\"cypressName\":\"water_public_point\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterPublicPoint.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterPublicPoint.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputWaterPublicPoint.vue?vue&type=template&id=b88c258a&\"\nimport script from \"./InputWaterPublicPoint.vue?vue&type=script&lang=js&\"\nexport * from \"./InputWaterPublicPoint.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"Où se situe l'accès ?\"}},[_c('CheckableGroup',{attrs:{\"direction\":\"vertical\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"label\":\"sur site ou à moins de 20 mètres\",\"checkValue\":\"0-20\",\"type\":\"checkbox\",\"cypressName\":\"water_distance\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"label\":\"entre 20 et 50 mètres du site\",\"checkValue\":\"20-50\",\"type\":\"checkbox\",\"cypressName\":\"water_distance\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"label\":\"entre 50 et 100 mètres du site\",\"checkValue\":\"50-100\",\"type\":\"checkbox\",\"cypressName\":\"water_distance\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"label\":\"à plus de 100 mètres du site\",\"checkValue\":\"100+\",\"type\":\"checkbox\",\"cypressName\":\"water_distance\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterDistance.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterDistance.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputWaterDistance.vue?vue&type=template&id=6b892180&\"\nimport script from \"./InputWaterDistance.vue?vue&type=script&lang=js&\"\nexport * from \"./InputWaterDistance.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"L'accès nécessite-t-il un franchissement de rue ou de route ?\"}},[_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"label\":\"Oui\",\"type\":\"checkbox\",\"checkValue\":1,\"cypressName\":\"water_roads_to_cross\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"label\":\"Non\",\"type\":\"checkbox\",\"checkValue\":0,\"cypressName\":\"water_roads_to_cross\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterRoadsToCross.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterRoadsToCross.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputWaterRoadsToCross.vue?vue&type=template&id=223219da&\"\nimport script from \"./InputWaterRoadsToCross.vue?vue&type=script&lang=js&\"\nexport * from \"./InputWaterRoadsToCross.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"Tous les habitants ont-ils accès aux points d'eau ?\"}},[_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"label\":\"Oui\",\"type\":\"checkbox\",\"checkValue\":1,\"cypressName\":\"water_everyone_has_access\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"label\":\"Non\",\"type\":\"checkbox\",\"checkValue\":0,\"cypressName\":\"water_everyone_has_access\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterEveryoneHasAccess.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterEveryoneHasAccess.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputWaterEveryoneHasAccess.vue?vue&type=template&id=edff7f2e&\"\nimport script from \"./InputWaterEveryoneHasAccess.vue?vue&type=script&lang=js&\"\nexport * from \"./InputWaterEveryoneHasAccess.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"Existe-t-il des eaux stagnantes autour du point de distribution ?\"}},[_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"label\":\"Oui\",\"type\":\"checkbox\",\"checkValue\":1,\"cypressName\":\"water_stagnant_water\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"label\":\"Non\",\"type\":\"checkbox\",\"checkValue\":0,\"cypressName\":\"water_stagnant_water\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterStagnantWater.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterStagnantWater.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputWaterStagnantWater.vue?vue&type=template&id=1013b782&\"\nimport script from \"./InputWaterStagnantWater.vue?vue&type=script&lang=js&\"\nexport * from \"./InputWaterStagnantWater.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"Est-ce qu'il y a des bacs de lavage des mains ?\",\"withoutBorder\":_vm.withoutBorder}},[_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"label\":\"Oui\",\"type\":\"checkbox\",\"checkValue\":1,\"cypressName\":\"water_hand_wash_access\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"label\":\"Non\",\"type\":\"checkbox\",\"checkValue\":0,\"cypressName\":\"water_hand_wash_access\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterHandWashAccess.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterHandWashAccess.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputWaterHandWashAccess.vue?vue&type=template&id=2658f61c&\"\nimport script from \"./InputWaterHandWashAccess.vue?vue&type=script&lang=js&\"\nexport * from \"./InputWaterHandWashAccess.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"flex items-center\"},[_c('div',{staticClass:\"mr-4\"},[_vm._v(\"Nombre de bacs\")]),_c('InlineTextInput',{staticClass:\"w-16\",attrs:{\"cypressName\":\"water_hand_wash_access_number\",\"size\":\"sm\"},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}}),(Number(_vm.input) > 0 && _vm.ratio && _vm.population.populationTotal)?_c('div',{staticClass:\"ml-4\"},[_vm._v(\" Soit 1 bac pour \"+_vm._s(_vm.ratio)+\" personnes \")]):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterHandWashNumber.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterHandWashNumber.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputWaterHandWashNumber.vue?vue&type=template&id=cfd39c52&\"\nimport script from \"./InputWaterHandWashNumber.vue?vue&type=script&lang=js&\"\nexport * from \"./InputWaterHandWashNumber.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"Nombre de toilettes\",\"space-between\":false}},[_c('div',{staticClass:\"flex items-center\"},[_c('InlineTextInput',{staticClass:\"w-16\",attrs:{\"cypressName\":\"sanitary_number\",\"size\":\"sm\",\"type\":\"number\"},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}}),(Number(_vm.input) > 0 && _vm.ratio && _vm.population.populationTotal)?_c('div',{staticClass:\"ml-4\"},[_vm._v(\" Soit 1 toilette pour \"+_vm._s(_vm.ratio)+\" personnes \")]):_vm._e()],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputSanitaryNumber.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputSanitaryNumber.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputSanitaryNumber.vue?vue&type=template&id=1a59c7f9&\"\nimport script from \"./InputSanitaryNumber.vue?vue&type=script&lang=js&\"\nexport * from \"./InputSanitaryNumber.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"Constate-t-on des marques de défécation à l'air libre ?\"}},[_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"type\":\"checkbox\",\"label\":\"Oui\",\"checkValue\":1,\"cypressName\":\"sanitary_insalubrious\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"type\":\"checkbox\",\"label\":\"Non\",\"checkValue\":0,\"cypressName\":\"sanitary_insalubrious\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputSanitaryInsalubrious.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputSanitaryInsalubrious.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputSanitaryInsalubrious.vue?vue&type=template&id=24275192&\"\nimport script from \"./InputSanitaryInsalubrious.vue?vue&type=script&lang=js&\"\nexport * from \"./InputSanitaryInsalubrious.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"Les toilettes se situent-elles sur le site ?\"}},[_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"type\":\"checkbox\",\"label\":\"Oui\",\"checkValue\":1,\"cypressName\":\"sanitary_on_site\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"type\":\"checkbox\",\"label\":\"Non\",\"checkValue\":0,\"cypressName\":\"sanitary_on_site\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputSanitaryOnSite.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputSanitaryOnSite.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputSanitaryOnSite.vue?vue&type=template&id=4354e999&\"\nimport script from \"./InputSanitaryOnSite.vue?vue&type=script&lang=js&\"\nexport * from \"./InputSanitaryOnSite.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"Combien de poubelles / benes sont à proximité immédiate du site (moins de 100 mètres) ?\",\"withoutMargin\":\"\"}},[_c('InlineTextInput',{staticClass:\"w-16\",attrs:{\"size\":\"sm\",\"cypressName\":\"trash_cans_on_site\"},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputTrashCansOnSite.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputTrashCansOnSite.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputTrashCansOnSite.vue?vue&type=template&id=e4e792e8&\"\nimport script from \"./InputTrashCansOnSite.vue?vue&type=script&lang=js&\"\nexport * from \"./InputTrashCansOnSite.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"Constate-t-on une accumulation de déchets sur le site ou aux abords ?\"}},[_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"label\":\"Oui\",\"type\":\"checkbox\",\"checkValue\":1,\"cypressName\":\"trash_accumulation\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"label\":\"Non\",\"type\":\"checkbox\",\"checkValue\":0,\"cypressName\":\"trash_accumulation\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputTrashAccumulation.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputTrashAccumulation.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputTrashAccumulation.vue?vue&type=template&id=9c318682&\"\nimport script from \"./InputTrashAccumulation.vue?vue&type=script&lang=js&\"\nexport * from \"./InputTrashAccumulation.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"La collecte des poubelles / bennes est-elle réalisée de manière régulière ? (C'est-à-dire au moins une fois par semaine, à partir d'un point de dépôt spécialement aménagé sur le site ou à proximité immédiate)\"}},[_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"label\":\"Oui\",\"type\":\"checkbox\",\"checkValue\":1,\"cypressName\":\"trash_evacuation_regular\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"label\":\"Non\",\"type\":\"checkbox\",\"checkValue\":0,\"cypressName\":\"trash_evacuation_regular\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputTrashEvacuationRegular.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputTrashEvacuationRegular.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputTrashEvacuationRegular.vue?vue&type=template&id=3a1325ff&\"\nimport script from \"./InputTrashEvacuationRegular.vue?vue&type=script&lang=js&\"\nexport * from \"./InputTrashEvacuationRegular.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\" \",\"direction\":\"horizontal\",\"id\":\"vermin\",\"validationName\":\"Y a-t-il des nuisibles sur le site ou à proximité\",\"rules\":\"required\"}},[_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Oui\",\"checkValue\":1,\"cypressName\":\"vermin\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Non\",\"checkValue\":0,\"cypressName\":\"vermin\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Inconnu\",\"checkValue\":-1,\"cypressName\":\"vermin\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputVermin.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputVermin.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputVermin.vue?vue&type=template&id=670cda82&\"\nimport script from \"./InputVermin.vue?vue&type=script&lang=js&\"\nexport * from \"./InputVermin.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TextArea',{attrs:{\"id\":\"vermin_comments\",\"placeholder\":\"Votre message\",\"label\":\"Précisions (rats, punaises de lits...)\",\"cypressName\":\"vermin_comments\"},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputVerminComments.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputVerminComments.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputVerminComments.vue?vue&type=template&id=b20f9ae8&\"\nimport script from \"./InputVerminComments.vue?vue&type=script&lang=js&\"\nexport * from \"./InputVerminComments.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\" \",\"direction\":\"horizontal\",\"id\":\"fire_prevention_measures\",\"validationName\":\"Mesures de prévention incendie\",\"rules\":\"required\"}},[_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Oui\",\"checkValue\":1,\"cypressName\":\"fire_prevention_measures\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Non\",\"checkValue\":0,\"cypressName\":\"fire_prevention_measures\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Inconnu\",\"checkValue\":-1,\"cypressName\":\"fire_prevention_measures\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputFirePreventionMeasures.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputFirePreventionMeasures.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputFirePreventionMeasures.vue?vue&type=template&id=2dabb878&\"\nimport script from \"./InputFirePreventionMeasures.vue?vue&type=script&lang=js&\"\nexport * from \"./InputFirePreventionMeasures.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"Est-ce qu’un diagnostic prévention incendie par le SDIS (Service départemental d'incendie et de secours) a été réalisé ?\"}},[_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"label\":\"Oui\",\"type\":\"checkbox\",\"checkValue\":1,\"cypressName\":\"fire_prevention_diagnostic\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"label\":\"Non\",\"type\":\"checkbox\",\"checkValue\":0,\"cypressName\":\"fire_prevention_diagnostic\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputFirePreventionDiagnostic.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputFirePreventionDiagnostic.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputFirePreventionDiagnostic.vue?vue&type=template&id=58748486&\"\nimport script from \"./InputFirePreventionDiagnostic.vue?vue&type=script&lang=js&\"\nexport * from \"./InputFirePreventionDiagnostic.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"Est-ce que le site est accessible aux pompiers ?\"}},[_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"label\":\"Oui\",\"type\":\"checkbox\",\"checkValue\":1,\"cypressName\":\"fire_prevention_site_accessible\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"label\":\"Non\",\"type\":\"checkbox\",\"checkValue\":0,\"cypressName\":\"fire_prevention_site_accessible\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputFirePreventionSiteAccessible.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputFirePreventionSiteAccessible.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputFirePreventionSiteAccessible.vue?vue&type=template&id=9da4d8e2&\"\nimport script from \"./InputFirePreventionSiteAccessible.vue?vue&type=script&lang=js&\"\nexport * from \"./InputFirePreventionSiteAccessible.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TextArea',{attrs:{\"id\":\"fire_prevention_comments\",\"label\":\"Précisions\",\"placeholder\":\"Votre message\",\"cypressName\":\"fire_prevention_comments\"},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputFirePreventionComments.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputFirePreventionComments.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputFirePreventionComments.vue?vue&type=template&id=9597c952&\"\nimport script from \"./InputFirePreventionComments.vue?vue&type=script&lang=js&\"\nexport * from \"./InputFirePreventionComments.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"Est-ce que des dispositifs spécifiques (formation, extincteurs...) ont été mis en place ?\"}},[_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"label\":\"Oui\",\"type\":\"checkbox\",\"checkValue\":1,\"cypressName\":\"fire_prevention_devices\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"label\":\"Non\",\"type\":\"checkbox\",\"checkValue\":0,\"cypressName\":\"fire_prevention_devices\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputFirePreventionDevices.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputFirePreventionDevices.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputFirePreventionDevices.vue?vue&type=template&id=d1aba9a4&\"\nimport script from \"./InputFirePreventionDevices.vue?vue&type=script&lang=js&\"\nexport * from \"./InputFirePreventionDevices.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormPanelLivingConditions.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormPanelLivingConditions.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownFormPanelLivingConditions.vue?vue&type=template&id=8af24486&\"\nimport script from \"./TownFormPanelLivingConditions.vue?vue&type=script&lang=js&\"\nexport * from \"./TownFormPanelLivingConditions.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('FormGroup',{attrs:{\"title\":\"Procédure judiciaire\"}},[_c('FormParagraph',{attrs:{\"title\":\"Une plainte a-t-elle été déposée par le propriétaire ?\",\"showMandatoryStar\":true}},[_c('InputOwnerComplaint',{model:{value:(_vm.input.owner_complaint),callback:function ($$v) {_vm.$set(_vm.input, \"owner_complaint\", $$v)},expression:\"input.owner_complaint\"}})],1),_c('FormParagraph',{attrs:{\"title\":\"Une procédure judiciaire est-elle en cours ?\"}},[_c('InputJusticeProcedure',{model:{value:(_vm.input.justice_procedure),callback:function ($$v) {_vm.$set(_vm.input, \"justice_procedure\", $$v)},expression:\"input.justice_procedure\"}}),(_vm.input.justice_procedure === 1)?_c('InputJusticeRendered',{model:{value:(_vm.input.justice_rendered),callback:function ($$v) {_vm.$set(_vm.input, \"justice_rendered\", $$v)},expression:\"input.justice_rendered\"}}):_vm._e(),_c('div',{staticClass:\"w-64\"},[(_vm.input.justice_rendered === 1)?_c('InputJusticeRenderedAt',{model:{value:(_vm.input.justice_rendered_at),callback:function ($$v) {_vm.$set(_vm.input, \"justice_rendered_at\", $$v)},expression:\"input.justice_rendered_at\"}}):_vm._e()],1),_c('div',{staticClass:\"w-128\"},[(_vm.input.justice_rendered === 1)?_c('InputJusticeRenderedBy',{model:{value:(_vm.input.justice_rendered_by),callback:function ($$v) {_vm.$set(_vm.input, \"justice_rendered_by\", $$v)},expression:\"input.justice_rendered_by\"}}):_vm._e()],1),(_vm.input.justice_rendered === 1)?_c('InputJusticeChallenged',{model:{value:(_vm.input.justice_challenged),callback:function ($$v) {_vm.$set(_vm.input, \"justice_challenged\", $$v)},expression:\"input.justice_challenged\"}}):_vm._e(),_c('InputPoliceStatus',{ref:\"policeStatus\",model:{value:(_vm.input.police_status),callback:function ($$v) {_vm.$set(_vm.input, \"police_status\", $$v)},expression:\"input.police_status\"}}),_c('div',{staticClass:\"w-64\"},[(_vm.policeWasRequested)?_c('InputPoliceRequestedAt',{model:{value:(_vm.input.police_requested_at),callback:function ($$v) {_vm.$set(_vm.input, \"police_requested_at\", $$v)},expression:\"input.police_requested_at\"}}):_vm._e()],1),_c('div',{staticClass:\"w-64\"},[(_vm.policeWasGranted)?_c('InputPoliceGrantedAt',{model:{value:(_vm.input.police_granted_at),callback:function ($$v) {_vm.$set(_vm.input, \"police_granted_at\", $$v)},expression:\"input.police_granted_at\"}}):_vm._e()],1),_c('div',{staticClass:\"w-128\"},[_c('InputBailiff',{model:{value:(_vm.input.bailiff),callback:function ($$v) {_vm.$set(_vm.input, \"bailiff\", $$v)},expression:\"input.bailiff\"}})],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\" \",\"direction\":\"horizontal\",\"id\":\"owner_complaint\",\"validationName\":\"Plainte de propriétaire\",\"rules\":\"required\"}},[_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Oui\",\"checkValue\":1,\"cypressName\":\"owner_complaint\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Non\",\"checkValue\":0,\"cypressName\":\"owner_complaint\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Inconnu\",\"checkValue\":-1,\"cypressName\":\"owner_complaint\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputOwnerComplaint.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputOwnerComplaint.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputOwnerComplaint.vue?vue&type=template&id=015ada51&\"\nimport script from \"./InputOwnerComplaint.vue?vue&type=script&lang=js&\"\nexport * from \"./InputOwnerComplaint.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\"Existence d'une procédure judiciaire\",\"direction\":\"horizontal\",\"id\":\"justice_procedure\",\"rules\":\"required\",\"showMandatoryStar\":true}},[_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Oui\",\"checkValue\":1,\"cypressName\":\"justice_procedure\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Non\",\"checkValue\":0,\"cypressName\":\"justice_procedure\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Inconnu\",\"checkValue\":-1,\"cypressName\":\"justice_procedure\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputJusticeProcedure.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputJusticeProcedure.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputJusticeProcedure.vue?vue&type=template&id=9295ce4c&\"\nimport script from \"./InputJusticeProcedure.vue?vue&type=script&lang=js&\"\nexport * from \"./InputJusticeProcedure.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\"Décision de justice rendue\",\"direction\":\"horizontal\",\"id\":\"justice_rendered\",\"rules\":\"required\",\"showMandatoryStar\":true}},[_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Oui\",\"checkValue\":1,\"cypressName\":\"justice_rendered\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Non\",\"checkValue\":0,\"cypressName\":\"justice_rendered\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Inconnu\",\"checkValue\":-1,\"cypressName\":\"justice_rendered\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputJusticeRendered.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputJusticeRendered.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputJusticeRendered.vue?vue&type=template&id=1c2891cc&\"\nimport script from \"./InputJusticeRendered.vue?vue&type=script&lang=js&\"\nexport * from \"./InputJusticeRendered.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('DatepickerV2',{attrs:{\"label\":\"Date de la décision\",\"id\":\"justice_rendered_at\",\"rules\":\"required|renderedAfterInstallation:@built_at\",\"data-cy-field\":\"justice_rendered_at\",\"showMandatoryStar\":true},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputJusticeRenderedAt.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputJusticeRenderedAt.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputJusticeRenderedAt.vue?vue&type=template&id=0d0798ab&\"\nimport script from \"./InputJusticeRenderedAt.vue?vue&type=script&lang=js&\"\nexport * from \"./InputJusticeRenderedAt.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TextInput',{attrs:{\"id\":\"justice_rendered_by\",\"label\":\"Origine de la décision\",\"info\":\"Exemple : tribunal de grande instance\",\"rules\":\"required\",\"cypressName\":\"justice_rendered_by\",\"showMandatoryStar\":true},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputJusticeRenderedBy.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputJusticeRenderedBy.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputJusticeRenderedBy.vue?vue&type=template&id=fd6dc4b8&\"\nimport script from \"./InputJusticeRenderedBy.vue?vue&type=script&lang=js&\"\nexport * from \"./InputJusticeRenderedBy.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\"Existence d'un contentieux\",\"direction\":\"horizontal\",\"id\":\"justice_challenged\",\"rules\":\"required\",\"showMandatoryStar\":true}},[_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Oui\",\"checkValue\":1,\"cypressName\":\"justice_challenged\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Non\",\"checkValue\":0,\"cypressName\":\"justice_challenged\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Inconnu\",\"checkValue\":-1,\"cypressName\":\"justice_challenged\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputJusticeChallenged.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputJusticeChallenged.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputJusticeChallenged.vue?vue&type=template&id=9789afb2&\"\nimport script from \"./InputJusticeChallenged.vue?vue&type=script&lang=js&\"\nexport * from \"./InputJusticeChallenged.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\"Statut du concours de la force publique\",\"id\":\"police_status\",\"rules\":\"required\",\"showMandatoryStar\":true}},_vm._l((_vm.statuses),function(status){return _c('Radio',{key:status.value,attrs:{\"variant\":\"card\",\"label\":status.label,\"checkValue\":status.value,\"cypressName\":\"police_status\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputPoliceStatus.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputPoliceStatus.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputPoliceStatus.vue?vue&type=template&id=6f203046&\"\nimport script from \"./InputPoliceStatus.vue?vue&type=script&lang=js&\"\nexport * from \"./InputPoliceStatus.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('DatepickerV2',{attrs:{\"id\":\"police_requested_at\",\"label\":\"Date de la demande du CFP\",\"rules\":\"required|requestedAfterCreation:@built_at\",\"data-cy-field\":\"police_requested_at\",\"showMandatoryStar\":true},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputPoliceRequestedAt.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputPoliceRequestedAt.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputPoliceRequestedAt.vue?vue&type=template&id=65cdd17f&\"\nimport script from \"./InputPoliceRequestedAt.vue?vue&type=script&lang=js&\"\nexport * from \"./InputPoliceRequestedAt.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('DatepickerV2',{attrs:{\"label\":\"Date d'octroi du CFP\",\"id\":\"police_granted_at\",\"rules\":\"required|grantedAfterCreation:@built_at|grantedAfterRequest:@police_requested_at\",\"data-cy-field\":\"police_granted_at\",\"showMandatoryStar\":true},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputPoliceGrantedAt.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputPoliceGrantedAt.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputPoliceGrantedAt.vue?vue&type=template&id=addfe69a&\"\nimport script from \"./InputPoliceGrantedAt.vue?vue&type=script&lang=js&\"\nexport * from \"./InputPoliceGrantedAt.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TextInput',{attrs:{\"label\":\"Nom de l'étude de l'huissier\",\"id\":\"bailiff\",\"cypressName\":\"bailiff\"},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputBailiff.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputBailiff.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputBailiff.vue?vue&type=template&id=381ae6c6&\"\nimport script from \"./InputBailiff.vue?vue&type=script&lang=js&\"\nexport * from \"./InputBailiff.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormPanelJudicial.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormPanelJudicial.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownFormPanelJudicial.vue?vue&type=template&id=b07537a6&\"\nimport script from \"./TownFormPanelJudicial.vue?vue&type=script&lang=js&\"\nexport * from \"./TownFormPanelJudicial.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"sticky stickyColumn\"},[_c('div',{staticClass:\"font-bold\"},[_vm._v(\"Rubriques\")]),_c('LeftColumnNavLink',{attrs:{\"to\":\"#characteristics\",\"activeSection\":_vm.activeSection === 'characteristics'}},[_vm._v(\"Caractéristiques du site\")]),_c('LeftColumnNavLink',{attrs:{\"to\":\"#people\",\"activeSection\":_vm.activeSection === 'people'}},[_vm._v(\"Habitants\")]),_c('LeftColumnNavLink',{attrs:{\"to\":\"#living_conditions\",\"activeSection\":_vm.activeSection === 'living_conditions'}},[_vm._v(\"Conditions de vie et environnement\")]),_c('LeftColumnNavLink',{attrs:{\"to\":\"#judicial\",\"activeSection\":_vm.activeSection === 'judicial'}},[_vm._v(\"Procédure judiciaire\")])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:[\n 'pl-2 border-l-4 my-2',\n _vm.activeSection\n ? 'text-primary border-primary'\n : 'border-transparent'\n ]},[_c('router-link',{attrs:{\"to\":_vm.to}},[_vm._t(\"default\")],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LeftColumnNavLink.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LeftColumnNavLink.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LeftColumnNavLink.vue?vue&type=template&id=a3c5e2d4&\"\nimport script from \"./LeftColumnNavLink.vue?vue&type=script&lang=js&\"\nexport * from \"./LeftColumnNavLink.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormLeftColumn.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormLeftColumn.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownFormLeftColumn.vue?vue&type=template&id=3c84c0c2&scoped=true&\"\nimport script from \"./TownFormLeftColumn.vue?vue&type=script&lang=js&\"\nexport * from \"./TownFormLeftColumn.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TownFormLeftColumn.vue?vue&type=style&index=0&id=3c84c0c2&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3c84c0c2\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (Object.values(_vm.errors).filter(function (err) { return err.length; }).length)?_c('div',{staticClass:\"bg-red200 p-6\"},[_vm._v(\" Le formulaire comprend des erreurs : \"),_c('ul',{staticClass:\"mt-4\"},_vm._l((_vm.errors),function(error,inputId){return _c('li',{directives:[{name:\"show\",rawName:\"v-show\",value:(error.length),expression:\"error.length\"}],key:inputId},[_c('router-link',{staticClass:\"link\",attrs:{\"to\":{ hash: inputId }}},[_vm._v(_vm._s(error[0]))])],1)}),0)]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormErrorLog.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormErrorLog.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownFormErrorLog.vue?vue&type=template&id=6ff828fe&\"\nimport script from \"./TownFormErrorLog.vue?vue&type=script&lang=js&\"\nexport * from \"./TownFormErrorLog.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownForm.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownForm.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownForm.vue?vue&type=template&id=76d7e233&scoped=true&\"\nimport script from \"./TownForm.vue?vue&type=script&lang=js&\"\nexport * from \"./TownForm.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TownForm.vue?vue&type=style&index=0&id=76d7e233&scoped=true&lang=css&\"\nimport style1 from \"./TownForm.vue?vue&type=style&index=1&id=76d7e233&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"76d7e233\",\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownCreate.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownCreate.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownCreate.vue?vue&type=template&id=0f5c2fab&\"\nimport script from \"./TownCreate.vue?vue&type=script&lang=js&\"\nexport * from \"./TownCreate.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.error !== null)?_c('PrivateLayout',[_c('div',{staticClass:\"bg-red600 text-center text-primary text-display-lg mt-16\"},[_vm._v(\" \"+_vm._s(_vm.error)+\" \")])]):(_vm.town === null)?_c('PrivateLayout',[_c('div',{staticClass:\"text-center text-primary text-display-lg mt-16\"},[_c('Spinner')],1)]):_c('PrivateLayout',[_c('TownForm',{attrs:{\"mode\":\"update\",\"data\":_vm.town}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownUpdate.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownUpdate.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownUpdate.vue?vue&type=template&id=f2615eb6&\"\nimport script from \"./TownUpdate.vue?vue&type=script&lang=js&\"\nexport * from \"./TownUpdate.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.loading)?_c('PrivateLayout',[_c('div',{staticClass:\"text-center text-primary text-display-lg mt-16\"},[_c('Spinner')],1)]):(_vm.error !== null)?_c('PrivateLayout',[_c('div',{staticClass:\"text-center text-error text-primary text-display-lg mt-16\"},[_vm._v(\" \"+_vm._s(_vm.error)+\" \")])]):_c('PrivateLayout',[(_vm.town)?_c('PrivateContainer',{staticClass:\"py-10\"},[_c('TownDetailsHeader',{attrs:{\"town\":_vm.town},on:{\"openCancel\":_vm.openCancel,\"openCovid\":_vm.openCovid,\"deleteTown\":_vm.deleteTown}}),_c('div',{staticClass:\"flex pt-10 \"},[_c('TownDetailsLeftColumn',{staticClass:\"leftColumnWidth\",attrs:{\"hasJusticePermission\":_vm.hasJusticePermission,\"town\":_vm.town},on:{\"openHistory\":_vm.openHistory}}),_c('div',{staticClass:\"flex-1\"},[(_vm.isNotAnActor && _vm.actorAlertVisible)?_c('TownDetailsActorAlert',{on:{\"click\":_vm.openActorThemes,\"close\":function($event){_vm.actorAlertVisible = false}}}):_vm._e(),_c('TownDetailsPanelCharacteristics',{staticClass:\"mb-10\",attrs:{\"town\":_vm.town,\"id\":\"characteristics\"}}),_c('TownDetailsPanelPeople',{staticClass:\"mb-10\",attrs:{\"town\":_vm.town,\"id\":\"people\"}}),_c('TownDetailsPanelLivingConditions',{staticClass:\"mb-10\",attrs:{\"town\":_vm.town,\"id\":\"living_conditions\"}}),(_vm.hasJusticePermission)?_c('TownDetailsPanelJudicial',{staticClass:\"mb-10\",attrs:{\"town\":_vm.town,\"id\":\"judicial\"}}):_vm._e(),_c('TownDetailsPanelActors',{staticClass:\"mb-10\",attrs:{\"id\":\"intervenants\"},on:{\"click\":_vm.openActorThemes,\"showThemesModal\":_vm.openActorThemes,\"showInviteActorModal\":_vm.openInviteActorModal}})],1)],1)],1):_vm._e(),_c('div',{staticClass:\"bg-orange200 py-10\"},[_c('PrivateContainer',{staticClass:\"flex items-center\"},[_c('div',{staticClass:\"leftColumnWidth text-sm\"},[_c('div',[_c('Icon',{attrs:{\"icon\":\"exclamation-triangle\"}})],1),_c('div',{staticClass:\"font-bold\"},[_vm._v(\" Quelles sont les règles de confidentialités ? \")]),_c('div',[_vm._v(\" Ne pas citer l’identité des individus (Nom, âge, sexe, origine…) \")])]),_c('TownDetailsNewComment',{class:[\n 'flex-1',\n _vm.town.comments.regular.length === 0 && 'pb-32'\n ],attrs:{\"id\":\"newComment\",\"user\":_vm.user,\"nbComments\":_vm.town.comments.regular.length},on:{\"submit\":function($event){_vm.town.comments.regular = $event}}})],1)],1),(_vm.town.comments.regular.length)?_c('div',{class:[\n 'bg-orange200',\n 'pt-10',\n _vm.town.comments.regular.length > 0 && 'pb-32'\n ]},[_c('PrivateContainer',{staticClass:\"flex\",attrs:{\"id\":\"comments\"}},[_c('div',{staticClass:\"leftColumnWidth\"}),_c('TownDetailsComments',{staticClass:\"flex-1\",attrs:{\"comments\":_vm.town.comments.regular}})],1)],1):_vm._e(),_c('TownDetailsHistorySidePanel',{attrs:{\"town\":_vm.town,\"isOpen\":_vm.historyOpen,\"closePanel\":function () { return (_vm.historyOpen = false); }}}),_c('TownDetailsCovidCommentsSidePanel',{attrs:{\"town\":_vm.town,\"isOpen\":_vm.covidOpen,\"closePanel\":function () { return (_vm.covidOpen = false); }},on:{\"updateTown\":function($event){_vm.town = $event}}}),_c('TownDetailsCloseModal',{attrs:{\"town\":_vm.town,\"isOpen\":_vm.closeOpen},on:{\"closeModal\":function($event){_vm.closeOpen = false},\"updateTown\":function($event){_vm.town = $event}}}),(_vm.actorThemesOpen)?_c('TownDetailsActorThemesModal',{attrs:{\"town\":_vm.town},on:{\"closeModal\":function($event){_vm.actorThemesOpen = false}}}):_vm._e(),_c('TownDetailsInviteActorModal',{attrs:{\"townId\":_vm.town.id,\"isOpen\":_vm.inviteActorOpen},on:{\"closeModal\":function($event){_vm.inviteActorOpen = false}}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',[_c('div',{attrs:{\"data-cy-data\":\"city\"}},[_vm._v(\" \"+_vm._s(_vm.town.city.name)+\" (\"+_vm._s(_vm.town.departement.name)+\") \")]),_c('div',{staticClass:\"text-display-lg\",attrs:{\"data-cy-data\":\"address\"}},[_vm._v(\" \"+_vm._s(_vm.town.addressSimple)+\" \"),(_vm.town.name)?_c('span',{staticClass:\"text-display-xs\"},[_vm._v(\"« \"+_vm._s(_vm.town.name)+\" »\")]):_vm._e()])]),_c('div',{staticClass:\"flex items-center\"},[_c('div',{staticClass:\"flex items-center uppercase text-sm mr-4\"},[_c('div',{staticClass:\"rounded-full bg-corail h-3 w-3 mr-2 \"}),_vm._v(\" Mis à jour le \"+_vm._s(_vm.formatDate(_vm.town.updatedAt, \"d/m/y\"))+\" \")]),_c('div',{staticClass:\"flex items-center text-red uppercase text-xs font-bold cursor-pointer\",on:{\"click\":function($event){return _vm.$emit('openCovid')}}},[_c('Icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"comment\"}}),_c('div',[_vm._v(\" \"+_vm._s(this.town.comments.covid.length || 0)+\" commentaires covid \")])],1)]),_c('div',{staticClass:\"flex justify-end mt-2\"},[(\n _vm.hasLocalizedPermission('shantytown.close') &&\n _vm.town.status === 'open'\n )?_c('Button',{staticClass:\"mr-8\",attrs:{\"variant\":\"primaryOutline\",\"iconPosition\":\"left\"},on:{\"click\":function($event){return _vm.$emit('openCancel')}}},[_vm._v(\"Fermer le site\")]):_vm._e(),(\n _vm.hasLocalizedPermission('shantytown.update') &&\n _vm.town.status === 'open'\n )?_c('Button',{staticClass:\"mr-8\",attrs:{\"variant\":\"primary\",\"icon\":\"pen\",\"iconPosition\":\"left\"},on:{\"click\":_vm.routeToUpdate}},[_vm._v(\"Mettre à jour\")]):_vm._e(),(\n _vm.hasLocalizedPermission('shantytown_comment.list') ||\n _vm.hasLocalizedPermission('shantytown_comment.create')\n )?_c('router-link',{attrs:{\"to\":\"#newComment\"},nativeOn:{\"click\":function($event){return _vm.scrollFix('#newComment')}}},[_c('Button',{attrs:{\"variant\":\"secondary\",\"icon\":\"comment\",\"iconPosition\":\"left\"}},[_vm._v(\"Journal du site\")])],1):_vm._e(),(_vm.hasLocalizedPermission('shantytown.delete'))?_c('Button',{staticClass:\"ml-8\",attrs:{\"variant\":\"secondary\",\"icon\":\"trash-alt\",\"iconPosition\":\"left\",\"data-cy-button\":\"delete\"},on:{\"click\":function($event){return _vm.$emit('deleteTown')}}},[_vm._v(\"Supprimer le site\")]):_vm._e()],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsHeader.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsHeader.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsHeader.vue?vue&type=template&id=72e8950f&\"\nimport script from \"./TownDetailsHeader.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsHeader.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"sticky stickyColumn\"},[_c('div',{staticClass:\"font-bold\"},[_vm._v(\"Rubriques\")]),_c('LeftColumnNavLink',{attrs:{\"to\":\"#characteristics\",\"activeSection\":_vm.activeSection === 'characteristics'}},[_vm._v(\"Caractéristiques du site\")]),_c('LeftColumnNavLink',{attrs:{\"to\":\"#people\",\"activeSection\":_vm.activeSection === 'people'}},[_vm._v(\"Habitants\")]),_c('LeftColumnNavLink',{attrs:{\"to\":\"#living_conditions\",\"activeSection\":_vm.activeSection === 'living_conditions'}},[_vm._v(\"Conditions de vie et environnement\")]),(_vm.hasJusticePermission)?_c('LeftColumnNavLink',{attrs:{\"to\":\"#judicial\",\"activeSection\":_vm.activeSection === 'judicial'}},[_vm._v(\"Procédure judiciaire\")]):_vm._e(),_c('LeftColumnNavLink',{attrs:{\"to\":\"#intervenants\",\"activeSection\":_vm.activeSection === 'intervenants'}},[_vm._v(\"Intervenants\")]),_c('router-link',{staticClass:\"text-secondary\",attrs:{\"to\":\"#newComment\"},nativeOn:{\"click\":function($event){return _vm.scrollFix('#newComment')}}},[_c('div',{staticClass:\"flex text-secondary font-bold mt-4 cursor-pointer\"},[_c('Icon',{attrs:{\"icon\":\"comment\"}}),_c('div',{staticClass:\"ml-2\"},[_c('div',[_vm._v(\"Le journal du site\")]),_c('div',[_vm._v(\" \"+_vm._s(_vm.town.comments.regular.length)+\" message\"+_vm._s(_vm.town.comments.regular.length > 1 ? \"s\" : \"\")+\" \")])])],1)]),_c('div',{staticClass:\"flex text-primary font-bold mt-4 cursor-pointer\",on:{\"click\":function($event){return _vm.$emit('openHistory')}}},[_c('Icon',{attrs:{\"icon\":\"history\"}}),_c('div',{staticClass:\"ml-2\"},[_vm._v(\"Voir l'historique des modifications\")])],1)],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:[\n 'pl-2 border-l-4 my-2',\n _vm.activeSection\n ? 'text-primary border-primary'\n : 'border-transparent'\n ]},[_c('router-link',{attrs:{\"to\":_vm.to}},[_vm._t(\"default\")],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LeftColumnNavLink.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LeftColumnNavLink.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LeftColumnNavLink.vue?vue&type=template&id=109ff0c0&\"\nimport script from \"./LeftColumnNavLink.vue?vue&type=script&lang=js&\"\nexport * from \"./LeftColumnNavLink.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsLeftColumn.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsLeftColumn.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsLeftColumn.vue?vue&type=template&id=54e4861e&scoped=true&\"\nimport script from \"./TownDetailsLeftColumn.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsLeftColumn.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TownDetailsLeftColumn.vue?vue&type=style&index=0&id=54e4861e&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"54e4861e\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TownDetailsPanel',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\"Caractéristiques du site\")]},proxy:true},{key:\"body\",fn:function(){return [_c('div',{staticClass:\"flex\"},[_c('div',{staticClass:\"w-1/2 pr-8\"},[_c('TownDetailsPanelSection',[_c('div',{staticClass:\"grid grid-cols-2\"},[_c('div',[_c('div',{staticClass:\"font-bold\"},[_vm._v(\" Installé depuis \")]),(_vm.town.builtAt)?_c('div',[_c('div',[_vm._v(\" \"+_vm._s(_vm.formatDateSince(_vm.town.builtAt))+\" \")]),_c('div',{attrs:{\"data-cy-data\":\"built_at\"}},[_vm._v(\" \"+_vm._s(_vm.buildAt)+\" \")])]):_c('div',{attrs:{\"data-cy-data\":\"built_at\"}},[_vm._v(\" non communiquée \")])]),_c('div',[_c('div',{staticClass:\"font-bold\"},[_vm._v(\" Signalé depuis \")]),(_vm.town.declaredAt)?_c('div',[_c('div',[_vm._v(\" \"+_vm._s(_vm.formatDateSince(_vm.town.declaredAt))+\" \")]),_c('div',{attrs:{\"data-cy-data\":\"declared_at\"}},[_vm._v(\" \"+_vm._s(_vm.declaredAt)+\" \")])]):_c('div',{attrs:{\"data-cy-data\":\"declared_at\"}},[_vm._v(\" non communiquée \")])])])]),_c('TownDetailsPanelSection',[_c('div',{staticClass:\"grid grid-cols-2\"},[_c('div',{staticClass:\"font-bold\"},[_vm._v(\" Type de site \")]),_c('div',{staticClass:\"flex items-center\",attrs:{\"data-cy-data\":\"field_type\"}},[_c('Icon',{staticClass:\"text-lg mr-2\",style:((\"color: \" + (_vm.town.fieldType.color))),attrs:{\"icon\":\"map-marker-alt\"}}),_vm._v(\" \"+_vm._s(_vm.town.fieldType.label)+\" \")],1)])]),(_vm.town.addressDetails)?_c('TownDetailsPanelSection',[_c('div',{staticClass:\"grid grid-cols-2\"},[_c('div',{staticClass:\"font-bold\"},[_vm._v(\" Informations d'accès \")]),_c('div',{attrs:{\"data-cy-data\":\"address_details\"}},[_vm._v(\" \"+_vm._s(_vm.town.addressDetails)+\" \")])])]):_vm._e(),_c('TownDetailsPanelSection',[_c('div',{staticClass:\"font-bold\"},[_vm._v(\" Coordonnées GPS \")]),_c('div',{attrs:{\"data-cy-data\":\"address_gps\"}},[_vm._v(\" Lat \"+_vm._s(_vm.town.latitude)+\", Long \"+_vm._s(_vm.town.longitude)+\" \")]),_c('div',[_c('Button',{attrs:{\"variant\":\"primaryText\",\"icon\":\"copy\",\"iconPosition\":\"left\",\"href\":\"#\"},on:{\"click\":_vm.copyCoordinates}},[_vm._v(\"Copier\")])],1)]),_c('TownDetailsPanelSection',[_c('div',{staticClass:\"grid grid-cols-2\"},[_c('div',{staticClass:\"font-bold\"},[_vm._v(\" Propriétaire \")]),_c('div',{attrs:{\"data-cy-data\":\"owner_type\"}},[_vm._v(\" \"+_vm._s(_vm.town.ownerType.label)+\" \")])])]),(_vm.town.ownerType.label !== 'Inconnu')?_c('TownDetailsPanelSection',[_c('div',{staticClass:\"grid grid-cols-2\"},[_c('div',{staticClass:\"font-bold\"},[_vm._v(\" Nom du propriétaire \")]),_c('div',{attrs:{\"data-cy-data\":\"owner\"}},[_vm._v(\" \"+_vm._s(_vm.town.owner || \"non communiqué\")+\" \")])])]):_vm._e()],1),_c('div',{staticClass:\"w-1/2 bg-G200\"},[_c('div',{staticClass:\"v1\"},[_c('Map',{attrs:{\"display-searchbar\":false,\"towns\":[_vm.town],\"default-view\":_vm.center}})],1)])])]},proxy:true}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"townDetailsPanelShadow py-5 px-6\"},[_c('div',{staticClass:\"text-primary text-display-lg\"},[_vm._t(\"title\")],2),_c('div',{staticClass:\"pt-4\"},[_vm._t(\"body\")],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./TownDetailsPanel.vue?vue&type=template&id=1d97ba82&scoped=true&\"\nvar script = {}\nimport style0 from \"./TownDetailsPanel.vue?vue&type=style&index=0&id=1d97ba82&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1d97ba82\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"border-t border-G200 py-4\"},[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./TownDetailsPanelSection.vue?vue&type=template&id=14217000&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsPanelCharacteristics.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsPanelCharacteristics.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsPanelCharacteristics.vue?vue&type=template&id=1d6e0b0d&\"\nimport script from \"./TownDetailsPanelCharacteristics.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsPanelCharacteristics.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TownDetailsPanel',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\"Habitants\")]},proxy:true},{key:\"body\",fn:function(){return [_c('TownDetailsPanelSection',[_c('div',{staticClass:\"italic mb-4\"},[_vm._v(\" Le nombre de personnes sur un site est mouvant, les données fournies par les acteurs, même des estimations, participent à l'amélioration de la connaissance. \")]),_c('table',{staticClass:\"table-fixed text-center mb-6\"},[_c('thead',[_c('tr',[_c('td'),_c('td',{staticClass:\"border-b\"}),_vm._l((_vm.populationHistory),function(col,colIndex){return _c('td',{key:colIndex,staticClass:\"w-24 py-2 border-b\",class:{\n 'font-bold': colIndex === 0,\n 'bg-gray-200': colIndex === 0\n }},[_vm._v(\" \"+_vm._s(col.date)),_c('br'),_vm._v(_vm._s(col.year)+\" \")])})],2)]),_c('tbody',_vm._l((_vm.sections),function(section,index){return _c('tr',{key:index,class:section.css},[(index === 0)?_c('td',{staticClass:\"align-top pr-2 text-xl\",attrs:{\"rowspan\":_vm.sections.length}},[_c('Icon',{staticClass:\"mr-1\",attrs:{\"icon\":\"male\"}}),_c('Icon',{attrs:{\"icon\":\"male\"}})],1):_vm._e(),_c('td',{staticClass:\"text-left pr-4 border-b\"},[_vm._v(\" \"+_vm._s(section.title)+\" \")]),_vm._l((_vm.populationHistory),function(col,colIndex){return _c('td',{key:colIndex,staticClass:\"py-1 border-b\",class:{\n 'border-r':\n colIndex > 0 ||\n _vm.populationHistory.length <= 1,\n 'bg-gray-100': colIndex === 0\n },attrs:{\"data-cy-data\":colIndex === 0 ? section.data : undefined}},[_vm._v(\" \"+_vm._s(col[section.data])+\" \")])})],2)}),0)]),_c('div',[_c('div',{staticClass:\"font-bold\"},[_vm._v(\"Origine\")]),_c('div',{attrs:{\"data-cy-data\":\"social_origins\"}},[(!_vm.town.socialOrigins.length)?_c('div',{staticClass:\"text-G600\"},[_vm._v(\" inconnu \")]):_vm._l((_vm.town.socialOrigins),function(origin){return _c('div',{key:origin.id,staticClass:\"flex items-center\"},[_c('img',{staticClass:\" w-8 mr-2\",attrs:{\"src\":_vm.socialOrigin(origin).img}}),_c('span',{staticClass:\"text-display-sm\"},[_vm._v(_vm._s(_vm.socialOrigin(origin).label))])])})],2)])]),_c('TownDetailsPanelSection',[_c('div',{staticClass:\"flex items-center justify-between\"},[_c('div',{staticClass:\"w-96\"},[_c('div',{staticClass:\"font-bold\"},[_vm._v(\"Diagnostic social\")]),_c('div',{attrs:{\"data-cy-data\":\"census_status\"}},[_vm._v(\" \"+_vm._s(_vm.socialDiagnostic)+\" \")])]),_c('div',{staticClass:\"italic\"},[_vm._v(\" Un diagnostic social vise à identifier les situations et besoins des familles et personnes, de repérer le contexte territorial et les acteurs en présence. \")])])])]},proxy:true}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsPanelPeople.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsPanelPeople.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsPanelPeople.vue?vue&type=template&id=25771469&\"\nimport script from \"./TownDetailsPanelPeople.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsPanelPeople.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TownDetailsPanel',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\"Conditions de vie et environnement\")]},proxy:true},{key:\"body\",fn:function(){return [_c('div',[_c('TownDetailsPanelLivingConditionsSection',{attrs:{\"title\":\"Accès à l’eau\",\"value\":_vm.town.accessToWater,\"cypressName\":\"access_to_water\",\"cypressComments\":\"water_comments\",\"cypressDetailsPrefix\":\"water\",\"comments\":_vm.town.waterComments,\"details\":_vm.details.water}}),_c('TownDetailsPanelLivingConditionsSection',{attrs:{\"title\":\"Accès aux toilettes\",\"value\":_vm.town.accessToSanitary,\"cypressName\":\"access_to_sanitary\",\"cypressComments\":\"sanitary_comments\",\"cypressDetailsPrefix\":\"sanitary\",\"comments\":_vm.town.sanitaryComments,\"details\":_vm.details.sanitary}}),_c('TownDetailsPanelLivingConditionsSection',{attrs:{\"title\":\"Accès à l’électricité\",\"value\":_vm.town.electricityType.value,\"cypressName\":\"electricity_type\",\"cypressComments\":\"electricity_comments\",\"cypressDetailsPrefix\":\"electricity\",\"comments\":_vm.town.electricityComments}}),_c('TownDetailsPanelLivingConditionsSection',{attrs:{\"title\":\"Évacuation des déchets\",\"value\":_vm.town.trashEvacuation,\"cypressName\":\"trash_evacuation\",\"cypressComments\":\"trash_comments\",\"cypressDetailsPrefix\":\"trash\",\"details\":_vm.details.trash}}),_c('TownDetailsPanelLivingConditionsSection',{attrs:{\"title\":\"Présence de nuisibles\",\"value\":_vm.town.vermin,\"cypressName\":\"vermin\",\"inverted\":\"\",\"cypressComments\":\"vermin_comments\",\"cypressDetailsPrefix\":\"vermin\",\"comments\":_vm.town.verminComments}}),_c('TownDetailsPanelLivingConditionsSection',{attrs:{\"title\":\"Prévention des incendies\",\"value\":_vm.town.firePreventionMeasures,\"cypressName\":\"fire_prevention_measures\",\"cypressComments\":\"fire_prevention_comments\",\"cypressDetailsPrefix\":\"fire_prevention\",\"comments\":_vm.town.firePreventionComments,\"details\":_vm.details.firePrevention}})],1)]},proxy:true}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TownDetailsPanelSection',[_c('div',{class:[_vm.colorClass, 'flex items-center']},[_c('Icon',{class:['mr-1', 'font-bold'],attrs:{\"icon\":_vm.icon}}),_c('div',[_c('div',{staticClass:\"flex items-center\"},[_c('div',{class:[_vm.colorClass, 'font-bold', 'mr-1']},[_vm._v(\" \"+_vm._s(_vm.title)+\" : \")]),_c('div',{attrs:{\"data-cy-data\":_vm.cypressName}},[_vm._v(_vm._s(_vm.text))])]),_vm._t(\"default\")],2)],1),_c('div',{staticClass:\"ml-4\"},[(_vm.comments)?_c('div',{attrs:{\"data-cy-data\":_vm.cypressComments}},[_vm._v(\" \"+_vm._s(_vm.comments)+\" \")]):_vm._e(),(\n this.value &&\n _vm.details &&\n (_vm.details.negative.length ||\n _vm.details.positive.length ||\n _vm.details.unknown.length)\n )?_c('div',{staticClass:\"border border-primary rounded px-8 mt-4\"},[_c('div',{staticClass:\"border-b-2 border-G200 py-2 font-bold text-primary flex items-center justify-between\"},[_c('div',[(_vm.details.negative.length)?_c('span',[_vm._v(\" \"+_vm._s(_vm.details.negative.length)+\" action\"+_vm._s(_vm.details.negative.length > 1 ? \"s\" : \"\")+\" pour améliorer l'accès \")]):(_vm.details.positive.length)?_c('span',[_vm._v(\" \"+_vm._s(_vm.details.positive.length)+\" action\"+_vm._s(_vm.details.positive.length > 1 ? \"s\" : \"\")+\" pour entretenir l'accès \")]):_vm._e(),(\n _vm.details.unknown.length &&\n (_vm.details.negative.length ||\n _vm.details.positive.length)\n )?_c('span',[_vm._v(\"et\")]):_vm._e(),(_vm.details.unknown.length)?_c('span',[_vm._v(\" \"+_vm._s(_vm.details.unknown.length)+\" information\"+_vm._s(_vm.details.unknown.length > 1 ? \"s\" : \"\")+\" non renseignée\"+_vm._s(_vm.details.unknown.length > 1 ? \"s\" : \"\")+\" \")]):_vm._e()]),_c('div',[_c('Button',{attrs:{\"icon\":_vm.collapsed ? 'chevron-up' : 'chevron-down',\"variant\":\"primaryText\"},on:{\"click\":_vm.collapse}})],1)]),(!_vm.collapsed)?_c('div',[_c('TownDetailsPanelLivingConditionsDetails',{attrs:{\"type\":\"negative\",\"cypressName\":_vm.cypressDetailsPrefix + '_details_negative',\"details\":_vm.details.negative}}),_c('TownDetailsPanelLivingConditionsDetails',{attrs:{\"type\":\"positive\",\"cypressName\":_vm.cypressDetailsPrefix + '_details_positive',\"details\":_vm.details.positive}}),_c('TownDetailsPanelLivingConditionsDetails',{attrs:{\"type\":\"unknown\",\"cypressName\":_vm.cypressDetailsPrefix + '_details_unknown',\"details\":_vm.details.unknown}})],1):_vm._e()]):_vm._e()])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.details.length)?_c('div',{staticClass:\"border-b-2 border-G200 py-2\"},[_c('div',{staticClass:\"flex items-center\"},[_c('Icon',{class:['mr-1', 'mb-1', 'font-bold', 'text-G600'],attrs:{\"icon\":_vm.icon}}),_c('div',{staticClass:\"font-bold\"},[_vm._v(\" \"+_vm._s(_vm.wording)+\" \")])],1),_c('ul',{staticClass:\"list-disc ml-10\",attrs:{\"data-cy-data\":_vm.cypressName}},_vm._l((_vm.details),function(item,index){return _c('li',{key:index},[_vm._v(\" \"+_vm._s(item.text)+\" \"),_c('span',{staticClass:\"italic\"},[_vm._v(_vm._s(item.info ? (\"- \" + (item.info)) : \"\"))])])}),0)]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsPanelLivingConditionsDetails.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsPanelLivingConditionsDetails.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsPanelLivingConditionsDetails.vue?vue&type=template&id=da411912&\"\nimport script from \"./TownDetailsPanelLivingConditionsDetails.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsPanelLivingConditionsDetails.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsPanelLivingConditionsSection.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsPanelLivingConditionsSection.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsPanelLivingConditionsSection.vue?vue&type=template&id=009b171b&\"\nimport script from \"./TownDetailsPanelLivingConditionsSection.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsPanelLivingConditionsSection.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsPanelLivingConditions.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsPanelLivingConditions.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsPanelLivingConditions.vue?vue&type=template&id=c182cc62&\"\nimport script from \"./TownDetailsPanelLivingConditions.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsPanelLivingConditions.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TownDetailsPanel',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\"Procédure judiciaire\")]},proxy:true},{key:\"body\",fn:function(){return [_c('TownDetailsPanelSection',[_c('div',{staticClass:\"grid grid-cols-2\"},[_c('div',{staticClass:\"flex items-center\"},[_c('Icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"scroll\"}}),_c('div',{staticClass:\"font-bold\"},[_vm._v(\" Dépôt de plainte du propriétaire \")])],1),_c('div',{attrs:{\"data-cy-data\":\"owner_complaint\"}},[_vm._v(\" \"+_vm._s(_vm.boolToStr(_vm.town.ownerComplaint))+\" \")])])]),_c('div',{staticClass:\"flex\"},[_c('Icon',{staticClass:\"mr-4 mt-5\",attrs:{\"icon\":\"balance-scale\"}}),_c('div',{staticClass:\"flex-1\"},[_c('TownDetailsPanelSection',[_c('div',{staticClass:\"grid grid-cols-2\"},[_c('div',{staticClass:\"font-bold\"},[_vm._v(\" Existence d’une procédure judiciaire \")]),_c('div',{staticClass:\"-ml-5\",attrs:{\"data-cy-data\":\"justice_procedure\"}},[_vm._v(\" \"+_vm._s(_vm.boolToStr(_vm.town.justiceProcedure))+\" \")])])]),_c('TownDetailsPanelSection',[_c('div',{staticClass:\"grid grid-cols-2\"},[_c('div',{staticClass:\"font-bold\"},[_vm._v(\" Décision de justice rendue \")]),_c('div',{staticClass:\"-ml-5\",attrs:{\"data-cy-data\":\"justice_rendered\"}},[_vm._v(\" \"+_vm._s(_vm.justiceRendered)+\" \")])])]),_c('TownDetailsPanelSection',[_c('div',{staticClass:\"grid grid-cols-2\"},[_c('div',{staticClass:\"font-bold\"},[_vm._v(\"Contentieux\")]),_c('div',{staticClass:\"-ml-5\",attrs:{\"data-cy-data\":\"justice_challenged\"}},[_vm._v(\" \"+_vm._s(_vm.boolToStr(_vm.town.justiceChallenged))+\" \")])])])],1)],1),_c('TownDetailsPanelSection',[_c('div',{staticClass:\"grid grid-cols-2\"},[_c('div',{staticClass:\"flex items-center\"},[_c('img',{staticClass:\"w-6 h-6 mr-2\",attrs:{\"src\":_vm.policeSiren}}),_c('div',{staticClass:\"font-bold\"},[_vm._v(\" Concours de la force publique \")])]),_c('div',{attrs:{\"data-cy-data\":\"police_status\"}},[_vm._v(\" \"+_vm._s(_vm.policeStatusLabel)+\" \")])])]),_c('TownDetailsPanelSection',[_c('div',{staticClass:\"grid grid-cols-2\"},[_c('div',{staticClass:\"flex items-center\"},[_c('span',{staticClass:\"w-6 h-6 mr-2 text-center\"},[_c('Icon',{attrs:{\"icon\":\"file\"}})],1),_c('div',{staticClass:\"font-bold\"},[_vm._v(\" Nom de l'étude d'huissier \")])]),_c('div',{attrs:{\"data-cy-data\":\"bailiff\"}},[_vm._v(\" \"+_vm._s(_vm.town.bailiff || \"NC\")+\" \")])])])]},proxy:true}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsPanelJudicial.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsPanelJudicial.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsPanelJudicial.vue?vue&type=template&id=314973e4&\"\nimport script from \"./TownDetailsPanelJudicial.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsPanelJudicial.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TownDetailsPanel',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\"Intervenants\")]},proxy:true},{key:\"body\",fn:function(){return [_c('TownDetailsPanelSection',[_c('div',{staticClass:\"italic mb-2\"},[_vm._v(\" Votre intervention mérite d'être signalée même si vous n'accompagnez pas l'ensemble des habitants du site. \")]),(_vm.town.actors.length === 0)?_c('div',{staticClass:\"mt-2 mb-4\"},[_c('p',[_vm._v(\"Aucun intervenant connu sur ce site.\")]),_c('Button',{staticClass:\"font-bold mt-4 mb-2\",attrs:{\"variant\":\"primaryOutlineAlt\",\"icon\":\"plus\",\"iconPosition\":\"left\"},on:{\"click\":function($event){return _vm.$emit('showInviteActorModal')}}},[_vm._v(\"Inviter un autre intervenant\")])],1):_c('div',{staticClass:\"grid grid-cols-2 mt-4\"},[(_vm.self)?_c('TownDetailsSelfCard',{attrs:{\"actor\":_vm.self,\"townId\":_vm.town.id},on:{\"showThemesModal\":function($event){return _vm.$emit('showThemesModal')}}}):_vm._e(),_vm._l((_vm.otherActors),function(actor){return _c('TownDetailsActorCard',{key:actor.id,attrs:{\"actor\":actor}})}),_c('div',{staticClass:\"p-4\"},[_c('Button',{staticClass:\"font-bold\",attrs:{\"variant\":\"primaryOutlineAlt\",\"icon\":\"plus\",\"iconPosition\":\"left\"},on:{\"click\":function($event){return _vm.$emit('showInviteActorModal')}}},[_vm._v(\"Inviter un autre intervenant\")])],1)],2),(_vm.isNotAnActor)?_c('InfoBanner',{staticClass:\"mt-2 py-2\",attrs:{\"icon\":\"flag\",\"buttonLabel\":\"J'interviens sur ce site\"},on:{\"click\":function($event){return _vm.$emit('click')}},scopedSlots:_vm._u([{key:\"body\",fn:function(){return [_c('p',{staticClass:\"ml-2 inline-block\"},[_c('span',{staticClass:\"font-bold\"},[_vm._v(\"Vous intervenez sur ce site ?\")]),_vm._v(\" Faites le savoir à la communauté. \")])]},proxy:true}],null,false,1733866314)}):_vm._e()],1)]},proxy:true}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"p-4 flex\"},[_c('div',{staticClass:\"mr-2\"},[_c('Icon',{attrs:{\"icon\":\"user\"}})],1),_c('div',[_c('p',{staticClass:\"font-bold\"},[_vm._v(\" \"+_vm._s(_vm.actor.first_name)+\" \"+_vm._s(_vm.actor.last_name.toUpperCase())+\" \")]),_c('p',[_vm._v(_vm._s(_vm.actor.organization.name))]),_c('p',[_c('Button',{staticClass:\"font-bold\",attrs:{\"variant\":\"primaryText\",\"href\":(\"/annuaire/\" + (_vm.actor.organization.id))}},[_vm._v(\"Consulter les coordonnées\")])],1),(_vm.actor.themes.length > 0)?_c('div',{staticClass:\"mt-4\"},_vm._l((_vm.actor.themes),function(theme){return _c('TownDetailsActorTag',{key:theme.id},[_vm._v(\" \"+_vm._s(theme.value || _vm.themes[theme.id])+\" \")])}),1):_vm._e()])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"bg-blue100 inline-block text-primary px-3 mr-2 mb-2 rounded-lg\"},[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./TownDetailsActorTag.vue?vue&type=template&id=f5ecd7e4&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsActorCard.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsActorCard.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsActorCard.vue?vue&type=template&id=f0e586b4&\"\nimport script from \"./TownDetailsActorCard.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsActorCard.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"bg-blue100 p-4 flex\"},[_c('div',{staticClass:\"mr-2\"},[_c('Icon',{attrs:{\"icon\":\"user\"}})],1),_c('div',{staticClass:\"flex-grow\"},[_c('p',{staticClass:\"font-bold\"},[_vm._v(\" \"+_vm._s(_vm.actor.first_name)+\" \"+_vm._s(_vm.actor.last_name.toUpperCase())+\" \")]),_c('p',[_vm._v(_vm._s(_vm.actor.organization.name))]),_c('div',{staticClass:\"mt-1\"},[_vm._l((_vm.actor.themes),function(theme){return _c('TownDetailsSelfTag',{key:theme.id,attrs:{\"townId\":_vm.townId,\"userId\":_vm.actor.id,\"themeId\":theme.id}},[_vm._v(\" \"+_vm._s(theme.value || _vm.themes[theme.id])+\" \")])}),_c('Tooltip',{attrs:{\"text\":\"Cliquez ici pour modifier vos champs d'intervention\"},nativeOn:{\"click\":function($event){return _vm.$emit('showThemesModal')}}},[_c('Button',{staticClass:\"leading-3\",attrs:{\"variant\":\"primaryOutlineAlt\",\"icon\":\"plus\",\"size\":\"sm\"}})],1)],2),_c('div',{staticClass:\"w-100 mt-4 text-right\"},[_c('p',{staticClass:\"text-primary hover:text-primaryDark focus:outline-none font-bold cursor-pointer\"},[(!_vm.loading)?_c('span',{on:{\"click\":_vm.removeSelf}},[_vm._v(\"Je n'interviens plus sur ce site\")]):_c('Icon',{attrs:{\"icon\":\"spinner\",\"spin\":\"\"}})],1)])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"bg-white inline-block border border-primary text-primary px-3 mr-2 mb-2 rounded-lg\"},[_c('p',{staticClass:\"flex items-center\"},[_vm._t(\"default\"),_c('span',{staticClass:\"ml-2 align-middle\"},[(!_vm.loading)?_c('Icon',{staticClass:\"cursor-pointer\",attrs:{\"icon\":\"times\"},nativeOn:{\"click\":function($event){return _vm.remove($event)}}}):_c('Icon',{attrs:{\"icon\":\"spinner\",\"spin\":\"\"}})],1)],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsSelfTag.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsSelfTag.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsSelfTag.vue?vue&type=template&id=0f8e2793&\"\nimport script from \"./TownDetailsSelfTag.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsSelfTag.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsSelfCard.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsSelfCard.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsSelfCard.vue?vue&type=template&id=9409fb58&\"\nimport script from \"./TownDetailsSelfCard.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsSelfCard.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsPanelActors.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsPanelActors.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsPanelActors.vue?vue&type=template&id=93d1c950&\"\nimport script from \"./TownDetailsPanelActors.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsPanelActors.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"text-display-lg text-corail\"},[_c('Icon',{attrs:{\"icon\":\"comment\"}}),_vm._v(\" LE JOURNAL DU SITE \"),_c('span',[_vm._v(\"- \"+_vm._s(_vm.nbComments)+\" message\"+_vm._s(_vm.nbComments > 1 ? \"s\" : \"\"))])],1),_c('div',{staticClass:\"text-display-md pt-6 pb-4\"},[_vm._v(\" Partager une info \")]),_c('div',{staticClass:\"bg-white p-6 customShadow\"},[_c('div',{staticClass:\"mb-4\"},[_c('Icon',{attrs:{\"icon\":\"user\"}}),_vm._v(\" \"+_vm._s(_vm.user.first_name))],1),_c('TextArea',{attrs:{\"rows\":\"5\",\"name\":\"newComment\",\"placeholder\":\"Votre commentaire - Merci de respecter les règles de confidentialité.\"},model:{value:(_vm.newComment),callback:function ($$v) {_vm.newComment=$$v},expression:\"newComment\"}}),_vm._v(\" \"),(_vm.hasPermission('shantytown_comment.createPrivate'))?_c('div',{staticClass:\"flex ml-4\"},[_c('div',{staticClass:\"text-sm mr-4\"},[_c('Icon',{staticClass:\"text-red\",attrs:{\"icon\":\"lock\"}}),_vm._v(\" Je souhaite réserver ce message à mes collègues en Préfecture et DDCS \")],1),_c('CheckableGroup',{attrs:{\"direction\":\"horizontal\",\"id\":\"private_comments\"}},[_c('Radio',{attrs:{\"label\":\"Oui\",\"checkValue\":true,\"cypressName\":\"private_comments\"},model:{value:(_vm.isPrivate),callback:function ($$v) {_vm.isPrivate=$$v},expression:\"isPrivate\"}}),_c('Radio',{attrs:{\"label\":\"Non\",\"checkValue\":false,\"cypressName\":\"private_comments\"},model:{value:(_vm.isPrivate),callback:function ($$v) {_vm.isPrivate=$$v},expression:\"isPrivate\"}})],1)],1):_vm._e(),_c('div',{staticClass:\"flex items-center justify-between\"},[_c('Button',{attrs:{\"variant\":\"primaryText\"},on:{\"click\":_vm.cancelComment}},[_vm._v(\"Annuler\")]),_c('Button',{attrs:{\"variant\":\"tertiary\"},on:{\"click\":_vm.addComment}},[_vm._v(\"Valider\")])],1)],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsNewComment.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsNewComment.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsNewComment.vue?vue&type=template&id=14c846be&scoped=true&\"\nimport script from \"./TownDetailsNewComment.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsNewComment.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TownDetailsNewComment.vue?vue&type=style&index=0&id=14c846be&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"14c846be\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"text-display-md pb-2\"},[_vm._v(\" \"+_vm._s(_vm.comments.length)+\" message\"+_vm._s(_vm.comments.length > 1 ? \"s\" : \"\")+\" \")]),_vm._l((_vm.sortedComments),function(comment){return _c('CommentBlock',{key:comment.id,attrs:{\"comment\":comment}})})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"border-t border-G400 py-4\"},[_c('div',{staticClass:\"text-G600 text-sm mb-1\"},[_vm._v(\" \"+_vm._s(_vm.formatDate(_vm.comment.createdAt, \"d M y à h:i\"))+\" \")]),(_vm.comment.private)?_c('div',{staticClass:\"font-bold\"},[_c('Icon',{staticClass:\"text-red\",attrs:{\"icon\":\"lock\"}}),_vm._v(\" Message réservé aux membres de la préfecture et DDCS de votre territoire. \")],1):_vm._e(),_c('div',{staticClass:\"text-primary font-bold mb-1\"},[_c('Icon',{attrs:{\"icon\":\"user\"}}),_vm._v(\" \"+_vm._s(_vm.comment.createdBy.firstName)+\" \"+_vm._s(_vm.comment.createdBy.lastName)+\" - \"+_vm._s(_vm.comment.createdBy.organization)+\" \")],1),_c('div',{staticClass:\"ml-5\"},[_vm._v(_vm._s(_vm.comment.description))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CommentBlock.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CommentBlock.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CommentBlock.vue?vue&type=template&id=426e0dca&\"\nimport script from \"./CommentBlock.vue?vue&type=script&lang=js&\"\nexport * from \"./CommentBlock.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsComments.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsComments.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsComments.vue?vue&type=template&id=7ed726c8&\"\nimport script from \"./TownDetailsComments.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsComments.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SidePanel',{attrs:{\"isOpen\":_vm.isOpen,\"closePanel\":_vm.closePanel,\"closeClickOutside\":true}},[_c('div',{staticClass:\" px-8 \"},[_c('div',{staticClass:\"border-b-2 border-G200 py-4\"},[_c('div',{staticClass:\"flex justify-end\"},[_c('Button',{attrs:{\"variant\":\"primaryText\",\"icon\":\"times\",\"size\":\"lg\"},on:{\"click\":_vm.closePanel}})],1),_c('div',{staticClass:\"flex items-center text-primary\"},[_c('Icon',{staticClass:\"mr-2 \",attrs:{\"icon\":\"history\"}}),_c('div',{staticClass:\"text-display-md text-primary\"},[_vm._v(\" Historique des modifications \")])],1)]),_c('div',[_c('div',{staticClass:\"text-sm font-bold my-4\"},[_vm._v(\" \"+_vm._s(_vm.town.changelog.length)+\" modification\"+_vm._s(_vm.town.changelog.length > 1 ? \"s\" : \"\")+\" \")]),_vm._l((_vm.town.changelog),function(changelog){return _c('div',{key:changelog.id,staticClass:\"py-4 border-b-2 border-G200\"},[_c('div',{staticClass:\"text-sm text-G600\"},[_vm._v(\" \"+_vm._s(_vm.formatDate(changelog.date, \"d M y à h:i\"))+\" \")]),_c('div',{staticClass:\"text-primary\"},[_c('router-link',{attrs:{\"to\":(\"/annuaire/\" + (changelog.author.organization.id))}},[_c('div',{staticClass:\"flex items-center\"},[_c('font-awesome-icon',{staticClass:\"w-8 text-md\",attrs:{\"icon\":\"user\"}}),_c('div',{staticClass:\"font-bold ml-2\"},[_vm._v(\" \"+_vm._s(changelog.author.first_name)+\" \"+_vm._s(changelog.author.last_name)+\" \")])],1)])],1),_c('div',_vm._l((changelog.diff),function(diff){return _c('div',{key:diff.field,staticClass:\"changelogContent my-2\"},[_c('div',{staticClass:\"text-green\"},[_vm._v(_vm._s(diff.field))]),_c('div',[_c('span',{staticClass:\"line-through\"},[_vm._v(_vm._s(diff.oldValue || \"non renseigné\"))]),_c('span',[_vm._v(\", \"+_vm._s(diff.newValue || \"non renseigné\")+\" \")])])])}),0)])})],2)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsHistorySidePanel.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsHistorySidePanel.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsHistorySidePanel.vue?vue&type=template&id=9046989c&\"\nimport script from \"./TownDetailsHistorySidePanel.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsHistorySidePanel.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TownDetailsHistorySidePanel.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SidePanel',{attrs:{\"isOpen\":_vm.isOpen,\"closePanel\":_vm.closePanel,\"closeClickOutside\":true}},[_c('div',{staticClass:\"scrollablePanel\"},[_c('div',{staticClass:\" px-8 \"},[_c('div',{staticClass:\"border-b-2 border-G200 py-4\"},[_c('div',{staticClass:\"flex justify-end\"},[_c('Button',{attrs:{\"variant\":\"primaryText\",\"icon\":\"times\",\"size\":\"lg\"},on:{\"click\":_vm.closePanel}})],1),_c('div',{staticClass:\"flex items-center text-primary\"},[_c('Icon',{staticClass:\"mr-2 \",attrs:{\"icon\":\"comment\"}}),_c('div',{staticClass:\"text-display-md text-primary\"},[_vm._v(\" Commentaire Covid-19 \")])],1)]),_c('div',{staticClass:\"text-G600 italic my-6\"},[_vm._v(\" Merci de préciser votre action, ses modalités, et le nombrede personnes avec des symptômes.Merci de respecter les règles de confidentialité. Ne pas citer l’identité des individus (Nom, âge, sexe, origine...) \")]),_c('ValidationObserver',{ref:\"form\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.addCovidComment)}}},[_c('DatepickerV2',{staticClass:\"w-64\",attrs:{\"label\":\"Date de votre intervention\",\"id\":\"closed_at\",\"validationName\":\"Date\",\"disabled-dates\":{ from: new Date() },\"language\":_vm.dateLanguage,\"monday-first\":true,\"full-month-name\":true,\"format\":'dd MMMM yyyy',\"rules\":\"required\"},model:{value:(_vm.form.date),callback:function ($$v) {_vm.$set(_vm.form, \"date\", $$v)},expression:\"form.date\"}}),_c('CheckableGroup',{attrs:{\"label\":\"Préciser votre intervention\"}},[_c('Checkbox',{attrs:{\"checkValue\":\"equipe_maraude\",\"label\":\"Équipe de maraude\"},model:{value:(_vm.form.interventionType),callback:function ($$v) {_vm.$set(_vm.form, \"interventionType\", $$v)},expression:\"form.interventionType\"}}),_c('Checkbox',{attrs:{\"checkValue\":\"equipe_sanitaire\",\"label\":\"Équipe sanitaire\"},model:{value:(_vm.form.interventionType),callback:function ($$v) {_vm.$set(_vm.form, \"interventionType\", $$v)},expression:\"form.interventionType\"}}),_c('Checkbox',{attrs:{\"checkValue\":\"equipe_accompagnement\",\"label\":\"Équipe d'accompagnement\"},model:{value:(_vm.form.interventionType),callback:function ($$v) {_vm.$set(_vm.form, \"interventionType\", $$v)},expression:\"form.interventionType\"}}),_c('Checkbox',{attrs:{\"checkValue\":\"distribution_alimentaire\",\"label\":\"Distribution d'aide alimentaire\"},model:{value:(_vm.form.interventionType),callback:function ($$v) {_vm.$set(_vm.form, \"interventionType\", $$v)},expression:\"form.interventionType\"}})],1),_c('CheckableGroup',{attrs:{\"label\":\"Signaler si nécessaire\"}},[_c('Checkbox',{attrs:{\"checkValue\":\"personnes_orientees\",\"label\":\"Personne(s) orientée(s) vers un centre d'hébergement\"},model:{value:(_vm.form.interventionType),callback:function ($$v) {_vm.$set(_vm.form, \"interventionType\", $$v)},expression:\"form.interventionType\"}}),_c('Checkbox',{attrs:{\"checkValue\":\"personnes_avec_symptomes\",\"label\":\"Personne(s) avec des symptômes Covid-19\"},model:{value:(_vm.form.interventionType),callback:function ($$v) {_vm.$set(_vm.form, \"interventionType\", $$v)},expression:\"form.interventionType\"}}),_c('Checkbox',{attrs:{\"checkValue\":\"besoin_action\",\"label\":\"Besoin d'une action prioritaire\"},model:{value:(_vm.form.interventionType),callback:function ($$v) {_vm.$set(_vm.form, \"interventionType\", $$v)},expression:\"form.interventionType\"}})],1),_c('TextArea',{attrs:{\"label\":\"Ecrire un message\",\"rows\":\"10\",\"name\":\"newComment\",\"rules\":\"required\",\"validationName\":\"Ecrire un message\"},model:{value:(_vm.form.newComment),callback:function ($$v) {_vm.$set(_vm.form, \"newComment\", $$v)},expression:\"form.newComment\"}}),_vm._v(\" \"),_c('div',{staticClass:\"flex items-center justify-between\"},[_c('Button',{attrs:{\"variant\":\"primaryText\",\"type\":\"button\"},on:{\"click\":_vm.cancelComment}},[_vm._v(\"Annuler\")]),_c('Button',{attrs:{\"variant\":\"tertiary\",\"type\":\"primary\",\"loading\":_vm.loading}},[_vm._v(\"Valider\")])],1)],1)]}}])})],1),_c('div',{staticClass:\"bg-orange200 px-8 py-4 mt-4\"},[_c('div',{staticClass:\"font-bold mb-4\"},[_vm._v(\" \"+_vm._s(this.town.comments.covid.length)+\" commentaires \")]),_vm._l((_vm.sortedComments),function(comment){return _c('CommentBlock',{key:comment.id,attrs:{\"comment\":comment}})})],2)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsCovidCommentsSidePanel.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsCovidCommentsSidePanel.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsCovidCommentsSidePanel.vue?vue&type=template&id=168f67af&\"\nimport script from \"./TownDetailsCovidCommentsSidePanel.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsCovidCommentsSidePanel.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('InfoBanner',{staticClass:\"mb-8 py-4\",attrs:{\"icon\":\"flag\",\"closable\":true,\"buttonLabel\":\"J'interviens sur ce site\"},on:{\"click\":function($event){return _vm.$emit('click')},\"close\":function($event){return _vm.$emit('close')}},scopedSlots:_vm._u([{key:\"body\",fn:function(){return [_c('span',{staticClass:\"ml-2 font-bold\"},[_vm._v(\"Vous intervenez sur ce site ?\")]),_c('span',{staticClass:\"ml-2\"},[_vm._v(\"Faites le savoir à la communauté\")])]},proxy:true}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./TownDetailsActorAlert.vue?vue&type=template&id=0f9a25e3&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Modal',{staticClass:\"modalContainer\",attrs:{\"isOpen\":_vm.isOpen,\"closeModal\":_vm.closeModal},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_c('div',[_vm._v(\"Fermer le site\")])]},proxy:true},{key:\"body\",fn:function(){return [_c('ValidationObserver',{ref:\"form\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.submitClose)}}},[_c('div',{staticClass:\"scrollableContainer -mx-4 -mt-8 p-4\"},[_c('div',{staticClass:\"w-64\"},[_c('DatepickerV2',{attrs:{\"label\":\"Date de la fermeture du site\",\"id\":\"closed_at\",\"validationName\":\"Date\",\"disabled-dates\":{ from: new Date() },\"language\":_vm.dateLanguage,\"monday-first\":true,\"full-month-name\":true,\"format\":'dd MMMM yyyy',\"rules\":\"required\"},model:{value:(_vm.form.closed_at),callback:function ($$v) {_vm.$set(_vm.form, \"closed_at\", $$v)},expression:\"form.closed_at\"}})],1),_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"id\":\"closed_with_solutions\",\"rules\":\"required\",\"label\":\"Est-ce que ce site a été résorbé définitivement ?\",\"info\":\"C’est-à-dire sans réinstallation illicite et\\n avec un accompagnement de la majorité des\\n personnes vers des solutions pérennes\",\"validationName\":\"Est-ce que ce site a été résorbé définitivement ?\"}},[_c('Radio',{staticClass:\"mr-1\",attrs:{\"checkValue\":true,\"label\":\"Oui\",\"variant\":\"card\"},model:{value:(_vm.form.closed_with_solutions),callback:function ($$v) {_vm.$set(_vm.form, \"closed_with_solutions\", $$v)},expression:\"form.closed_with_solutions\"}}),_c('Radio',{attrs:{\"checkValue\":false,\"label\":\"Non\",\"variant\":\"card\"},model:{value:(_vm.form.closed_with_solutions),callback:function ($$v) {_vm.$set(_vm.form, \"closed_with_solutions\", $$v)},expression:\"form.closed_with_solutions\"}})],1),_c('CheckableGroup',{attrs:{\"label\":\"Cause de la disparition\",\"id\":\"status\",\"direction\":\"vertical\",\"rules\":\"required\",\"validationName\":\"Cause de la disparition\"}},_vm._l((_vm.statusValues),function(item,index){return _c('Radio',{key:index,attrs:{\"label\":item.label,\"checkValue\":item.value},model:{value:(_vm.form.status),callback:function ($$v) {_vm.$set(_vm.form, \"status\", $$v)},expression:\"form.status\"}})}),1),_c('CheckableGroup',{attrs:{\"label\":\"Orientations des ménages :\"}},_vm._l((_vm.closingSolutions),function(item,index){return _c('div',{key:item.id},[_c('Checkbox',{key:index,attrs:{\"label\":item.label,\"checkValue\":item.id,\"id\":\"solutions\"},model:{value:(_vm.checkedSolutions),callback:function ($$v) {_vm.checkedSolutions=$$v},expression:\"checkedSolutions\"}}),_c('div',{staticClass:\"flex items-center ml-10\"},[_c('InlineTextInput',{staticClass:\"mr-4\",attrs:{\"label\":\"Ménages : \",\"type\":\"number\"},model:{value:(\n _vm.form.solutions[item.id]\n .householdsAffected\n ),callback:function ($$v) {_vm.$set(_vm.form.solutions[item.id]\n , \"householdsAffected\", $$v)},expression:\"\\n form.solutions[item.id]\\n .householdsAffected\\n \"}}),_c('InlineTextInput',{attrs:{\"label\":\"Personnes : \",\"type\":\"number\"},model:{value:(\n _vm.form.solutions[item.id]\n .peopleAffected\n ),callback:function ($$v) {_vm.$set(_vm.form.solutions[item.id]\n , \"peopleAffected\", $$v)},expression:\"\\n form.solutions[item.id]\\n .peopleAffected\\n \"}})],1)],1)}),0)],1),_c('div',{staticClass:\"flex justify-end mt-8\"},[_c('Button',{staticClass:\"mr-8\",attrs:{\"variant\":\"primaryText\",\"type\":\"button\"},on:{\"click\":_vm.closeModal}},[_vm._v(\"Annuler\")]),_c('Button',{attrs:{\"variant\":\"tertiary\",\"type\":\"primary\",\"loading\":_vm.loading}},[_vm._v(\"Valider\")])],1)])]}}])})]},proxy:true}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsCloseModal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsCloseModal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsCloseModal.vue?vue&type=template&id=243b0511&\"\nimport script from \"./TownDetailsCloseModal.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsCloseModal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TownDetailsCloseModal.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Modal',{staticClass:\"modalContainer\",attrs:{\"isOpen\":true,\"closeModal\":_vm.closeModal},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_c('div',[_vm._v(\"J'interviens ici\")])]},proxy:true},{key:\"body\",fn:function(){return [_c('ValidationObserver',{ref:\"form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.submit($event)}},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('form',[_c('div',{staticClass:\"modalWrapper w-128 -mx-4 -mt-8 p-4\"},[_c('ValidationProvider',{attrs:{\"vid\":\"user_id\"}}),_c('ValidationProvider',{attrs:{\"vid\":\"themes\"}}),_c('CheckableGroup',{attrs:{\"direction\":\"horizontal\",\"label\":\"Quels sont vos champs d'intervention sur ce site ?\",\"validationName\":\"Champs d'intervention\"}},_vm._l((_vm.themeIds),function(themeId){return _c('Checkbox',{key:themeId,attrs:{\"variant\":\"card\",\"label\":_vm.themes[themeId],\"checkValue\":themeId},model:{value:(_vm.form.themes),callback:function ($$v) {_vm.$set(_vm.form, \"themes\", $$v)},expression:\"form.themes\"}})}),1),_c('TextInput',{attrs:{\"label\":\"Autre\"},model:{value:(_vm.form.autre),callback:function ($$v) {_vm.$set(_vm.form, \"autre\", $$v)},expression:\"form.autre\"}}),(_vm.error !== null)?_c('p',{staticClass:\"bg-red200 p-6 mb-6\"},[_c('strong',[_vm._v(_vm._s(_vm.error))]),_c('ul',{staticClass:\"mt-4\"},_vm._l((errors),function(error,inputId){return _c('li',{key:inputId},[_vm._v(\" \"+_vm._s(error[0])+\" \")])}),0)]):_vm._e()],1),_c('div',{staticClass:\"flex justify-end mt-8\"},[_c('Button',{staticClass:\"mr-8\",attrs:{\"variant\":\"primaryText\",\"type\":\"button\"},on:{\"click\":_vm.closeModal}},[_vm._v(\"Annuler\")]),_c('Button',{attrs:{\"variant\":\"tertiary\",\"type\":\"primary\",\"loading\":_vm.loading}},[_vm._v(\"Valider\")])],1)])]}}])})]},proxy:true}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsActorThemesModal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsActorThemesModal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsActorThemesModal.vue?vue&type=template&id=2c8fb903&scoped=true&\"\nimport script from \"./TownDetailsActorThemesModal.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsActorThemesModal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TownDetailsActorThemesModal.vue?vue&type=style&index=0&id=2c8fb903&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2c8fb903\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Modal',{staticClass:\"modalContainer\",attrs:{\"isOpen\":_vm.isOpen,\"closeModal\":_vm.closeModal},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_c('div',[_vm._v(\"Inviter un intervenant\")])]},proxy:true},{key:\"body\",fn:function(){return [_c('ValidationObserver',{ref:\"form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.submit($event)}}},[_c('form',[_c('p',{staticClass:\"-mt-6\"},[_vm._v(\" Favorisez la synergie entre les acteurs en invitant un intervenant, un courriel lui sera envoyé. \")]),_c('div',{staticClass:\"mt-4\"},[_c('p',[_c('span',{staticClass:\"font-bold\"},[_vm._v(\"L'intervenant est-il un utilisateur de la plateforme Résorption-bidonvilles ?\")]),_c('br'),_vm._v(\" Cherchez le nom de la personne en tapant au minimum les premières lettre de son nom ou prénom \")]),_c('div',{staticClass:\"w-128\"},[_c('AutocompleteV2',{ref:\"autocomplete\",attrs:{\"id\":\"user_id\",\"label\":\"\",\"prefixIcon\":\"user\",\"search\":_vm.autocomplete,\"loading\":_vm.searching,\"getResultValue\":_vm.getResultValue},model:{value:(_vm.form.user),callback:function ($$v) {_vm.$set(_vm.form, \"user\", $$v)},expression:\"form.user\"}})],1)]),_c('div',{staticClass:\"w-128\"},[_c('p',{staticClass:\"mb-2\"},[_c('span',{staticClass:\"font-bold\"},[_vm._v(\"L'intervenant n'est pas présent dans cette liste ?\")]),_c('br'),_vm._v(\"Saisissez son courriel pour l'inviter \")]),_c('TextInput',{attrs:{\"id\":\"email\",\"label\":\"Courriel\"},model:{value:(_vm.form.email),callback:function ($$v) {_vm.$set(_vm.form, \"email\", $$v)},expression:\"form.email\"}})],1),(_vm.error !== null)?_c('p',{staticClass:\"bg-red200 p-6 mb-6 font-bold\"},[_vm._v(\" \"+_vm._s(_vm.error)+\" \")]):_vm._e(),_c('div',{staticClass:\"flex justify-end mt-2\"},[_c('Button',{staticClass:\"mr-8\",attrs:{\"variant\":\"primaryText\",\"type\":\"button\"},on:{\"click\":_vm.closeModal}},[_vm._v(\"Annuler\")]),_c('Button',{attrs:{\"variant\":\"tertiary\",\"type\":\"primary\",\"loading\":_vm.loading}},[_vm._v(\"Valider\")])],1)])])]},proxy:true}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsInviteActorModal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsInviteActorModal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsInviteActorModal.vue?vue&type=template&id=6448ddc6&\"\nimport script from \"./TownDetailsInviteActorModal.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsInviteActorModal.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetails.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetails.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetails.vue?vue&type=template&id=40e0e3b1&scoped=true&\"\nimport script from \"./TownDetails.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetails.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TownDetails.vue?vue&type=style&index=0&id=40e0e3b1&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"40e0e3b1\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--withMargin\"},[_c('NavBar'),(_vm.preloading && !_vm.preloadError)?_c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Chargement des données en cours...\")])]):(_vm.preloading && _vm.preloadError)?_c('div',{staticClass:\"notification error full-width\"},[_c('span',[_vm._v(_vm._s(_vm.preloadError)+\". \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.preload}},[_vm._v(\"Réessayer ?\")])])]):_c('div',[_c('Form',_vm._b({ref:\"form\",on:{\"complete\":_vm.onComplete},model:{value:(_vm.formData),callback:function ($$v) {_vm.formData=$$v},expression:\"formData\"}},'Form',_vm.formDefinition,false)),_c('p',[_vm._v(\"Plus d'informations sur les droits d'accès et les utilisateurs de la plateforme\"),_c('br'),_c('router-link',{staticClass:\"link\",attrs:{\"to\":\"/typologie-des-acces\"}},[_c('font-awesome-icon',{attrs:{\"icon\":\"file-pdf\"}}),_vm._v(\" Guide des accès et de l'administrateur\")],1),_c('br'),_c('router-link',{staticClass:\"link\",attrs:{\"to\":\"/charte-d-engagement\"}},[_c('font-awesome-icon',{attrs:{\"icon\":\"file-pdf\"}}),_vm._v(\" Charte d'engagement de l'utilisateur\")],1)],1)],1)],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport Form from \"#app/components/form/form.vue\";\nimport { me, edit } from \"#helpers/api/user\";\n\nexport default {\n components: {\n NavBar,\n Form\n },\n data() {\n const formData = {\n first_name: \"\",\n last_name: \"\",\n password: \"\"\n };\n\n const formDefinition = {\n title: \"Modifier vos données personnelles\",\n description:\n \"Vous pouvez compléter votre profil d'utilisateur et modifier votre mot de passe sur cette page.\",\n steps: [\n {\n title: \"\",\n sections: [\n {\n title: \"\",\n inputs: {\n first_name: {\n label: \"Votre prénom\",\n mandatory: true,\n type: \"text\"\n },\n last_name: {\n label: \"Votre nom de famille\",\n mandatory: true,\n type: \"text\"\n },\n password: {\n label: \"Mot de passe\",\n description:\n \"Laissez ce champ vide si vous souhaitez conserver votre mot de passe actuel.

Votre mot de passe doit comporter au minimum 12 caractères, une majuscule, une minuscule, et un caractère non alphabétique (exemples : '.' ';' ',' '_' '!' '?', ...)
Nous vous recommandons de choisir une phrase intelligible en guise de mot de passe : plus simple à retenir qu'une suite de caractères aléatoires, et plus sécurisée.\",\n mandatory: false,\n type: \"password\"\n }\n }\n }\n ],\n wording: {\n submit: \"Modifier\",\n error: \"Les modifications n'ont pas été appliquées\",\n success:\n \"Les modifications ont bien été prises en compte\"\n },\n submit: edit\n }\n ]\n };\n\n return {\n preloading: true,\n preloadError: null,\n loading: false,\n\n /**\n * Form data\n */\n formData,\n\n /**\n * Form definition\n *\n * @type {Form},\n */\n formDefinition\n };\n },\n\n created() {\n this.preload();\n },\n\n methods: {\n preload() {\n this.preloadError = null;\n this.preloading = true;\n this.fetchData()\n .then(() => {\n this.preloading = false;\n })\n .catch(error => {\n this.preloadError = error.user_message;\n });\n },\n\n fetchData() {\n return me().then(data => {\n this.formData.first_name = data.first_name;\n this.formData.last_name = data.last_name;\n this.formData.password = \"\";\n });\n },\n\n /**\n *\n */\n onComplete() {\n this.preload();\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./me.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./me.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./me.vue?vue&type=template&id=dd1c1884&scoped=true&lang=pug&\"\nimport script from \"./me.vue?vue&type=script&lang=js&\"\nexport * from \"./me.vue?vue&type=script&lang=js&\"\nimport style0 from \"./me.vue?vue&type=style&index=0&id=dd1c1884&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"dd1c1884\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--withMargin\"},[_c('NavBar'),_c('section',{staticClass:\"section section-white\"},[_c('div',{staticClass:\"container\"},[_c('h1',[_vm._v(\"Liste des utilisateurs\")]),(_vm.state === 'loading')?_c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Chargement des données en cours...\")])]):_vm._e(),(_vm.state === 'error')?_c('div',{staticClass:\"notification error full-width\"},[_c('span',[_vm._v(_vm._s(_vm.error)+\". \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.retryLoading}},[_vm._v(\"Réessayer ?\")])])]):_vm._e(),(_vm.state === 'loaded')?_c('div',[_c('header',{staticClass:\"userList-header\"},[_c('router-link',{staticClass:\"link\",attrs:{\"to\":\"/typologie-des-acces\"}},[_c('font-awesome-icon',{attrs:{\"icon\":\"file-pdf\"}}),_vm._v(\" Guide des accès et de l'administrateur\")],1),_c('router-link',{staticClass:\"link\",attrs:{\"to\":\"/charte-d-engagement\"}},[_c('font-awesome-icon',{attrs:{\"icon\":\"file-pdf\"}}),_vm._v(\" Charte d'engagement de l'utilisateur\")],1),_c('router-link',{staticClass:\"button\",attrs:{\"to\":\"/nouvel-utilisateur\"}},[_vm._v(\"Ajouter un utilisateur\")])],1),_c('Table',_vm._b({on:{\"on-row-click\":_vm.routeToUserValidation},scopedSlots:_vm._u([{key:\"table-row\",fn:function(props){return [(props.column.id === 'status')?_c('span',[_c('font-awesome-icon',{staticClass:\"user-statusIcon\",class:(\"user-statusIcon--\" + (props.formattedRow[props.column.field].icon)),attrs:{\"icon\":props.formattedRow[props.column.field].icon}}),_vm._v(\" \"),_c('span',{domProps:{\"innerHTML\":_vm._s(props.formattedRow[props.column.field].label)}})],1):(props.column.id === 'role')?_c('span',[_c('span',{staticClass:\"role\"},[_vm._v(_vm._s(props.formattedRow[props.column.field]))])]):(props.column.id === 'validate')?_c('span',[_c('span',[_c('font-awesome-icon',{staticClass:\"user-validateIcon\",attrs:{\"icon\":\"arrow-right\"},on:{\"click\":_vm.routeToUserValidation}})],1)]):_c('span',{class:(\"userList-row--\" + (props.column.id))},[_vm._v(_vm._s(props.formattedRow[props.column.field]))])]}}],null,false,1614286866)},'Table',_vm.tableProperties,false))],1):_vm._e()])])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"alert\"},[_c('div',{ref:\"wrapper\",staticClass:\"wrapper\"},[_c('div',{staticClass:\"alert-close\"},[_c('div',{staticClass:\"alert-close-wrapper\"},[_c('img',{attrs:{\"src\":\"/img/cross.svg\",\"alt\":\"\",\"width\":\"20\"},on:{\"click\":_vm.close}})])]),_vm._t(\"default\")],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default {\n mounted() {\n document.addEventListener(\"click\", this.checkOutsideClick);\n },\n destroyed() {\n document.removeEventListener(\"click\", this.checkOutsideClick);\n },\n methods: {\n checkOutsideClick(event) {\n // ignore the origin event\n if (this.$refs.wrapper.offsetHeight === 0) {\n return;\n }\n\n if (!this.$refs.wrapper.contains(event.target)) {\n this.close();\n }\n },\n close() {\n this.$emit(\"close\");\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./modal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./modal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./modal.vue?vue&type=template&id=70f3cb96&scoped=true&lang=pug&\"\nimport script from \"./modal.vue?vue&type=script&lang=js&\"\nexport * from \"./modal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./modal.vue?vue&type=style&index=0&id=70f3cb96&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"70f3cb96\",\n null\n \n)\n\nexport default component.exports","import { VueGoodTable as Table } from \"vue-good-table\";\nimport { list } from \"#helpers/api/user\";\nimport \"vue-good-table/dist/vue-good-table.css\";\nimport NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport Modal from \"#app/components/modal/modal.vue\";\nimport { get as getConfig } from \"#helpers/api/config\";\nimport { open } from \"#helpers/tabHelper\";\n\nexport default {\n components: {\n NavBar,\n Table,\n Modal\n },\n\n data() {\n const { token_expires_in: tokenExpiresIn } = getConfig();\n\n return {\n /**\n * Duration of validity of an activation token (in seconds)\n *\n * @type {Number}\n */\n tokenExpiresIn,\n\n /**\n * List of users\n *\n * @type {Array.}\n */\n users: [],\n\n /**\n * The error's user message\n *\n * Obivously, null if there is no error\n *\n * @type {string|null}\n */\n error: null,\n\n /**\n * The current state of the page\n *\n * One out of: 'loading', 'error', or 'loaded'\n *\n * @type {string|null}\n */\n state: null\n };\n },\n\n computed: {\n tableProperties() {\n return {\n columns: [\n {\n id: \"lastName\",\n label: \"NOM\",\n field: user => user.last_name.toUpperCase()\n },\n {\n id: \"firstName\",\n label: \"PRÉNOM\",\n field: \"first_name\"\n },\n {\n id: \"organization\",\n label: \"STRUCTURE\",\n field: user => {\n if (user.organization.type.abbreviation !== null) {\n return `${user.organization.type.abbreviation} (${user.organization.name})`;\n }\n\n if (user.organization.abbreviation !== null) {\n return `${user.organization.abbreviation} (${user.organization.name})`;\n }\n\n return user.organization.name;\n }\n },\n {\n id: \"location\",\n label: \"TERRITOIRE\",\n field: user => {\n if (user.organization.location.type === \"nation\") {\n return \"National\";\n }\n\n const location =\n user.organization.location[\n user.organization.location.type\n ];\n if (!location) {\n return \"\";\n }\n\n if (\n user.organization.location.type ===\n \"departement\"\n ) {\n return `${location.name} (${location.code})`;\n }\n\n return location.name;\n }\n },\n {\n id: \"role\",\n label: \"TYPE D'ACCÈS\",\n field: \"role\",\n width: \"230px\",\n thClass: \"userList-column--role\",\n tdClass: \"userList-column--role\"\n },\n {\n id: \"status\",\n label: \"STATUT DU COMPTE\",\n field: user => {\n if (user.status === \"active\") {\n if (user.role_id === \"local_admin\") {\n return {\n icon: \"user-shield\",\n label:\n \"Administrateur local\"\n };\n }\n\n if (user.role_id === \"national_admin\") {\n return {\n icon: \"user-shield\",\n label:\n \"Administrateur national\"\n };\n }\n\n return {\n icon: \"user-check\",\n label: `Compte activé le ${App.formatDate(\n user.user_access.used_at,\n \"d M y\"\n )}`\n };\n }\n\n if (user.user_access !== null) {\n if (\n Date.now() -\n user.user_access.expires_at * 1000 >=\n 0\n ) {\n return {\n icon: \"unlink\",\n label: `Lien expiré le ${App.formatDate(\n user.user_access.expires_at,\n \"d M y\"\n )}`\n };\n }\n\n return {\n icon: \"paper-plane\",\n label: `Accès envoyé le ${App.formatDate(\n user.user_access.created_at,\n \"d M y\"\n )}`\n };\n }\n\n return {\n icon: \"flag\",\n label: `Demandé le ${App.formatDate(\n user.created_at,\n \"d M y\"\n )}`\n };\n }\n },\n {\n id: \"validate\",\n label: \"\",\n field: () => true\n }\n ],\n rows: this.users,\n \"row-style-class\": row =>\n row.status !== \"active\" && row.user_access === null\n ? \"userList-row userList-row--highlight\"\n : \"userList-row\",\n \"sort-options\": {\n enabled: true\n },\n \"search-options\": {\n enabled: true,\n placeholder:\n \"Rechercher par utilisateur, structure, territoire, ou type d'accès\"\n }\n };\n }\n },\n\n created() {\n this.load();\n },\n\n methods: {\n /**\n * Tries fetching the data from the API\n *\n * Please note that this cannot be done if the data has already been loaded\n * before.\n */\n load() {\n // loading data is forbidden if the component is already loading or loaded\n if ([null, \"error\"].indexOf(this.state) === -1) {\n return;\n }\n\n this.state = \"loading\";\n this.error = null;\n\n list()\n .then(users => {\n this.users = users.filter(\n ({ status }) => status !== \"inactive\"\n );\n this.state = \"loaded\";\n })\n .catch(({ user_message: error }) => {\n this.error = error;\n this.state = \"error\";\n });\n },\n\n /**\n * Alias to load(), for better readibility in the view\n *\n * @see load()\n */\n retryLoading() {\n this.load();\n },\n\n /**\n *\n */\n routeToUserValidation(params) {\n const routeData = this.$router.resolve(\n `/nouvel-utilisateur/${params.row.id}`\n );\n open(routeData.href);\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.list.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.list.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./users.list.vue?vue&type=template&id=54c6ec14&lang=pug&\"\nimport script from \"./users.list.vue?vue&type=script&lang=js&\"\nexport * from \"./users.list.vue?vue&type=script&lang=js&\"\nimport style0 from \"./users.list.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--withMargin\"},[(!_vm.isPopup)?_c('NavBar'):_vm._e(),(_vm.state === 'loading')?_c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Chargement des données en cours...\")])]):_vm._e(),(_vm.state === 'error')?_c('div',{staticClass:\"notification error full-width\"},[_c('span',[_vm._v(_vm._s(_vm.loadingError)+\". \"),_c('span',{on:{\"click\":_vm.retryLoading}},[_vm._v(\"Réessayer ?\")])])]):_vm._e(),(_vm.state === 'loaded')?_c('div',[_c('Form',_vm._b({ref:\"form\",on:{\"complete\":_vm.onComplete},model:{value:(_vm.formData),callback:function ($$v) {_vm.formData=$$v},expression:\"formData\"}},'Form',_vm.formDefinition,false))],1):_vm._e()],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import {\n categories as getOrgCategories,\n types as getOrgTypes,\n getByType as getOrganizationsByType,\n getByCategory as getOrganizationsByCategory\n} from \"#helpers/api/organization\";\nimport { departements as listDepartements } from \"#helpers/addressHelper\";\n\n/**\n * @typedef {Object} NewUserWording\n * @property {String} title\n * @property {String} description\n * @property {Object} stepWording\n * @property {String} organizationTitle Title of the organization section\n * @property {String} position Label of the input 'position'\n * @property {String} organization Label of the input organization_category\n * @property {String} associationIsMissing Label of the 'other' option of the input association\n */\n\n/**\n * @param {NewUserWording} wording\n * @param {Function} submitFn\n */\nexport default (wording, submitFn) => ({\n data() {\n const formData = {};\n const formDefinition = {\n title: wording.title,\n descriptionTitle: \"\",\n description: wording.description,\n steps: [\n {\n wording: wording.stepWording,\n sections: [\n {\n title: \"Informations personnelles\",\n inputs: {\n last_name: {\n label: \"NOM\",\n mandatory: true,\n type: \"text\"\n },\n first_name: {\n label: \"Prénom\",\n mandatory: true,\n type: \"text\"\n },\n email: {\n label: \"Courriel\",\n mandatory: true,\n type: \"text\"\n }\n }\n },\n {\n title: wording.organizationTitle,\n inputs: {\n organization_category: {\n label: wording.organization,\n mandatory: true,\n type: \"radio\",\n options: []\n },\n organization_type: {\n label: \"Précisez le type de structure\",\n mandatory: true,\n type: \"select\",\n options: [],\n condition({\n organization_category: category\n }) {\n return (\n category === \"public_establishment\"\n );\n }\n },\n organization_public: {\n label: \"Territoire de rattachement\",\n mandatory: true,\n type: \"select\",\n options: [],\n condition: ({\n organization_category: category,\n organization_type: type\n }) =>\n category === \"public_establishment\" &&\n type !== undefined\n },\n territorial_collectivity: {\n label: \"Nom de la structure\",\n mandatory: true,\n type: \"collectivity\",\n condition({\n organization_category: category\n }) {\n return (\n category ===\n \"territorial_collectivity\"\n );\n }\n },\n association: {\n label: \"Nom de la structure\",\n mandatory: true,\n type: \"select\",\n options: [],\n condition({\n organization_category: category\n }) {\n return category === \"association\";\n }\n },\n new_association_name: {\n label: \"Précisez le nom complet\",\n mandatory: true,\n type: \"text\",\n condition({\n organization_category: category,\n association\n }) {\n return (\n category === \"association\" &&\n association === \"Autre\"\n );\n }\n },\n new_association_abbreviation: {\n label: \"Précisez l'acronyme, si besoin\",\n mandatory: false,\n type: \"text\",\n condition({\n organization_category: category,\n association\n }) {\n return (\n category === \"association\" &&\n association === \"Autre\"\n );\n }\n },\n departement: {\n label: \"Territoire de rattachement\",\n mandatory: true,\n type: \"select\",\n options: [],\n condition({\n organization_category: category\n }) {\n return category === \"association\";\n }\n },\n organization_administration: {\n label: \"Nom de la structure\",\n mandatory: true,\n type: \"select\",\n options: [],\n condition({\n organization_category: category\n }) {\n return category === \"administration\";\n }\n },\n position: {\n label: wording.position,\n mandatory: true,\n type: \"text\",\n condition({\n organization_category: category\n }) {\n return category !== undefined;\n }\n }\n }\n }\n ],\n submit: data =>\n submitFn({\n ...data,\n legal:\n data.legal &&\n data.legal.length === 1 &&\n data.legal[0] === true\n })\n }\n ]\n };\n\n return {\n /**\n * The current state of the page\n *\n * One out of: 'loading', 'error', or 'loaded'\n *\n * @type {string|null}\n */\n state: null,\n\n /**\n * @type {string|null}\n */\n loadingError: null,\n\n /**\n * Form data\n */\n formData,\n\n /**\n * Form definition\n */\n formDefinition\n };\n },\n\n watch: {\n \"formData.organization_type\": function organizationType() {\n this.$refs.form.getInputById(\"organization_public\").options = [];\n\n getOrganizationsByType(this.formData.organization_type).then(\n ({ organizations }) => {\n this.$refs.form.getInputById(\n \"organization_public\"\n ).options = organizations.map(organization => {\n const level = organization.location_type;\n let label = organization[`${level}_name`];\n\n if (level === \"nation\") {\n label = \"France\";\n } else if (level === \"departement\") {\n label = `${organization[`${level}_code`]} - ${\n organization[`${level}_name`]\n }`;\n }\n\n return {\n value: organization.id,\n label\n };\n });\n this.formData.organization_public = undefined;\n }\n );\n }\n },\n\n methods: {\n /**\n * Tries fetching the data from the API\n *\n * Please note that this cannot be done if the data has already been loaded\n * before.\n */\n load() {\n // loading data is forbidden if the component is already loading or loaded\n if ([null, \"error\"].indexOf(this.state) === -1) {\n return;\n }\n\n this.state = \"loading\";\n this.loadingError = null;\n\n Promise.all([\n getOrgCategories(),\n getOrgTypes(\"public_establishment\"),\n getOrganizationsByCategory(\"administration\"),\n getOrganizationsByCategory(\"association\"),\n listDepartements()\n ])\n .then(\n ([\n { categories },\n { types },\n { organizations },\n { organizations: associations },\n { departements }\n ]) => {\n this.formDefinition.steps[0].sections[1].inputs.organization_category.options = categories.map(\n ({ uid, name_singular: name }) => ({\n value: uid,\n label: name\n })\n );\n this.formDefinition.steps[0].sections[1].inputs.organization_type.options = types\n .filter(\n ({ numberOfOrganizations }) =>\n numberOfOrganizations > 0\n )\n .filter(\n ({ name_singular: name }) =>\n name !== \"Gendarmerie nationale\"\n )\n .map(\n ({\n id,\n name_singular: name,\n abbreviation\n }) => ({\n value: id,\n label: abbreviation || name\n })\n );\n this.formDefinition.steps[0].sections[1].inputs.organization_administration.options = organizations.map(\n ({ id, name }) => ({\n value: id,\n label: name\n })\n );\n\n const usedAssociations = [];\n this.formDefinition.steps[0].sections[1].inputs.association.options = [\n {\n label: \"Autres cas\",\n options: [\n {\n value: \"Autre\",\n label: wording.associationIsMissing\n }\n ]\n },\n {\n label: \"Associations connues\",\n options: associations\n .filter(association => {\n if (\n usedAssociations.indexOf(\n association.name\n ) !== -1\n ) {\n return false;\n }\n\n usedAssociations.push(association.name);\n return true;\n })\n .map(({ name, abbreviation }) => ({\n value: name,\n label:\n abbreviation !== null\n ? `${abbreviation} (${name})`\n : name\n }))\n }\n ];\n this.formDefinition.steps[0].sections[1].inputs.departement.options = departements.map(\n ({ code, name }) => ({\n value: code,\n label: `${code} - ${name}`\n })\n );\n this.state = \"loaded\";\n }\n )\n .catch(({ user_message: error }) => {\n this.loadingError = error;\n this.state = \"error\";\n });\n }\n }\n});\n","import NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport Form from \"#app/components/form/form.vue\";\nimport { create } from \"#helpers/api/user\";\nimport newUser from \"./newUser\";\n\nconst component = newUser(\n {\n title: \"Créer un utilisateur\",\n organizationTitle: \"Structure\",\n organization: \"Quelle est la structure de l'utilisateur ?\",\n position: \"Fonction de l'utilisateur\",\n associationIsMissing:\n \"L'association de l'utilisateur n'est pas dans cette liste\",\n stepWording: {\n submit: \"Continuer\",\n error: \"L'utilisateur n'a pas pu être créé\",\n success: \"L'utilisateur a bien été créé\"\n }\n },\n create\n);\n\nexport default {\n components: {\n NavBar,\n Form\n },\n\n data() {\n const data = component.data();\n data.isPopup = this.$route.query.association_name !== undefined;\n data.formDefinition.steps[0].sections.push({\n inputs: {\n legal: {\n label: \"\",\n mandatory: false,\n type: \"checkbox\",\n options: [\n {\n value: true,\n label:\n \"Je certifie que ces données personnelles ont été saisies avec l'accord de leur propriétaire\"\n }\n ]\n }\n }\n });\n\n if (this.$route.query.association_name !== undefined) {\n data.formDefinition.steps[0].sections[1].inputs.organization_category.disabled = true;\n data.formDefinition.steps[0].sections[1].inputs.association.disabled = true;\n data.formDefinition.steps[0].sections[1].inputs.departement.disabled = true;\n }\n\n return data;\n },\n\n watch: Object.assign(component.watch, {\n state() {\n if (\n this.state === \"loaded\" &&\n this.$route.query.association_name !== undefined\n ) {\n this.formData.organization_category = \"association\";\n this.formData.association = this.$route.query.association_name;\n this.formData.departement = this.$route.query.association_departement;\n }\n }\n }),\n\n mounted() {\n this.load();\n },\n\n methods: Object.assign(component.methods, {\n /**\n * Alias to load(), for better readibility in the view\n *\n * @see load()\n */\n retryLoading() {\n this.load();\n },\n\n /**\n * On form's complete\n */\n onComplete(user) {\n if (this.isPopup) {\n window.opener.postMessage(user, \"*\");\n window.close();\n return;\n }\n\n this.$router.push(`/nouvel-utilisateur/${user.id}`);\n }\n })\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.create.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.create.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./users.create.vue?vue&type=template&id=17835908&scoped=true&lang=pug&\"\nimport script from \"./users.create.vue?vue&type=script&lang=js&\"\nexport * from \"./users.create.vue?vue&type=script&lang=js&\"\nimport style0 from \"./users.create.vue?vue&type=style&index=0&id=17835908&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"17835908\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--withMargin\"},[_c('NavBar'),(_vm.state === 'loading')?_c('section',{staticClass:\"section section-white\",attrs:{\"id\":\"form\"}},[_vm._m(0)]):_vm._e(),(_vm.state === 'error')?_c('div',{staticClass:\"notification error full-width\"},[_c('p',[_c('font-awesome-icon',{attrs:{\"icon\":\"times\"}}),_vm._v(\" \"),_c('strong',[_vm._v(\"Une erreur est survenue\")])],1),_c('p',[_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.error.replace(/\\n/g, '
'))}})]),_c('p',[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.retryLoading}},[_vm._v(\"Réessayer ?\")])])]):_vm._e(),(_vm.state === 'loaded')?_c('div',[_c('Form',_vm._b({ref:\"form\",on:{\"complete\":_vm.onComplete},model:{value:(_vm.formData),callback:function ($$v) {_vm.formData=$$v},expression:\"formData\"}},'Form',_vm.formDefinition,false))],1):_vm._e()],1)])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Chargement des données en cours...\")])])])}]\n\nexport { render, staticRenderFns }","import { checkActivationToken, activate } from \"#helpers/api/user\";\nimport NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport Form from \"#app/components/form/form.vue\";\n\nexport default {\n components: {\n NavBar,\n Form\n },\n\n data() {\n const formData = {\n email: \"\"\n };\n\n const formDefinition = {\n title: \"Activation de votre compte utilisateur\",\n descriptionTitle: \"\",\n description:\n \"Vous vous apprêtez à activer votre compte utilisateur, veuillez choisir votre mot de passe de connexion.\",\n steps: [\n {\n title: \"\",\n sections: [\n {\n title: \"\",\n inputs: {\n email: {\n label: \"Votre email\",\n mandatory: false,\n type: \"text\",\n disabled: true\n },\n password: {\n label: \"Définissez votre mot de passe\",\n description:\n \"Votre mot de passe doit comporter au minimum 12 caractères, une majuscule, une minuscule, et un caractère non alphabétique (exemples : '.' ';' ',' '_' '!' '?', ...)
Nous vous recommandons de choisir une phrase intelligible en guise de mot de passe : plus simple à retenir qu'une suite de caractères aléatoires, et plus sécurisée.\",\n mandatory: true,\n type: \"password\"\n }\n }\n }\n ],\n wording: {\n submit: \"Activer mon compte\",\n error: \"Votre compte n'a pas pu être activé\",\n success:\n \"Vous pouvez désormais vous connecter à la plateforme\"\n },\n submitPrefix:\n 'En cliquant sur \"Activer mon compte\", j\\'accepte les conditions générales d\\'utilisation et de partager mes données (nom, prénom, courriel, structure et lorsque renseigné, numéro de téléphone) aux utilisateurs de la plateforme via l’annuaire',\n submit: data =>\n activate(\n this.user.id,\n Object.assign(data, {\n token: this.$route.params.token\n })\n )\n }\n ]\n };\n\n return {\n state: null,\n error: null,\n user: null,\n\n /**\n * Form data\n */\n formData,\n\n /**\n * Form definition\n *\n * @type {Form},\n */\n formDefinition\n };\n },\n\n created() {\n this.load();\n },\n\n methods: {\n /**\n * Tries validating the activation token\n */\n load() {\n // loading data is forbidden if the component is already loading or loaded\n if ([null, \"error\"].indexOf(this.state) === -1) {\n return;\n }\n\n this.state = \"loading\";\n this.error = null;\n\n checkActivationToken(this.$route.params.token)\n .then(user => {\n this.user = user;\n this.formData.email = user.email;\n this.state = \"loaded\";\n })\n .catch(({ user_message: error }) => {\n this.error = error;\n this.state = \"error\";\n });\n },\n\n /**\n * Alias to load(), for better readibility in the view\n *\n * @see load()\n */\n retryLoading() {\n this.load();\n },\n\n /**\n *\n */\n onComplete() {\n this.$router.push(\"/\");\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.activate.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.activate.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./users.activate.vue?vue&type=template&id=043c7c3f&scoped=true&lang=pug&\"\nimport script from \"./users.activate.vue?vue&type=script&lang=js&\"\nexport * from \"./users.activate.vue?vue&type=script&lang=js&\"\nimport style0 from \"./users.activate.vue?vue&type=style&index=0&id=043c7c3f&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"043c7c3f\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--withMargin\"},[_c('NavBar'),_c('section',{staticClass:\"section section-white\"},[_c('div',{staticClass:\"container container--userValidation\"},[(_vm.state === 'loading')?_c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Chargement des données en cours...\")])]):_vm._e(),(_vm.state === 'error')?_c('div',{staticClass:\"notification error full-width\"},[_c('span',[_vm._v(_vm._s(_vm.error)+\". \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.retryLoading}},[_vm._v(\"Réessayer ?\")])])]):_vm._e(),(_vm.state === 'loaded')?_c('section',{staticClass:\"userValidation\"},[(_vm.user && _vm.user.status !== 'active')?_c('h1',[_vm._v(\"Demande d'accès\")]):(_vm.user)?_c('h1',[_vm._v(\"Fiche utilisateur\")]):_vm._e(),_c('div',{staticClass:\"userValidation-main\"},[_c('aside',{staticClass:\"userInfo\"},[_c('section',{staticClass:\"userInfo-section\"},[_c('hgroup',[_c('h1',[_vm._v(_vm._s(_vm.user.last_name.toUpperCase())+\" \"+_vm._s(_vm.user.first_name))]),_c('h3',[_vm._v(\"Structure\")]),_c('h2',[_vm._v(_vm._s(_vm.user.organization.name))])]),_c('p',[_vm._v(_vm._s(_vm.user.position)),_c('br'),_c('span',{staticClass:\"email\"},[_vm._v(_vm._s(_vm.user.email))])])]),_c('section',{staticClass:\"userInfo-section\"},[(_vm.isExpired)?_c('p',{staticClass:\"userHistory-item\"},[_c('span',[_c('font-awesome-icon',{staticClass:\"user-statusIcon\",attrs:{\"icon\":\"unlink\"}}),_vm._v(\" \"),_c('strong',[_vm._v(\"Lien expiré\")]),_vm._v(\" le \"+_vm._s(_vm.formatDate(_vm.user.user_access.expires_at, 'd M y')))],1),_c('br'),_vm._v(\"Un lien d'activation est valable \"+_vm._s(_vm.tokenExpiresIn)+\" jours\"),_c('br')]):_vm._e(),(_vm.user.user_access !== null)?_c('p',{staticClass:\"userHistory-item\"},[_c('span',[_c('font-awesome-icon',{staticClass:\"user-statusIcon\",attrs:{\"icon\":\"paper-plane\"}}),_vm._v(\" \"),_c('strong',[_vm._v(\"Accès envoyé\")]),_vm._v(\" le \"+_vm._s(_vm.formatDate(_vm.user.user_access.created_at, 'd M y')))],1),_c('br')]):_vm._e(),_c('p',{staticClass:\"userHistory-item\"},[_c('span',[_c('font-awesome-icon',{staticClass:\"user-statusIcon user-statusIcon--flag\",attrs:{\"icon\":\"flag\"}}),_vm._v(\" \"),_c('strong',[_vm._v(\"Demandé\")]),_vm._v(\" le \"+_vm._s(_vm.formatDate(_vm.user.created_at, 'd M y')))],1)])]),_c('section',{staticClass:\"userInfo-section\",domProps:{\"innerHTML\":_vm._s((_vm.user.access_request_message || '').replace('\\n','
'))}})]),_c('main',{staticClass:\"userPermissions\"},[_c('hgroup',{staticClass:\"userPermissions-header\"},[_c('h1',[_vm._v(\"Accès\")]),_c('h2',{staticClass:\"role\"},[_vm._v(_vm._s(_vm.user.role))])]),_c('p',[_vm._v(_vm._s(_vm.permission.description)),_c('br')]),_c('p',[_vm._v(\"Ainsi, l'utilisateur peut :\")]),(_vm.hasPermissionsFor('national'))?_c('UserPermissions',{attrs:{\"title\":\"À l'échelle nationale\",\"items\":_vm.permission.national_permissions}}):_vm._e(),(_vm.hasPermissionsFor('local'))?_c('UserPermissions',{attrs:{\"title\":\"Sur le territoire d'intervention\",\"items\":_vm.permission.local_permissions}}):_vm._e(),(_vm.options.length > 0)?_c('div',[_c('h1',{staticClass:\"userPermissions-sectionTitle\"},[_vm._v(\"Options\")]),(!_vm.user.organization.active)?_c('p',[_vm._v(\"Pour cette structure, je souhaite :\")]):_vm._e(),_c('ul',{staticClass:\"userOptionsList\"},_vm._l((_vm.options),function(option,optionIndex){return _c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.checkedOptions[option.id]),expression:\"checkedOptions[option.id]\"}],attrs:{\"type\":\"checkbox\",\"id\":(\"option-\" + optionIndex),\"disabled\":_vm.user.organization.active},domProps:{\"value\":option.id,\"checked\":Array.isArray(_vm.checkedOptions[option.id])?_vm._i(_vm.checkedOptions[option.id],option.id)>-1:(_vm.checkedOptions[option.id])},on:{\"change\":function($event){var $$a=_vm.checkedOptions[option.id],$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=option.id,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.checkedOptions, option.id, $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.checkedOptions, option.id, $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.checkedOptions, option.id, $$c)}}}}),_c('label',{staticClass:\"label-inline\",attrs:{\"for\":(\"option-\" + optionIndex)}},[_vm._v(_vm._s(option.label))])])}),0)]):_vm._e()],1)]),(_vm.validation.error)?_c('div',{staticClass:\"userValidation-error notification error\"},[_vm._v(_vm._s(_vm.validation.error))]):_vm._e(),_c('footer',{staticClass:\"userValidationFooter\"},[(_vm.user.status === 'active')?_c('p',{staticClass:\"userValidationFooter-remove\"},[(_vm.validation.state !== 'loading')?_c('span',{on:{\"click\":_vm.remove}},[_vm._v(\"Supprimer l'accès\")]):_vm._e()]):_vm._e(),(_vm.user.status === 'new' && _vm.user.user_access === null)?_c('p',{staticClass:\"userValidationFooter-deny\"},[(_vm.validation.state !== 'loading')?_c('span',{on:{\"click\":_vm.deny}},[_vm._v(\"Refuser l'accès\")]):_vm._e()]):_vm._e(),(_vm.user.status === 'new')?_c('p',{staticClass:\"userValidationFooter-allow\"},[_c('button',{staticClass:\"button\",attrs:{\"disabled\":_vm.validation.state === 'loading',\"readonly\":_vm.validation.state === 'loading'},on:{\"click\":_vm.validate}},[(_vm.validation.state === 'loading')?_c('img',{attrs:{\"src\":\"/img/spinner_light.svg\",\"width\":\"20\"}}):_c('span',[_vm._v(\"Envoyer un accès\")])]),_c('br'),_vm._m(0)]):_vm._e()])]):_vm._e()])])],1)])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',[_vm._v(\"L'utilisateur va recevoir\"),_c('br'),_vm._v(\"un mail avec un lien d'activation\")])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('h1',{staticClass:\"userPermissions-sectionTitle\"},[_vm._v(_vm._s(_vm.title))]),_c('ul',{staticClass:\"userPermissionsList\"},_vm._l((_vm.parsedItems),function(item){\nvar _obj;\nreturn _c('li',{class:( _obj = { 'userPermissionsList-item': true }, _obj[(\"userPermissionsList-item--\" + (item.type))] = true, _obj['userPermissionsList-item--subsection'] = item.subsection === true, _obj )},[_c('span',{domProps:{\"innerHTML\":_vm._s(item.label.replace(/%(.+?)%/gi, '$1'))}}),(item.comments)?_c('span',{staticClass:\"userPermissionsList-comments\"},[_c('br'),_vm._v(_vm._s(item.comments))]):_vm._e()])}),0)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * Matching between item types and fontawesome icones\n *\n * @const {Object.}\n */\nconst TYPES_TO_ICONS = {\n view: \"eye\",\n edit: \"pencil-alt\",\n deny: \"times\"\n};\n\nexport default {\n props: {\n /**\n * Title of the section\n *\n * @type {String}\n */\n title: {\n type: String,\n required: true\n },\n\n /**\n * List of items\n *\n * @type {Array.>}\n */\n items: {\n type: Array,\n required: true\n }\n },\n\n computed: {\n /**\n * Merges the different sections of permission items into a single array\n *\n * @param {Array.>} permissionItems\n *\n * @returns {Array.}\n */\n parsedItems() {\n return this.items.reduce((acc, arr) => {\n if (arr.length > 0) {\n Object.assign(arr[0], { subsection: true });\n }\n\n return [...acc, ...arr.map(this.resolveIcon)];\n }, []);\n }\n },\n\n methods: {\n /**\n * Resolves the icon to be used, based on the item's type\n *\n * @param {UserPermissionParsedItem} item\n *\n * @returns {UserPermissionParsedItem}\n */\n resolveIcon(item) {\n return { ...item, icon: TYPES_TO_ICONS[item.type] };\n }\n }\n};\n\n/**\n * @typedef {Object} UserPermissionItem\n * @property {String} type Either 'view', 'edit', or 'deny'\n * @property {String} label Label of the permission (HTML allowed)\n * @property {String} [comments] Additional line of text below the label (no HTML allowed)\n */\n\n/**\n * @type {UserPermissionItem} UserPermissionParsedItem\n * @property {String} icon Name of the fontawesome icon to be used\n * @property {Boolean} [subsection=false] Whether this item is the first one of a subsection of permissions (used for styling)\n */\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./userPermissions.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./userPermissions.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./userPermissions.vue?vue&type=template&id=bcdb6d54&lang=pug&\"\nimport script from \"./userPermissions.vue?vue&type=script&lang=js&\"\nexport * from \"./userPermissions.vue?vue&type=script&lang=js&\"\nimport style0 from \"./userPermissions.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { VueGoodTable as Table } from \"vue-good-table\";\nimport { get, sendActivationLink, denyAccess, remove } from \"#helpers/api/user\";\nimport UserPermissions from \"#app/layouts/userPermissions/userPermissions.vue\";\nimport \"vue-good-table/dist/vue-good-table.css\";\nimport NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport { get as getConfig } from \"#helpers/api/config\";\nimport { notify } from \"#helpers/notificationHelper\";\n\nlet permissions;\n\nexport default {\n components: {\n NavBar,\n Table,\n UserPermissions\n },\n\n data() {\n let activationTokenExpiresIn;\n ({\n permissions_description: permissions,\n activation_token_expires_in: activationTokenExpiresIn\n } = getConfig());\n\n return {\n /**\n * @type {User}\n */\n user: null,\n\n /**\n * The error's user message\n *\n * Obivously, null if there is no error\n *\n * @type {string|null}\n */\n error: null,\n\n /**\n * The current state of the page\n *\n * One out of: 'loading', 'error', or 'loaded'\n *\n * @type {string|null}\n */\n state: null,\n\n /**\n * Wether an activation link is being generated for one of the users\n *\n * @type {boolean}\n */\n loading: false,\n\n /**\n * Validation state\n *\n * @type {Object}\n */\n validation: {\n state: null,\n error: null\n },\n\n /**\n * List of checked options\n *\n * @type {Object.}\n */\n checkedOptions: {},\n\n /**\n * Number of days of validity of an activation days\n *\n * @type {Number}\n */\n tokenExpiresIn: activationTokenExpiresIn / 3600 / 24\n };\n },\n\n computed: {\n /**\n * Details about the permissions requested by the user\n *\n * @returns {Object}\n */\n permission() {\n if (!this.user) {\n return null;\n }\n\n return permissions[this.user.role_id];\n },\n\n /**\n * Get the allowed options for the current user\n *\n * @returns {Array}\n */\n options() {\n if (this.user === null || !this.permission) {\n return [];\n }\n\n return this.permission.options;\n },\n\n /**\n * Indicates whether the activation link is now expired\n *\n * @returns {Boolean}\n */\n isExpired() {\n const now = Date.now();\n return (\n this.user !== null &&\n this.user.status !== \"active\" &&\n this.user.user_access !== null &&\n now - this.user.user_access.expires_at * 1000 > 0\n );\n }\n },\n\n created() {\n this.load();\n },\n\n methods: {\n formatDate(...args) {\n return App.formatDate.call(App, ...args);\n },\n\n /**\n * Tries fetching the data from the API\n *\n * Please note that this cannot be done if the data has already been loaded\n * before.\n */\n load() {\n // loading data is forbidden if the component is already loading or loaded\n if ([null, \"error\"].indexOf(this.state) === -1) {\n return;\n }\n\n this.state = \"loading\";\n this.error = null;\n\n get(this.$route.params.id)\n .then(user => {\n this.user = user;\n this.checkedOptions = this.options.reduce(\n (acc, option) =>\n Object.assign(acc, {\n [option.id]:\n user.permission_options.indexOf(\n option.id\n ) !== -1\n }),\n {}\n );\n\n this.state = \"loaded\";\n })\n .catch(({ user_message: error }) => {\n this.error = error;\n this.state = \"error\";\n });\n },\n\n /**\n * Alias to load(), for better readibility in the view\n *\n * @see load()\n */\n retryLoading() {\n this.load();\n },\n\n /**\n * Checks whether the user requires at least one permission for the given level\n *\n * @param {'national'|'local'} level\n *\n * @returns {Boolean}\n */\n hasPermissionsFor(level) {\n return (\n this.permission &&\n this.permission[`${level}_permissions`] &&\n this.permission[`${level}_permissions`].length > 0\n );\n },\n\n /**\n * Allows access to the user\n */\n validate() {\n if (this.validation.state === \"loading\") {\n return;\n }\n\n this.validation.state = \"loading\";\n this.validation.error = null;\n\n sendActivationLink(this.$route.params.id, {\n options: this.checkedOptions\n })\n .then(() => {\n this.validation.state = null;\n\n notify({\n group: \"notifications\",\n type: \"success\",\n title: \"Accès envoyé\",\n text: \"Un accès a été envoyé à l'utilisateur\"\n });\n\n this.$router.push(\"/liste-des-utilisateurs\");\n })\n .catch(({ user_message: error }) => {\n this.validation.state = null;\n this.validation.error = error;\n });\n },\n\n /**\n * Denies access to the user\n */\n deny() {\n if (this.validation.state === \"loading\") {\n return;\n }\n\n this.validation.state = \"loading\";\n this.validation.error = null;\n\n denyAccess(this.$route.params.id)\n .then(() => {\n this.validation.state = null;\n\n notify({\n group: \"notifications\",\n type: \"success\",\n title: \"Accès refusé\",\n text: \"L'utilisateur a été supprimé de la base\"\n });\n\n this.$router.push(\"/liste-des-utilisateurs\");\n })\n .catch(({ user_message: error }) => {\n this.validation.state = null;\n this.validation.error = error;\n });\n },\n\n /**\n *\n */\n remove() {\n if (this.validation.state === \"loading\") {\n return;\n }\n\n // eslint-disable-next-line no-alert\n if (\n !window.confirm(\n \"Êtes-vous sûr de vouloir supprimer cet accès ?\"\n )\n ) {\n return;\n }\n\n this.validation.state = \"loading\";\n this.validation.error = null;\n\n remove(this.$route.params.id)\n .then(() => {\n this.validation.state = null;\n\n notify({\n group: \"notifications\",\n type: \"success\",\n title: \"Accès supprimé\",\n text: \"L'utilisateur a été supprimé de la base\"\n });\n\n this.$router.push(\"/liste-des-utilisateurs\");\n })\n .catch(({ user_message: error }) => {\n this.validation.state = null;\n this.validation.error = error;\n });\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.validate.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.validate.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./users.validate.vue?vue&type=template&id=5244792c&lang=pug&\"\nimport script from \"./users.validate.vue?vue&type=script&lang=js&\"\nexport * from \"./users.validate.vue?vue&type=script&lang=js&\"\nimport style0 from \"./users.validate.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--withMargin\"},[_c('NavBar'),_c('section',{staticClass:\"section section-white\"},[_c('div',{staticClass:\"container\"},[_c('Form',_vm._b({on:{\"complete\":_vm.onComplete},model:{value:(_vm.formData),callback:function ($$v) {_vm.formData=$$v},expression:\"formData\"}},'Form',_vm.formDefinition,false))],1)])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport Form from \"#app/components/form/form.vue\";\nimport { get as getConfig, load } from \"#helpers/api/config\";\nimport { upgrade } from \"#helpers/api/user\";\n\nexport default {\n components: {\n NavBar,\n Form\n },\n\n data() {\n const {\n user: { id: userId, email }\n } = getConfig();\n\n return {\n formData: {\n email\n },\n formDefinition: {\n title: \"Résorption Bidonvilles a été mise à jour\",\n description:\n \"La plateforme a été mise à jour en septembre 2019. A présent, il est possible pour les correspondants d'ouvrir des accès à un plus grand nombre d'acteurs.\",\n\n steps: [\n {\n sections: [\n {\n title:\n \"Pour compléter le futur annuaire, merci de renseigner les champs suivants\",\n inputs: {\n email: {\n type: \"text\",\n mandatory: false,\n label: \"Votre email\",\n disabled: true\n },\n position: {\n type: \"text\",\n mandatory: true,\n label: \"Votre fonction\"\n },\n phone: {\n type: \"text\",\n mandatory: false,\n label: \"Votre numéro de téléphone\",\n specificProps: {\n maxlength: 10\n }\n }\n }\n },\n {\n title:\n \"Pour bénéficier de la mise à jour, merci de créer un nouveau mot de passe\",\n inputs: {\n password: {\n type: \"password\",\n mandatory: true,\n label:\n \"Définissez votre nouveau mot de passe\",\n description:\n \"Votre mot de passe doit comporter au minimum 12 caractères, une majuscule, une minuscule, et un caractère non alphabétique (exemples : '.' ';' ',' '_' '!' '?', ...)
Nous vous recommandons de choisir une phrase intelligible en guise de mot de passe : plus simple à retenir qu'une suite de caractères aléatoires, et plus sécurisée.\"\n }\n }\n }\n ],\n wording: {\n submit: \"Mettre à jour\",\n error: \"Votre compte n'a pas pu être mis à jour\",\n success: \"Votre compte a ben été mis à jour\"\n },\n submit: data => upgrade(userId, data)\n }\n ]\n }\n };\n },\n\n methods: {\n onComplete() {\n load()\n .then(() => {\n this.$router.push({ path: \"/\" });\n })\n .catch(() => {\n window.location.reload();\n });\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.upgrade.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.upgrade.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./users.upgrade.vue?vue&type=template&id=2e308644&lang=pug&\"\nimport script from \"./users.upgrade.vue?vue&type=script&lang=js&\"\nexport * from \"./users.upgrade.vue?vue&type=script&lang=js&\"\nimport style0 from \"./users.upgrade.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--withMargin\"},[_c('NavBar'),_c('section',{staticClass:\"section section-white requestNewPassword\"},[_c('div',{staticClass:\"container\"},[_c('Form',_vm._b({on:{\"complete\":_vm.onComplete},model:{value:(_vm.formData),callback:function ($$v) {_vm.formData=$$v},expression:\"formData\"}},'Form',_vm.formDefinition,false))],1)])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport { requestNewPassword } from \"#helpers/api/user\";\nimport Form from \"#app/components/form/form.vue\";\n\nexport default {\n components: {\n NavBar,\n Form\n },\n data() {\n return {\n formData: {},\n formDefinition: {\n title: \"Renouvellement de mot de passe\",\n description:\n \"Si vous avez perdu votre mot de passe, vous pouvez demander à en définir un nouveau.\",\n\n steps: [\n {\n sections: [\n {\n inputs: {\n email: {\n type: \"text\",\n label: \"Votre courriel\",\n description:\n \"Saisissez ici le courriel associé au compte Résorption Bidonvilles pour lequel vous souhaitez renouveler le mot de passe\",\n mandatory: true\n }\n }\n }\n ],\n wording: {\n submit: \"Renouveller mon mot de passe\",\n success:\n \"Un mail vous a été adressé avec les instructions\",\n error: \"La demande de renouvellement a échoué\"\n },\n submit: ({ email }) => requestNewPassword(email)\n }\n ]\n }\n };\n },\n methods: {\n onComplete() {\n this.$router.push({ path: \"/\" });\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.requestNewPassword.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.requestNewPassword.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./users.requestNewPassword.vue?vue&type=template&id=1f7873ca&lang=pug&\"\nimport script from \"./users.requestNewPassword.vue?vue&type=script&lang=js&\"\nexport * from \"./users.requestNewPassword.vue?vue&type=script&lang=js&\"\nimport style0 from \"./users.requestNewPassword.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--withMargin\"},[_c('NavBar'),_c('section',{staticClass:\"section section-white\",attrs:{\"id\":\"form\"}},[_c('div',{staticClass:\"container\"},[(_vm.state === 'loading')?_c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Chargement des données en cours...\")])]):_vm._e(),(_vm.state === 'error')?_c('div',{staticClass:\"notification error full-width\"},[_c('p',[_c('font-awesome-icon',{attrs:{\"icon\":\"times\"}}),_vm._v(\" \"),_c('strong',[_vm._v(\"Une erreur est survenue\")])],1),_c('p',[_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.error.replace(/\\n/g, '
'))}})]),_c('p',[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.retryLoading}},[_vm._v(\"Réessayer ?\")])])]):_vm._e(),(_vm.state === 'loaded')?_c('div',[_c('Form',_vm._b({ref:\"form\",on:{\"complete\":_vm.onComplete},model:{value:(_vm.formData),callback:function ($$v) {_vm.formData=$$v},expression:\"formData\"}},'Form',_vm.formDefinition,false))],1):_vm._e()])])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { checkPasswordToken, setPassword } from \"#helpers/api/user\";\nimport NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport Form from \"#app/components/form/form.vue\";\n\nexport default {\n components: {\n NavBar,\n Form\n },\n\n data() {\n const formData = {\n email: \"\"\n };\n\n const formDefinition = {\n title: \"Définition d'un nouveau mot de passe\",\n description:\n \"Le formulaire suivant vous permet de choisir un nouveau mot de passe\",\n steps: [\n {\n title: \"\",\n sections: [\n {\n title: \"\",\n inputs: {\n email: {\n label: \"Votre email\",\n mandatory: false,\n type: \"text\",\n disabled: true\n },\n password: {\n label: \"Définissez votre mot de passe\",\n description:\n \"Votre mot de passe doit comporter au minimum 12 caractères, une majuscule, une minuscule, et un caractère non alphabétique (exemples : '.' ';' ',' '_' '!' '?', ...)
Nous vous recommandons de choisir une phrase intelligible en guise de mot de passe : plus simple à retenir qu'une suite de caractères aléatoires, et plus sécurisée.\",\n mandatory: true,\n type: \"password\"\n }\n }\n }\n ],\n wording: {\n submit: \"Changer de mot de passe\",\n error: \"Votre mot de passe n'a pas pu être changé\",\n success: \"Votre nouveau mot de passe a été changé\"\n },\n submit: data =>\n setPassword(\n this.user.id,\n Object.assign(data, {\n token: this.$route.params.token\n })\n )\n }\n ]\n };\n\n return {\n state: null,\n error: null,\n user: null,\n\n /**\n * Form data\n */\n formData,\n\n /**\n * Form definition\n *\n * @type {Form},\n */\n formDefinition\n };\n },\n\n created() {\n this.load();\n },\n\n methods: {\n /**\n * Tries validating the token\n */\n load() {\n // loading data is forbidden if the component is already loading or loaded\n if ([null, \"error\"].indexOf(this.state) === -1) {\n return;\n }\n\n this.state = \"loading\";\n this.error = null;\n\n checkPasswordToken(this.$route.params.token)\n .then(user => {\n this.user = user;\n this.formData.email = user.email;\n this.state = \"loaded\";\n })\n .catch(({ user_message: error }) => {\n this.error = error;\n this.state = \"error\";\n });\n },\n\n /**\n * Alias to load(), for better readibility in the view\n *\n * @see load()\n */\n retryLoading() {\n this.load();\n },\n\n /**\n *\n */\n onComplete() {\n this.$router.push(\"/\");\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.setNewPassword.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.setNewPassword.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./users.setNewPassword.vue?vue&type=template&id=58aa4163&lang=pug&\"\nimport script from \"./users.setNewPassword.vue?vue&type=script&lang=js&\"\nexport * from \"./users.setNewPassword.vue?vue&type=script&lang=js&\"\nimport style0 from \"./users.setNewPassword.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--withMargin\"},[_c('NavBar'),_c('section',[(_vm.state !== 'loaded')?_c('div',{staticClass:\"container\"},[(_vm.state === 'loading')?_c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Chargement des données en cours...\")])]):_vm._e(),(_vm.state === 'error')?_c('div',{staticClass:\"notification error full-width\"},[_c('span',[_vm._v(_vm._s(_vm.error)+\". \"),_c('span',{on:{\"click\":_vm.retryLoading}},[_vm._v(\"Réessayer ?\")])])]):_vm._e()]):_vm._e(),(_vm.state === 'loaded')?_c('div',[_c('header',{staticClass:\"pageHeader\"},[_c('div',{staticClass:\"pageHeader-wrapper\"},[_c('section',{staticClass:\"pageHeader-main\"},[_c('section',{staticClass:\"pageHeader-info\"},[_c('h1',{staticClass:\"pageHeader-title\"},[_vm._v(\"Dispositifs - \"+_vm._s(_vm.locationTitle))])]),_c('aside',{staticClass:\"pageHeader-buttons\"},[(_vm.hasPermission('plan.create'))?_c('router-link',{staticClass:\"button\",attrs:{\"to\":\"/nouveau-dispositif\"}},[_c('font-awesome-icon',{attrs:{\"icon\":\"pencil-alt\"}}),_c('span',[_vm._v(\"Déclarer un dispositif\")])],1):_vm._e()],1)])])]),_c('div',{staticClass:\"container plansList-body\"},[_c('CollectivityInput',{staticClass:\"planList-search\",model:{value:(_vm.location),callback:function ($$v) {_vm.location=$$v},expression:\"location\"}}),_c('Table',{attrs:{\"columns\":_vm.columns,\"content\":_vm.pageContent,\"emptyLabel\":'Aucun dispositif sur ce territoire'},on:{\"click\":_vm.routeToPlan},scopedSlots:_vm._u([{key:\"name\",fn:function(props){return [_c('strong',[_vm._v(_vm._s(props.row.name))]),_c('br'),(props.row.expected_to_end_at)?_c('span',[_vm._v(\"du \"+_vm._s(_vm.formatDate(props.row.started_at / 1000))),_c('br'),_vm._v(\"au \"+_vm._s(_vm.formatDate(props.row.expected_to_end_at / 1000))),_c('br'),_vm._v(_vm._s(_vm.dateDiff(props.row.started_at, props.row.expected_to_end_at)))]):_c('span',[_vm._v(\"depuis le \"+_vm._s(_vm.formatDate(props.row.started_at / 1000)))]),_c('br'),_vm._l((props.row.topics),function(topic){return _c('p',[_c('span',{staticClass:\"rbTag\"},[_vm._v(_vm._s(topic.name))])])})]}},{key:\"departement\",fn:function(props){return [_vm._v(_vm._s(props.row.departement.code))]}},{key:\"location\",fn:function(props){return [(props.row.location_type.id === 'shantytowns')?_c('span',_vm._l((props.row.shantytowns),function(shantytown){return _c('span',[_vm._v(\"- \"+_vm._s(shantytown.usename)),_c('br')])}),0):_vm._e(),(props.row.location_type.id === 'location')?_c('span',[_vm._v(_vm._s(props.row.location.label))]):_vm._e(),(props.row.location_type.id === 'housing')?_c('span',[_vm._v(\"Dans le logement\")]):_vm._e(),(props.row.location_type.id === 'other')?_c('span',[_vm._v(_vm._s(props.row.location_details))]):_vm._e()]}},{key:\"government\",fn:function(props){return [_c('router-link',{staticClass:\"user\",attrs:{\"to\":(\"/annuaire/\" + (props.row.government_contacts[0].organization.id))}},[_vm._v(_vm._s(props.row.government_contacts[0].name)),_c('br'),_vm._v(_vm._s(props.row.government_contacts[0].organization.name))])]}},{key:\"operator\",fn:function(props){return [_c('router-link',{staticClass:\"user\",attrs:{\"to\":(\"/annuaire/\" + (props.row.operator_contacts[0].organization.id))}},[_vm._v(_vm._s(props.row.operator_contacts[0].name)),_c('br'),_vm._v(_vm._s(props.row.operator_contacts[0].organization.name))])]}}],null,false,1173401747)})],1)]):_vm._e()])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { postApi, getApi, patchApi } from \"#helpers/api/main\";\n\n/**\n * Lists all existing plans\n *\n * @returns {Promise}\n */\nexport function list() {\n return getApi(\"/plans\");\n}\n\n/**\n * Fetchs a specific plan from the database\n *\n * @param {string} id\n *\n * @returns {Promise}\n */\nexport async function get(id) {\n return getApi(`/plans/${id}`);\n}\n\n/**\n * Creates a new plan\n *\n * @param {Object} data\n *\n * @returns {Promise}\n */\nexport async function create(data) {\n return postApi(\"/plans\", data);\n}\n\n/**\n * Updates a plan\n *\n * @param {Object} data\n *\n * @returns {Promise}\n */\nexport async function update(id, data) {\n return postApi(`/plans/${id}`, data);\n}\n\n/**\n * Updates a plan's details\n *\n * @param {number} planId\n * @param {Object} data\n *\n * @returns {Promise}\n */\nexport async function addState(planId, data) {\n return postApi(`/plans/${planId}/states`, data);\n}\n\n/**\n *\n */\nexport async function close(planId, data) {\n return patchApi(`/plans/${planId}`, {\n operation: \"close\",\n data\n });\n}\n","import Table from \"#app/components/table/table.vue\";\nimport { list } from \"#helpers/api/plan\";\nimport \"vue-good-table/dist/vue-good-table.css\";\nimport NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport CollectivityInput from \"#app/components/form/input/collectivity/collectivity.vue\";\nimport { open } from \"#helpers/tabHelper\";\nimport {\n get as getConfig,\n getPermission,\n hasPermission\n} from \"#helpers/api/config\";\n\nexport default {\n components: {\n NavBar,\n Table,\n CollectivityInput\n },\n\n data() {\n const { user } = getConfig();\n const permission = getPermission(\"plan.list\");\n const hasNationalPermission = permission.geographic_level === \"nation\";\n const data = {\n locationTitle: null,\n defaultLocation: null,\n location: null\n };\n\n let userLocationType = user.organization.location.type;\n if (userLocationType === \"epci\" || userLocationType === \"city\") {\n userLocationType = \"departement\";\n }\n\n const userLocation = {\n id:\n userLocationType === \"nation\"\n ? null\n : user.organization.location[userLocationType].code,\n label:\n userLocationType === \"nation\"\n ? \"France\"\n : user.organization.location[userLocationType].name,\n category: userLocationType,\n data: {\n code:\n userLocationType === \"nation\"\n ? null\n : user.organization.location[userLocationType].code,\n type: userLocationType\n }\n };\n\n if (hasNationalPermission !== true || userLocationType === \"nation\") {\n data.defaultLocation = { ...userLocation };\n data.location = null;\n } else {\n data.defaultLocation = {\n id: null,\n label: \"France\",\n category: \"Pays\",\n data: {\n code: null,\n type: \"nation\"\n }\n };\n data.location = { ...userLocation };\n }\n\n if (data.defaultLocation.data.type === \"nation\") {\n data.locationTitle = \"National\";\n } else {\n data.locationTitle = data.defaultLocation.label;\n }\n\n return Object.assign(data, {\n /**\n * List of plans\n *\n * @type {Array.}\n */\n plans: [],\n\n /**\n * The error's user message\n *\n * Obivously, null if there is no error\n *\n * @type {string|null}\n */\n error: null,\n\n /**\n * The current state of the page\n *\n * One out of: 'loading', 'error', or 'loaded'\n *\n * @type {string|null}\n */\n state: null\n });\n },\n\n computed: {\n currentLocation() {\n return this.location || this.defaultLocation;\n },\n columns() {\n return [\n { id: \"name\", label: \"Nom du dispositif\" },\n { id: \"departement\", label: \"Dpt\" },\n { id: \"location\", label: \"Lieu\" },\n { id: \"government\", label: \"Service de l'état\" },\n { id: \"operator\", label: \"Opérateur\" }\n ];\n },\n pageContent() {\n return this.plans\n .filter(({ closed_at: closedAt }) => closedAt === null)\n .filter(plan => {\n if (this.currentLocation.data.type === \"nation\") {\n return true;\n }\n\n const l = plan[this.currentLocation.data.type];\n return l && l.code === `${this.currentLocation.data.code}`;\n });\n }\n },\n\n created() {\n this.load();\n },\n\n methods: {\n dateDiff(...args) {\n return App.dateDiff(...args);\n },\n\n formatDate(...args) {\n return window.App.formatDate(...args);\n },\n\n /**\n * Tries fetching the data from the API\n *\n * Please note that this cannot be done if the data has already been loaded\n * before.\n */\n load() {\n // loading data is forbidden if the component is already loading or loaded\n if ([null, \"error\"].indexOf(this.state) === -1) {\n return;\n }\n\n this.state = \"loading\";\n this.error = null;\n\n list()\n .then(plans => {\n this.plans = plans;\n this.state = \"loaded\";\n })\n .catch(({ user_message: error }) => {\n this.error = error;\n this.state = \"error\";\n });\n },\n\n /**\n * Alias to load(), for better readibility in the view\n *\n * @see load()\n */\n retryLoading() {\n this.load();\n },\n\n /**\n * Redirects to a plan's details page\n *\n * @param {Object}\n */\n routeToPlan({ id: planId }) {\n const routeData = this.$router.resolve(`/dispositif/${planId}`);\n open(routeData.href);\n },\n\n hasPermission(...args) {\n return hasPermission(...args);\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./plans.list.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./plans.list.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./plans.list.vue?vue&type=template&id=ca8ce470&scoped=true&lang=pug&\"\nimport script from \"./plans.list.vue?vue&type=script&lang=js&\"\nexport * from \"./plans.list.vue?vue&type=script&lang=js&\"\nimport style0 from \"./plans.list.vue?vue&type=style&index=0&id=ca8ce470&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"ca8ce470\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('NavBar'),(_vm.loading.status === 'loading')?_c('section',{staticClass:\"section section-white\"},[_vm._m(0)]):_vm._e(),(_vm.loading.status === 'failed')?_c('section',{staticClass:\"section section-white\"},[_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"notification error full-width\"},[_c('span',[_vm._v(_vm._s(_vm.loading.error)+\". \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.load}},[_vm._v(\"Réessayer ?\")])])])])]):_vm._e(),(_vm.loading.status === 'completed')?_c('Form',_vm._b({ref:\"form\",on:{\"complete\":_vm.onComplete},model:{value:(_vm.formData),callback:function ($$v) {_vm.formData=$$v},expression:\"formData\"}},'Form',_vm.formDefinition,false)):_vm._e()],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Chargement des données en cours...\")])])])}]\n\nexport { render, staticRenderFns }","import { getApi } from \"#helpers/api/main\";\n\n/**\n * Lists all departements related to a specific region\n *\n * @returns {Promise}\n */\nexport function getDepartementsForRegion(regionCode) {\n return getApi(`/regions/${regionCode}/departements`);\n}\n\n/**\n * Lists all departements related to a specific epci\n *\n * @returns {Promise}\n */\nexport function getDepartementsForEpci(epciCode) {\n return getApi(`/epci/${epciCode}/departements`);\n}\n","import NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport Form from \"#app/components/form/form.vue\";\nimport { get as getConfig, hasPermission } from \"#helpers/api/config\";\nimport { create } from \"#helpers/api/plan\";\nimport {\n getByCategory,\n getMembers,\n getMembersOfCategory\n} from \"#helpers/api/organization\";\nimport { notify } from \"#helpers/notificationHelper\";\nimport { getDepartementsForRegion } from \"#helpers/api/geo\";\n\nexport default {\n components: {\n NavBar,\n Form\n },\n\n data() {\n const { user: me, topics } = getConfig();\n const data = {\n user: me,\n formData: {\n association: []\n },\n loading: {\n status: null,\n error: null\n }\n };\n const that = this;\n const refs = this.$refs;\n\n const contactMissing = {\n type: \"hidden\",\n label: \"Personne référente dans la structure\",\n description:\n \"Aucune personne de cette structure n'est encore enregistrée sur la plateforme résorption bidonville.\",\n mandatory: true,\n condition({ association }) {\n return (\n association !== undefined &&\n association.length > 0 &&\n refs.form.getInputById(\"contact\").options.length === 0 &&\n that.loadingAssociationContacts === false\n );\n }\n };\n\n data.formDefinition = {\n title: \"Déclarer un dispositif\",\n descriptionTitle: \"Qu'est-ce qu'un dispositif ?\",\n description:\n \"C’est une action mise en place et financée en partie ou en totalité par un acteur public. Sa finalité est la résorption des bidonvilles.
Qui doit le déclarer ? Le service de l'Etat à l'initiative du dispositif doit le déclarer. L'acteur de terrain sera en charge de renseigner les informations relatives à l'action menée.\",\n steps: [\n {\n title: \"Dispositf\",\n wording: {\n error: \"La déclaration du dispositif a échoué\",\n submit: \"Déclarer le dispositif\"\n },\n sections: [\n {\n title: \"Intervention\",\n icon: \"list\",\n inputs: {\n name: {\n type: \"text\",\n label: \"Nom du dispositif\",\n mandatory: true\n },\n departement: {\n type: \"select\",\n label: \"Département d'intervention\",\n mandatory: true\n },\n startedAt: {\n type: \"date\",\n label: \"Date de début\",\n mandatory: true\n },\n expectedToEndAt: {\n type: \"date\",\n label: \"Date de fin prévue (facultatif)\",\n mandatory: false\n },\n in_and_out: {\n type: \"radio\",\n label:\n \"Ce dispositif implique-t-il un système d'entrées et de sorties des personnes ?\",\n mandatory: true,\n options: [\n { value: 1, label: \"Oui\" },\n { value: 0, label: \"Non\" }\n ]\n },\n topics: {\n type: \"checkbox\",\n label: \"Champs d'intervention\",\n description:\n \"Les thématiques sélectionnées définissent l'action que vous menez et les indicateurs de suivi associés.\",\n mandatory: true,\n options: topics.map(({ uid, name }) => ({\n value: uid,\n label: name\n }))\n },\n goals: {\n type: \"textarea\",\n label: \"Objectifs\",\n mandatory: true,\n specificProps: {\n placeholder:\n \"Précisez les objectifs, les enjeux, le contexte du dispositif\\n\\nPar exemple : résorber le bidonville, scolariser 80% des enfants identités en bidonvilles...\"\n }\n }\n }\n },\n {\n title: \"Lieu\",\n icon: \"map-pin\",\n inputs: {\n locationType: {\n type: \"radio\",\n label:\n \"L'action se déroule dans le cadre suivant\",\n mandatory: true,\n options: [\n {\n value: \"shantytowns\",\n label:\n \"sur site(s) : bidonville ou squat\"\n },\n {\n value: \"location\",\n label: \"sur terrain d'insertion\"\n },\n {\n value: \"housing\",\n label: \"dans le logement\"\n },\n {\n value: \"other\",\n label:\n \"dans plusieurs lieux (hébergement, permanence, rue...)\"\n }\n ]\n },\n locationShantytowns: {\n type: \"townList\",\n label: \"Sites concernés\",\n description: `Merci de sélectionner les sites concernés par le dispositif.
Si vous ne trouvez pas un site, vous pouvez déclarer un nouveau site.`,\n mandatory: true,\n condition({ locationType }) {\n return locationType === \"shantytowns\";\n }\n },\n locationAddress: {\n type: \"addressWithLocation\",\n label: \"Adresse du terrain d'insertion\",\n mandatory: true,\n condition({ locationType }) {\n return locationType === \"location\";\n }\n },\n locationDetails: {\n type: \"text\",\n label: \"Préciser\",\n mandatory: true,\n condition({ locationType }) {\n return locationType === \"other\";\n }\n }\n }\n },\n {\n title: \"Contacts\",\n inputs: {\n government: {\n type: \"autocompleter\",\n label:\n \"Personne au service de l'état en charge du pilotage\",\n mandatory: true,\n specificProps: {\n autocompleter: d => {\n const p = getMembersOfCategory(\n \"public_establishment\"\n );\n const p2 = p.then(({ users }) =>\n users\n .filter(\n ({\n first_name: firstName,\n last_name: lastName\n }) =>\n [\n firstName,\n lastName\n ].some(value =>\n d\n .split(\" \")\n .every(\n part =>\n value\n .toLowerCase()\n .indexOf(\n part.toLowerCase()\n ) !==\n -1\n )\n )\n )\n .map(\n ({\n id,\n first_name: firstName,\n last_name: lastName\n }) => ({\n id,\n label: `${firstName} ${lastName.toUpperCase()}`\n })\n )\n );\n p2.abort = p.abort;\n\n return p2;\n },\n showCategory: false,\n allowMultiple: false,\n float: true\n }\n },\n association: {\n type: \"autocompleter\",\n label:\n \"Opérateur ou service en charge de l'intervention\",\n mandatory: true,\n specificProps: {\n autocompleter: d => {\n const p = getByCategory(\n \"association\"\n );\n const p2 = p.then(\n ({ organizations }) =>\n organizations\n .filter(\n ({\n name,\n abbreviation\n }) =>\n d\n .split(\" \")\n .every(\n part =>\n name\n .toLowerCase()\n .indexOf(\n part.toLowerCase()\n ) !==\n -1\n ) ||\n (abbreviation !==\n null &&\n abbreviation\n .toLowerCase()\n .indexOf(\n d.toLowerCase()\n ) >= 0)\n )\n .map(organization => ({\n id: organization.id,\n label:\n organization.name,\n category: `${organization.departement_code} - ${organization.departement_name}`,\n data: {\n name:\n organization.name,\n departement:\n organization.departement_code\n }\n }))\n );\n p2.abort = p.abort;\n\n return p2;\n },\n showCategory: true,\n allowMultiple: false,\n float: true\n }\n },\n contact: {\n type: \"select\",\n label:\n \"Personne référente dans la structure\",\n mandatory: true,\n options: [],\n condition({ association }) {\n return (\n association !== undefined &&\n association.length > 0 &&\n this.options.length > 0\n );\n }\n },\n contact_missing: contactMissing\n }\n },\n {\n title: \"Financements\",\n inputs: {\n finances: {\n type: \"planFunding\",\n label: \"Financements\",\n mandatory: false\n }\n }\n }\n ],\n submit: create\n }\n ]\n };\n\n if (hasPermission(\"user.create\")) {\n window.createUser = this.createUser;\n contactMissing.description +=\n '
Vous pouvez créer un compte utilisateur en cliquant ici.';\n }\n\n if (me.organization.category.uid === \"public_establishment\") {\n data.formData.government = [\n {\n id: me.id,\n label: `${me.first_name} ${me.last_name.toUpperCase()}`\n }\n ];\n }\n\n return data;\n },\n\n watch: {\n \"formData.association\": function organizationType() {\n this.loadingAssociationContacts = true;\n this.$refs.form.getInputById(\"contact\").options = [];\n\n if (this.formData.association.length === 0) {\n return;\n }\n\n getMembers(this.formData.association[0].id).then(({ users }) => {\n this.$refs.form.getInputById(\"contact\").options = users.map(\n ({ id, first_name: firstName, last_name: lastName }) => ({\n value: id,\n label: `${firstName} ${lastName.toUpperCase()}`\n })\n );\n this.loadingAssociationContacts = false;\n });\n }\n },\n\n mounted() {\n this.load();\n window.addEventListener(\n \"message\",\n ({ data }) => {\n this.$refs.form.getInputById(\"contact\").options = [\n {\n value: data.id,\n label: `${\n data.first_name\n } ${data.last_name.toUpperCase()}`\n }\n ];\n this.formData.contact = data.id;\n this.loadingAssociationContacts = false;\n\n notify({\n group: \"notifications\",\n type: \"success\",\n title: \"Utilisateur créé\",\n text: \"La personne référente est désormais sélectionnée\"\n });\n },\n false\n );\n },\n\n methods: {\n getDepartementsForCurrentUser() {\n const LEVEL_VALUES = {\n city: 1,\n epci: 2,\n departement: 3,\n region: 4,\n nation: 5\n };\n const featureLevel = this.user.permissions.plan.create\n .geographic_level;\n const userLevel = this.user.organization.location.type;\n\n let level;\n if (featureLevel === \"local\") {\n level = userLevel;\n } else if (LEVEL_VALUES[userLevel] > LEVEL_VALUES[featureLevel]) {\n level = userLevel;\n } else {\n level = featureLevel;\n }\n\n // feature level = \"local\"\n switch (level) {\n case \"nation\": {\n const { departements } = getConfig();\n return Promise.resolve(departements);\n }\n\n case \"region\":\n return getDepartementsForRegion(\n this.user.organization.location.region.code\n ).then(({ departements }) => departements);\n\n default:\n return Promise.resolve([\n this.user.organization.location.departement\n ]);\n }\n },\n\n load() {\n if (\n this.loading.status === \"loading\" ||\n this.loading.status === \"completed\"\n ) {\n return;\n }\n\n this.loading.status = \"loading\";\n this.loading.error = null;\n\n this.getDepartementsForCurrentUser()\n .then(departements => {\n this.loading.status = \"completed\";\n\n this.$nextTick(() => {\n const input = this.$refs.form.getInputById(\n \"departement\"\n );\n input.options = departements.map(({ code, name }) => ({\n label: `${code} - ${name}`,\n value: code\n }));\n });\n })\n .catch(error => {\n this.loading.status = \"failed\";\n this.loading.error = error;\n });\n },\n createUser() {\n const { name, departement } = this.formData.association[0].data;\n const { href } = this.$router.resolve(\"/nouvel-utilisateur\");\n window.open(\n `${href}?association_name=${encodeURIComponent(\n name\n )}&association_departement=${departement}`,\n \"newUser\",\n \"menubar=no, status=no\"\n );\n },\n onComplete(stepData, [{ id }]) {\n notify({\n group: \"notifications\",\n type: \"success\",\n title: \"Dispositif correctement déclaré\",\n text: \"Le dispositif a bien été ajouté en base de données\"\n });\n\n this.$router.push(`/dispositif/${id}`);\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./plans.create.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./plans.create.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./plans.create.vue?vue&type=template&id=2ee54620&lang=pug&\"\nimport script from \"./plans.create.vue?vue&type=script&lang=js&\"\nexport * from \"./plans.create.vue?vue&type=script&lang=js&\"\nimport style0 from \"./plans.create.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--withMargin\"},[_c('NavBar'),(_vm.closingAlertStatus !== 'hidden')?_c('div',{staticClass:\"alert\"},[_c('div',{ref:\"wrapper\",staticClass:\"alert-wrapper\"},[_c('header',{staticClass:\"alert-header\"},[_c('hgroup',[_c('h1',{staticClass:\"alert-title\"},[_vm._v(\"Confirmez-vous la fermeture du dispositif \"+_vm._s(_vm.plan.name)+\" ?\")])]),_c('div',{staticClass:\"alert-actionButtons\"},[_c('button',{staticClass:\"button secondary\",attrs:{\"disabled\":_vm.closingStatus === 'pending'},on:{\"click\":function($event){return _vm.setClosingAlertStatus('hidden')}}},[_vm._v(\"Annuler\")]),(_vm.closingAlertStatus === 'step1')?_c('button',{staticClass:\"button\",on:{\"click\":_vm.checkClosing}},[_vm._v(\"Suite\")]):_vm._e(),(_vm.closingAlertStatus === 'step2')?_c('button',{staticClass:\"button\",attrs:{\"disabled\":_vm.closingStatus === 'pending'},on:{\"click\":_vm.close}},[_vm._v(\"Valider\")]):_vm._e()])]),_c('section',{staticClass:\"alert-body\"},[(_vm.closingAlertStatus === 'step1')?_c('div',[_c('p',[_vm._v(\"Avant de fermer définitivement le dispositif, assurez-vous que les indicateurs de suivi renseignés par l'opérateur sont à jour.\"),(_vm.plan.last_update !== null)?_c('span',[_vm._v(\" Pour information, la dernière mise à jour des indicateurs a eu lieu le \"+_vm._s(_vm.formatDate(_vm.plan.last_update / 1000, 'd/m/y'))+\".\")]):_vm._e(),_c('br'),_vm._v(\"Merci de renseigner les dépenses exécutées de l'année en cours et des années précédentes si nécessaire\")]),_c('PlanFunding',{attrs:{\"inputMode\":\"closing\",\"minYear\":_vm.minYear},model:{value:(_vm.closingData.finances),callback:function ($$v) {_vm.$set(_vm.closingData, \"finances\", $$v)},expression:\"closingData.finances\"}})],1):_c('div',[_c('p',[_c('Input',{attrs:{\"id\":\"closedAt\",\"mandatory\":true,\"type\":\"date\",\"label\":\"Date de fermeture du dispositif\",\"description\":\"La date de fermeture du dispositif doit être postérieure - ou égale - à la dernière date de mise à jour des indicateurs.\",\"disabled\":_vm.closingStatus === 'pending'},model:{value:(_vm.closingData.closedAt),callback:function ($$v) {_vm.$set(_vm.closingData, \"closedAt\", $$v)},expression:\"closingData.closedAt\"}})],1),_c('p',[_c('Input',{attrs:{\"id\":\"comment\",\"mandatory\":true,\"type\":\"textarea\",\"label\":\"Commentaire\",\"description\":_vm.closingCommentDescription,\"disabled\":_vm.closingStatus === 'pending'},model:{value:(_vm.closingData.comment),callback:function ($$v) {_vm.$set(_vm.closingData, \"comment\", $$v)},expression:\"closingData.comment\"}})],1)]),(_vm.closingErrors.length > 0)?_c('div',{staticClass:\"notification error\"},[_vm._v(\"Une erreur est survenue\")]):_vm._e(),(_vm.closingErrors.length > 0)?_c('p',{staticClass:\"error\"},[_c('ul',_vm._l((_vm.closingErrors),function(error){return _c('li',[_vm._v(_vm._s(error))])}),0)]):_vm._e()])])]):_vm._e(),_c('section',{staticClass:\"section-white\"},[(_vm.status !== 'loaded')?_c('div',{staticClass:\"container\"},[(!_vm.status || _vm.status === 'loading')?_c('div',[_vm._m(0)]):(_vm.status === 'loadingError')?_c('div',[_c('div',{staticClass:\"notification error full-width\"},[_c('span',[_vm._v(_vm._s(_vm.error)+\". \"),_c('span',{on:{\"click\":_vm.load}},[_vm._v(\"Réessayer ?\")])])])]):_vm._e()]):_vm._e(),(_vm.status === 'loaded')?_c('div',[_c('header',{staticClass:\"pageHeader\"},[_c('div',{staticClass:\"pageHeader-wrapper\"},[_c('section',{staticClass:\"pageHeader-main\"},[_c('section',{staticClass:\"pageHeader-info\"},[_c('h1',{staticClass:\"pageHeader-title\"},[_vm._v(_vm._s(_vm.plan.name))])]),_c('aside',{staticClass:\"pageHeader-buttons\"},[(_vm.plan && _vm.plan.canUpdate)?_c('router-link',{staticClass:\"button\",attrs:{\"to\":(\"/modifier-dispositif/\" + (_vm.plan.id))}},[_c('font-awesome-icon',{attrs:{\"icon\":\"pencil-alt\"}}),_c('span',[_vm._v(\"Mettre à jour\")])],1):_vm._e(),(_vm.plan && _vm.plan.canUpdateMarks)?_c('router-link',{staticClass:\"button\",attrs:{\"to\":(\"/dispositif/\" + (_vm.plan.id) + \"/indicateurs\")}},[_c('font-awesome-icon',{attrs:{\"icon\":\"pencil-alt\"}}),_c('span',[_vm._v(\"Indicateurs\")])],1):_vm._e(),(_vm.plan && _vm.plan.closed_at === null && _vm.plan.canClose)?_c('a',{staticClass:\"button\",on:{\"click\":function($event){return _vm.setClosingAlertStatus('step1')}}},[_c('span',[_vm._v(\"Fermer le dispositif\")])]):_vm._e()],1)])])]),_c('section',{staticClass:\"container\"},[_c('SlideNote',{attrs:{\"title\":\"Qu'est-ce qu'un dispositif ?\"}},[_c('template',{slot:\"content\"},[_c('p',[_vm._v(\"C’est une action mise en place et financée en partie ou en totalité par un acteur public. Sa finalité est la résorption des bidonvilles.\"),_c('br'),_c('strong',[_vm._v(\"Qui doit le déclarer ?\")]),_vm._v(\" Le service de l'Etat à l'initiative du dispositif doit le déclarer. L'acteur de terrain sera en charge de renseigner les informations relatives à l'action menée.\")]),_c('p',[_c('strong',[_vm._v(\"À quoi sert le suivi ?\")]),_c('br'),_vm._v(\"La mise à jour des données de suivi permettent d’observer la progression des démarches des habitants par rapport à une situation initiale et les résultats des actions.\"),_c('br'),_vm._v(\"Toutes ces données peuvent êtres utilisées pour la communication auprès des partenaires.\")])])],2),_c('section',{staticClass:\"dataSection\"},[_c('header',{staticClass:\"dataSection-header\"},[_c('h1',{staticClass:\"dataSection-title\"},[_c('span',{staticClass:\"dataSection-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"list\"}})],1),_vm._v(\" Intervention \")])]),_c('article',{staticClass:\"block\"},[_c('div',{staticClass:\"dataSection-line\"},[_c('p',{staticClass:\"data\"},[_c('span',{staticClass:\"data-label\"},[_vm._v(\"Date de début\")]),_c('br'),_vm._v(_vm._s(_vm.formatDate(_vm.plan.started_at / 1000, 'd M y')))]),(_vm.plan.expected_to_end_at)?_c('p',{staticClass:\"data\"},[_c('span',{staticClass:\"data-label\"},[_vm._v(\"Date de fin prévue\")]),_c('br'),_vm._v(_vm._s(_vm.formatDate(_vm.plan.expected_to_end_at / 1000, 'd M y'))),_c('br'),_c('strong',[_vm._v(\"Durée prévue : \"+_vm._s(_vm.dateDiff(_vm.plan.started_at, _vm.plan.expected_to_end_at)))])]):_vm._e(),(_vm.plan.closed_at)?_c('p',{staticClass:\"data\"},[_c('span',{staticClass:\"data-label\"},[_vm._v(\"Date de fin\")]),_c('br'),_vm._v(_vm._s(_vm.formatDate(_vm.plan.closed_at / 1000, 'd M y'))),_c('br'),_c('strong',[_vm._v(\"Durée : \"+_vm._s(_vm.dateDiff(_vm.plan.started_at, _vm.plan.closed_at)))])]):_vm._e()]),_c('p',{staticClass:\"data-label\"},[_vm._v(\"Champs d'intervention\")]),_vm._l((_vm.plan.topics),function(topic){return _c('p',[_c('span',{staticClass:\"rbTag rbTag--warning\"},[_vm._v(_vm._s(topic.name))]),_c('br')])}),_c('div',{staticClass:\"dataSection-line\"},[_c('p',{staticClass:\"data\"},[_c('span',{staticClass:\"data-label\"},[_vm._v(\"Objectifs\")]),_c('br'),_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.escapeHtml(_vm.plan.goals).replace(/\\n/g, '
'))}})])]),(_vm.plan.final_comment)?_c('div',{staticClass:\"dataSection-line\"},[_c('p',{staticClass:\"data\"},[_c('span',{staticClass:\"data-label\"},[_vm._v(\"Commentaire\")]),_c('br'),_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.escapeHtml(_vm.plan.final_comment).replace(/\\n/g, '
'))}})])]):_vm._e()],2)]),_c('section',{staticClass:\"dataSection\"},[_c('header',{staticClass:\"dataSection-header\"},[_c('h1',{staticClass:\"dataSection-title\"},[_c('span',{staticClass:\"dataSection-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"map-pin\"}})],1),_vm._v(\" Lieu \")])]),_c('article',{staticClass:\"block\"},[_c('div',{staticClass:\"dataSection-line\"},[_c('p',[_c('span',{staticClass:\"data-label\"},[_vm._v(_vm._s(_vm.plan.location_type.label))]),_c('br'),(_vm.plan.location_type.id === 'shantytowns')?_c('span',_vm._l((_vm.plan.shantytowns),function(shantytown){return _c('p',[_c('router-link',{staticClass:\"locationPoint\",attrs:{\"to\":(\"/site/\" + (shantytown.id))}},[_vm._v(_vm._s(shantytown.usename))])],1)}),0):_vm._e(),(_vm.plan.location_type.id === 'location')?_c('span',{staticClass:\"locationPoint\"},[_vm._v(_vm._s(_vm.plan.location.label))]):_vm._e(),(_vm.plan.location_type.id === 'other')?_c('span',[_vm._v(_vm._s(_vm.plan.location_details))]):_vm._e()])]),(_vm.plan.location_type.id === 'location')?_c('Map',{attrs:{\"display-searchbar\":false,\"towns\":[ _vm.address ],\"default-view\":_vm.center}}):_vm._e()],1)]),_c('section',{staticClass:\"dataSection\"},[_c('header',{staticClass:\"dataSection-header\"},[_c('h1',{staticClass:\"dataSection-title\"},[_c('span',{staticClass:\"dataSection-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"address-book\"}})],1),_vm._v(\" Contacts \")])]),_c('article',{staticClass:\"block\"},[_c('div',{staticClass:\"dataSection-line\"},[_c('p',{staticClass:\"data\"},[_c('span',{staticClass:\"data-label\"},[_vm._v(\"Service de l'état\")]),_c('br'),_c('router-link',{staticClass:\"user\",attrs:{\"to\":(\"/annuaire/\" + (_vm.plan.government_contacts[0].organization.id))}},[_vm._v(_vm._s(_vm.plan.government_contacts[0].first_name)+\" \"+_vm._s(_vm.plan.government_contacts[0].last_name.toUpperCase())),_c('br'),_vm._v(_vm._s(_vm.plan.government_contacts[0].organization.name))])],1)]),_c('div',{staticClass:\"dataSection-line\"},[_c('p',{staticClass:\"data\"},[_c('span',{staticClass:\"data-label\"},[_vm._v(\"Opérateur ou service en charge\")]),_c('br'),_c('router-link',{staticClass:\"user\",attrs:{\"to\":(\"/annuaire/\" + (_vm.plan.operator_contacts[0].organization.id))}},[_vm._v(_vm._s(_vm.plan.operator_contacts[0].first_name)+\" \"+_vm._s(_vm.plan.operator_contacts[0].last_name.toUpperCase())),_c('br'),_vm._v(_vm._s(_vm.plan.operator_contacts[0].organization.name))])],1)])])]),(_vm.plan && _vm.plan.finances && _vm.plan.finances.length > 0)?_c('section',{staticClass:\"dataSection rb-table\"},[_c('header',{staticClass:\"dataSection-header\"},[_c('h1',{staticClass:\"dataSection-title\"},[_c('span',{staticClass:\"dataSection-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"euro-sign\"}})],1),_vm._v(\" Financements \")])]),_c('header',{staticClass:\"planFunding-header\"},[_c('font-awesome-icon',{staticClass:\"planFunding-yearSwitch\",class:{ 'planFunding-yearSwitch--disabled': _vm.reachedMinFinanceIndex === true },attrs:{\"icon\":\"caret-square-left\"},on:{\"click\":_vm.showPreviousYear}}),_c('span',[_vm._v(_vm._s(_vm.plan.finances[_vm.currentFinanceIndex].year)+\" \")]),_c('font-awesome-icon',{staticClass:\"planFunding-yearSwitch\",class:{ 'planFunding-yearSwitch--disabled': _vm.reachedMaxFinanceIndex === true },attrs:{\"icon\":\"caret-square-right\"},on:{\"click\":_vm.showNextYear}})],1),_c('table',{staticClass:\"table block\"},[_vm._m(1),_c('tbody',[_vm._l((_vm.plan.finances[_vm.currentFinanceIndex].data),function(finance){return _c('tr',[_c('td',[_vm._v(_vm._s(finance.type.name))]),_c('td',[_vm._v(_vm._s(finance.amount)+\" €\"),_c('br'),_vm._v(\"soit \"+_vm._s(Math.round((finance.amount / _vm.financeTotal()) * 100))+\"%\")]),_c('td',[_vm._v(_vm._s(finance.details))]),(finance.realAmount)?_c('td',[_vm._v(_vm._s(finance.realAmount)+\" €\")]):(_vm.reachedMaxFinanceIndex)?_c('td',[_vm._v(\"À remplir entre janvier et mars\")]):_c('td',[_vm._v(\"Non renseignées\")])])}),_c('tr',[_c('td'),_c('td',{attrs:{\"colspan\":\"3\"}},[_c('strong',[_vm._v(\"TOTAL : \"+_vm._s(_vm.financeTotal())+\"€\")])])])],2)])]):_vm._e(),(_vm.plan.states.length > 0)?_c('section',{staticClass:\"dataSection rb-table\"},[_c('header',{staticClass:\"dataSection-header\"},[_c('h1',{staticClass:\"dataSection-title\"},[_c('span',{staticClass:\"dataSection-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"users\"}})],1),_vm._v(\" Équipe \")])]),_c('table',{staticClass:\"table block\"},[_c('thead',[_c('tr',[_c('th'),_vm._l((_vm.plan.states),function(state){return _c('th',[_vm._v(_vm._s(_vm.formatDate(new Date(state.date).getTime() / 1000, 'd B y')))])})],2)]),_c('tbody',_vm._l((_vm.availableEtpTypes),function(etpType){return _c('tr',[_c('th',[_vm._v(_vm._s(etpType.name))]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s((state.etp.find(function (ref) {\n\tvar uid = ref.type.uid;\n\n\treturn uid === etpType.uid;\n}) || { total: 0 }).total))])})],2)}),0)])]):_vm._e(),(_vm.audience)?_c('section',{staticClass:\"dataSection rb-table\"},[_c('header',{staticClass:\"dataSection-header\"},[_c('h1',{staticClass:\"dataSection-title\"},[_c('span',{staticClass:\"dataSection-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"arrow-right\"}})],1),_vm._v(\" Public \")])]),_c('table',{staticClass:\"table block\"},[_vm._m(2),_c('tbody',[_c('tr',[_vm._m(3),_c('td',[_vm._v(_vm._s(_vm.audience.in.families))]),_c('td',[_vm._v(_vm._s(_vm.audience.in.total))]),_c('td',[_vm._v(_vm._s(_vm.audience.in.women))]),_c('td',[_vm._v(_vm._s(_vm.audience.in.minors))])]),_c('tr',[_vm._m(4),_c('td',[_vm._v(_vm._s(_vm.audience.out_positive.families))]),_c('td',[_vm._v(_vm._s(_vm.audience.out_positive.total))]),_c('td',[_vm._v(_vm._s(_vm.audience.out_positive.women))]),_c('td',[_vm._v(_vm._s(_vm.audience.out_positive.minors))])]),_c('tr',[_vm._m(5),_c('td',[_vm._v(_vm._s(_vm.audience.out_excluded.families))]),_c('td',[_vm._v(_vm._s(_vm.audience.out_excluded.total))]),_c('td',[_vm._v(_vm._s(_vm.audience.out_excluded.women))]),_c('td',[_vm._v(_vm._s(_vm.audience.out_excluded.minors))])]),_c('tr',[_vm._m(6),_c('td',[_vm._v(_vm._s(_vm.audience.out_abandoned.families))]),_c('td',[_vm._v(_vm._s(_vm.audience.out_abandoned.total))]),_c('td',[_vm._v(_vm._s(_vm.audience.out_abandoned.women))]),_c('td',[_vm._v(_vm._s(_vm.audience.out_abandoned.minors))])])])])]):_vm._e(),(_vm.plan.states.length > 0)?_c('section',{staticClass:\"dataSection rb-table\"},[_c('header',{staticClass:\"dataSection-header\"},[_c('h1',{staticClass:\"dataSection-title\"},[_c('span',{staticClass:\"dataSection-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"id-card\"}})],1),_vm._v(\" Droit commun et ressources \")])]),_c('table',{staticClass:\"table block\"},[_c('thead',[_c('tr',[_c('th',{staticClass:\"table-col\"},[_vm._v(\"Nombre de personnes ayant\")]),_vm._l((_vm.plan.states),function(state){return _c('th',{staticClass:\"table-col\"},[_vm._v(_vm._s(_vm.formatDate(new Date(state.date).getTime() / 1000, 'd B y')))])})],2)]),_c('tbody',[_c('tr',[_c('td',[_vm._v(\"une domiciliation\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.droit_commun.domiciliation === null ? 'NC' : state.droit_commun.domiciliation))])})],2),_c('tr',[_c('td',[_vm._v(\"des droits CAF ouverts\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.droit_commun.droits_caf === null ? 'NC' : state.droit_commun.droits_caf))])})],2),_c('tr',[_c('td',[_vm._v(\"un emploi stable / ressources suffisantes\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.droit_commun.emploi_stable === null ? 'NC' : state.droit_commun.emploi_stable))])})],2)])])]):_vm._e(),(_vm.plan.states.length > 0 && _vm.plan.topics.find(function (ref) {\n\tvar uid = ref.uid;\n\n\treturn uid === 'health';\n}))?_c('section',{staticClass:\"dataSection rb-table\"},[_c('header',{staticClass:\"dataSection-header\"},[_c('h1',{staticClass:\"dataSection-title\"},[_c('span',{staticClass:\"dataSection-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"user-md\"}})],1),_vm._v(\" Santé \")])]),_c('table',{staticClass:\"table block\"},[_c('thead',[_c('tr',[_c('th',{staticClass:\"table-col\"}),_vm._l((_vm.plan.states),function(state){return _c('th',{staticClass:\"table-col\"},[_vm._v(_vm._s(_vm.formatDate(new Date(state.date).getTime() / 1000, 'd B y')))])})],2)]),_c('tbody',[_c('tr',[_c('th',{attrs:{\"colspan\":_vm.plan.states.length + 1}},[_c('strong',[_vm._v(\"Nombre de personnes avec...\")])])]),_c('tr',[_c('td',[_vm._v(\"une couverture AME valide\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.sante.ame_valide === null ? 'NC' : state.sante.ame_valide))])})],2),_c('tr',[_c('td',[_vm._v(\"une couverture PUMA valide\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.sante.puma_valide === null ? 'NC' : state.sante.puma_valide))])})],2),_c('tr',[_c('td',[_vm._v(\"une demande AME en cours\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.sante.ame_en_cours === null ? 'NC' : state.sante.ame_en_cours))])})],2),_c('tr',[_c('td',[_vm._v(\"une demande PUMA en cours\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.sante.puma_en_cours === null ? 'NC' : state.sante.puma_en_cours))])})],2),_c('tr',[_c('th',{attrs:{\"colspan\":_vm.plan.states.length + 1}},[_c('strong',[_vm._v(\"Nombre de personnes ayant fait l'objet d'au moins...\")])])]),_c('tr',[_c('td',[_vm._v(\"une orientation vers une structure de santé\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.sante.orientation === null ? 'NC' : state.sante.orientation))])})],2),_c('tr',[_c('td',[_vm._v(\"un accompagnement physique vers une structure de santé\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.sante.accompagnement === null ? 'NC' : state.sante.accompagnement))])})],2)])])]):_vm._e(),(_vm.plan.states.length > 0 && _vm.plan.topics.find(function (ref) {\n\tvar uid = ref.uid;\n\n\treturn uid === 'school';\n}))?_c('section',{staticClass:\"dataSection rb-table\"},[_c('header',{staticClass:\"dataSection-header\"},[_c('h1',{staticClass:\"dataSection-title\"},[_c('span',{staticClass:\"dataSection-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"user-md\"}})],1),_vm._v(\" Éducation et scolarisation \")])]),_c('table',{staticClass:\"table block\"},[_c('thead',[_c('tr',[_c('th',{staticClass:\"table-col\"}),_vm._l((_vm.plan.states),function(state){return _c('th',{staticClass:\"table-col\"},[_vm._v(_vm._s(_vm.formatDate(new Date(state.date).getTime() / 1000, 'd B y')))])})],2)]),_c('tbody',[_c('tr',[_c('td',[_vm._v(\"Mineurs en âge d'être scolarisé ou suivant une formation\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.education.scolarisables === null ? 'NC' : state.education.scolarisables))])})],2),_c('tr',[_c('td',[_vm._v(\"Mineurs bénéficiant d'une action de médiation (3 - 18 ans)\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.education.en_mediation === null ? 'NC' : state.education.en_mediation))])})],2),_c('tr',[_c('td',[_vm._v(\"Inscrits en maternelle\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.education.maternelles === null ? 'NC' : state.education.maternelles))])})],2),_c('tr',[_c('td',[_vm._v(\"Inscrits en primaire\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.education.elementaires === null ? 'NC' : state.education.elementaires))])})],2),_c('tr',[_c('td',[_vm._v(\"Inscrits en collège\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.education.colleges === null ? 'NC' : state.education.colleges))])})],2),_c('tr',[_c('td',[_vm._v(\"Inscrits au Lycée - formation professionnelle\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.education.lycees === null ? 'NC' : state.education.lycees))])})],2)])])]):_vm._e(),(_vm.plan.states.length > 0 && _vm.plan.topics.find(function (ref) {\n\tvar uid = ref.uid;\n\n\treturn uid === 'work';\n}))?_c('section',{staticClass:\"dataSection rb-table\"},[_c('header',{staticClass:\"dataSection-header\"},[_c('h1',{staticClass:\"dataSection-title\"},[_c('span',{staticClass:\"dataSection-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"briefcase\"}})],1),_vm._v(\" Formation et emploi \")])]),_c('table',{staticClass:\"table block\"},[_c('thead',[_c('tr',[_c('th',{staticClass:\"table-col\"}),_vm._l((_vm.plan.states),function(state){return _c('th',{staticClass:\"table-col\"},[_vm._v(_vm._s(_vm.formatDate(new Date(state.date).getTime() / 1000, 'd B y')))])})],2)]),_c('tbody',[_c('tr',[_c('th',{attrs:{\"colspan\":_vm.plan.states.length + 1}},[_c('strong',[_vm._v(\"Nombre de personnes inscrites ou suivies par...\")])])]),_c('tr',[_c('td',[_vm._v(\"Pôle emploi\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.formation.pole_emploi === null ? 'NC' : state.formation.pole_emploi))])})],2),_c('tr',[_vm._m(7),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.formation.pole_emploi_femmes === null ? 'NC' : state.formation.pole_emploi_femmes))])})],2),_c('tr',[_c('td',[_vm._v(\"Mission locale\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.formation.mission_locale === null ? 'NC' : state.formation.mission_locale))])})],2),_c('tr',[_vm._m(8),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.formation.mission_locale_femmes === null ? 'NC' : state.formation.mission_locale_femmes))])})],2),_c('tr',[_c('th',{attrs:{\"colspan\":_vm.plan.states.length + 1}},[_c('strong',[_vm._v(\"Nombre de personnes ayant\")])])]),_c('tr',[_c('td',[_vm._v(\"Un contrat\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.formation.contrats === null ? 'NC' : state.formation.contrats))])})],2),_c('tr',[_vm._m(9),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.formation.contrats_femmes === null ? 'NC' : state.formation.contrats_femmes))])})],2),_c('tr',[_c('td',[_vm._v(\"Une formation\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.formation.formations === null ? 'NC' : state.formation.formations))])})],2),_c('tr',[_vm._m(10),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.formation.formations_femmes === null ? 'NC' : state.formation.formations_femmes))])})],2),_c('tr',[_c('td',[_vm._v(\"Un statut autoentrepreneur\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.formation.autoentrepreneurs === null ? 'NC' : state.formation.autoentrepreneurs))])})],2),_c('tr',[_vm._m(11),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.formation.autoentrepreneurs_femmes === null ? 'NC' : state.formation.autoentrepreneurs_femmes))])})],2),_c('tr',[_c('td',[_vm._v(\"l'ARE\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.formation.are === null ? 'NC' : state.formation.are))])})],2),_c('tr',[_vm._m(12),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.formation.are_femmes === null ? 'NC' : state.formation.are_femmes))])})],2)])])]):_vm._e(),(_vm.plan.states.length > 0 && _vm.plan.topics.find(function (ref) {\n\tvar uid = ref.uid;\n\n\treturn uid === 'housing';\n}))?_c('section',{staticClass:\"dataSection rb-table\"},[_c('header',{staticClass:\"dataSection-header\"},[_c('h1',{staticClass:\"dataSection-title\"},[_c('span',{staticClass:\"dataSection-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"home\"}})],1),_vm._v(\" Logement \")])]),_c('table',{staticClass:\"table block\"},[_c('thead',[_c('tr',[_c('th',{staticClass:\"table-col\"}),_vm._l((_vm.plan.states),function(state){return _c('th',{staticClass:\"table-col\"},[_vm._v(_vm._s(_vm.formatDate(new Date(state.date).getTime() / 1000, 'd B y')))])})],2)]),_c('tbody',[_vm._l((_vm.housingFields),function(field){return [_c('tr',[_c('th',{attrs:{\"colspan\":_vm.plan.states.length + 1}},[_c('strong',[_vm._v(_vm._s(field.label))])])]),_c('tr',[_c('td',[_vm._v(\"Nombre de personnes\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.logement[field.name].people === null ? 'NC' : state.logement[field.name].people))])})],2),_c('tr',[_c('td',[_vm._v(\"Nombre de ménages\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.logement[field.name].families === null ? 'NC' : state.logement[field.name].families))])})],2)]})],2)])]):_vm._e(),(_vm.plan.states.length > 0 && _vm.plan.topics.find(function (ref) {\n\tvar uid = ref.uid;\n\n\treturn uid === 'safety';\n}))?_c('section',{staticClass:\"dataSection rb-table\"},[_c('header',{staticClass:\"dataSection-header\"},[_c('h1',{staticClass:\"dataSection-title\"},[_c('span',{staticClass:\"dataSection-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"seedling\"}})],1),_vm._v(\" Stabilisation et sécurisation du site \")])]),_c('table',{staticClass:\"table block\"},[_c('thead',[_c('tr',[_c('th',{staticClass:\"table-col\"}),_vm._l((_vm.plan.states),function(state){return _c('th',{staticClass:\"table-col\"},[_vm._v(_vm._s(_vm.formatDate(new Date(state.date).getTime() / 1000, 'd B y')))])})],2)]),_c('tbody',[_c('tr',[_c('td',[_vm._v(\"Nombre d'accès réguliers à l'eau potable\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.securisation.points_eau === null ? 'NC' : state.securisation.points_eau))])})],2),_c('tr',[_c('td',[_vm._v(\"Nombre de sanitaires\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.securisation.wc === null ? 'NC' : state.securisation.wc))])})],2),_c('tr',[_c('td',[_vm._v(\"Nombre d'accès réguliers à l'électricité\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.securisation.electricite === null ? 'NC' : state.securisation.electricite))])})],2),_c('tr',[_c('td',[_vm._v(\"Nombre de bennes disponibles pour le ramassage des déchets du site\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.securisation.nombre_bennes === null ? 'NC' : state.securisation.nombre_bennes))])})],2)])])]):_vm._e(),(_vm.plan.states.length === 0 && _vm.plan.canUpdateMarks)?_c('div',{staticClass:\"note\"},[_c('div',{staticClass:\"note-body\"},[_c('p',[_c('strong',[_vm._v(\"Aucun indicateur de suivi renseigné par l'opérateur\")]),_c('br'),_c('router-link',{staticClass:\"button\",attrs:{\"to\":(\"/dispositif/\" + (_vm.plan.id) + \"/indicateurs\")}},[_c('font-awesome-icon',{attrs:{\"icon\":\"pencil-alt\"}}),_c('span',[_vm._v(\"Modifier\")])],1)],1)])]):_vm._e()],1)]):_vm._e()])],1)])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Chargement des données en cours...\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('thead',[_c('tr',[_c('th',{staticClass:\"table-col\"},[_vm._v(\"Type de financements\")]),_c('th',{staticClass:\"table-col\"},[_vm._v(\"Montants\"),_c('br'),_vm._v(\"prévus\")]),_c('th',{staticClass:\"table-col\"},[_vm._v(\"Précision\")]),_c('th',{staticClass:\"table-col\"},[_vm._v(\"Dépenses\"),_c('br'),_vm._v(\"exécutées\")])])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('thead',[_c('tr',[_c('th',{staticClass:\"table-col\"}),_c('th',{staticClass:\"table-col\"},[_vm._v(\"Ménages\")]),_c('th',{staticClass:\"table-col\"},[_vm._v(\"Personnes\")]),_c('th',{staticClass:\"table-col\"},[_vm._v(\"dont femmes\")]),_c('th',{staticClass:\"table-col\"},[_vm._v(\"dont mineurs\")])])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('td',[_c('strong',[_vm._v(\"Entrées\")]),_vm._v(\" dans le dispositif\")])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('td',[_c('strong',[_vm._v(\"Sorties positivement\")]),_c('br'),_vm._v(\"fin accompagnement social et/ou\"),_c('br'),_vm._v(\"prise en charge dans un autre dispositif\")])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('td',[_c('strong',[_vm._v(\"Exclusion\")]),_vm._v(\" du dispositif\")])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('td',[_c('strong',[_vm._v(\"Abandon / départ volontaire\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('td',[_c('em',[_vm._v(\"(dont femmes)\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('td',[_c('em',[_vm._v(\"(dont femmes)\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('td',[_c('em',[_vm._v(\"(dont femmes)\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('td',[_c('em',[_vm._v(\"(dont femmes)\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('td',[_c('em',[_vm._v(\"(dont femmes)\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('td',[_c('em',[_vm._v(\"(dont femmes)\")])])}]\n\nexport { render, staticRenderFns }","import NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport SlideNote from \"#app/components/slide-note/slide-note.vue\";\nimport Map from \"#app/components/map/map.vue\";\nimport { get, close } from \"#helpers/api/plan\";\nimport { hasPermission, get as getConfig } from \"#helpers/api/config\";\nimport PlanFunding from \"#app/components/form/input/planFunding/planFunding.vue\";\nimport Input from \"#app/components/form/input/input.vue\";\nimport { notify } from \"#helpers/notificationHelper\";\n\nexport default {\n components: {\n NavBar,\n SlideNote,\n Map,\n PlanFunding,\n Input\n },\n\n data() {\n const { etp_types: etpTypes } = getConfig();\n\n return {\n status: null,\n error: null,\n plan: null,\n etpTypes,\n currentFinanceIndex: 0,\n closingAlertStatus: \"hidden\",\n closingErrors: [],\n closingStatus: null,\n closingData: {\n closedAt: new Date(),\n finances: [],\n comment: \"\"\n },\n\n housingFields: [\n { name: \"siao\", label: \"Demandes SIAO\" },\n {\n name: \"logement_social\",\n label: \"Demandes de logement social\"\n },\n { name: \"dalo\", label: \"Demandes DALO\" },\n {\n name: \"accompagnes\",\n label: \"Accès à un logement accompagné / adapté\"\n },\n {\n name: \"non_accompagnes\",\n label: \"Accès à un logement sans accompagnement\"\n },\n { name: \"heberges\", label: \"Hébergements\" }\n ]\n };\n },\n\n created() {\n this.load();\n },\n\n computed: {\n closingCommentDescription() {\n if (!this.audience) {\n return \"\";\n }\n\n const remainingAudience = { ...this.audience.in };\n [\"out_positive\", \"out_abandoned\", \"out_excluded\"].forEach(key => {\n remainingAudience.total -= this.audience[key].total;\n remainingAudience.families -= this.audience[key].families;\n remainingAudience.women -= this.audience[key].women;\n remainingAudience.minors -= this.audience[key].minors;\n });\n\n if (\n remainingAudience.total === 0 &&\n remainingAudience.families === 0 &&\n remainingAudience.women === 0 &&\n remainingAudience.minors === 0\n ) {\n return \"Précisez les raisons de la fermeture du dispositif\";\n }\n\n return `À la fermeture du dispositif, ${\n remainingAudience.families\n } ménage${remainingAudience.families > 1 ? \"s\" : \"\"} (soit ${\n remainingAudience.total\n } personne${\n remainingAudience.total > 1 ? \"s\" : \"\"\n }) sont identifiés dans le dispositif. Merci de préciser les solutions mobilisées pour ces personnes et les raisons de la fermeture du dispositif.

Merci de respecter les règles de confidentialité.Ne pas citer l'identité des individus (Nom, âge, sexe, origine...)`;\n },\n reachedMaxFinanceIndex() {\n if (\n !this.plan ||\n !this.plan.finances ||\n this.plan.finances.length === 0\n ) {\n return true;\n }\n\n return this.currentFinanceIndex === 0;\n },\n reachedMinFinanceIndex() {\n if (\n !this.plan ||\n !this.plan.finances ||\n this.plan.finances.length === 0\n ) {\n return true;\n }\n\n return this.currentFinanceIndex >= this.plan.finances.length - 1;\n },\n minYear() {\n if (\n !this.plan ||\n !this.plan.finances ||\n this.plan.finances.length === 0\n ) {\n return null;\n }\n\n return this.plan.finances.reduce(\n (min, { year }) => (min !== null ? Math.min(min, year) : year),\n null\n );\n },\n availableEtpTypes() {\n return this.etpTypes.filter(({ uid }) =>\n this.plan.states.some(({ etp }) =>\n etp.some(({ type: { uid: u } }) => uid === u)\n )\n );\n },\n address() {\n if (!this.plan.location) {\n return null;\n }\n\n return {\n latitude: this.plan.location.latitude,\n longitude: this.plan.location.longitude,\n address: this.plan.location.label\n };\n },\n center() {\n if (!this.plan.location) {\n return null;\n }\n\n return {\n center: [\n this.plan.location.latitude,\n this.plan.location.longitude\n ],\n zoom: 15\n };\n },\n lastState() {\n if (!this.plan || this.plan.states.length === 0) {\n return null;\n }\n\n return this.plan.states.slice(-1)[0];\n },\n audience() {\n if (!this.plan || this.plan.states.length === 0) {\n return null;\n }\n\n function sum(originalObj, additionalObj) {\n return {\n total: originalObj.total + additionalObj.total,\n families: originalObj.families + additionalObj.families,\n women: originalObj.women + additionalObj.women,\n minors: originalObj.minors + additionalObj.minors\n };\n }\n\n return this.plan.states.reduce(\n (acc, { audience }) => {\n if (audience.in) {\n acc.in = sum(acc.in, audience.in);\n }\n\n if (audience.out_positive) {\n acc.out_positive = sum(\n acc.out_positive,\n audience.out_positive\n );\n }\n\n if (audience.out_abandoned) {\n acc.out_abandoned = sum(\n acc.out_abandoned,\n audience.out_abandoned\n );\n }\n\n if (audience.out_excluded) {\n acc.out_excluded = sum(\n acc.out_excluded,\n audience.out_excluded\n );\n }\n\n return acc;\n },\n {\n in: {\n total: 0,\n families: 0,\n women: 0,\n minors: 0\n },\n out_positive: {\n total: 0,\n families: 0,\n women: 0,\n minors: 0\n },\n out_abandoned: {\n total: 0,\n families: 0,\n women: 0,\n minors: 0\n },\n out_excluded: {\n total: 0,\n families: 0,\n women: 0,\n minors: 0\n }\n }\n );\n }\n },\n\n methods: {\n hasPermission,\n financeTotal() {\n if (!this.plan || !this.plan.finances) {\n return 0;\n }\n\n return this.plan.finances[this.currentFinanceIndex].data.reduce(\n (total, { amount }) => total + parseFloat(amount),\n 0\n );\n },\n load() {\n if ([\"loading\", \"loaded\"].indexOf(this.status) !== -1) {\n return;\n }\n\n this.status = \"loading\";\n this.error = null;\n\n get(this.$route.params.id)\n .then(data => {\n this.plan = data;\n this.closingData.finances = this.plan.finances.map(\n finance => ({\n ...finance,\n data: finance.data.map(row => ({\n ...row,\n type: row.type.uid\n }))\n })\n );\n this.status = \"loaded\";\n })\n .catch(({ user_message: message }) => {\n this.error = message;\n this.status = \"loadingError\";\n });\n },\n escapeHtml(...args) {\n return App.escapeHtml(...args);\n },\n dateDiff(...args) {\n return App.dateDiff(...args);\n },\n formatDate(...args) {\n return App.formatDate(...args);\n },\n\n showPreviousYear() {\n if (this.reachedMinFinanceIndex) {\n return;\n }\n\n this.currentFinanceIndex += 1;\n },\n\n showNextYear() {\n if (this.reachedMaxFinanceIndex) {\n return;\n }\n\n this.currentFinanceIndex -= 1;\n },\n\n setClosingAlertStatus(newStatus) {\n this.closingErrors = [];\n this.closingAlertStatus = newStatus;\n },\n\n checkClosing() {\n const yearsInError = [];\n for (\n let year = new Date().getFullYear();\n year >= Math.max(2019, this.minYear);\n year -= 1\n ) {\n const finance = this.closingData.finances.find(\n ({ year: y }) => y === year\n );\n if (\n !finance ||\n finance.data.length === 0 ||\n finance.data.some(\n ({ realAmount }) =>\n realAmount === undefined || realAmount === null\n )\n ) {\n yearsInError.push(year);\n }\n }\n\n if (yearsInError.length > 0) {\n this.closingErrors = yearsInError.map(\n year =>\n `Les dépenses exécutées pour l'année ${year} ne sont pas renseignées, il n'est pas possible de fermer le dispositif.`\n );\n } else {\n this.setClosingAlertStatus(\"step2\");\n }\n },\n\n close() {\n if (this.closingStatus === \"pending\") {\n return;\n }\n\n this.closingStatus = \"pending\";\n\n close(this.$route.params.id, this.closingData)\n .then(() => {\n this.closingStatus = \"success\";\n notify({\n group: \"notifications\",\n type: \"success\",\n title: \"Dispositif fermé\",\n text: \"Le dispositif a bien été fermé\"\n });\n this.$router.push(\"/liste-des-dispositifs\");\n })\n .catch(({ fields }) => {\n this.closingStatus = \"error\";\n this.closingErrors = Object.keys(fields).reduce(\n (acc, key) => [...acc, ...fields[key]],\n []\n );\n });\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./plans.details.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./plans.details.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./plans.details.vue?vue&type=template&id=23a8c2ae&scoped=true&lang=pug&\"\nimport script from \"./plans.details.vue?vue&type=script&lang=js&\"\nexport * from \"./plans.details.vue?vue&type=script&lang=js&\"\nimport style0 from \"./plans.details.vue?vue&type=style&index=0&id=23a8c2ae&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"23a8c2ae\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('NavBar'),_c('section',{staticClass:\"section-white\"},[(_vm.status !== 'loaded')?_c('div',{staticClass:\"container\"},[(!_vm.status || _vm.status === 'loading')?_c('div',[_vm._m(0)]):(_vm.status === 'loadingError')?_c('div',[_c('div',{staticClass:\"notification error full-width\"},[_c('span',[_vm._v(_vm._s(_vm.error)+\". \"),_c('span',{on:{\"click\":_vm.load}},[_vm._v(\"Réessayer ?\")])])])]):_vm._e()]):_vm._e(),(_vm.status === 'loaded')?_c('div',[_c('Form',_vm._b({ref:\"form\",on:{\"complete\":_vm.onComplete},model:{value:(_vm.formData),callback:function ($$v) {_vm.formData=$$v},expression:\"formData\"}},'Form',_vm.formDefinition,false))],1):_vm._e()])],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Chargement des données en cours...\")])])}]\n\nexport { render, staticRenderFns }","import NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport Form from \"#app/components/form/form.vue\";\nimport { get as getConfig } from \"#helpers/api/config\";\nimport { get, update } from \"#helpers/api/plan\";\nimport { getMembers, getMembersOfCategory } from \"#helpers/api/organization\";\nimport { notify } from \"#helpers/notificationHelper\";\n\nexport default {\n components: {\n NavBar,\n Form\n },\n\n data() {\n const { user: me, topics } = getConfig();\n const data = {\n status: null,\n error: null,\n formData: {\n association: []\n }\n };\n\n data.formDefinition = {\n title: \"Modifier un dispositif\",\n descriptionTitle: \"Pourquoi modifier la fiche du dispositif ?\",\n description: `Vous pouvez modifier ou mettre à jour les informations générales relatives au projet que vous pilotez.
\n
\n Deux informations pourront en particulier être mises à jour régulièrement :
\n - les financements
\n - les contacts référents
\n
\n A noter que les indicateurs de suivi du dispositif sont modifiés directement par la structure ou l’association en charge de l’intervention. Par exemple, le nombre de personnes dans le dispositif ou le nombre de ménages ayant accédé à un logement seront directement renseignés par ces derniers.`,\n steps: [\n {\n title: \"Dispositif\",\n wording: {\n error: \"La modification du dispositif a échoué\",\n submit: \"Modifier le dispositif\"\n },\n sections: [\n {\n title: \"Intervention\",\n icon: \"list\",\n inputs: {\n name: {\n type: \"text\",\n label: \"Nom du dispositif\",\n mandatory: true\n },\n departement: {\n type: \"text\",\n label: \"Département d'intervention\",\n mandatory: true,\n disabled: true\n },\n startedAt: {\n type: \"date\",\n label: \"Date de début\",\n mandatory: true\n },\n expectedToEndAt: {\n type: \"date\",\n label: \"Date de fin prévue (facultatif)\",\n mandatory: false\n },\n in_and_out: {\n type: \"radio\",\n label:\n \"Ce dispositif implique-t-il un système d'entrées et de sorties des personnes ?\",\n mandatory: true,\n disabled: true,\n options: [\n { value: 1, label: \"Oui\" },\n { value: 0, label: \"Non\" }\n ]\n },\n topics: {\n type: \"checkbox\",\n label: \"Champs d'intervention\",\n description:\n \"Les thématiques sélectionnées définissent l'action que vous menez et les indicateurs de suivi associés.\",\n mandatory: true,\n disabled: true,\n options: topics.map(({ uid, name }) => ({\n value: uid,\n label: name\n }))\n },\n goals: {\n type: \"textarea\",\n label: \"Objectifs\",\n mandatory: true,\n specificProps: {\n placeholder:\n \"Précisez les objectifs, les enjeux, le contexte du dispositif\\n\\nPar exemple : résorber le bidonville, scolariser 80% des enfants identités en bidonvilles...\"\n }\n }\n }\n },\n {\n title: \"Lieu\",\n icon: \"map-pin\",\n inputs: {\n locationType: {\n type: \"radio\",\n label:\n \"L'action se déroule dans le cadre suivant\",\n mandatory: true,\n disabled: true,\n options: [\n {\n value: \"shantytowns\",\n label:\n \"sur site(s) : bidonville ou squat\"\n },\n {\n value: \"location\",\n label: \"sur terrain d'insertion\"\n },\n {\n value: \"housing\",\n label: \"dans le logement\"\n },\n {\n value: \"other\",\n label:\n \"dans plusieurs lieux (hébergement, permanence, rue...)\"\n }\n ]\n },\n locationShantytowns: {\n type: \"townList\",\n label: \"Sites concernés\",\n mandatory: true,\n disabled: true,\n condition({ locationType }) {\n return locationType === \"shantytowns\";\n }\n },\n locationAddress: {\n type: \"addressWithLocation\",\n label: \"Adresse du terrain d'insertion\",\n mandatory: true,\n disabled: true,\n condition({ locationType }) {\n return locationType === \"location\";\n }\n },\n locationDetails: {\n type: \"text\",\n label: \"Préciser\",\n mandatory: true,\n disabled: true,\n condition({ locationType }) {\n return locationType === \"other\";\n }\n }\n }\n },\n {\n title: \"Contacts\",\n inputs: {\n government: {\n type: \"autocompleter\",\n label:\n \"Personne au service de l'état en charge du pilotage\",\n mandatory: true,\n specificProps: {\n autocompleter: d => {\n const p = getMembersOfCategory(\n \"public_establishment\"\n );\n const p2 = p.then(({ users }) =>\n users\n .filter(\n ({\n first_name: firstName,\n last_name: lastName\n }) =>\n [\n firstName,\n lastName\n ].some(value =>\n d\n .split(\" \")\n .every(\n part =>\n value\n .toLowerCase()\n .indexOf(\n part.toLowerCase()\n ) !==\n -1\n )\n )\n )\n .map(\n ({\n id,\n first_name: firstName,\n last_name: lastName\n }) => ({\n id,\n label: `${firstName} ${lastName.toUpperCase()}`\n })\n )\n );\n p2.abort = p.abort;\n\n return p2;\n },\n showCategory: false,\n allowMultiple: false,\n float: true\n }\n }\n }\n },\n {\n title: \"Financements\",\n inputs: {\n finances: {\n label: \"Financements\",\n type: \"planFunding\",\n mandatory: false\n }\n }\n }\n ],\n submit: d => update(this.$route.params.id, d)\n }\n ]\n };\n\n if (me.organization.category.uid === \"public_establishment\") {\n data.formData.state = [\n {\n id: me.id,\n label: `${me.first_name} ${me.last_name.toUpperCase()}`\n }\n ];\n }\n\n return data;\n },\n\n watch: {\n \"formData.association\": function organizationType() {\n if (!this.$refs.form) {\n return;\n }\n\n this.loadingAssociationContacts = true;\n this.$refs.form.getInputById(\"contact\").options = [];\n\n if (this.formData.association.length === 0) {\n return;\n }\n\n getMembers(this.formData.association[0].id).then(({ users }) => {\n this.$refs.form.getInputById(\"contact\").options = users.map(\n ({ id, first_name: firstName, last_name: lastName }) => ({\n value: id,\n label: `${firstName} ${lastName.toUpperCase()}`\n })\n );\n this.loadingAssociationContacts = false;\n });\n }\n },\n\n created() {\n this.load();\n },\n\n methods: {\n load() {\n if ([\"loading\", \"loaded\"].indexOf(this.status) !== -1) {\n return;\n }\n\n this.status = \"loading\";\n this.error = null;\n get(this.$route.params.id)\n .then(plan => {\n this.formDefinition.title = `Modifier un dispositif - ${plan.name}`;\n this.formData.name = plan.name;\n this.formData.departement = `${plan.departement.code} - ${plan.departement.name}`;\n this.formData.startedAt = plan.started_at;\n this.formData.expectedToEndAt = plan.expected_to_end_at;\n this.formData.in_and_out = plan.in_and_out ? 1 : 0;\n this.formData.topics = plan.topics.map(({ uid }) => uid);\n this.formData.goals = plan.goals;\n this.formData.locationType = plan.location_type.id;\n this.formData.locationShantytowns =\n plan.shantytowns && plan.shantytowns.length > 0\n ? plan.shantytowns.map(({ id }) => id)\n : undefined;\n this.formData.locationAddress = plan.location\n ? {\n address: {\n label: plan.location.address\n },\n location: {\n coordinates: [\n plan.location.latitude,\n plan.location.longitude\n ],\n zoom: 15\n }\n }\n : undefined;\n this.formData.locationDetails = plan.location_details;\n this.formData.government = [\n {\n id: plan.government_contacts[0].id,\n label: `${\n plan.government_contacts[0].first_name\n } ${plan.government_contacts[0].last_name.toUpperCase()}`\n }\n ];\n this.formData.association = [\n {\n id: plan.operator_contacts[0].organization.id,\n label: plan.operator_contacts[0].organization.name\n }\n ];\n this.formData.contact = plan.operator_contacts[0].id;\n this.formData.finances = plan.finances.map(\n ({ year, data }) => ({\n year,\n data: data.map(\n ({\n type: { uid },\n amount,\n details,\n realAmount\n }) => ({\n type: uid,\n amount,\n details,\n realAmount\n })\n )\n })\n );\n\n this.plan = plan;\n this.status = \"loaded\";\n })\n .catch(error => {\n this.error = error.user_message;\n this.status = \"loadingError\";\n });\n },\n onComplete() {\n notify({\n group: \"notifications\",\n type: \"success\",\n title: \"Dispositif modifié\",\n text: \"Le dispositif a bien été mis à jour\"\n });\n\n this.$router.push(`/dispositif/${this.$route.params.id}`);\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./plans.edit.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./plans.edit.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./plans.edit.vue?vue&type=template&id=965f0d94&lang=pug&\"\nimport script from \"./plans.edit.vue?vue&type=script&lang=js&\"\nexport * from \"./plans.edit.vue?vue&type=script&lang=js&\"\nimport style0 from \"./plans.edit.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('NavBar'),_c('section',{staticClass:\"section-white\"},[(_vm.status !== 'loaded')?_c('div',{staticClass:\"container\"},[(!_vm.status || _vm.status === 'loading')?_c('div',[_vm._m(0)]):(_vm.status === 'loadingError')?_c('div',[_c('div',{staticClass:\"notification error full-width\"},[_c('span',[_vm._v(_vm._s(_vm.error)+\". \"),_c('span',{on:{\"click\":_vm.load}},[_vm._v(\"Réessayer ?\")])])])]):_vm._e()]):_vm._e(),(_vm.status === 'loaded')?_c('div',[_c('Form',_vm._b({ref:\"form\",on:{\"complete\":_vm.onComplete},model:{value:(_vm.formData),callback:function ($$v) {_vm.formData=$$v},expression:\"formData\"}},'Form',_vm.formDefinition,false))],1):_vm._e()])],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Chargement des données en cours...\")])])}]\n\nexport { render, staticRenderFns }","import NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport Form from \"#app/components/form/form.vue\";\nimport { get, addState } from \"#helpers/api/plan\";\nimport { hasPermission } from \"#helpers/api/config\";\nimport { notify } from \"#helpers/notificationHelper\";\n\nexport default {\n components: {\n NavBar,\n Form\n },\n\n data() {\n const data = {\n status: null,\n error: null,\n formData: {}\n };\n\n data.formDefinition = {\n title: \"\",\n descriptionTitle: \"À quoi sert le suivi ?\",\n description:\n \"Les indicateurs de suivi permettent d’observer l'évolution de l'accès au droit commun et l'insertion du groupe de personnes accompagnées. Ces informations facilitent le pilotage local et national.\",\n steps: [\n {\n title: \"Dispositf\",\n wording: {\n error: \"La déclaration du dispositif a échoué\",\n submit: \"Valider\"\n },\n sections: [\n {\n inputs: {\n date: {\n type: \"date\",\n label: \"Date d'actualisation des données\",\n mandatory: true\n }\n }\n },\n {\n title: \"Public\",\n icon: \"arrow-right\",\n inputs: {\n audience: {\n type: \"audience\",\n label: \"Public\",\n mandatory: true,\n specificProps: {},\n condition({ date }) {\n return !!date;\n }\n }\n }\n },\n {\n title: \"Équipe\",\n icon: \"users\",\n inputs: {\n etp: {\n type: \"etp\",\n label: \"Nombre d’ETP dédiés par fonction\",\n mandatory: true,\n condition({ date }) {\n return !!date;\n }\n }\n }\n },\n {\n title: \"Droit commun et ressources\",\n description: \"Nombre de personnes avec...\",\n icon: \"id-card\",\n inputs: {\n domiciliation: {\n type: \"number\",\n label: \"une domiciliation\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n droits_caf: {\n type: \"number\",\n label: \"des droits CAF ouverts\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n emploi_stable: {\n type: \"number\",\n label:\n \"un emploi stable / ressources suffisantes\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n }\n }\n }\n ],\n submit: d => {\n const builtData = { ...d, ...d.housing };\n delete builtData.housing;\n return addState(this.$route.params.id, builtData);\n }\n }\n ]\n };\n\n data.varyingSections = {\n health: [\n {\n title: \"Santé\",\n description: \"Nombre de personnes avec...\",\n icon: \"user-md\",\n inputs: {\n ame_valide: {\n type: \"number\",\n label: \"une couverture AME valide\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n puma_valide: {\n type: \"number\",\n label: \"une couverture PUMA valide\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n ame_en_cours: {\n type: \"number\",\n label: \"une demande AME en cours\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n puma_en_cours: {\n type: \"number\",\n label: \"une demande PUMA en cours\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n }\n }\n },\n {\n title: \"\",\n description:\n \"Nombre de personnes ayant fait l'objet d'au moins\",\n icon: \"user-md\",\n inputs: {\n orientation: {\n type: \"number\",\n label:\n \"une orientation vers une structure de santé\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n accompagnement: {\n type: \"number\",\n label:\n \"un accompagnement physique vers une structure de santé\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n }\n }\n }\n ],\n school: [\n {\n title: \"Éducation et scolarisation\",\n icon: \"book-reader\",\n inputs: {\n scolarisables: {\n type: \"number\",\n label:\n \"Parmi les mineurs, combien sont en âge d'être scolarisés ?\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n en_mediation: {\n type: \"number\",\n label:\n \"Combien bénéficient d’une action de médiation (3 – 18 ans) ?\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n maternelles: {\n type: \"number\",\n label: \"Enfants inscrits en maternelle\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n elementaires: {\n type: \"number\",\n label: \"Enfants inscrits en élémentaire\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n colleges: {\n type: \"number\",\n label: \"Enfants inscrits au collège\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n lycees: {\n type: \"number\",\n label:\n \"Enfants inscrits au lycée - formation professionnelle\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n difficultes: {\n type: \"checkbox\",\n label: \"Difficultés éventuelles rencontrées :\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n },\n options: [\n { value: \"cantine\", label: \"Cantine\" },\n {\n value: \"place_up2a\",\n label: \"Manque de place en UP2A\"\n },\n { value: \"transport\", label: \"Transport\" }\n ]\n }\n }\n }\n ],\n work: [\n {\n title: \"Formation et emploi\",\n icon: \"briefcase\",\n description: \"Nombre de personnes inscrites ou suivies par\",\n inputs: {\n pole_emploi: {\n type: \"number\",\n label: \"Pôle emploi\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n pole_emploi_femmes: {\n type: \"number\",\n label: \"(dont femmes)\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n mission_locale: {\n type: \"number\",\n label: \"Mission locale\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n mission_locale_femmes: {\n type: \"number\",\n label: \"(dont femmes)\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n }\n }\n },\n {\n icon: \"briefcase\",\n description: \"Nombre de personnes ayant\",\n inputs: {\n contrats: {\n type: \"number\",\n label: \"un contrat\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n contrats_femmes: {\n type: \"number\",\n label: \"(dont femmes)\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n formations: {\n type: \"number\",\n label: \"une formation\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n formations_femmes: {\n type: \"number\",\n label: \"(dont femmes)\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n autoentrepreneurs: {\n type: \"number\",\n label: \"un statut autoentrepreneur\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n autoentrepreneurs_femmes: {\n type: \"number\",\n label: \"(dont femmes)\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n are: {\n type: \"number\",\n label: \"l'ARE\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n are_femmes: {\n type: \"number\",\n label: \"(dont femmes)\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n }\n }\n }\n ],\n housing: [\n {\n title: \"Logement\",\n icon: \"home\",\n inputs: {\n housing: {\n type: \"planHousing\",\n label: \"\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n }\n }\n }\n ],\n safety: [\n {\n title: \"Stabilisation et sécurisation du site\",\n icon: \"seedling\",\n inputs: {\n points_eau: {\n type: \"number\",\n label: \"Nombre d'accès réguliers à l'eau potable\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n wc: {\n type: \"number\",\n label: \"Nombre de sanitaires\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n electricite: {\n type: \"number\",\n label: \"Nombre d'accès réguliers à l'électricité\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n nombre_bennes: {\n type: \"number\",\n label:\n \"Nombre de bennes disponibles pour le ramassage des déchets du site\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n }\n }\n }\n ]\n };\n\n return data;\n },\n\n created() {\n this.load();\n },\n\n methods: {\n hasPermission,\n load() {\n if ([\"loading\", \"loaded\"].indexOf(this.status) !== -1) {\n return;\n }\n\n this.status = \"loading\";\n this.error = null;\n\n get(this.$route.params.id)\n .then(plan => {\n plan.topics.forEach(({ uid }) => {\n if (!this.varyingSections[uid]) {\n return;\n }\n\n this.varyingSections[uid].forEach(section => {\n this.formDefinition.steps[0].sections.push(section);\n });\n });\n\n const audienceSection = this.formDefinition.steps[0].sections.find(\n ({ inputs }) => inputs.audience !== undefined\n );\n let lastState = null;\n\n if (plan.states.length === 0) {\n audienceSection.title =\n \"Qui sont les publics ayant intégré le dispositif ?\";\n audienceSection.description =\n \"Vous renseignez les indicateurs de suivi pour la première fois. Veuillez porter une attention particulière aux données que vous renseignez ci-dessous : les mises à jour ultérieures seront conditionnées par cette première déclaration.\";\n audienceSection.inputs.audience.specificProps.inOnly = true;\n } else {\n [lastState] = plan.states.slice(-1);\n const dateOfLastState = App.formatDate(\n lastState.date / 1000,\n \"d/m/y\"\n );\n\n if (plan.in_and_out !== true) {\n audienceSection.title = `Quelles ont été les sorties du dispositif depuis la date du ${dateOfLastState} ?`;\n audienceSection.description = `Seules les sorties du dispositif sont suivies, car le pilote de l’action au sein des services de l’Etat a renseigné qu’il n’existe pas de système d’entrées et de sorties du dispositif : le dispositif concerne un seul groupe de personne, ayant débuté le projet à la même période.
\n Attention : le remplissage de ce tableau a un impact sur le nombre de personnes identifiées dans ce dispositif. Merci de le renseigner avec attention`;\n audienceSection.inputs.audience.specificProps.outOnly = true;\n } else {\n audienceSection.title = `Quelles ont été les entrées et sorties du dispositif depuis la date du ${dateOfLastState} ?`;\n audienceSection.description = `Les entrées et sorties du dispositif sont suivies, car le pilote de l’action au sein des services de l’Etat a renseigné qu’il existe un système d’entrées et de sorties.
\n Attention : le remplissage de ce tableau a un impact sur le nombre de personnes identifiées dans ce dispositif. Merci de le renseigner avec attention`;\n }\n\n audienceSection.description += `

\n Au ${dateOfLastState}, date de la dernière mise à jour des informations, sont intégrés dans le dispositif :\n ${plan.audience.families} ménages, ${plan.audience.total} personnes dont ${plan.audience.women} femmes et ${plan.audience.minors} mineurs\n `;\n }\n\n if (lastState) {\n this.formData = {\n difficultes: [\n \"cantine\",\n \"place_up2a\",\n \"transport\"\n ].filter(\n d =>\n lastState.education &&\n (lastState.education[`difficulte_${d}`] ||\n lastState.education[`difficculte_${d}`])\n ),\n etp: lastState.etp.map(\n ({ total, type: { uid } }) => ({\n total,\n type: uid\n })\n )\n };\n }\n\n this.formDefinition.title = plan.name;\n this.plan = plan;\n this.status = \"loaded\";\n })\n .catch(error => {\n this.error = error.user_message;\n this.status = \"loadingError\";\n });\n },\n onComplete() {\n notify({\n group: \"notifications\",\n type: \"success\",\n title: \"Indicateurs correctement enregistrés\",\n text: \"Le dispositif a bien été mis à jour\"\n });\n\n this.$router.push(`/dispositif/${this.$route.params.id}`);\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./plans.marks.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./plans.marks.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./plans.marks.vue?vue&type=template&id=8f52fc1c&scoped=true&lang=pug&\"\nimport script from \"./plans.marks.vue?vue&type=script&lang=js&\"\nexport * from \"./plans.marks.vue?vue&type=script&lang=js&\"\nimport style0 from \"./plans.marks.vue?vue&type=style&index=0&id=8f52fc1c&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"8f52fc1c\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--withMargin\"},[_c('NavBar'),_c('section',{staticClass:\"section section--white\"},[_c('div',{staticClass:\"container\"},[(_vm.status === 'loaded')?_c('div',_vm._l((_vm.sections),function(section){return _c('section',{staticClass:\"formSection\"},[_c('header',{staticClass:\"formSection-header\"},[_c('h1',{staticClass:\"formSection-title\"},[_vm._v(_vm._s(section.title))]),_c('p',[_vm._v(\"Total : \"+_vm._s(_vm.computeTotal(section.id)))])]),_c('div',{staticClass:\"panel\"},[_c('table',{staticClass:\"table\"},[_c('thead',[_c('tr',[_c('th',[_vm._v(\"Département\")]),_c('th',[_vm._v(_vm._s(section.title))])])]),_c('tbody',_vm._l((_vm.stats.numberOfShantytownOperations[section.id]),function(item){return _c('tr',[_c('td',[_vm._v(\"(\"+_vm._s(item.code)+\") - \"+_vm._s(item.name))]),_c('td',[_vm._v(_vm._s(item.total))])])}),0)])])])}),0):_vm._e(),(_vm.status === 'loading')?_c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Chargement des données en cours...\")])]):_vm._e(),(_vm.status !== 'loading' && _vm.status !== 'loaded')?_c('div',{staticClass:\"notification full-width\"},[_c('span',[_vm._v(_vm._s(_vm.error)+\". \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.load}},[_vm._v(\"Réessayer ?\")])])]):_vm._e()])])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { getApi } from \"#helpers/api/main\";\n\n/**\n * Lists all statistics\n *\n * @returns {Promise}\n */\nexport function all() {\n return getApi(\"/stats\");\n}\n\nexport default all;\n","import { all } from \"#helpers/api/stats\";\nimport NavBar from \"#app/layouts/navbar/navbar.vue\";\n\nexport default {\n components: {\n NavBar\n },\n\n data() {\n return {\n status: null,\n error: null,\n stats: null,\n sections: [\n {\n id: \"creations\",\n title: \"Nombre de sites créés\"\n },\n {\n id: \"updates\",\n title: \"Nombre de sites modifiés\"\n },\n {\n id: \"closings\",\n title: \"Nombre de sites fermés\"\n }\n ]\n };\n },\n\n mounted() {\n this.load();\n },\n\n methods: {\n load() {\n if (this.status === \"loaded\" || this.status === \"loading\") {\n return;\n }\n\n this.status = \"loading\";\n this.error = null;\n\n all()\n .then(({ statistics: stats }) => {\n this.stats = stats;\n this.status = \"loaded\";\n })\n .catch(({ user_message: userMessage }) => {\n this.status = \"error\";\n this.error = userMessage;\n });\n },\n computeTotal(sectionId) {\n return this.stats.numberOfShantytownOperations[sectionId].reduce(\n (sum, { total }) => sum + parseInt(total, 10),\n 0\n );\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./stats.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./stats.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./stats.vue?vue&type=template&id=e649766e&lang=pug&\"\nimport script from \"./stats.vue?vue&type=script&lang=js&\"\nexport * from \"./stats.vue?vue&type=script&lang=js&\"\nimport style0 from \"./stats.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--withMargin\"},[_c('NavBar'),_c('section',{staticClass:\"section section-white\",attrs:{\"id\":\"form\"}},[_c('div',{staticClass:\"container\"},[_c('h1',[_vm._v(\"Mentions légales\")]),_c('h3',[_vm._v(\"Editeurs\")]),_c('p',[_c('router-link',{attrs:{\"to\":\"/\"}},[_vm._v(\"Résorption bidonvilles\")]),_vm._v(\" est édité par la Fabrique numérique du ministère de la transition écologique et solidaire et du ministère de la cohésion des territoires et des relations avec les collectivités territoriales, sise 1 place Carpeaux, 92800 Puteaux, avec l’appui de l’incubateur de services numériques (beta.gouv.fr) de la direction interministérielle du numérique et du système d’information et de communication de l’État (DINSIC).\")],1),_c('h3',[_vm._v(\"Nous joindre\")]),_vm._m(0),_c('h3',[_vm._v(\"Directeurs de la publication\")]),_vm._m(1),_c('h3',[_vm._v(\"Prestataire d’hébergement\")]),_c('p',[_vm._v(\"Le site \"),_c('router-link',{attrs:{\"to\":\"/\"}},[_vm._v(\"resorption-bidonvilles.beta.gouv.fr\")]),_vm._v(\" est hébergé par la société OVH\"),_c('br'),_vm._v(\"Code APE 6202A\"),_c('br'),_vm._v(\"N° TVA : FR 22 424 761 419\"),_c('br'),_vm._v(\"Inscrite au RCS Roubaix – Tourcoing 424 761 419 00045\")],1),_c('p',[_vm._v(\"Siège social : 2 rue Kellermann, 59100 Roubaix, France\")])])])],1)])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',[_c('ul',[_c('li',[_vm._v(\"Par téléphone : +33 (0) 1 40 81 33 60\")]),_c('li',[_vm._v(\"Par mail : \"),_c('a',{staticClass:\"mail\",attrs:{\"href\":\"#\",\"data-name\":\"contact\",\"data-domain\":\"resorption-bidonvilles.beta.gouv\",\"data-tld\":\"fr\",\"onclick\":\"window.location.href = 'mailto:' + this.dataset.name + '@' + this.dataset.domain + '.' + this.dataset.tld; return false;\"}})])])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',[_c('ul',[_c('li',[_vm._v(\"Délégué interministériel à l’hébergement et l’accès au logement\")]),_c('li',[_vm._v(\"La Grande Arche - 92055 La Défense Cedex\")])])])}]\n\nexport { render, staticRenderFns }","import NavBar from \"#app/layouts/navbar/navbar.vue\";\n\nexport default {\n components: {\n NavBar\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./legalMentions.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./legalMentions.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./legalMentions.vue?vue&type=template&id=ed8e96dc&scoped=true&lang=pug&\"\nimport script from \"./legalMentions.vue?vue&type=script&lang=js&\"\nexport * from \"./legalMentions.vue?vue&type=script&lang=js&\"\nimport style0 from \"./legalMentions.vue?vue&type=style&index=0&id=ed8e96dc&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"ed8e96dc\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('Skeleton',{attrs:{\"loader\":_vm.loader},on:{\"loaded\":_vm.onLoaded},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_c('h1',{staticClass:\"page-title\"},[_vm._v(\"Annuaire\")]),_c('p',{staticClass:\"page-subtitle\"},[_vm._v(\"Cette liste n’est pas exhaustive et regroupe à ce stade les utilisateurs de la plateforme à l’échelle nationale.\")])]},proxy:true},{key:\"content\",fn:function(){return [(_vm.focusedOrganization !== null)?_c('Organization',{attrs:{\"organization\":_vm.focusedOrganization},on:{\"close\":_vm.resetFocusedOrganization}}):_vm._e(),_c('div',{staticClass:\"directory-search\"},[_c('OrganizationInput',{attrs:{\"specificProps\":{ placeholder: 'Acteur, structure, ou territoire' }},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1),(!_vm.localIsNational)?_c('div',{staticClass:\"switch\"},[_c('button',{class:{ active: _vm.level === 'local' },on:{\"click\":function($event){return _vm.setLevel('local')}}},[_vm._v(\"Acteurs de mon territoire\")]),_c('button',{class:{ active: _vm.level !== 'local' },on:{\"click\":function($event){return _vm.setLevel('national')}}},[_vm._v(\"Tous les acteurs\")])]):_vm._e(),_c('Table',{staticClass:\"directory\",attrs:{\"columns\":_vm.columns,\"content\":_vm.pageContent,\"emptyLabel\":'Aucun contact répertorié pour les filtres sélectionnés'},on:{\"click\":_vm.focus}},[_c('template',{slot:\"aside\"},[_c('p',{staticClass:\"directory-figures\"},[_vm._v(_vm._s(_vm.filteredOrganizations.length)+\" structure\"+_vm._s(_vm.filteredOrganizations.length > 1 ? 's' : '')+\" - \"+_vm._s(_vm.usersTotal)+\" contact\"+_vm._s(_vm.usersTotal > 1 ? 's' : ''))])])],2),_c('div',{staticClass:\"directory-tableAside\"},[_c('p',[_vm._v(\"Vous recherchez un contact public ? \"),_c('a',{attrs:{\"href\":\"https://lannuaire.service-public.fr\"}},[_vm._v(\"https://lannuaire.service-public.fr\")])])])]},proxy:true}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"page page--withMargin\"},[_c('NavBar'),_c('section',{staticClass:\"section section-white\"},[_c('div',{staticClass:\"container\"},[_c('header',{staticClass:\"page-header\"},[_c('hgroup',{staticClass:\"page-titleContainer\"},[_vm._t(\"title\")],2),(_vm.loading.status === 'loaded')?_c('div',{staticClass:\"page-buttons\"},[_vm._t(\"buttons\")],2):_vm._e()]),(_vm.loading.status === 'loading' && _vm.loading.isSlow)?_c('div',{staticClass:\"notification notification--loading full-width\"},[_vm._m(0),_vm._m(1)]):_vm._e(),(_vm.loading.status === 'failed')?_c('div',{staticClass:\"notification notification--failure error full-width\"},[_c('p',{staticClass:\"notification-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"times\",\"size\":\"2x\"}})],1),_c('p',{staticClass:\"notification-content\"},[_c('span',{staticClass:\"notification-title\"},[_vm._v(\"Le chargement des données a échoué\")]),_c('br'),_c('span',{staticClass:\"notification-description\"},[_vm._v(_vm._s(_vm.loading.error))])])]):_vm._e(),(_vm.loading.status === 'loaded')?_vm._t(\"content\",null,{\"data\":_vm.data}):_vm._e()],2)])],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',{staticClass:\"notification-icon\"},[_c('img',{attrs:{\"src\":\"/img/spinner_dark.svg\"}})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',{staticClass:\"notification-content\"},[_c('span',{staticClass:\"notification-title\"},[_vm._v(\"Chargement des données en cours\")])])}]\n\nexport { render, staticRenderFns }","import NavBar from \"#app/layouts/navbar/navbar.vue\";\n\nconst SLOW_DELAY = 1500;\n\nexport default {\n components: {\n NavBar\n },\n\n props: {\n loader: {\n type: Function,\n required: false\n }\n },\n\n data() {\n return {\n data: null,\n loading: {\n status: null,\n error: null,\n isSlow: false,\n slowTimeout: null\n }\n };\n },\n\n mounted() {\n if (this.loader === undefined) {\n this.loading.status = \"loaded\";\n return;\n }\n\n this.load();\n },\n\n methods: {\n load() {\n // ensure we are not already loading or loaded\n if (\n this.loading.status === \"loading\" ||\n this.loading.status === \"loaded\"\n ) {\n return;\n }\n\n // reset loading status\n this.loading.isSlow = false;\n this.loading.status = \"loading\";\n this.loading.error = null;\n this.loading.slowTimeout = setTimeout(() => {\n this.loading.isSlow = true;\n }, SLOW_DELAY);\n\n // try loading\n this.loader()\n .then(data => {\n this.$emit(\"loaded\", data);\n this.data = data;\n this.loading.status = \"loaded\";\n })\n .catch(error => {\n this.loading.status = \"failed\";\n this.loading.error =\n (error && error.user_message) ||\n \"Une erreur inconnue est survenue\";\n })\n .then(() => {\n clearTimeout(this.loading.slowTimeout);\n this.loading.slowTimeout = null;\n });\n }\n }\n};\n","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./skeleton.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./skeleton.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./skeleton.vue?vue&type=template&id=2ca8a58e&lang=pug&\"\nimport script from \"./skeleton.vue?vue&type=script&lang=js&\"\nexport * from \"./skeleton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"popin\"},[_c('div',{ref:\"wrapper\",staticClass:\"popin-wrapper\"},[_c('div',[_c('p',{staticClass:\"popin-close\"},[_c('span',{staticClass:\"link\",on:{\"click\":_vm.close}},[_c('font-awesome-icon',{attrs:{\"icon\":\"times\",\"size\":\"2x\"}})],1)]),_c('section',{staticClass:\"organization-body\"},[_c('h1',{staticClass:\"primary\"},[_vm._v(\"Structure\")]),_c('p',[_vm._v(_vm._s(_vm.organization.name))]),_c('h1',{staticClass:\"primary\"},[_vm._v(\"Territoire\")]),_c('p',[_vm._v(_vm._s(_vm.organization.locationName))]),_c('h1',{staticClass:\"primary\"},[_vm._v(\"Rôle\")]),_c('p',{staticStyle:{\"margin\":\"5px 0 35px 0\"}},[_c('span',{staticClass:\"role\"},[_vm._v(_vm._s(_vm.organization.role))])]),_c('h1',[_vm._v(_vm._s(_vm.users.length)+\" contact\"+_vm._s(_vm.users.length > 1 ? 's' : ''))]),_c('div',{staticClass:\"organization-users\"},_vm._l((_vm.users),function(user){return _c('div',{staticClass:\"userCard\"},[_c('h1',[_vm._v(_vm._s(user.first_name)+\" \"+_vm._s(user.last_name.toUpperCase()))]),_c('h2',[_vm._v(\"Fonction\")]),_c('h3',{class:{ 'userCard-position--empty': !user.position }},[_vm._v(_vm._s(user.position || 'NC'))]),_c('ul',{staticClass:\"userCard-infoList\"},[_c('li',{staticClass:\"userCard-info--email\"},[_c('a',{attrs:{\"href\":(\"mailto:\" + (user.email))}},[_vm._v(_vm._s(user.email))])]),(user.phone)?_c('li',{staticClass:\"userCard-info--phone\"},[_vm._v(_vm._s(user.phone))]):_vm._e()])])}),0)])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default {\n props: {\n organization: {\n type: Object,\n required: true\n }\n },\n\n mounted() {\n setTimeout(() => {\n document.addEventListener(\"click\", this.checkOutsideClick);\n }, 500);\n },\n destroyed() {\n document.removeEventListener(\"click\", this.checkOutsideClick);\n },\n\n methods: {\n checkOutsideClick(event) {\n if (!this.$refs.wrapper.contains(event.target)) {\n this.close();\n }\n },\n close() {\n this.$emit(\"close\");\n }\n },\n computed: {\n users() {\n // Some users are hidden from the directory (PAF)\n const hiddenUserIds = [255, 475, 558, 576];\n\n return this.organization.users.filter(\n user => !hiddenUserIds.includes(user.id)\n );\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./organization.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./organization.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./organization.vue?vue&type=template&id=eb1c327e&scoped=true&lang=pug&\"\nimport script from \"./organization.vue?vue&type=script&lang=js&\"\nexport * from \"./organization.vue?vue&type=script&lang=js&\"\nimport style0 from \"./organization.vue?vue&type=style&index=0&id=eb1c327e&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"eb1c327e\",\n null\n \n)\n\nexport default component.exports","import { postApi } from \"#helpers/api/main\";\n\n/**\n * Registers a new directory-view event\n *\n * @param {Number} organization Id of the viewed organization\n *\n * @returns {Promise}\n */\nexport function directoryViews(organization) {\n return postApi(\"/statistics/directory-views\", {\n organization\n });\n}\n\nexport default directoryViews;\n","import Skeleton from \"#app/layouts/skeleton/skeleton.vue\";\nimport Table from \"#app/components/table/table.vue\";\nimport Organization from \"#app/components/organization/organization.vue\";\nimport OrganizationInput from \"#app/components/form/input/organization/organization.vue\";\nimport { getDirectory } from \"#helpers/api/user\";\nimport { directoryViews } from \"#helpers/api/statistics\";\nimport { get as getConfig } from \"#helpers/api/config\";\n\nexport default {\n components: {\n Skeleton,\n Table,\n Organization,\n OrganizationInput\n },\n\n data() {\n return {\n organizations: [],\n columns: [\n { id: \"organization\", label: \"Structure\" },\n { id: \"location\", label: \"Territoire\" },\n { id: \"role\", label: \"Rôle\" },\n { id: \"contacts\", label: \"\", icon: \"arrow-right\" }\n ],\n local: getConfig().user.organization.location,\n level: \"local\",\n search: null\n };\n },\n\n computed: {\n localIsNational() {\n return this.local.type === \"nation\";\n },\n\n parsedOrganizations() {\n let filtered = [];\n\n if (this.localIsNational || this.level === \"national\") {\n filtered = this.organizations;\n } else {\n filtered = this.organizations.filter(organization => {\n const a = this.local[this.local.type];\n const b = organization.location[this.local.type];\n return a && b && a.code === b.code;\n });\n }\n\n return filtered.map(organization => {\n // organization\n let organizationName;\n if (organization.type.abbreviation !== null) {\n organizationName = `${organization.type.abbreviation} (${organization.name})`;\n } else if (organization.abbreviation !== null) {\n organizationName = `${organization.abbreviation} (${organization.name})`;\n } else {\n organizationName = organization.name;\n }\n\n // location\n let locationName;\n if (organization.location.type === \"nation\") {\n locationName = \"National\";\n } else {\n const location =\n organization.location[organization.location.type];\n if (!location) {\n locationName = \"\";\n } else if (organization.location.type === \"departement\") {\n locationName = `${location.name} (${location.code})`;\n } else {\n locationName = location.name;\n }\n }\n\n return {\n id: organization.id,\n organization: organizationName,\n location: locationName,\n role: `${organization.role}`,\n contacts:\n organization.users.length > 0\n ? `${\n organization.users.length\n } contact${\n organization.users.length > 1 ? \"s\" : \"\"\n }`\n : \"\",\n raw: {\n id: organization.id,\n name: organizationName,\n location: organization.location,\n locationName,\n role: organization.role,\n users: organization.users\n }\n };\n });\n },\n\n filteredOrganizations() {\n if (this.search === null) {\n return this.parsedOrganizations;\n }\n\n let filter;\n switch (this.search.data.type.id) {\n case \"user\":\n filter = ({ id }) => id === this.search.data.organization;\n break;\n case \"location\":\n filter = ({ raw: { location } }) =>\n location[this.search.data.location_type] &&\n location[this.search.data.location_type].code ===\n this.search.data.id;\n break;\n case \"organization\":\n filter = ({ id }) => id === this.search.data.id;\n break;\n default:\n filter = () => false;\n }\n\n return this.parsedOrganizations.filter(filter);\n },\n\n focusedOrganization() {\n if (!this.$route.params.id) {\n return null;\n }\n\n const organization = this.parsedOrganizations.find(\n ({ id }) => id === parseInt(this.$route.params.id, 10)\n );\n if (organization === undefined) {\n return null;\n }\n\n return organization.raw;\n },\n\n pageContent() {\n return this.filteredOrganizations.slice(\n this.pageBeginning - 1,\n this.pageEnd\n );\n },\n\n usersTotal() {\n return this.filteredOrganizations.reduce(\n (total, org) => total + org.raw.users.length,\n 0\n );\n }\n },\n\n watch: {\n focusedOrganization() {\n if (this.focusedOrganization !== null) {\n directoryViews(this.focusedOrganization.id);\n }\n }\n },\n\n methods: {\n loader: getDirectory,\n\n onLoaded({ organizations }) {\n this.organizations = organizations;\n },\n\n setLevel(level) {\n if (this.level === level) {\n return;\n }\n\n this.level = level;\n },\n\n focus({ raw: organization }) {\n this.$router.push(`/annuaire/${organization.id}`);\n },\n\n resetFocusedOrganization() {\n this.$router.push(\"/annuaire\");\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./directory.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./directory.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./directory.vue?vue&type=template&id=16244342&lang=pug&\"\nimport script from \"./directory.vue?vue&type=script&lang=js&\"\nexport * from \"./directory.vue?vue&type=script&lang=js&\"\nimport style0 from \"./directory.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--withMargin\"},[_c('NavBar'),(_vm.state === 'loading')?_c('section',{staticClass:\"section section-white\"},[_vm._m(0)]):_vm._e(),(_vm.state === 'error')?_c('section',{staticClass:\"section section-white\"},[_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"notification error full-width\"},[_c('span',[_vm._v(_vm._s(_vm.error)+\". \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.retryLoading}},[_vm._v(\"Réessayer ?\")])])])])]):_vm._e(),(_vm.state === 'loaded')?_c('section',{staticClass:\"section section-white\"},[(_vm.toBeDeleted !== null)?_c('CommentDeletion',{attrs:{\"comment\":_vm.toBeDeleted},on:{\"close\":_vm.closePopin,\"deleted\":_vm.onCommentDeleted}}):_vm._e(),_c('div',{staticClass:\"container\"},[_c('header',[_vm._m(1),_c('SlideNote',{staticClass:\"userActivity-rule\",attrs:{\"title\":\"Règles de modération d'un commentaire\"}},[_c('template',{slot:\"content\"},[_c('h1',[_vm._v(\"En tant qu'administrateur, vous êtes en charge de la modération des commentaires.\")]),_c('p',[_vm._v(\"Vous pouvez supprimer un commentaire ou demander à son auteur de le modifier s'il ne respecte pas les règles suivantes : \"),_c('ul',[_c('li',[_vm._v(\"être neutre et factuel ;\")]),_c('li',[_vm._v(\"ne pas collecter des données personnelles (nom, condamnation judiciaire...) de personnes ou groupes, porter une attention particulière aux personnes habitant ou issues d'un bidonville ;\")]),_c('li',[_vm._v(\"ne doit pas être subjectif, insultant ou inapproprié.\")])])]),_c('p',[_vm._v(\"Pour plus d'informations :\"),_c('br'),_c('router-link',{staticClass:\"link\",attrs:{\"to\":\"/typologie-des-acces\"}},[_c('font-awesome-icon',{attrs:{\"icon\":\"file-pdf\"}}),_vm._v(\" Guide des accès et de l'administrateur\")],1),_c('br'),_c('router-link',{staticClass:\"link\",attrs:{\"to\":\"/charte-d-engagement\"}},[_c('font-awesome-icon',{attrs:{\"icon\":\"file-pdf\"}}),_vm._v(\" Charte d'engagement de l'utilisateur\")],1)],1)])],2),_c('div',{staticClass:\"switch\"},[_c('button',{class:{ active: _vm.filter === 'all' },on:{\"click\":function($event){return _vm.show('all')}}},[_vm._v(\"Tout\")]),_c('button',{class:{ active: _vm.filter === 'shantytown' },on:{\"click\":function($event){return _vm.show('shantytown')}}},[_vm._v(\"Modifications\")]),_c('button',{class:{ active: _vm.filter === 'comment' },on:{\"click\":function($event){return _vm.show('comment')}}},[_vm._v(\"Commentaires\")])])],1),_c('Table',{staticClass:\"userActivity\",attrs:{\"columns\":_vm.columns,\"content\":_vm.parsedActivities,\"emptyLabel\":'Aucune activité trouvée pour les filtres sélectionnés'},on:{\"click\":_vm.onRowClick},scopedSlots:_vm._u([{key:\"date\",fn:function(props){return [_c('strong',[_vm._v(_vm._s(props.row.date))]),_c('br'),_vm._v(\"à \"+_vm._s(props.row.time))]}},{key:\"author\",fn:function(props){return [_c('font-awesome-icon',{staticClass:\"link\",attrs:{\"icon\":\"user\"}}),_vm._v(\" \"),_c('router-link',{staticClass:\"link\",attrs:{\"data-group\":\"link\",\"to\":(\"/annuaire/\" + (props.row.author.organization))}},[_vm._v(_vm._s(props.row.author.name))])]}},{key:\"activity\",fn:function(props){return [_c('span',{staticClass:\"userActivity-action\"},[_c('font-awesome-icon',{attrs:{\"icon\":props.row.icon}}),_vm._v(\" \"+_vm._s(props.row.action)+\" site : \"+_vm._s(props.row.address)+\" \")],1),(props.row.content !== undefined)?_c('div',{staticClass:\"userActivity-content\",domProps:{\"innerHTML\":_vm._s(props.row.content)}}):_vm._e(),(props.row.comment !== undefined)?_c('div',{staticClass:\"userActivity-remove\"},[_c('span',{staticClass:\"link\",on:{\"click\":function($event){return _vm.confirmCommentDeletion(props.row, $event)}}},[_c('font-awesome-icon',{attrs:{\"icon\":\"trash-alt\"}}),_vm._v(\" Supprimer\")],1)]):_vm._e(),_vm._l((props.row.diff),function(diff){return (props.row.diff)?_c('p',{staticClass:\"changelog\"},[_c('span',{staticClass:\"changelog-name\"},[_vm._v(_vm._s(diff.field)+\" :\")]),_c('br'),_c('span',{staticClass:\"changelog-oldValue\",class:{ 'changelog-value--unknown': !diff.oldValue }},[_vm._v(_vm._s(diff.oldValue || 'non renseigné'))]),_vm._v(\", \"),_c('span',{staticClass:\"changelog-newValue\",class:{ 'changelog-value--unknown': !diff.newValue }},[_vm._v(_vm._s(diff.newValue || 'non renseigné'))])]):_vm._e()})]}}],null,false,2101574153)})],1)],1):_vm._e()],1)])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Chargement des données en cours...\")])])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('hgroup',[_c('h3',[_vm._v(\"Historique des activités\")])])])}]\n\nexport { render, staticRenderFns }","import { getApi } from \"#helpers/api/main\";\n\n/**\n * Lists all user activities\n *\n * @returns {Promise}\n */\nexport function list(filters = {}) {\n let query = \"\";\n if (Object.keys(filters).length > 0) {\n query = \"filters=\";\n query += Object.keys(filters)\n .map(key => `${key}:${encodeURIComponent(filters[key])}`)\n .join(\",\");\n }\n\n return getApi(`/user-activities?${query}`);\n}\n\nexport default list;\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"popin popin--commentDeletion\"},[_c('div',{ref:\"wrapper\",staticClass:\"popin-wrapper\"},[_c('div',[(_vm.status !== 'pending')?_c('p',{staticClass:\"popin-close\"},[_c('span',{staticClass:\"link\",on:{\"click\":_vm.close}},[_c('font-awesome-icon',{attrs:{\"icon\":\"times\",\"size\":\"2x\"}})],1)]):_vm._e(),_c('div',{staticClass:\"popin-header\"},[_c('span',{staticClass:\"popin-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"trash-alt\",\"size\":\"lg\"}})],1),_c('h1',{staticClass:\"popin-title\"},[_vm._v(\"Confirmez-vous la suppression du commentaire ?\")])]),_c('div',{staticClass:\"popin-body\"},[_c('div',{staticClass:\"comment\"},[_c('header',{staticClass:\"comment-header\"},[_vm._v(_vm._s(_vm.date)+\" à \"+_vm._s(_vm.time))]),_c('ul',[_c('li',{staticClass:\"comment-author\"},[_c('span',[_c('font-awesome-icon',{attrs:{\"icon\":\"user\"}})],1),_vm._v(\" \"+_vm._s(_vm.comment.author.name))]),_c('li',{staticClass:\"comment-comment\"},[_c('span',[_c('font-awesome-icon',{attrs:{\"icon\":\"comment\"}})],1),_vm._v(\" Commentaire\")]),_c('li',{staticClass:\"comment-shantytown\"},[_c('span',[_c('font-awesome-icon',{attrs:{\"icon\":\"map-pin\"}})],1),_vm._v(\" Site : \"+_vm._s(_vm.address))])]),_c('div',{staticClass:\"comment-content\",domProps:{\"innerHTML\":_vm._s(_vm.comment.content)}})]),_c('h1',{staticClass:\"popin-h1\"},[_vm._v(\"Pourquoi souhaitez-vous supprimer ce commentaire ?\")]),(_vm.error !== null)?_c('p',{staticClass:\"error\"},[_vm._v(_vm._s(_vm.error))]):_vm._e(),_c('textarea',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.message),expression:\"message\"}],attrs:{\"placeholder\":\"Précisez la raison de la suppression à l'auteur, un mail lui sera envoyé\"},domProps:{\"value\":(_vm.message)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.message=$event.target.value}}}),_c('div',{staticClass:\"commentDeletionButtons\"},[(_vm.status !== 'pending')?_c('button',{staticClass:\"button secondary\",on:{\"click\":_vm.close}},[_vm._v(\"Annuler\")]):_vm._e(),_c('button',{staticClass:\"button primary\",attrs:{\"disabled\":_vm.status === 'pending'},on:{\"click\":_vm.deleteComment}},[(_vm.status !== 'pending')?_c('span',[_vm._v(\"Oui, confirmer\")]):_c('span',[_c('img',{attrs:{\"src\":\"/img/spinner_light.svg\",\"width\":\"20\"}})])])])])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { deleteComment } from \"#helpers/api/town\";\n\nexport default {\n props: {\n comment: {\n type: Object,\n required: true\n }\n },\n\n data() {\n return {\n status: null,\n error: null,\n message: \"\"\n };\n },\n\n computed: {\n date() {\n return App.formatDate(this.comment.date, \"d/m/y\");\n },\n time() {\n return App.formatDate(this.comment.date, \"h:i\");\n },\n address() {\n return `${this.comment.shantytown.usename}, ${this.comment.shantytown.city}`;\n }\n },\n\n mounted() {\n setTimeout(() => {\n document.addEventListener(\"click\", this.checkOutsideClick);\n }, 500);\n },\n\n destroyed() {\n document.removeEventListener(\"click\", this.checkOutsideClick);\n },\n\n methods: {\n checkOutsideClick(event) {\n if (!this.$refs.wrapper.contains(event.target)) {\n this.close();\n }\n },\n\n close() {\n if (this.status === \"pending\") {\n return;\n }\n\n this.$emit(\"close\");\n },\n\n deleteComment() {\n if (this.status === \"pending\") {\n return;\n }\n\n this.status = \"pending\";\n this.error = null;\n\n deleteComment(\n this.comment.shantytown.id,\n this.comment.id,\n this.message\n )\n .then(() => {\n this.status = null;\n this.message = \"\";\n this.$emit(\"deleted\");\n })\n .catch(({ user_message: error }) => {\n this.status = null;\n this.error = error;\n });\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./comment-deletion.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./comment-deletion.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./comment-deletion.vue?vue&type=template&id=38509d0a&scoped=true&lang=pug&\"\nimport script from \"./comment-deletion.vue?vue&type=script&lang=js&\"\nexport * from \"./comment-deletion.vue?vue&type=script&lang=js&\"\nimport style0 from \"./comment-deletion.vue?vue&type=style&index=0&id=38509d0a&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"38509d0a\",\n null\n \n)\n\nexport default component.exports","import { list } from \"#helpers/api/userActivity\";\nimport NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport Table from \"#app/components/table/table.vue\";\nimport CommentDeletion from \"#app/components/comment-deletion/comment-deletion.vue\";\nimport SlideNote from \"#app/components/slide-note/slide-note.vue\";\nimport { notify } from \"#helpers/notificationHelper\";\n\nexport default {\n components: {\n NavBar,\n Table,\n CommentDeletion,\n SlideNote\n },\n\n data() {\n return {\n /**\n * List of activities\n *\n * @type {Array.}\n */\n activities: [],\n\n /**\n * The error's user message\n *\n * Obivously, null if there is no error\n *\n * @type {string|null}\n */\n error: null,\n\n /**\n * The current state of the page\n *\n * One out of: 'loading', 'error', or 'loaded'\n *\n * @type {string|null}\n */\n state: null,\n\n /**\n *\n */\n toBeDeleted: null,\n\n /**\n *\n */\n filter: \"all\"\n };\n },\n\n computed: {\n columns() {\n return [\n { id: \"date\", label: \"Date\" },\n { id: \"author\", label: \"Auteur\" },\n {\n id: \"activity\",\n label: \"Activités\",\n ...(this.filter === \"shantytown\"\n ? {\n filters: [\n { label: \"Déclaration\", value: \"creation\" },\n { label: \"Modification\", value: \"update\" },\n { label: \"Fermeture\", value: \"closing\" }\n ],\n filterFn: (row, checkedItems) =>\n checkedItems\n .map(({ value }) => value)\n .indexOf(row.rawAction) !== -1\n }\n : {})\n }\n ];\n },\n filteredActivities() {\n if (this.filter === \"all\") {\n return this.activities;\n }\n\n return this.activities.filter(\n ({ entity }) => entity === this.filter\n );\n },\n parsedActivities() {\n return this.filteredActivities.map((activity, index) => {\n const obj = {\n index,\n rawAction: activity.action,\n rawDate: activity.date,\n rawShantytown: activity.shantytown,\n date: App.formatDate(activity.date, \"d/m/y\"),\n time: App.formatDate(activity.date, \"h:i\"),\n author: activity.author,\n icon:\n activity.entity === \"comment\"\n ? \"comment\"\n : \"pencil-alt\",\n shantytown: activity.shantytown.id,\n address: `${activity.shantytown.usename}, ${activity.shantytown.city}`\n };\n\n const shantytownActions = {\n creation: \"Déclaration du\",\n update: \"Modification du\",\n closing: \"Fermeture du\"\n };\n\n if (activity.entity === \"comment\") {\n obj.action = \"Commentaire sur le\";\n obj.content = activity.content;\n obj.comment = activity.comment_id;\n } else {\n obj.action = shantytownActions[activity.action];\n obj.diff = activity.diff;\n }\n\n return obj;\n });\n }\n },\n\n created() {\n this.load();\n },\n\n methods: {\n /**\n * Tries fetching the data from the API\n *\n * Please note that this cannot be done if the data has already been loaded\n * before.\n */\n load() {\n // loading data is forbidden if the component is already loading or loaded\n if ([null, \"error\"].indexOf(this.state) === -1) {\n return;\n }\n\n this.state = \"loading\";\n this.error = null;\n\n list()\n .then(userActivities => {\n this.activities = userActivities;\n this.state = \"loaded\";\n })\n .catch(({ user_message: error }) => {\n this.error = error;\n this.state = \"error\";\n });\n },\n\n /**\n * Alias to load(), for better readibility in the view\n *\n * @see load()\n */\n retryLoading() {\n this.load();\n },\n\n /**\n * @see index.js\n */\n formatDate(...args) {\n return window.App.formatDate.apply(window, args);\n },\n\n /**\n *\n */\n onRowClick(row) {\n this.$router.push(`/site/${row.shantytown}`);\n },\n\n /**\n *\n */\n confirmCommentDeletion(row, event) {\n this.toBeDeleted = {\n index: row.index,\n id: row.comment,\n shantytown: row.rawShantytown,\n author: row.author,\n date: row.rawDate,\n content: row.content\n };\n event.stopPropagation();\n return false;\n },\n\n /**\n *\n */\n closePopin() {\n this.toBeDeleted = null;\n },\n\n /**\n *\n */\n onCommentDeleted() {\n this.activities.splice(this.toBeDeleted.index, 1);\n this.toBeDeleted = null;\n\n notify({\n group: \"notifications\",\n type: \"success\",\n title: \"Commentaire supprimé\",\n text: \"L'auteur du commentaire en a été notifié par email\"\n });\n },\n\n show(filter) {\n this.filter = filter;\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./userActivity.list.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./userActivity.list.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./userActivity.list.vue?vue&type=template&id=70ed13a0&lang=pug&\"\nimport script from \"./userActivity.list.vue?vue&type=script&lang=js&\"\nexport * from \"./userActivity.list.vue?vue&type=script&lang=js&\"\nimport style0 from \"./userActivity.list.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('PublicLayout',{attrs:{\"stickyHeader\":false}},[_c('PublicContainer',{staticClass:\"py-16\"},[_c('div',[_c('h1',{staticClass:\"text-display-xl\"},[_vm._v(\"Statistiques\")]),_c('div',[_vm._v(\" Depuis l'ouverture nationale de la plateforme en juin 2019 \")])]),_c('StatsSection',{staticClass:\"mt-16\",attrs:{\"title\":\"Utilisateurs\"}},[_c('StatsBlock',{attrs:{\"title\":_vm.numberOfDepartements,\"icon\":\"flag\",\"subtitle\":\"départements de France métropolitaine\",\"info\":\"Soit tous les départements concernés par le phénomène de squats ou bidonvilles.\"}}),_c('StatsBlock',{attrs:{\"title\":_vm.numberOfCollaboratorAndAssociationUsers,\"icon\":\"users\",\"subtitle\":\"utilisateurs institutionnels et associatifs\",\"info\":_vm.numberOfPublicEstablishments +\n ' services de l\\'État, ' +\n _vm.numberOfTerritorialCollectivities +\n ' collectivités territoriales, ' +\n _vm.numberOfAssociations +\n ' associations'}}),_c('StatsBlock',{attrs:{\"title\":_vm.numberOfNewUsers.total,\"icon\":\"user-plus\",\"subtitle\":'nouveaux utilisateurs en ' +\n _vm.numberOfNewUsers.month.toLowerCase()}})],1),(_vm.numberOfNewUsersPerMonth !== null)?_c('div',[_c('h2',{staticClass:\"text-display-lg text-secondary mt-16\"},[_vm._v(\" Nombre d' utilisateurs depuis \"+_vm._s(_vm.numberOfNewUsersPerMonth[0].month.toLowerCase())+\" \")]),_c('TrendChart',{staticClass:\"stats-chart\",attrs:{\"datasets\":_vm.usersEvolutionDatasets,\"labels\":_vm.usersEvolutionLabels,\"grid\":{ verticalLines: true, horizontalLines: true },\"max\":_vm.usersEvolutionMax,\"min\":0}})],1):_vm._e(),_c('StatsSection',{staticClass:\"mt-16\",attrs:{\"title\":\"Usage\"}},[_c('StatsBlock',{attrs:{\"title\":_vm.numberOfExports,\"icon\":\"file-download\",\"subtitle\":\"extractions de données réalisées\",\"info\":\"Les exports Excel permettent aux acteurs locaux d'utiliser et d'analyser les données afin de suivre, communiquer et optimiser les actions de résorption depuis le 15/11/2019.\"}}),_c('StatsBlock',{attrs:{\"title\":_vm.numberOfComments,\"icon\":\"comment\",\"subtitle\":\"commentaires créés\",\"info\":\"Au delà du suivi des chiffrés, les commentaires permettent de suivre et de partager des informations qualitative utiles dans une action multi-partenariale.\"}}),_c('StatsBlock',{attrs:{\"title\":_vm.numberOfDirectoryViews,\"icon\":\"address-book\",\"subtitle\":\"fiches contact consultées\",\"info\":\"L'annuaire permet d'accéder aux coordonnées de tous les utilisateurs de la plateforme. Son utilisation participe à la mise en réseau partenaires locaux ou des pairs depuis le 15/11/2019\"}})],1),_c('StatsSection',{staticClass:\"mt-16\",attrs:{\"title\":\"Fréquence de mise à jour\"},scopedSlots:_vm._u([{key:\"info\",fn:function(){return [_c('span',{staticClass:\"text-secondary\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"sync\"}})],1),_vm._v(\" La mise à jour régulière des données garantissent des informations justes à tous les acteurs.\")]},proxy:true},{key:\"default\",fn:function(){return [_c('StatsBlock',{attrs:{\"title\":_vm.meanTimeBeforeCreationDeclaration,\"subtitle\":\"jours entre l'installation d'un bidonville ou squat et sa déclaration\",\"info\":\"En moyenne, depuis le 01/09/2019.\"}}),_c('StatsBlock',{attrs:{\"title\":_vm.meanTimeBeforeClosingDeclaration,\"subtitle\":\"jours entre la fermeture du site et sa déclaration\",\"info\":\"En moyenne, depuis le 01/09/2019.\"}}),_c('StatsBlock',{attrs:{\"title\":_vm.numberOfShantytownOperations,\"subtitle\":\"bidonvilles ou squats mis à jour\",\"info\":\"Toutes opérations confondues : création, modification, fermeture\"}})]},proxy:true}])})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"text-display-lg\"},[_vm._v(\" \"+_vm._s(_vm.title)+\" \"),_c('span',{staticClass:\"text-secondary\"},[(_vm.icon)?_c('font-awesome-icon',{attrs:{\"icon\":_vm.icon}}):_vm._e()],1)]),_c('div',{staticClass:\"text-display-sm\"},[_vm._v(_vm._s(_vm.subtitle))]),_c('div',{staticClass:\"text-sm\"},[_vm._v(_vm._s(_vm.info))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatsBlock.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatsBlock.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./StatsBlock.vue?vue&type=template&id=1cbcce1c&\"\nimport script from \"./StatsBlock.vue?vue&type=script&lang=js&\"\nexport * from \"./StatsBlock.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('h2',{staticClass:\"text-display-lg text-secondary\"},[_vm._v(_vm._s(_vm.title))]),_vm._t(\"info\"),_c('div',{staticClass:\"grid grid-cols-1 md:grid-cols-3 gap-16 mt-8\"},[_vm._t(\"default\")],2)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatsSection.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatsSection.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./StatsSection.vue?vue&type=template&id=a6b2b2d2&\"\nimport script from \"./StatsSection.vue?vue&type=script&lang=js&\"\nexport * from \"./StatsSection.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Autocomplete.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Autocomplete.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Autocomplete.vue?vue&type=template&id=63dff0dd&\"\nimport script from \"./Autocomplete.vue?vue&type=script&lang=js&\"\nexport * from \"./Autocomplete.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Icon',_vm._g(_vm._b({attrs:{\"icon\":\"spinner\",\"spin\":\"\"}},'Icon',_vm.$attrs,false),_vm.$listeners))}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./Spinner.vue?vue&type=template&id=98158632&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ValidationProvider',{attrs:{\"rules\":_vm.rules,\"name\":_vm.validationName || _vm.label,\"vid\":_vm.id},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('InputWrapper',{attrs:{\"withoutMargin\":_vm.withoutMargin}},[_c('InputLabel',{attrs:{\"label\":_vm.label,\"info\":_vm.info,\"id\":_vm.id,\"showMandatoryStar\":_vm.showMandatoryStar}}),_c('div',{class:'flex flex-col relative'},[(_vm.error)?_c('div',{staticClass:\"absolute h-full bg-error leftBorder\"}):_vm._e(),_c('div',{class:[\n 'flex',\n _vm.direction === 'vertical'\n ? 'flex-col checkableGroup--verticalLayout'\n : 'flex-row flex-wrap checkableGroup--horizontalLayout'\n ]},[_vm._t(\"default\")],2)]),(errors[0])?_c('InputError',[_vm._v(_vm._s(errors[0]))]):_vm._e()],1)]}}],null,true)})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CheckableGroup.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CheckableGroup.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CheckableGroup.vue?vue&type=template&id=fe57aba0&scoped=true&\"\nimport script from \"./CheckableGroup.vue?vue&type=script&lang=js&\"\nexport * from \"./CheckableGroup.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CheckableGroup.vue?vue&type=style&index=0&id=fe57aba0&scoped=true&lang=css&\"\nimport style1 from \"./CheckableGroup.vue?vue&type=style&index=1&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"fe57aba0\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ValidationProvider',{ref:\"provider\",attrs:{\"rules\":_vm.rules,\"name\":_vm.validationName || _vm.label,\"vid\":_vm.id},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('InputWrapper',{attrs:{\"hasErrors\":!!errors.length}},[_c('InputLabel',{attrs:{\"label\":_vm.label,\"info\":_vm.info,\"showMandatoryStar\":_vm.showMandatoryStar,\"id\":_vm.id}}),_c('div',{staticClass:\"relative\"},[_c('InputIcon',{staticClass:\"z-10 text-G400\",attrs:{\"position\":\"before\",\"icon\":\"calendar\"}}),_c(_vm.dynamicComponent,_vm._g(_vm._b({ref:\"datepicker\",tag:\"component\",attrs:{\"input-class\":_vm.inputClasses,\"language\":_vm.dateLanguage,\"monday-first\":true,\"data-cy-field\":_vm.cypressName}},'component',_vm.$attrs,false),_vm.$listeners)),(_vm.$attrs.value)?_c('InputIcon',{staticClass:\"text-primary text-display-sm cursor-pointer\",attrs:{\"position\":\"after\",\"icon\":\"times\",\"data-cy-button\":\"clear\"},nativeOn:{\"click\":function($event){return _vm.clear($event)}}}):_vm._e()],1),_c('InputError',[_vm._v(_vm._s(errors[0]))])],1)]}}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"mb-1 text-xs\"},[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./InputInfo.vue?vue&type=template&id=5ceb0958&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Datepicker.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Datepicker.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Datepicker.vue?vue&type=template&id=311c2bd9&\"\nimport script from \"./Datepicker.vue?vue&type=script&lang=js&\"\nexport * from \"./Datepicker.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:[_vm.color, 'inline-flex text-sm px-4 py-1 flex-row items-center']},[_vm._t(\"default\"),(_vm.onDelete)?_c('span',{staticClass:\"ml-2 cursor-pointer\",on:{\"click\":_vm.onDelete}},[_c('Icon',{attrs:{\"icon\":\"times\"}})],1):_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tag.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tag.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Tag.vue?vue&type=template&id=291ccd34&\"\nimport script from \"./Tag.vue?vue&type=script&lang=js&\"\nexport * from \"./Tag.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"flex flex-row items-center\"},[_c('Button',{staticClass:\"hover:bg-G200 rounded-full px-4 py-1 mx-2 focus:outline-none \",attrs:{\"icon\":\"chevron-left\",\"iconPosition\":\"left\",\"variant\":\"custom\",\"size\":\"custom\",\"disabled\":_vm.currentPage === 1},on:{\"click\":_vm.onPrevious}},[_vm._v(\"Précédent\")]),(_vm.currentPage > 1)?_c('div',{staticClass:\"h-8 w-8 hover:bg-G200 flex justify-center items-center rounded-full cursor-pointer\",on:{\"click\":function () { return _vm.onChangePage(1); }}},[_vm._v(\" 1 \")]):_vm._e(),_c('div',{class:[\n 'h-8 w-8 bg-primary text-white flex justify-center items-center rounded-full',\n _vm.currentPage === 1 ? '' : 'ml-4',\n _vm.currentPage === _vm.nbPages ? '' : 'mr-4'\n ]},[_vm._v(\" \"+_vm._s(_vm.currentPage)+\" \")]),(_vm.currentPage !== _vm.nbPages)?_c('div',{staticClass:\"h-8 w-8 hover:bg-G200 flex justify-center items-center rounded-full cursor-pointer\",on:{\"click\":function () { return _vm.onChangePage(_vm.nbPages); }}},[_vm._v(\" \"+_vm._s(_vm.nbPages)+\" \")]):_vm._e(),_c('Button',{staticClass:\"hover:bg-G200 rounded-full px-4 py-1 mx-2 focus:outline-none\",attrs:{\"icon\":\"chevron-right\",\"iconPosition\":\"right\",\"variant\":\"custom\",\"size\":\"custom\",\"disabled\":_vm.currentPage === _vm.nbPages},on:{\"click\":_vm.onNext}},[_vm._v(\"Suivant\")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Pagination.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Pagination.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Pagination.vue?vue&type=template&id=25cd9aae&\"\nimport script from \"./Pagination.vue?vue&type=script&lang=js&\"\nexport * from \"./Pagination.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"w-full h-full relative\"},[_c('Tooltip'),_c('div',{ref:\"container\",staticClass:\"w-full h-full\",attrs:{\"id\":\"map\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.isVisible)?_c('div',[_c('div',{staticClass:\"absolute w-full h-full opacity-50 bg-black\",staticStyle:{\"z-index\":\"1001\"}}),_c('div',{staticClass:\"absolute w-full\",staticStyle:{\"z-index\":\"1002\"}},[_c('div',{staticClass:\"mx-auto mt-6 w-8/12 text-sm bg-white p-3\"},[_c('p',[_vm._v(\" Si besoin, préciser la localisation en déplaçant le pointeur bleu sur la carte. \")]),_c('p',{staticClass:\"font-bold text-right cursor-pointer text-primary\",on:{\"click\":_vm.hide}},[_vm._v(\" J'ai compris \")])]),_c('div',{staticClass:\"arrow mx-auto\"})])]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tooltip.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tooltip.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Tooltip.vue?vue&type=template&id=afec8fd8&scoped=true&\"\nimport script from \"./Tooltip.vue?vue&type=script&lang=js&\"\nexport * from \"./Tooltip.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Tooltip.vue?vue&type=style&index=0&id=afec8fd8&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"afec8fd8\",\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Map.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Map.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Map.vue?vue&type=template&id=f692869a&\"\nimport script from \"./Map.vue?vue&type=script&lang=js&\"\nexport * from \"./Map.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"bg-yellow-200 px-4 flex items-center justify-between\"},[_c('div',[(_vm.icon)?_c('div',{staticClass:\"rounded-full inline-block bg-yellow-400 w-6 h-6 text-center text-xs align-middle leading-6\"},[_c('Icon',{attrs:{\"icon\":_vm.icon}})],1):_vm._e(),_vm._t(\"body\")],2),_c('div',[_vm._t(\"button\",[_c('Button',{on:{\"click\":_vm.click}},[_vm._v(_vm._s(_vm.buttonLabel))])]),(_vm.closable)?_c('span',{staticClass:\"ml-2\",on:{\"click\":_vm.close}},[_c('Icon',{staticClass:\"cursor-pointer\",attrs:{\"icon\":\"times\"}})],1):_vm._e()],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InfoBanner.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InfoBanner.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InfoBanner.vue?vue&type=template&id=77ccb40e&\"\nimport script from \"./InfoBanner.vue?vue&type=script&lang=js&\"\nexport * from \"./InfoBanner.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"has-tooltip inline-block\"},[_c('div',{staticClass:\"tooltip mt-10 ml-5 bg-yellow-200 shadow-md text-black py-4 px-6\"},[_vm._v(\" \"+_vm._s(_vm.text)+\" \")]),_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tooltip.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tooltip.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Tooltip.vue?vue&type=template&id=e37a80c0&scoped=true&\"\nimport script from \"./Tooltip.vue?vue&type=script&lang=js&\"\nexport * from \"./Tooltip.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Tooltip.vue?vue&type=style&index=0&id=e37a80c0&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"e37a80c0\",\n null\n \n)\n\nexport default component.exports","import AutocompleteVue from \"@trevoreyre/autocomplete-vue\";\nimport {\n ValidationProvider,\n ValidationObserver,\n extend,\n localize\n} from \"vee-validate\";\nimport * as rules from \"vee-validate/dist/rules\";\nimport fr from \"vee-validate/dist/locale/fr.json\";\nimport en from \"vee-validate/dist/locale/en\";\nimport ro from \"vee-validate/dist/locale/ro\";\nimport bg from \"vee-validate/dist/locale/bg\";\n\nimport notifications from \"vue-notification/dist/ssr\";\nimport Button from \"./Button.vue\";\nimport TextInput from \"./Form/input/TextInput.vue\";\nimport InlineTextInput from \"./Form/input/InlineTextInput.vue\";\nimport TextArea from \"./Form/input/TextArea.vue\";\nimport Icon from \"./Icon.vue\";\nimport Checkbox from \"./Form/input/Checkbox.vue\";\nimport Radio from \"./Form/input/Radio.vue\";\nimport Select from \"./Form/input/Select.vue\";\nimport SelectOption from \"./Form/input/SelectOption.vue\";\nimport FormGroup from \"./Form/FormGroup.vue\";\nimport InputGroup from \"./Form/InputGroup.vue\";\nimport MandatoryStar from \"./Form/utils/MandatoryStar.vue\";\nimport FormParagraph from \"./Form/FormParagraph.vue\";\nimport Menu from \"./Menu/Menu.vue\";\nimport MenuItem from \"./Menu/MenuItem.vue\";\nimport Dropdown from \"./Dropdown.vue\";\nimport NotificationsGroup from \"./NotificationsGroup.vue\";\nimport Modal from \"./Modal.vue\";\nimport Callout from \"./Callout.vue\";\nimport SidePanel from \"./SidePanel.vue\";\nimport Autocomplete from \"./Autocomplete.vue\";\nimport Spinner from \"./Spinner.vue\";\nimport CheckableGroup from \"./Form/CheckableGroup.vue\";\nimport Datepicker from \"./Datepicker.vue\";\nimport Tag from \"./Tag.vue\";\nimport Pagination from \"./Pagination.vue\";\nimport MapV2 from \"./Map.vue\";\nimport InfoBanner from \"./InfoBanner.vue\";\nimport Tooltip from \"./Tooltip.vue\";\n\nexport default function(vueInstance) {\n vueInstance.component(\"Button\", Button);\n vueInstance.component(\"TextInput\", TextInput);\n vueInstance.component(\"InlineTextInput\", InlineTextInput);\n vueInstance.component(\"TextArea\", TextArea);\n vueInstance.component(\"Icon\", Icon);\n vueInstance.component(\"Menu\", Menu);\n vueInstance.component(\"MenuItem\", MenuItem);\n vueInstance.component(\"Checkbox\", Checkbox);\n vueInstance.component(\"Radio\", Radio);\n vueInstance.component(\"Select\", Select);\n vueInstance.component(\"SelectOption\", SelectOption);\n vueInstance.component(\"FormGroup\", FormGroup);\n vueInstance.component(\"MandatoryStar\", MandatoryStar);\n vueInstance.component(\"Dropdown\", Dropdown);\n vueInstance.component(\"Modal\", Modal);\n vueInstance.component(\"SidePanel\", SidePanel);\n vueInstance.component(\"CheckableGroup\", CheckableGroup);\n vueInstance.component(\"InputGroup\", InputGroup);\n vueInstance.component(\"FormParagraph\", FormParagraph);\n vueInstance.component(\"Callout\", Callout);\n vueInstance.component(\"Spinner\", Spinner);\n vueInstance.component(\"AutocompleteV2\", Autocomplete);\n vueInstance.component(\"DatepickerV2\", Datepicker);\n vueInstance.component(\"Tag\", Tag);\n vueInstance.component(\"Pagination\", Pagination);\n vueInstance.component(\"MapV2\", MapV2);\n vueInstance.component(\"InfoBanner\", InfoBanner);\n vueInstance.component(\"Tooltip\", Tooltip);\n\n vueInstance.use(notifications);\n vueInstance.component(\"NotificationsGroup\", NotificationsGroup);\n vueInstance.component(\"ValidationProvider\", ValidationProvider);\n\n vueInstance.component(\"ValidationObserver\", ValidationObserver);\n\n vueInstance.component(\"AutocompleteVue\", AutocompleteVue);\n\n // Vee Validate (Form Validation)\n localize({\n en,\n fr,\n bg,\n ro\n });\n\n Object.keys(rules).forEach(rule => {\n extend(rule, {\n ...rules[rule] // copies rule configuration\n });\n });\n\n localize(\"fr\");\n}\n","/* eslint-disable no-param-reassign */\n/* eslint-disable no-console */\n\nconst defaultOptions = {\n debug: false,\n enableLinkTracking: true,\n requireConsent: false,\n trackInitialView: true,\n trackerFileName: \"piwik\"\n};\n\nfunction loadScript(trackerScript) {\n const scriptPromise = new Promise((resolve, reject) => {\n const script = document.createElement(\"script\");\n script.async = true;\n script.defer = true;\n script.src = trackerScript;\n\n const head = document.head || document.getElementsByTagName(\"head\")[0];\n head.appendChild(script);\n\n script.onload = resolve;\n script.onerror = reject;\n });\n\n scriptPromise.catch(error => {\n const msg = `[vue-matomo] An error occurred trying to load ${error.target.src}. `;\n (\"If the file exists you may have an ad- or trackingblocker enabled.\");\n\n console.error(msg);\n });\n\n return scriptPromise;\n}\n\nfunction initMatomo(Vue, options) {\n const { host, siteId, trackerFileName, trackerUrl } = options;\n const trackerEndpoint = trackerUrl || `${host}/${trackerFileName}.php`;\n\n const Matomo = window.Piwik.getTracker(trackerEndpoint, siteId);\n\n // Assign matomo to Vue\n Vue.prototype.$piwik = Matomo;\n Vue.prototype.$matomo = Matomo;\n\n if (options.requireConsent) {\n Matomo.requireConsent();\n }\n\n if (options.trackInitialView) {\n // Register first page view\n Matomo.trackPageView();\n }\n\n if (options.enableLinkTracking) {\n Matomo.enableLinkTracking();\n }\n\n // Track page navigations if router is specified\n if (options.router) {\n options.router.afterEach(to => {\n // Unfortunately the window location is not yet updated here\n // We need to make our own url using the data provided by the router\n const loc = window.location;\n\n // Protocol may or may not contain a colon\n let { protocol } = loc;\n if (protocol.slice(-1) !== \":\") {\n protocol += \":\";\n }\n\n const maybeHash = options.router.mode === \"hash\" ? \"/#\" : \"\";\n const url = `${protocol}//${loc.host}${maybeHash}${to.fullPath}`;\n\n if (to.meta.analyticsIgnore) {\n return;\n }\n\n if (options.debug) {\n console.debug(`[vue-matomo] Tracking ${url}`);\n }\n\n Matomo.setCustomUrl(url);\n Matomo.trackPageView();\n });\n }\n}\n\nexport default function install(Vue, setupOptions = {}) {\n const options = { ...defaultOptions, ...setupOptions };\n\n const { host, trackerFileName } = options;\n const trackerScript = `${host}/${trackerFileName}.js`;\n\n loadScript(trackerScript).then(() => initMatomo(Vue, options));\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('PublicLayout',{attrs:{\"displayLanguagePicker\":true}},[_c('PublicContainer',[_c('div',{staticClass:\"pt-4\"},[_c('div',{staticClass:\"max-w-screen-lg mx-auto pb-20\"},[_c('LandingPageHero',{staticClass:\"mt-20\"}),_c('LandingPageFirstSection')],1)])]),_c('LandingPageBanner',{attrs:{\"cta\":_vm.$t('landingPage.firstBanner.cta')}},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.firstBanner.text\"))+\" \")]),_c('CreditWrapper',{attrs:{\"credit\":\"© Diego Inglez de Souza\"}},[_c('img',{staticClass:\"h-128 w-full object-cover object-center\",attrs:{\"src\":require(\"./assets/resorption-bidonvilles-1.jpg\")}})]),_c('PublicContainer',[_c('div',{staticClass:\"max-w-screen-lg mx-auto py-20\"},[_c('LandingPageSecondSection')],1)]),_c('LandingPageBanner',{attrs:{\"cta\":_vm.$t('landingPage.secondBanner.cta')}},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.secondBanner.text\"))+\" \")]),_c('CreditWrapper',{attrs:{\"credit\":\"© Ville de Strasbourg\"}},[_c('img',{staticClass:\"h-128 w-full object-cover object-top\",attrs:{\"src\":require(\"./assets/resorption-bidonvilles-2.jpg\")}})]),_c('PublicContainer',[_c('div',{staticClass:\"max-w-screen-lg mx-auto py-20\"},[_c('LandingPageThirdSection'),_c('div',{staticClass:\"text-center mt-40\"},[_c('h2',{staticClass:\"text-display-lg text-secondary\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.hero.subtitle\"))+\" \")]),_c('LandingPageContactForm',{staticClass:\"mx-auto\"})],1)],1)]),_c('CreditWrapper',{attrs:{\"credit\":\"© Ville de Strasbourg\"}},[_c('div',{staticClass:\"grid grid-cols-3 w-full gap-0\"},[_c('img',{staticClass:\"h-64 w-full object-cover object-top\",attrs:{\"src\":require(\"./assets/resorption-bidonvilles-3.jpg\")}}),_c('img',{staticClass:\"h-64 w-full object-cover object-top\",attrs:{\"src\":require(\"./assets/resorption-bidonvilles-4.jpg\")}}),_c('img',{staticClass:\"h-64 w-full object-cover object-top\",attrs:{\"src\":require(\"./assets/resorption-bidonvilles-5.jpg\")}})])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('NavBar',{attrs:{\"stickyHeader\":_vm.stickyHeader,\"displayLanguagePicker\":_vm.displayLanguagePicker}}),_vm._t(\"default\"),_c('PublicFooter')],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{class:!_vm.sticky && 'hidden'},[_c('NavBarSticky',{attrs:{\"menuDisplayed\":_vm.menuDisplayed,\"toggleMenu\":_vm.toggleMenu}})],1),_c('div',{class:_vm.sticky && 'hidden'},[_c('PublicContainer',[_c('header',{staticClass:\"py-4 flex flex-row justify-between items-center\",attrs:{\"role\":\"navigation\"}},[_c('NavBarLogo'),_c('div',{staticClass:\"hidden md:flex flex-row\"},[_c('div',[_c('router-link',{attrs:{\"to\":\"/connexion\"}},[_c('Button',{attrs:{\"variant\":\"primary\"}},[_vm._v(_vm._s(_vm.$t(\"landingPage.header.connect\")))])],1)],1),(_vm.displayLanguagePicker)?_c('LanguagePicker',{staticClass:\"ml-2\"}):_vm._e()],1),_c('NavBarMobileButton',{staticClass:\"md:hidden\",attrs:{\"onClick\":_vm.toggleMenu}})],1)])],1),(_vm.menuDisplayed)?_c('NavBarMobileMenu',{staticClass:\"fixed top-0 right-0 mt-16 z-10\",attrs:{\"closeMenu\":_vm.closeMenu,\"displayLanguagePicker\":_vm.displayLanguagePicker}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('router-link',{attrs:{\"to\":\"/landing\"}},[_c('div',{staticClass:\"flex flex-row align-items\"},[_c('img',{staticClass:\"marianne\",attrs:{\"src\":require(\"./assets/Marianne.svg\"),\"alt\":\"france\"}}),_c('div',{staticClass:\"ml-2 text-display-xs md:text-display-sm text-black\"},[_vm._v(\" Résorption-bidonvilles \")])])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./NavBarLogo.vue?vue&type=template&id=07ee7c4c&scoped=true&\"\nvar script = {}\nimport style0 from \"./NavBarLogo.vue?vue&type=style&index=0&id=07ee7c4c&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"07ee7c4c\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"fixed z-10 top-0 left-0 w-full bg-white shadow\"},[_c('PublicContainer',[_c('header',{staticClass:\"py-4 flex flex-row justify-between items-center\",attrs:{\"role\":\"navigation\"}},[_c('NavBarLogo'),_c('div',{staticClass:\"hidden md:block\"},[_c('router-link',{staticClass:\"mr-2\",attrs:{\"to\":\"/contact\"}},[_c('Button',{attrs:{\"variant\":\"secondary\"}},[_vm._v(_vm._s(_vm.$t(\"landingPage.header.contact\")))])],1),_c('router-link',{attrs:{\"to\":\"/connexion\"}},[_c('Button',{attrs:{\"variant\":\"primary\"}},[_vm._v(_vm._s(_vm.$t(\"landingPage.header.connect\")))])],1)],1),_c('NavBarMobileButton',{staticClass:\"md:hidden\",attrs:{\"onClick\":_vm.toggleMenu}})],1)])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('button',{staticClass:\"focus:outline-none\",on:{\"click\":_vm.onClick}},[_c('svg',{staticClass:\"block h-6 w-6\",attrs:{\"stroke\":\"currentColor\",\"fill\":\"none\",\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\",\"stroke-width\":\"2\",\"d\":\"M4 6h16M4 12h16M4 18h16\"}})])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavBarMobileButton.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavBarMobileButton.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./NavBarMobileButton.vue?vue&type=template&id=fe2974b4&\"\nimport script from \"./NavBarMobileButton.vue?vue&type=script&lang=js&\"\nexport * from \"./NavBarMobileButton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container px-10 mx-auto\"},[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./PublicContainer.vue?vue&type=template&id=01b836ec&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavBarSticky.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavBarSticky.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./NavBarSticky.vue?vue&type=template&id=2ec84af4&\"\nimport script from \"./NavBarSticky.vue?vue&type=script&lang=js&\"\nexport * from \"./NavBarSticky.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Dropdown',{scopedSlots:_vm._u([{key:\"button\",fn:function(){return [_c('Button',{attrs:{\"variant\":\"primaryOutline\",\"icon\":\"chevron-down\"}},[(_vm.$i18n.locale === 'fr')?_c('img',{staticClass:\"inline-block h-6\",attrs:{\"src\":require(\"./assets/FR.svg\")}}):_vm._e(),(_vm.$i18n.locale === 'en')?_c('img',{staticClass:\"inline-block h-6\",attrs:{\"src\":require(\"./assets/UK.svg\")}}):_vm._e(),(_vm.$i18n.locale === 'ro')?_c('img',{staticClass:\"inline-block h-6\",attrs:{\"src\":require(\"./assets/RO.svg\")}}):_vm._e(),(_vm.$i18n.locale === 'bg')?_c('img',{staticClass:\"inline-block h-6\",attrs:{\"src\":require(\"./assets/BG.svg\")}}):_vm._e(),_vm._v(\" \"+_vm._s(\" \")+\" \"),_c('span',{staticClass:\"uppercase\"},[_vm._v(_vm._s(_vm.$i18n.locale))])])]},proxy:true},{key:\"menu\",fn:function(ref){\nvar closeMenu = ref.closeMenu;\nreturn [_c('Menu',{on:{\"click\":closeMenu}},[_c('MenuItem',{on:{\"click\":function($event){return _vm.pickLang('fr')}}},[_c('img',{staticClass:\"inline-block h-6\",attrs:{\"src\":require(\"./assets/FR.svg\")}}),_vm._v(\" FR \")]),_c('MenuItem',{on:{\"click\":function($event){return _vm.pickLang('en')}}},[_c('img',{staticClass:\"inline-block h-6\",attrs:{\"src\":require(\"./assets/UK.svg\")}}),_vm._v(\" EN \")]),_c('MenuItem',{on:{\"click\":function($event){return _vm.pickLang('ro')}}},[_c('img',{staticClass:\"inline-block h-6\",attrs:{\"src\":require(\"./assets/RO.svg\")}}),_vm._v(\" RO \")]),_c('MenuItem',{on:{\"click\":function($event){return _vm.pickLang('bg')}}},[_c('img',{staticClass:\"inline-block h-6\",attrs:{\"src\":require(\"./assets/BG.svg\")}}),_vm._v(\" BG \")])],1)]}}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LanguagePicker.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LanguagePicker.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LanguagePicker.vue?vue&type=template&id=0bd0a8ca&\"\nimport script from \"./LanguagePicker.vue?vue&type=script&lang=js&\"\nexport * from \"./LanguagePicker.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"origin-top-right right-0 mt-2 w-48 rounded-md shadow-lg\"},[_c('Menu',[_c('MenuItem',[_c('router-link',{attrs:{\"to\":\"/connexion\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.header.connect\"))+\" \")])],1),_c('MenuItem',[_c('router-link',{attrs:{\"to\":\"/contact\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.header.contact\"))+\" \")])],1),_c('MenuItem',[_c('LanguagePicker')],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavBarMobileMenu.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavBarMobileMenu.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./NavBarMobileMenu.vue?vue&type=template&id=00db3f68&\"\nimport script from \"./NavBarMobileMenu.vue?vue&type=script&lang=js&\"\nexport * from \"./NavBarMobileMenu.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=24818faa&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('footer',{staticClass:\"bg-black text-white py-8\",attrs:{\"role\":\"contentinfo\"}},[_c('PublicContainer',[_c('div',{staticClass:\"max-w-screen-lg mx-auto\"},[_c('div',{staticClass:\"md:flex flex-row justify-between\"},[_c('ul',[_c('li',[_c('font-awesome-icon',{attrs:{\"icon\":\"envelope\"}})],1),_c('li',[_c('h4',[_vm._v(_vm._s(_vm.$t(\"footer.contact\")))])]),_c('li',[_c('h4',[_c('a',{staticClass:\"underline\",attrs:{\"href\":\"mailto:contact@resorption-bidonvilles.beta.gouv.fr\"}},[_vm._v(\"contact@resorption-bidonvilles.beta.gouv.fr\")])])])]),_c('ul',[_c('li',[_c('router-link',{attrs:{\"to\":\"/statistiques-publiques\"}},[_vm._v(_vm._s(_vm.$t(\"footer.statistics\")))])],1),_c('li',[_c('router-link',{attrs:{\"to\":\"/mentions-legales\"}},[_vm._v(_vm._s(_vm.$t(\"footer.legal\")))])],1)])])])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PublicFooter.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PublicFooter.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./PublicFooter.vue?vue&type=template&id=faa6d674&\"\nimport script from \"./PublicFooter.vue?vue&type=script&lang=js&\"\nexport * from \"./PublicFooter.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=418293bc&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"text-center\"},[_c('h1',{staticClass:\"text-display-xl font\"},[_vm._v(_vm._s(_vm.$t(\"landingPage.hero.title\")))]),_c('h2',{staticClass:\"text-display-lg text-secondary mt-2\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.hero.subtitle\"))+\" \")]),_c('LandingPageContactForm',{staticClass:\"mx-auto\"})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('form',{staticClass:\"flex flex-row justify-center mt-4 w-full max-w-md\",on:{\"submit\":function($event){$event.preventDefault();return _vm.onSubmit($event)}}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.email),expression:\"email\"}],staticClass:\"hidden md:block border-2 border-G200 rounded-md flex-1 py-2 px-4 outline-none focus:border-G400\",attrs:{\"placeholder\":_vm.$t('landingPage.contactForm.email')},domProps:{\"value\":(_vm.email)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.email=$event.target.value}}}),_c('Button',{staticClass:\"ml-1\",attrs:{\"type\":\"submit\",\"variant\":\"secondary\"}},[_vm._v(_vm._s(_vm.$t(\"landingPage.contactForm.cta\")))])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageContactForm.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageContactForm.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LandingPageContactForm.vue?vue&type=template&id=ab5dc688&\"\nimport script from \"./LandingPageContactForm.vue?vue&type=script&lang=js&\"\nexport * from \"./LandingPageContactForm.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=ee38fc36&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('img',{staticClass:\"full-width mx-auto\",attrs:{\"src\":require(\"./assets/resorption-bidonvilles-dessin.png\")}}),(_vm.$i18n.locale === 'fr')?_c('EventTutorial'):_vm._e(),_c('div',{staticClass:\"max-w-screen-sm mx-auto mt-8\"},[_c('LandingPageResponsiveEmbed',[_c('iframe',{attrs:{\"src\":\"https://www.youtube.com/embed/AAD0QoOzIHM?modestbranding=1&autohide=1&showinfo=0\",\"frameborder\":\"0\",\"allow\":\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\",\"allowfullscreen\":\"\"}})])],1),_c('div',[_c('div',{staticClass:\"mt-24\"},[_c('div',{staticClass:\"max-w-screen-sm mx-auto\"},[_c('div',{staticClass:\"text-display-lg font-normal\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.firstSection.context.title\"))+\" \")]),_c('div',{staticClass:\"text-display-lg\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.firstSection.context.subtitle\"))+\" \")]),_c('div',{staticClass:\"mt-4\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.firstSection.context.text\"))+\" \")])])]),_c('div',{staticClass:\"md:grid md:grid-cols-3 gap-16 mt-16\"},[_c('LandingPageFeatureBlock',{attrs:{\"icon\":\"map-marked-alt\"}},[_vm._v(_vm._s(_vm.$t(\"landingPage.firstSection.features.position\")))]),_c('LandingPageFeatureBlock',{staticClass:\"my-8 md:my-0\",attrs:{\"icon\":\"chart-line\"}},[_vm._v(_vm._s(_vm.$t(\"landingPage.firstSection.features.actions\")))]),_c('LandingPageFeatureBlock',{attrs:{\"icon\":\"comments\"}},[_vm._v(_vm._s(_vm.$t(\"landingPage.firstSection.features.exchange\")))])],1),_c('div',{staticClass:\"md:flex md:flex-row mt-16\"},[_c('LandingPageContextImage',{attrs:{\"label\":_vm.$t('landingPage.firstSection.before')}},[(_vm.$i18n.locale === 'fr')?_c('img',{attrs:{\"src\":require(\"./assets/fr/before.jpg\")}}):_vm._e(),(_vm.$i18n.locale === 'en')?_c('img',{attrs:{\"src\":require(\"./assets/en/before.png\")}}):_vm._e(),(_vm.$i18n.locale === 'bg')?_c('img',{attrs:{\"src\":require(\"./assets/bg/before.png\")}}):_vm._e(),(_vm.$i18n.locale === 'ro')?_c('img',{attrs:{\"src\":require(\"./assets/ro/before.png\")}}):_vm._e()]),_c('div',{staticClass:\"hidden md:block border-solid border-r-2 border-gray-200 m-20\"}),_c('LandingPageContextImage',{attrs:{\"label\":_vm.$t('landingPage.firstSection.after')}},[(_vm.$i18n.locale === 'fr')?_c('img',{attrs:{\"src\":require(\"./assets/fr/after.jpg\")}}):_vm._e(),(_vm.$i18n.locale === 'en')?_c('img',{attrs:{\"src\":require(\"./assets/en/after.png\")}}):_vm._e(),(_vm.$i18n.locale === 'bg')?_c('img',{attrs:{\"src\":require(\"./assets/bg/after.png\")}}):_vm._e(),(_vm.$i18n.locale === 'ro')?_c('img',{attrs:{\"src\":require(\"./assets/ro/after.png\")}}):_vm._e()])],1),_c('LandingPageUserFeedback',{staticClass:\"mt-32\"})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('font-awesome-icon',{attrs:{\"icon\":_vm.icon,\"size\":\"3x\"}}),_c('h3',{staticClass:\"text-display-lg font-normal mt-2\"},[_vm._t(\"default\")],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageFeatureBlock.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageFeatureBlock.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LandingPageFeatureBlock.vue?vue&type=template&id=40944c55&\"\nimport script from \"./LandingPageFeatureBlock.vue?vue&type=script&lang=js&\"\nexport * from \"./LandingPageFeatureBlock.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"text-secondary text-display-md\"},[_vm._v(_vm._s(_vm.label))]),_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageContextImage.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageContextImage.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LandingPageContextImage.vue?vue&type=template&id=a36abd1e&\"\nimport script from \"./LandingPageContextImage.vue?vue&type=script&lang=js&\"\nexport * from \"./LandingPageContextImage.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"max-w-screen-sm mx-auto relative mt-16\"},[_c('LandingPageUserFeedbackSection',{attrs:{\"active\":_vm.active === 1,\"text\":_vm.$t('landingPage.firstSection.feedback.1.text'),\"author\":_vm.$t('landingPage.firstSection.feedback.1.author')}}),_c('LandingPageUserFeedbackSection',{attrs:{\"active\":_vm.active === 2,\"text\":_vm.$t('landingPage.firstSection.feedback.2.text'),\"author\":_vm.$t('landingPage.firstSection.feedback.2.author')}}),_c('LandingPageUserFeedbackSection',{attrs:{\"active\":_vm.active === 3,\"text\":_vm.$t('landingPage.firstSection.feedback.3.text'),\"author\":_vm.$t('landingPage.firstSection.feedback.3.author')}})],1),_c('div',{staticClass:\"mt-2 text-center\"},[_c('LandingPageUserFeedbackBullet',{attrs:{\"onClick\":function () { return _vm.setSection(1); },\"active\":_vm.active === 1}}),_c('LandingPageUserFeedbackBullet',{attrs:{\"onClick\":function () { return _vm.setSection(2); },\"active\":_vm.active === 2}}),_c('LandingPageUserFeedbackBullet',{attrs:{\"onClick\":function () { return _vm.setSection(3); },\"active\":_vm.active === 3}})],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('input',{class:[\n 'appearance-none h-3 w-3 mx-1 cursor-pointer rounded-full border border-black outline-none',\n _vm.active && 'bg-black border-transparent'\n ],attrs:{\"type\":\"radio\"},domProps:{\"checked\":_vm.active},on:{\"click\":_vm.onClick}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageUserFeedbackBullet.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageUserFeedbackBullet.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LandingPageUserFeedbackBullet.vue?vue&type=template&id=00e7ac5e&\"\nimport script from \"./LandingPageUserFeedbackBullet.vue?vue&type=script&lang=js&\"\nexport * from \"./LandingPageUserFeedbackBullet.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:_vm.active\n ? 'transition duration-500 block opacity-100 visible'\n : 'invisible opacity-0 absolute'},[_c('div',{staticClass:\"relative text-xl feedbackText\"},[_vm._v(_vm._s(_vm.text))]),_c('div',{staticClass:\"text-lg font-light\"},[_vm._v(_vm._s(_vm.author))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageUserFeedbackSection.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageUserFeedbackSection.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LandingPageUserFeedbackSection.vue?vue&type=template&id=a695c1c4&scoped=true&\"\nimport script from \"./LandingPageUserFeedbackSection.vue?vue&type=script&lang=js&\"\nexport * from \"./LandingPageUserFeedbackSection.vue?vue&type=script&lang=js&\"\nimport style0 from \"./LandingPageUserFeedbackSection.vue?vue&type=style&index=0&id=a695c1c4&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"a695c1c4\",\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=bfa08948&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"wrapper\",style:(_vm.paddingStyle)},[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageResponsiveEmbed.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageResponsiveEmbed.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LandingPageResponsiveEmbed.vue?vue&type=template&id=60de4ac9&\"\nimport script from \"./LandingPageResponsiveEmbed.vue?vue&type=script&lang=js&\"\nexport * from \"./LandingPageResponsiveEmbed.vue?vue&type=script&lang=js&\"\nimport style0 from \"./LandingPageResponsiveEmbed.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"full-width h-auto mx-auto mt-8 mb-16 bg-orange300 rounded-lg overflow-hidden\"},[_c('div',{staticClass:\"lg:flex\"},[_vm._m(0),_vm._m(1),_c('div',{staticClass:\"px-8 py-2 lg:p-8\"},[_c('a',{attrs:{\"href\":\"https://app.evalandgo.com/s/index.php?a=JTk2cCU5N2slOUElQjA=&id=JTk4ayU5QW4lOTYlQUY=\",\"target\":\"_blank\"}},[_c('Button',{staticClass:\"my-2\",attrs:{\"variant\":\"secondary\"}},[_vm._v(\"S'inscrire\")])],1),_c('p',{staticClass:\"text-sm font-bold\"},[_vm._v(\"Les jeudi à 10h\")]),_c('p',{staticClass:\"text-sm font-bold\"},[_vm._v(\"et vendredi à 14h - 45 min\")])])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"lg:flex-shrink-0 justify-center\"},[_c('img',{staticClass:\"m-4 h-40\",attrs:{\"src\":require(\"../assets/Formation.png\"),\"alt\":\"\"}})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"flex-shrink-0 lg:flex-shrink px-8 py-2 lg:py-8 lg:px-4\"},[_c('div',{staticClass:\"tracking-wide text-display-md text-primary\"},[_vm._v(\" Formation personnalisée \")]),_c('p',{staticClass:\"mt-2 text-md\"},[_vm._v(\" Prenez en main rapidement la plateforme \"),_c('em',[_vm._v(\"Résorption-bidonvilles\")]),_vm._v(\" grâce à une présentation personnalisée. Nous répondrons à toutes vos questions. \")])])}]\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./EventTutorial.vue?vue&type=template&id=246156e8&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=6e23cf72&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"md:grid md:grid-cols-3 md:gap-16\"},[_c('LandingPageDataBlock',{attrs:{\"line1\":_vm.$t('landingPage.secondSection.data.1.line1'),\"line2\":_vm.$t('landingPage.secondSection.data.1.line2'),\"line3\":_vm.$t('landingPage.secondSection.data.1.line3')}}),_c('LandingPageDataBlock',{staticClass:\"my-4 md:my-0\",attrs:{\"line1\":_vm.$t('landingPage.secondSection.data.2.line1'),\"line2\":_vm.$t('landingPage.secondSection.data.2.line2'),\"line3\":_vm.$t('landingPage.secondSection.data.2.line3')}}),_c('LandingPageDataBlock',{attrs:{\"line1\":_vm.$t('landingPage.secondSection.data.3.line1'),\"line2\":_vm.$t('landingPage.secondSection.data.3.line2'),\"line3\":_vm.$t('landingPage.secondSection.data.3.line3')}})],1),_c('div',{staticClass:\"max-w-screen-sm mx-auto \"},[_c('h2',{staticClass:\"mt-16\"},[_c('span',{staticClass:\"text-display-lg font-normal\"},[_vm._v(_vm._s(_vm.$t(\"landingPage.secondSection.title\")))]),_c('span',{staticClass:\"text-display-lg block\"},[_vm._v(_vm._s(_vm.$t(\"landingPage.secondSection.subtitle\")))])]),_c('div',{staticClass:\"mt-8\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.secondSection.firstParagraph\"))+\" \")]),_c('div',{staticClass:\"mt-8\"},[_c('span',{staticClass:\"font-bold\"},[_vm._v(_vm._s(_vm.$t(\"landingPage.secondSection.secondParagraph.bold\")))]),_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.secondSection.secondParagraph.normal\"))+\" \")]),_c('div',[_c('a',{staticClass:\"link\",attrs:{\"href\":\"https://www.ecologie.gouv.fr/resorption-des-campements-illicites-et-des-bidonvilles\"}},[_vm._v(_vm._s(_vm.$t(\"landingPage.secondSection.secondParagraph.link\")))])]),(_vm.$i18n.locale === 'fr')?_c('img',{staticClass:\"mt-20 w-full\",attrs:{\"src\":require(\"./assets/map-fr.jpg\")}}):_vm._e(),(_vm.$i18n.locale === 'en')?_c('img',{staticClass:\"mt-20 w-full\",attrs:{\"src\":require(\"./assets/map-en.jpg\")}}):_vm._e(),(_vm.$i18n.locale === 'bg')?_c('img',{staticClass:\"mt-20 w-full\",attrs:{\"src\":require(\"./assets/map-bg.png\")}}):_vm._e(),(_vm.$i18n.locale === 'ro')?_c('img',{staticClass:\"mt-20 w-full\",attrs:{\"src\":require(\"./assets/map-ro.jpg\")}}):_vm._e()]),_c('div',{staticClass:\"mt-20 md:flex md:flex-row items-center\"},[_c('div',{staticClass:\"block md:hidden mb-4 text-display-lg\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.secondSection.video.text\"))+\" \")]),_c('div',{staticClass:\"md:w-1/2 md:mr-16 bg-gray-500\"},[_c('LandingPageResponsiveEmbed',[_c('iframe',{attrs:{\"src\":\"https://www.dailymotion.com/embed/video/x7mf87e\",\"allowfullscreen\":\"\",\"allow\":\"autoplay; fullscreen\"}})])],1),_c('div',{staticClass:\"hidden md:blockw-1/2 text-display-lg\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.secondSection.video.text\"))+\" \")])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"text-md\"},[_vm._v(_vm._s(_vm.line1))]),_c('div',{staticClass:\"text-display-xl leading-none\"},[_vm._v(_vm._s(_vm.line2))]),_c('div',{staticClass:\"text-md\"},[_vm._v(_vm._s(_vm.line3))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageDataBlock.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageDataBlock.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LandingPageDataBlock.vue?vue&type=template&id=d603324e&\"\nimport script from \"./LandingPageDataBlock.vue?vue&type=script&lang=js&\"\nexport * from \"./LandingPageDataBlock.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=2c71e735&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"max-w-screen-sm mx-auto\"},[_c('h2',{staticClass:\"text-display-lg\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.thirdSection.title\"))+\" \")]),_c('div',{staticClass:\" mt-8\"},[_c('span',{staticClass:\"font-bold\"},[_vm._v(_vm._s(_vm.$t(\"landingPage.thirdSection.firstParagraph.bold\")))]),_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.thirdSection.firstParagraph.normal\"))+\" \")]),_vm._m(0),_c('div',{staticClass:\"grid grid-cols-1 md:grid-cols-2 gap-y-8 md:gap-x-16\"},[_c('LandingPageBilanBlock',{attrs:{\"icon\":\"users\",\"text\":_vm.$t('landingPage.thirdSection.bilan.1.text')}}),_c('LandingPageBilanBlock',{attrs:{\"icon\":\"hand-holding-medical\",\"text\":_vm.$t('landingPage.thirdSection.bilan.3.text')}}),_c('LandingPageBilanBlock',{attrs:{\"icon\":\"map-marker-alt\",\"text\":_vm.$t('landingPage.thirdSection.bilan.4.text')}}),_c('LandingPageBilanBlock',{attrs:{\"icon\":\"file-signature\",\"text\":_vm.$t('landingPage.thirdSection.bilan.6.text')}}),_c('LandingPageBilanBlock',{attrs:{\"icon\":\"book\",\"text\":_vm.$t('landingPage.thirdSection.bilan.5.text'),\"info\":_vm.$t('landingPage.thirdSection.bilan.5.info')}})],1),_c('div',{staticClass:\"text-center mt-8\"},[_c('a',{attrs:{\"href\":\"https://www.gouvernement.fr/sites/default/files/contenu/piece-jointe/2019/09/bilan_campements_2018_vecran.pdf\"}},[_c('Button',{attrs:{\"variant\":\"secondary\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.thirdSection.cta\"))+\" \")])],1)])]),_c('div',{staticClass:\"mt-32\"},[_c('div',{staticClass:\"max-w-screen-sm mx-auto\"},[_c('h2',{staticClass:\"text-display-lg\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"landingPage.thirdSection.secondParagraph.title\"))+\" \")]),_c('div',{staticClass:\"mt-4\"},[_vm._v(\" \"+_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.body.text1\" ))+\" \"),_c('a',{staticClass:\"link\",attrs:{\"href\":\"https://www.ecologie.gouv.fr/resorption-des-campements-illicites-et-des-bidonvilles\"}},[_vm._v(_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.body.link1\" )))]),_vm._v(\", \"+_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.body.text2\" ))+\". \"),_c('span',{staticClass:\"font-bold\"},[_vm._v(\" \"+_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.body.text3\" ))+\" \")]),_vm._v(\" \"+_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.body.text4\" ))+\" \"),_c('a',{staticClass:\"link\",attrs:{\"href\":\"https://beta.gouv.fr/startups/resorption-bidonvilles.html\"}},[_vm._v(_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.body.link2\" ))+\".\")])]),_c('div',{staticClass:\"mt-8\"},[_c('div',[_vm._v(\" \"+_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.items.title\" ))+\" \")]),_c('ul',{staticClass:\"list-disc ml-8\"},[_c('li',[_c('a',{staticClass:\"link\",attrs:{\"href\":\"https://entrepreneur-interet-general.etalab.gouv.fr/defis/2019/resorption-bidonvilles.html\"}},[_vm._v(_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.items.1.link\" )))]),_vm._v(\" \"+_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.items.1.text\" ))+\" \")]),_c('li',[_c('a',{staticClass:\"link\",attrs:{\"href\":\"https://ec.europa.eu/info/funding-tenders/opportunities/portal/screen/how-to-participate/org-details/999999999/project/881989/program/31076817/details\"}},[_vm._v(_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.items.2.link\" )))]),_vm._v(_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.items.2.text\" ))+\" \")]),_c('li',[_c('a',{staticClass:\"link\",attrs:{\"href\":\"https://beta.gouv.fr/approche/fast/03-fast.html\"}},[_vm._v(_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.items.3.link\" )))]),_vm._v(\" \"+_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.items.3.text\" ))+\" \")]),_c('li',[_c('a',{staticClass:\"link\",attrs:{\"href\":\"https://www.modernisation.gouv.fr/action-publique-2022/fonds-pour-la-transformation-de-laction-publique/ftap-112-millions-deuros-pour-les-19-projets-laureats\"}},[_vm._v(_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.items.4.link\" )))]),_vm._v(\" \"+_vm._s(_vm.$t( \"landingPage.thirdSection.secondParagraph.items.4.text\" ))+\" \")])])]),_vm._m(1),_vm._m(2)])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"flex flex-row items-center my-8\"},[_c('div',{staticClass:\"bg-gray-500 h-px flex-1\"}),_c('div',{staticClass:\"inline-block bg-black text-white text-display-md px-4\"},[_vm._v(\" 2019 \")]),_c('div',{staticClass:\"bg-gray-500 h-px flex-1\"})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"flex flex-row flex-wrap items-center justify-between mt-8\"},[_c('a',{attrs:{\"href\":\"https://solidarites-sante.gouv.fr/\"}},[_c('img',{staticClass:\"h-24 m-2\",attrs:{\"src\":require(\"./assets/logo-gouvernement.jpg\")}})]),_c('a',{attrs:{\"href\":\"https://ec.europa.eu/info/index_en\"}},[_c('img',{staticClass:\"h-24 my-2\",attrs:{\"src\":require(\"./assets/logo-commission-europenne.png\")}})])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"flex flex-row flex-wrap items-center justify-between mt-8\"},[_c('a',{attrs:{\"href\":\"https://beta.gouv.fr/approche/incubateurs/mtes.html\"}},[_c('img',{staticClass:\"h-24 m-2\",attrs:{\"src\":require(\"./assets/logo-fabrique-numerique.png\")}})]),_c('a',{attrs:{\"href\":\"https://beta.gouv.fr/\"}},[_c('img',{staticClass:\"h-20 m-2\",attrs:{\"src\":require(\"./assets/logo_beta-gouv-fr.jpg\")}})]),_c('a',{attrs:{\"href\":\"https://entrepreneur-interet-general.etalab.gouv.fr/defis/2019/resorption-bidonvilles.html\"}},[_c('img',{staticClass:\"h-16 m-2\",attrs:{\"src\":require(\"./assets/logo-entrepreneur-interet-general.png\")}})])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"flex flex-row\"},[_c('div',[_c('font-awesome-icon',{staticClass:\"text-secondary\",attrs:{\"icon\":_vm.icon,\"size\":\"2x\"}})],1),_c('div',{staticClass:\"ml-2\"},[_c('span',{staticClass:\"font-bold text-display-md\"},[_vm._v(_vm._s(_vm.text))]),_c('span',[_vm._v(_vm._s(_vm.info))])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageBilanBlock.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageBilanBlock.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LandingPageBilanBlock.vue?vue&type=template&id=085a3c45&\"\nimport script from \"./LandingPageBilanBlock.vue?vue&type=script&lang=js&\"\nexport * from \"./LandingPageBilanBlock.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=a31a2632&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"bg-corail text-white full-width text-center py-8\"},[_c('PublicContainer',[_c('div',{staticClass:\"max-w-screen-md mx-auto\"},[_c('h2',{staticClass:\"text-display-lg text-white \"},[_vm._t(\"default\")],2),_c('div',{staticClass:\"pt-4\"},[_c('router-link',{attrs:{\"to\":\"/contact\"}},[_c('Button',{attrs:{\"variant\":\"primary\"}},[_vm._v(_vm._s(_vm.cta))])],1)],1)])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageBanner.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LandingPageBanner.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LandingPageBanner.vue?vue&type=template&id=3c28e919&\"\nimport script from \"./LandingPageBanner.vue?vue&type=script&lang=js&\"\nexport * from \"./LandingPageBanner.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"relative\"},[_vm._t(\"default\"),_c('div',{staticClass:\"absolute bottom-0 right-0 mr-4 text-white\"},[_vm._v(\" \"+_vm._s(_vm.credit)+\" \")])],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CreditWrapper.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CreditWrapper.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CreditWrapper.vue?vue&type=template&id=72d0c3ec&\"\nimport script from \"./CreditWrapper.vue?vue&type=script&lang=js&\"\nexport * from \"./CreditWrapper.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=5b1d281c&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--withMargin\"},[_c('NavBar',{attrs:{\"hideAlert\":true}}),_c('Form',_vm._b({on:{\"complete\":_vm.onComplete},model:{value:(_vm.formData),callback:function ($$v) {_vm.formData=$$v},expression:\"formData\"}},'Form',_vm.formDefinition,false)),_c('div',{staticClass:\"bg-orange300 py-4 flex items-center mx-auto\"},[_c('div',{staticClass:\"container flex items-center\"},[_c('Icon',{staticClass:\"text-display-xl mr-4 text-primary\",attrs:{\"icon\":\"exclamation-triangle\"}}),_vm._m(0)],1)])],1)])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"text-display-md text-primary mb-2\"},[_vm._v(\"Attention, version dégradée de la plateforme\")]),_c('div',{staticClass:\"mb-2\"},[_vm._v(\"La plateforme fonctionne partiellement. \"),_c('span',{staticClass:\"font-bold\"},[_vm._v(\"Les données visibles datent du 14 janvier 2021. Il est impossible de modifier les informations.\")]),_vm._v(\" Cela fait suite à \"),_c('a',{attrs:{\"href\":\"https://www.lemonde.fr/societe/article/2021/03/10/a-strasbourg-un-important-incendie-sur-le-site-de-l-entreprise-ovh-classe-seveso_6072548_3224.html\"}},[_vm._v(\"l’incendie chez notre hébergeur\")]),_vm._v(\".\")]),_c('div',[_vm._v(\"Notre équipe technique est mobilisée. \"),_c('span',{staticClass:\"font-bold\"},[_vm._v(\"Retour à la normale prévue la semaine du 22 mars.\")]),_vm._v(\" Nous vous tiendrons informés de la remise en ligne complète par mail. Toutes nos excuses pour le désagrément et merci de votre patience.\")])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('header',{attrs:{\"role\":\"navigation\"}},[_c('div',{staticClass:\"topbar\"},[_c('div',{staticClass:\"topbar-container\"},[_c('router-link',{staticClass:\"topbar-home\",attrs:{\"to\":\"/landing\"}},[_c('img',{staticClass:\"topbar-marianne\",attrs:{\"src\":\"/img/logo-marianne.svg\",\"alt\":\"france\"}}),_c('span',{staticClass:\"topbar-domain\"},[_vm._v(\"resorption-bidonvilles.\")]),_c('img',{staticClass:\"topbar-betagouv\",attrs:{\"src\":\"/img/betagouvfr.svg\",\"alt\":\"beta.gouv.fr\"}})]),_c('span',{ref:\"menu\",staticClass:\"topbar-menu\",on:{\"click\":_vm.showSidebar}},[_vm._v(\"Menu\")]),_c('ul',{staticClass:\"nav__links\"},_vm._l((_vm.items),function(item){return _c('li',{key:item.target,staticClass:\"nav__item\"},[(item.items)?_c('div',{staticClass:\"dropdown\"},[_vm._v(_vm._s(item.label)+\" \"),_c('div',{staticClass:\"dropdown-content\"},_vm._l((item.items),function(subitem){return _c('router-link',{key:subitem.target,class:Object.assign(subitem.classes || {}, subitem.group ? { active: _vm.isCurrentRouteAMemberOf(subitem.group) } : {}),attrs:{\"to\":subitem.target}},[_vm._v(_vm._s(subitem.label))])}),1)]):_c('router-link',{class:Object.assign(item.classes || {}, item.group ? { active: _vm.isCurrentRouteAMemberOf(item.group) } : {}),attrs:{\"to\":item.target}},[_vm._v(_vm._s(item.label))])],1)}),0)],1),_c('div',{ref:\"sidebar\",staticClass:\"sidebar\",class:{ opened: _vm.isSidebarOpened }},[_c('div',{staticClass:\"sidebar-cross\",on:{\"click\":_vm.hideSidebar}},[_c('img',{attrs:{\"src\":\"/img/cross.svg\",\"alt\":\"Fermer\"}})]),_c('ul',{staticClass:\"nav__links\"},_vm._l((_vm.items),function(item){return _c('li',{key:item.target,staticClass:\"nav__item\"},[(item.items)?_c('div',{staticClass:\"dropdown\"},[_vm._v(_vm._s(item.label)+\" \"),_c('div',{staticClass:\"dropdown-content\"},_vm._l((item.items),function(subitem){return _c('router-link',{key:subitem.target,class:Object.assign(subitem.classes || {}, subitem.group ? { active: _vm.isCurrentRouteAMemberOf(subitem.group) } : {}),attrs:{\"to\":subitem.target}},[_vm._v(_vm._s(subitem.label))])}),1)]):_c('router-link',{class:Object.assign(item.classes || {}, item.group ? { active: _vm.isCurrentRouteAMemberOf(item.group) } : {}),attrs:{\"to\":item.target}},[_vm._v(_vm._s(item.label))])],1)}),0)])]),(!_vm.hideAlert)?_c('div',{staticClass:\"bg-orange300 w-full py-4 flex items-center\"},[_c('div',{staticClass:\"container flex items-center\"},[_c('Icon',{staticClass:\"text-display-lg mr-4 text-primary\",attrs:{\"icon\":\"exclamation-triangle\"}}),_vm._m(0)],1)]):_vm._e()])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_vm._v(\"Version dégradée. \"),_c('span',{staticClass:\"font-bold\"},[_vm._v(\"Les données visibles datent du 14 janvier 2021\")]),_vm._v(\" et ne peuvent être modifiées. Merci de votre compréhension.\")])}]\n\nexport { render, staticRenderFns }","let tab = null;\n\nexport function open(url) {\n if (tab === null || tab.closed) {\n tab = window.open(url, \"_blank\");\n } else {\n tab.location = url;\n tab.location.reload();\n tab.focus();\n }\n}\n\nexport default open;\n","import Vue from \"vue\";\nimport { getToken, logout } from \"#helpers/api/user\";\nimport { router } from \"#app/router\";\nimport { open as openTab } from \"#helpers/tabHelper\";\nimport version from \"#root/version.json\";\n\n/**\n * Generic error codes\n *\n * @readonly\n * @enum {number}\n */\nconst ERRORS = {\n MISSING_TOKEN: 1,\n EXPIRED_OR_INVALID_TOKEN: 2\n};\n\n/**\n * Handles a response from the API\n *\n * @param {Function} success Success callback\n * @param {Function} failure Failure callback\n */\nfunction handleRequestResponse(success, failure) {\n let response = null;\n try {\n response = this.responseText\n ? JSON.parse(this.responseText)\n : this.responseText;\n } catch (error) {\n failure({\n user_message: \"Une erreur inconnue est survenue\",\n developer_message: \"Failed to parsed the server's response\"\n });\n return;\n }\n\n if (response.success === true && response.response !== undefined) {\n success(response.response);\n return;\n }\n\n if (this.status / 200 < 1 || this.status / 200 >= 1.5) {\n const errorObject = (response && response.error) || response || {};\n switch (errorObject.code) {\n // handle generic errors\n case ERRORS.MISSING_TOKEN:\n case ERRORS.EXPIRED_OR_INVALID_TOKEN:\n logout(Vue.prototype.$piwik);\n router.push(\"/\");\n break;\n\n // for everything else, let the current component decide what's best\n default:\n failure(\n errorObject.user_message\n ? errorObject\n : {\n user_message: \"Une erreur inconnue est survenue\",\n developer_message:\n \"The server responded with an error status but did not provide error details\"\n }\n );\n }\n\n return;\n }\n\n success(response);\n}\n\n/**\n * Handles a failure of the request\n *\n * This is different from the API responding with an error.\n * This function handles failures in reaching the API server like timeouts\n * or internal server errors preventing the API from actually providing\n * us with a response.\n *\n * @param {Function} callback\n */\nfunction handleRequestFailure(callback) {\n callback();\n}\n\n/**\n * Sends an API request\n *\n * @param {string} method\n * @param {string} url\n * @param {Object} [data]\n * @param {Object.} [headers]\n *\n * @returns {Promise}\n */\nfunction request(method, url, data, headers = {}) {\n const xhr = new XMLHttpRequest();\n const promise = new Promise((success, failure) => {\n xhr.open(method, `${process.env.VUE_APP_API_URL}${url}`);\n\n Object.keys(headers).forEach(name => {\n xhr.setRequestHeader(name, headers[name]);\n });\n\n if (!Object.prototype.hasOwnProperty.call(headers, \"x-access-token\")) {\n const token = getToken();\n if (token !== null) {\n xhr.setRequestHeader(\"x-access-token\", token);\n }\n }\n\n xhr.setRequestHeader(\"x-app-version\", version);\n\n xhr.onload = handleRequestResponse.bind(xhr, success, failure);\n xhr.onerror = handleRequestFailure.bind(xhr, failure);\n xhr.ontimeout = handleRequestFailure.bind(xhr, failure);\n\n if (data !== undefined) {\n if (\n !Object.prototype.hasOwnProperty.call(headers, \"Content-Type\")\n ) {\n xhr.setRequestHeader(\"Content-Type\", \"application/json\");\n }\n\n xhr.send(JSON.stringify(data));\n } else {\n xhr.send();\n }\n });\n promise.abort = () => {\n xhr.abort();\n };\n\n return promise;\n}\n\n/**\n * Alias for GET requests\n *\n * @param {string} url\n * @param {Object} [data]\n * @param {Object.} [headers]\n *\n * @returns {Promise}\n */\nexport function getApi(url, data, headers) {\n return request(\"GET\", url, data, headers);\n}\n\n/**\n * Alias for POST requests\n *\n * @param {string} url\n * @param {Object} [data]\n * @param {Object.} [headers]\n *\n * @returns {Promise}\n */\nexport function postApi(url, data, headers) {\n return request(\"POST\", url, data, headers);\n}\n\n/**\n * Alias for DELETE requests\n *\n * @param {string} url\n * @param {Object} [data]\n * @param {Object.} [headers]\n *\n * @returns {Promise}\n */\nexport function deleteApi(url, data, headers) {\n return request(\"DELETE\", url, data, headers);\n}\n\n/**\n * Alias for PATCH requests\n *\n * @param {string} url\n * @param {Object} [data]\n * @param {Object.} [headers]\n *\n * @returns {Promise}\n */\nexport function patchApi(url, data, headers) {\n return request(\"PATCH\", url, data, headers);\n}\n\n/**\n * Alias for PUT requests\n *\n * @param {string} url\n * @param {Object} [data]\n * @param {Object.} [headers]\n *\n * @returns {Promise}\n */\nexport function putApi(url, data, headers) {\n return request(\"PUT\", url, data, headers);\n}\n\n/**\n * Opens a new tab with the given URL\n *\n * Appends the access token to the request\n *\n * @param {String} url\n */\nexport function open(url) {\n return openTab(\n `${url}${\n url.indexOf(\"?\") === -1 ? \"?\" : \"&\"\n }accessToken=${encodeURIComponent(getToken())}`\n );\n}\n","import { getApi, postApi } from \"#helpers/api/main\";\nimport { refreshToken } from \"#helpers/api/user\";\n\n/**\n * Loaded configuration\n *\n * @type {Configuration|null}\n */\nlet configuration = null;\n\n/**\n * Checks if the configuration for the current user is loaded\n *\n * The configuration consists in:\n * - data specific to the current user (email, name, etc., this kind of stuff)\n * - static data that can be reused all over the app (list of town's field types, owner types, and so on)\n *\n * The reason behind loading the static data is to avoid fetching it each time a component needs it,\n * which we can assume will be VERY OFTEN.\n * It makes us save a few useless HTTP requests in the future.\n *\n * @returns {boolean}\n */\nexport function isLoaded() {\n return configuration !== null;\n}\n\n/**\n * Loads the configuration for the current user\n *\n * If there is no user currently logged in, this request will fail.\n *\n * @returns {Promise}\n */\nexport function load() {\n return getApi(\"/config\").then(response => {\n // refresh the token, by the way\n refreshToken();\n\n configuration = response;\n return response;\n });\n}\n\n/**\n * Unloads the current configuration\n *\n * Should be used whenever the current user logs out\n */\nexport function unload() {\n configuration = null;\n}\n\n/**\n * Returns the current configuration\n *\n * @returns {Configuration|null}\n */\nexport function get() {\n return configuration;\n}\n\n/**\n * Updates the local configuration\n *\n * @param {String} property A chain of properties (example: user.first_name)\n * @param {Object} value The new value for the property\n *\n * @returns {undefined}\n */\nexport function set(property, value) {\n if (configuration === null) {\n return;\n }\n\n const chain = property.split(\".\");\n let ref = configuration;\n\n while (chain.length > 1) {\n if (ref === undefined) {\n return;\n }\n\n ref = ref[chain.shift()];\n }\n\n ref[chain[0]] = value;\n}\n\n/**\n * @param {String} permission\n *\n * @returns {Permission}\n */\nexport function getPermission(permissionName) {\n if (configuration === null || configuration.user === null) {\n return null;\n }\n\n const [entity, feature] = permissionName.split(\".\");\n if (\n !Object.prototype.hasOwnProperty.call(\n configuration.user.permissions,\n entity\n ) ||\n !Object.prototype.hasOwnProperty.call(\n configuration.user.permissions[entity],\n feature\n )\n ) {\n return null;\n }\n\n const permission = configuration.user.permissions[entity][feature];\n if (permission.allowed !== true) {\n return null;\n }\n\n return permission;\n}\n\n/**\n * Checks if the current user has a specific permission\n *\n * @param {String} permission\n *\n * @returns {boolean}\n */\nexport function hasPermission(permissionName) {\n const [entity, feature, data] = permissionName.split(\".\");\n const permission = getPermission(`${entity}.${feature}`);\n\n return (\n permission !== null && (data === undefined || permission[data] === true)\n );\n}\n\n/**\n * Marks a changelog as read\n *\n * @param {Number} version The latest version read by the user\n *\n * @returns {Promise}\n */\nexport function closeChangelog(version) {\n return postApi(\"/changelog\", { version });\n}\n\n/**\n * Indicates whether the current user has accepted the charte\n *\n * @returns {Boolean}\n */\nexport function hasAcceptedCharte() {\n if (configuration === null) {\n return false;\n }\n\n return configuration.user.charte_engagement_a_jour;\n}\n\n/**\n * @typedef {Object} Configuration\n * @property {UserConfiguration} user\n * @property {Array} field_types\n */\n\n/**\n * @typedef {Object} UserConfiguration\n * @property {string} email\n */\n","import { unload as unloadConfig } from \"#helpers/api/config\";\nimport { postApi, putApi, getApi, deleteApi } from \"#helpers/api/main\";\n\n/**\n * Sends a login request for the given user\n *\n * Please note that in case of success, a JWT token is stored in the local storage,\n * which is the only way we have to detect wether the current user is logged in\n * or not.\n * @see isLoggedIn()\n *\n * @param {string} email\n * @param {string} password\n *\n * @returns {Promise}\n */\nexport function login(email, password) {\n return postApi(\"/signin\", { email, password }).then(response => {\n localStorage.setItem(\"token\", response.token);\n return response;\n });\n}\n\n/**\n * Renews the access token for a few more time\n *\n * @returns {Promise}\n */\nexport function refreshToken() {\n return getApi(\"/refreshToken\").then(response => {\n localStorage.setItem(\"token\", response.token);\n });\n}\n\n/**\n * Logs the user out\n *\n * Basically, all we have to do is remove the token from local storage.\n *\n * @param {Matomo} piwik\n */\nexport function logout(piwik) {\n unloadConfig();\n localStorage.removeItem(\"token\");\n\n if (piwik) {\n piwik.resetUserId();\n piwik.setCustomVariable(1, \"superuser\", null);\n piwik.setCustomVariable(2, \"structure\", null);\n piwik.setCustomVariable(3, \"niveau_geo\", null);\n piwik.setCustomVariable(4, \"geo_nom\", null);\n }\n}\n\n/**\n * Checks if the current user is logged in or not\n *\n * This check is only based on the existence of an 'auth_token' entry in the local storage,\n * NOT on its validity.\n * This should not cause safety issues as the backend should always validate that token before\n * accepting any requests.\n *\n * @returns {boolean}\n */\nexport function isLoggedIn() {\n return localStorage.getItem(\"token\") !== null;\n}\n\n/**\n * Checks if the current visitor has already been logged at least once\n *\n * @returns {Boolean}\n */\nexport function alreadyLoggedBefore() {\n return localStorage.getItem(\"logged_once\") === true;\n}\n\n/**\n * Returns the access token of the current session (if any)\n *\n * @returns {string|null}\n */\nexport function getToken() {\n return localStorage.getItem(\"token\");\n}\n\n/**\n * POST /users\n */\nexport function create(data) {\n return postApi(\"/users\", data);\n}\n\n/**\n * Returns all available data about the current user\n *\n * @returns {Promise}\n */\nexport function me() {\n return getApi(\"/me\");\n}\n\n/**\n * Updates data about the current user\n *\n * @param {User_Data} data\n *\n * @returns {Promise}\n */\nexport function edit(data) {\n return postApi(\"/me\", data);\n}\n\n/**\n * Updates the default export for the current user\n *\n * @param {string} defaultExport\n *\n * @returns {Promise}\n */\nexport function setDefaultExport(defaultExport) {\n return postApi(\"/me/default-export\", {\n export: defaultExport\n });\n}\n\n/**\n * GET /users\n */\nexport function list() {\n return getApi(\"/users\");\n}\n\n/**\n * GET /users/:id\n */\nexport function get(id) {\n return getApi(`/users/${id}`);\n}\n\n/**\n * POST /users/:id/sendActivationLink\n */\nexport function sendActivationLink(user, data) {\n return postApi(`/users/${user}/sendActivationLink`, data);\n}\n\n/**\n * POST /users/:id/denyAccess\n */\nexport function denyAccess(user) {\n return postApi(`/users/${user}/denyAccess`);\n}\n\n/**\n * GET /activation-tokens/:token/check\n */\nexport function checkActivationToken(token) {\n return getApi(`/activation-tokens/${encodeURIComponent(token)}/check`);\n}\n\n/**\n * GET /password-tokens/:token/check\n */\nexport function checkPasswordToken(token) {\n return getApi(`/password-tokens/${encodeURIComponent(token)}/check`);\n}\n\n/**\n * POST /users/:id/activate\n */\nexport function activate(userId, data) {\n return postApi(`/users/${userId}/activate`, data);\n}\n\n/**\n * POST /users/:id/newPassword\n */\nexport function setPassword(userId, data) {\n return postApi(`/users/${userId}/newPassword`, data);\n}\n\n/**\n * POST /users/:id/upgrade\n */\nexport function upgrade(userId, data) {\n return postApi(`/users/${userId}/upgrade`, data);\n}\n\n/**\n * DELETE /users/:id\n */\nexport function remove(userId) {\n return deleteApi(`/users/${userId}`);\n}\n\n/**\n * POST /users/new-password\n */\nexport function requestNewPassword(email) {\n return postApi(\"/users/new-password\", { email });\n}\n\n/**\n * GET /directory\n */\nexport function getDirectory() {\n return getApi(\"/directory\");\n}\n\n/**\n * GET /organizations/search\n */\nexport function autocompleteOrganization(str) {\n return getApi(`/organizations/search?query=${encodeURIComponent(str)}`);\n}\n\n/**\n * PUT /users/:id/charte_engagement\n */\nexport function acceptCharte(\n userId,\n charteVersion,\n charteAgreement,\n confidentialityAgreement\n) {\n return putApi(`/users/${userId}/charte_engagement`, {\n version_de_charte: charteVersion,\n charte_agreement: charteAgreement,\n confidentiality_agreement: confidentialityAgreement\n });\n}\n\n/**\n * @typedef {Object} User_Data\n * @property {string} first_name\n * @property {string} last_name\n * @property {string} [password]\n */\n","export default {\n anonymous: [\n { label: \"Connexion\", target: \"/connexion\" },\n { label: \"Demander un accès\", target: \"/contact\" },\n {\n label: \"Aide\",\n items: [\n { label: \"Nous contacter\", target: \"/feedback\" },\n { label: \"Mentions légales\", target: \"/mentions-legales\" },\n { label: \"CGUs\", target: \"/conditions-d-utilisation\" }\n ]\n }\n ],\n loading: [\n {\n label: \"Aide\",\n items: [\n { label: \"Nous contacter\", target: \"/feedback\" },\n { label: \"Mentions légales\", target: \"/mentions-legales\" },\n { label: \"CGUs\", target: \"/conditions-d-utilisation\" }\n ]\n },\n { label: \"Déconnexion\", target: \"/deconnexion\" }\n ],\n loaded: [\n {\n label: \"Covid-19\",\n target: \"/covid-19\",\n classes: {\n \"router-link--covid\": true\n }\n },\n {\n label: \"Sites\",\n items: [\n {\n label: \"Liste des sites\",\n target: \"/liste-des-sites\",\n group: \"townList\"\n }\n // {\n // label: \"Déclarer un site\",\n // target: \"/nouveau-site\",\n // group: \"townCreation\"\n // }\n ]\n },\n {\n label: \"Dispositifs\",\n items: [\n {\n label: \"Liste des dispositifs\",\n target: \"/liste-des-dispositifs\"\n }\n // {\n // label: \"Déclarer un dispositif\",\n // target: \"/nouveau-dispositif\"\n // }\n ]\n },\n {\n label: \"Annuaire\",\n target: \"/annuaire\",\n group: \"directory\"\n },\n {\n label: \"Administration\",\n items: [\n {\n label: \"Liste des utilisateurs\",\n target: \"/liste-des-utilisateurs\",\n group: \"users\"\n },\n // {\n // label: \"Créer un utilisateur\",\n // target: \"/nouvel-utilisateur\",\n // group: \"userCreation\"\n // },\n {\n label: \"Statistiques\",\n target: \"/statistiques\",\n group: \"stats\"\n },\n {\n label: \"Historique des activités\",\n target: \"/historique-des-activites\",\n group: \"admin\"\n }\n ]\n },\n {\n label: \"Mon compte\",\n items: [\n // {\n // label: \"Gérer mon compte\",\n // target: \"/mon-compte\",\n // group: \"me\"\n // },\n { label: \"Déconnexion\", target: \"/deconnexion\" }\n ]\n },\n {\n label: \"Aide\",\n items: [\n { label: \"Nous contacter\", target: \"/feedback\" },\n { label: \"Mentions légales\", target: \"/mentions-legales\" },\n { label: \"CGUs\", target: \"/conditions-d-utilisation\" }\n ]\n }\n ]\n};\n","import { isLoggedIn } from \"#helpers/api/user\";\nimport {\n isLoaded as isConfigLoaded,\n hasPermission,\n hasAcceptedCharte\n} from \"#helpers/api/config\";\nimport ITEMS from \"./items\";\n\nexport default {\n props: [\"hideAlert\"],\n data() {\n return {\n isSidebarOpened: false\n };\n },\n computed: {\n items() {\n if (isLoggedIn() !== true) {\n return ITEMS.anonymous;\n }\n\n if (isConfigLoaded() !== true || hasAcceptedCharte() !== true) {\n return ITEMS.loading;\n }\n\n return this.filterItems(ITEMS.loaded);\n }\n },\n methods: {\n filterItems(items) {\n return items\n .map(item => {\n if (item.items) {\n return Object.assign(item, {\n items: item.items.filter(subitem =>\n this.isItemAllowed(subitem)\n )\n });\n }\n\n return item;\n })\n .filter(item => {\n if (item.items) {\n return item.items.length > 0;\n }\n\n return this.isItemAllowed(item);\n });\n },\n isItemAllowed(item) {\n const requiredPermissions = this.$router.resolve({\n path: item.target\n }).route.meta.permissions;\n\n if (!requiredPermissions) {\n return true;\n }\n\n return requiredPermissions.every(permission =>\n hasPermission(permission)\n );\n },\n isCurrentRouteAMemberOf(group) {\n return this.$route.matched.some(\n route => route.meta.group === group\n );\n },\n showSidebar() {\n this.isSidebarOpened = true;\n },\n hideSidebar() {\n this.isSidebarOpened = false;\n },\n checkClickOutsideSidebar(event) {\n // in case of a click outside the sidebar and NOT on the \"Menu\" link\n if (\n !this.$refs.sidebar.contains(event.target) &&\n event.target !== this.$refs.menu\n ) {\n this.hideSidebar();\n }\n }\n },\n mounted() {\n document.addEventListener(\"click\", this.checkClickOutsideSidebar);\n },\n destroyed() {\n document.removeEventListener(\"click\", this.checkClickOutsideSidebar);\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./navbar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./navbar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./navbar.vue?vue&type=template&id=b24b83de&scoped=true&lang=pug&\"\nimport script from \"./navbar.vue?vue&type=script&lang=js&\"\nexport * from \"./navbar.vue?vue&type=script&lang=js&\"\nimport style0 from \"./navbar.vue?vue&type=style&index=0&id=b24b83de&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"b24b83de\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"form\",attrs:{\"id\":\"top\"}},[_c('header',{staticClass:\"form-header\"},[_c('div',{staticClass:\"container\"},[_c('h1',{staticClass:\"form-title\"},[_vm._v(_vm._s(_vm.title || 'Formulaire'))])])]),_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"form-body\"},[_c('div',{staticClass:\"container\"},[(_vm.description)?_c('SlideNote',{attrs:{\"title\":_vm.descriptionTitle,\"content\":_vm.description}}):_vm._e(),_vm._l((_vm.fullSections),function(section){return _c('section',{staticClass:\"formSection\"},[_c('header',{staticClass:\"formSection-header\"},[(section.title)?_c('h1',{staticClass:\"formSection-title\"},[_c('span',{staticClass:\"formSection-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":section.icon || 'flag'}})],1),_vm._v(\" \"+_vm._s(section.title)+\" \")]):_vm._e(),(section.description)?_c('p',{staticClass:\"formSection-description\",domProps:{\"innerHTML\":_vm._s(section.description)}}):_vm._e()]),_c('div',[_c('span',{staticStyle:{\"display\":\"none\"}},[_vm._v(_vm._s(_vm.refreshId))]),_vm._l((section.inputs),function(input,inputId){return (_vm.isInputVisible(input))?_c('Input',_vm._b({key:inputId,attrs:{\"id\":inputId,\"errors\":(_vm.errors && _vm.errors.fields && _vm.errors.fields[inputId]) || undefined,\"disabled\":_vm.isInputDisabled(input),\"alertMessage\":_vm.getInputAlert(input)},on:{\"change\":_vm.onDataChange},model:{value:(_vm.data[inputId]),callback:function ($$v) {_vm.$set(_vm.data, inputId, $$v)},expression:\"data[inputId]\"}},'Input',input,false)):_vm._e()})],2)])}),(_vm.errors && _vm.errors.main)?_c('div',{staticClass:\"notification error\"},[_c('span',[_vm._v(_vm._s(_vm.wording.error + ' : ' + _vm.errors.main))]),(_vm.numberOfFilteredErrors > 0)?_c('p',[_vm._v(\"Les champs en erreur sont : \"),_c('ul',_vm._l((_vm.filteredErrors),function(details,inputId){return _c('li',[_c('a',{on:{\"click\":function($event){_vm.$router.replace('#top', function () { return _vm.$router.replace((\"#\" + inputId)); });}}},[_vm._v(_vm._s((_vm.getInputById(inputId) || {}).label || 'inconnu'))])])}),0)]):_vm._e()]):_vm._e(),_c('section',{staticClass:\"form-stepNav\"},[(_vm.submitPrefix)?_c('p',{domProps:{\"innerHTML\":_vm._s(_vm.submitPrefix)}}):_vm._e(),_c('button',{staticClass:\"form-stepButton button\",attrs:{\"data-cy-button\":\"submit\",\"disabled\":_vm.pending},on:{\"click\":_vm.submit}},[(!_vm.pending)?_c('span',[_vm._v(_vm._s(_vm.wording.submit))]):_c('img',{attrs:{\"src\":\"/img/spinner_light.svg\",\"width\":\"20\"}})])])],2)])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"form__group inputContainer\",class:{ error: _vm.errors.length > 0 },attrs:{\"id\":_vm.id}},[_c('label',{staticClass:\"input-label\"},[_vm._v(_vm._s(_vm.label)),(_vm.mandatory)?_c('sup',{staticClass:\"input-mandatory\"},[_vm._v(\" (*)\")]):_vm._e()]),(_vm.alertMessage)?_c('p',{staticClass:\"notification warning\"},[_vm._v(_vm._s(_vm.alertMessage))]):_c('div',[(_vm.description)?_c('p',{staticClass:\"input-description\",domProps:{\"innerHTML\":_vm._s(_vm.description)}}):_vm._e(),(_vm.errors.length > 0)?_c('div',{staticClass:\"notification error\"},_vm._l((_vm.errors),function(error){return _c('ul',[_c('li',[_vm._v(_vm._s(error))])])}),0):_vm._e(),(_vm.type === 'text')?_c('input',_vm._b({directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data),expression:\"data\"}],staticClass:\"input input--text\",attrs:{\"data-cy-field\":_vm.id,\"type\":\"text\",\"id\":(\"input-\" + _vm.id),\"disabled\":_vm.disabled,\"readonly\":_vm.disabled},domProps:{\"value\":(_vm.data)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.data=$event.target.value}}},'input',_vm.props,false)):_vm._e(),(_vm.type === 'hidden')?_c('input',_vm._b({directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data),expression:\"data\"}],staticClass:\"input input--hidden\",attrs:{\"data-cy-field\":_vm.id,\"type\":\"hidden\",\"id\":(\"input-\" + _vm.id),\"disabled\":_vm.disabled,\"readonly\":_vm.disabled},domProps:{\"value\":(_vm.data)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.data=$event.target.value}}},'input',_vm.props,false)):_vm._e(),((_vm.showPassword ? 'text' : 'password')==='checkbox'&&(_vm.type === 'password'))?_c('input',_vm._b({directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data),expression:\"data\"}],staticClass:\"input input--password\",attrs:{\"data-cy-field\":_vm.id,\"id\":(\"input-\" + _vm.id),\"disabled\":_vm.disabled,\"readonly\":_vm.disabled,\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.data)?_vm._i(_vm.data,null)>-1:(_vm.data)},on:{\"change\":function($event){var $$a=_vm.data,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.data=$$a.concat([$$v]))}else{$$i>-1&&(_vm.data=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.data=$$c}}}},'input',_vm.props,false)):((_vm.showPassword ? 'text' : 'password')==='radio'&&(_vm.type === 'password'))?_c('input',_vm._b({directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data),expression:\"data\"}],staticClass:\"input input--password\",attrs:{\"data-cy-field\":_vm.id,\"id\":(\"input-\" + _vm.id),\"disabled\":_vm.disabled,\"readonly\":_vm.disabled,\"type\":\"radio\"},domProps:{\"checked\":_vm._q(_vm.data,null)},on:{\"change\":function($event){_vm.data=null}}},'input',_vm.props,false)):(_vm.type === 'password')?_c('input',_vm._b({directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data),expression:\"data\"}],staticClass:\"input input--password\",attrs:{\"data-cy-field\":_vm.id,\"id\":(\"input-\" + _vm.id),\"disabled\":_vm.disabled,\"readonly\":_vm.disabled,\"type\":_vm.showPassword ? 'text' : 'password'},domProps:{\"value\":(_vm.data)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.data=$event.target.value}}},'input',_vm.props,false)):_vm._e(),(_vm.type === 'password')?_c('span',{staticClass:\"input--password-toggler\",on:{\"click\":function($event){_vm.showPassword = !_vm.showPassword}}},[_c('font-awesome-icon',{attrs:{\"icon\":_vm.showPassword ? 'eye' : 'eye-slash'}})],1):_vm._e(),(_vm.type === 'textarea')?_c('textarea',_vm._b({directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data),expression:\"data\"}],staticClass:\"input input--textarea\",attrs:{\"data-cy-field\":_vm.id,\"id\":(\"input-\" + _vm.id),\"disabled\":_vm.disabled,\"readonly\":_vm.disabled},domProps:{\"value\":(_vm.data)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.data=$event.target.value}}},'textarea',_vm.props,false)):_vm._e(),(_vm.type === 'number')?_c('input',_vm._b({directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data),expression:\"data\"}],staticClass:\"input input--number\",attrs:{\"data-cy-field\":_vm.id,\"type\":\"number\",\"id\":(\"input-\" + _vm.id),\"disabled\":_vm.disabled,\"readonly\":_vm.disabled},domProps:{\"value\":(_vm.data)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.data=$event.target.value}}},'input',_vm.props,false)):_vm._e(),(_vm.type === 'select' || _vm.type === 'selectMultiple')?_c('select',_vm._b({directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data),expression:\"data\"}],staticClass:\"input input--select\",attrs:{\"data-cy-field\":_vm.id,\"id\":(\"input-\" + _vm.id),\"multiple\":_vm.type === 'selectMultiple',\"disabled\":_vm.disabled},on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.data=$event.target.multiple ? $$selectedVal : $$selectedVal[0]}}},'select',_vm.props,false),[_vm._l((Object.keys(_vm.options)),function(groupName){return (_vm.optionsAreGrouped)?_c('optgroup',{attrs:{\"label\":_vm.options[groupName].label}},_vm._l((_vm.options[groupName].options),function(option){return _c('option',{domProps:{\"value\":option.value}},[_vm._v(_vm._s(option.label))])}),0):_vm._e()}),_vm._l((_vm.options),function(option){return (!_vm.optionsAreGrouped)?_c('option',{domProps:{\"value\":option.value}},[_vm._v(_vm._s(option.label))]):_vm._e()})],2):_vm._e(),(_vm.type === 'radio')?_c('ul',{staticClass:\"input input--radio\",attrs:{\"id\":(\"input-\" + _vm.id)}},_vm._l((_vm.options),function(option,index){return _c('li',{staticClass:\"input--radio-option\"},[_c('label',{attrs:{\"for\":(\"input\" + _vm._uid + \"-\" + index)}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data),expression:\"data\"}],staticClass:\"input input--radio\",attrs:{\"type\":\"radio\",\"data-cy-field\":_vm.id,\"data-cy-label\":option.label,\"id\":(\"input\" + _vm._uid + \"-\" + index),\"name\":(\"input\" + _vm._uid),\"disabled\":_vm.disabled},domProps:{\"value\":option.value,\"checked\":_vm._q(_vm.data,option.value)},on:{\"change\":function($event){_vm.data=option.value}}}),_vm._v(\" \"+_vm._s(option.label)+\" \")])])}),0):_vm._e(),(_vm.type === 'checkbox')?_c('ul',{staticClass:\"input--checkbox\",attrs:{\"id\":(\"input-\" + _vm.id)}},_vm._l((_vm.options),function(option,index){return _c('li',{staticClass:\"input--checkbox-option\"},[_c('label',{attrs:{\"for\":(\"input\" + _vm._uid + \"-\" + index)}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data),expression:\"data\"}],staticClass:\"input input--checkbox\",attrs:{\"type\":\"checkbox\",\"data-cy-field\":_vm.id,\"data-cy-label\":option.label,\"id\":(\"input\" + _vm._uid + \"-\" + index),\"name\":(\"input\" + _vm._uid),\"disabled\":_vm.disabled},domProps:{\"value\":option.value,\"checked\":Array.isArray(_vm.data)?_vm._i(_vm.data,option.value)>-1:(_vm.data)},on:{\"change\":function($event){var $$a=_vm.data,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=option.value,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.data=$$a.concat([$$v]))}else{$$i>-1&&(_vm.data=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.data=$$c}}}}),_vm._v(\" \"+_vm._s(option.label)+\" \")])])}),0):_vm._e(),(_vm.type === 'date')?_c('Datepicker',_vm._b({attrs:{\"data-cy-field\":_vm.id,\"input-class\":\"input input--date\",\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'Datepicker',_vm.props,false)):_vm._e(),(_vm.type === 'autocompleter')?_c('Autocompleter',_vm._b({attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'Autocompleter',_vm.props,false)):_vm._e(),(_vm.type === 'address')?_c('Address',_vm._b({attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'Address',_vm.props,false)):_vm._e(),(_vm.type === 'location')?_c('Location',_vm._b({attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'Location',_vm.props,false)):_vm._e(),(_vm.type === 'addressWithLocation')?_c('AddressWithLocation',_vm._b({attrs:{\"data-cy-field\":_vm.id,\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'AddressWithLocation',_vm.props,false)):_vm._e(),(_vm.type === 'townList')?_c('TownList',_vm._b({attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'TownList',_vm.props,false)):_vm._e(),(_vm.type === 'planFunding')?_c('PlanFunding',_vm._b({attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'PlanFunding',_vm.props,false)):_vm._e(),(_vm.type === 'collectivity')?_c('Collectivity',_vm._b({attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'Collectivity',_vm.props,false)):_vm._e(),(_vm.type === 'organization')?_c('Organization',_vm._b({attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'Organization',_vm.props,false)):_vm._e(),(_vm.type === 'etp')?_c('Etp',_vm._b({attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'Etp',_vm.props,false)):_vm._e(),(_vm.type === 'audience')?_c('Audience',_vm._b({attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'Audience',_vm.props,false)):_vm._e(),(_vm.type === 'planHousing')?_c('PlanHousing',_vm._b({attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'PlanHousing',_vm.props,false)):_vm._e()],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"autocompleter\"},[_c('div',{ref:\"measure\",staticClass:\"autocompleter-measure\"},[_vm._v(_vm._s(_vm.currentLabel))]),_c('div',{staticClass:\"autocompleter-textfield\"},[_c('div',{ref:\"prefixIcon\",staticClass:\"autocompleter-prefixIcon\"},[_c('img',{attrs:{\"src\":\"/img/search.svg\"}})]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.currentLabel),expression:\"currentLabel\"}],ref:\"input\",attrs:{\"type\":\"text\",\"disabled\":_vm.disabled,\"readonly\":_vm.disabled,\"placeholder\":_vm.placeholder},domProps:{\"value\":(_vm.currentLabel)},on:{\"keydown\":_vm.onNavigation,\"keyup\":_vm.onType,\"focus\":function($event){_vm.focused = true},\"blur\":function($event){_vm.focused = false},\"input\":function($event){if($event.target.composing){ return; }_vm.currentLabel=$event.target.value}}}),_c('div',{ref:\"spinner\",staticClass:\"autocompleter-spinner\",style:({ visibility: _vm.suggestionRequest.pending ? 'visible' : 'hidden' })},[_c('img',{attrs:{\"src\":\"/img/spinner_dark.svg\"}})]),(_vm.currentLabel && !_vm.disabled)?_c('span',{ref:\"suffixIcon\",staticClass:\"autocompleter-clearIcon\",on:{\"click\":_vm.clearLabel}}):_vm._e(),(_vm.suggestions !== null)?_c('div',{ref:\"suggestionContainer\",staticClass:\"autocompleter-suggestionContainer\",class:{ 'autocompleter-suggestionContainer--float': _vm.float, 'autocompleter-suggestionContainer--withoutCategories': !_vm.showCategory }},_vm._l((_vm.nonEmptyCategories),function(category){return (_vm.nonEmptyCategories.length > 0)?_c('div',{staticClass:\"autocompleter-suggestionCategoryContainer\"},[(_vm.showCategory)?_c('div',{staticClass:\"autocompleter-suggestionCategory\"},[_vm._v(_vm._s(category))]):_vm._e(),_c('ul',{staticClass:\"autocompleter-suggestionCategoryItems\"},_vm._l((_vm.unselectedSuggestions[category]),function(item){return _c('li',{staticClass:\"autocompleter-suggestionCategoryItem\",class:{ 'autocompleter-suggestionCategoryItem--empty': item.isExtra, 'active': item.id === _vm.idOfHighlightedItem },on:{\"click\":function($event){return _vm.selectItem(item)}}},[_vm._v(_vm._s(item.label))])}),0)]):_vm._e()}),0):_vm._e(),(_vm.suggestions === null && _vm.suggestionRequest.error && _vm.float)?_c('div',{staticClass:\"autocompleter-suggestionContainer autocompleter-suggestionContainer--float autocompleter-suggestionContainer--withoutCategories\"},[_c('div',{staticClass:\"autocompleter-suggestionCategoryContainer\"},[_c('ul',{staticClass:\"autocompleter-suggestionCategoryItems\"},[_c('li',{staticClass:\"autocompleter-suggestionCategoryItem autocompleter-suggestionCategoryItem--error\"},[_c('img',{attrs:{\"src\":\"/img/warning.svg\"}}),_vm._v(\" \"+_vm._s(_vm.suggestionRequest.error))])])])]):_vm._e()]),(_vm.suggestionRequest.error && !_vm.float)?_c('p',{staticClass:\"autocompleter-error\"},[_c('img',{attrs:{\"src\":\"/img/warning.svg\"}}),_c('span',[_vm._v(_vm._s(_vm.suggestionRequest.error))])]):_vm._e(),(_vm.allowMultiple && _vm.selectedItems.length > 0)?_c('div',{staticClass:\"autocompleter-selectionContainer\"},[_c('p',[_vm._v(_vm._s(_vm.wording.selectedItems)+\" :\")]),_c('table',{staticClass:\"table\"},[_c('thead',[_c('tr',[_c('th',[_vm._v(_vm._s(_vm.wording.label))]),_c('th',[_vm._v(\"Actions\")])])]),_c('tbody',_vm._l((_vm.selectedItems),function(item){return _c('tr',[_c('td',[_vm._v(_vm._s(item.label))]),_c('td',[(!_vm.disabled)?_c('img',{staticClass:\"autocompleter-removeItemIcon\",attrs:{\"src\":\"/img/remove.svg\"},on:{\"click\":function($event){return _vm.unselectItem(item)}}}):_vm._e()])])}),0)])]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * Default timeout before triggering a suggestion request\n *\n * In milliseconds.\n *\n * @type {Number}\n */\nconst DEFAULT_TIMEOUT = 200;\n\nexport default {\n props: {\n /**\n * Function that can generate autocompletion suggestions\n *\n * The function must:\n * - take a string as an argument\n * - return a promise\n * - that promise eventually resolves with an Array.\n *\n * @type {Function}\n */\n autocompleter: {\n type: Function,\n required: true\n },\n\n /**\n * Whether the category of each item should be displayed\n *\n * @type {Boolean}\n */\n showCategory: {\n type: Boolean,\n required: false,\n default: false\n },\n\n /**\n * Whether the component allows to select more than one item\n *\n * @type {Boolean}\n */\n allowMultiple: {\n type: Boolean,\n required: false,\n default: false\n },\n\n /**\n * Whether the suggestions should be in position absolute\n *\n * @type {Boolean}\n */\n float: {\n type: Boolean,\n required: false,\n default: true\n },\n\n /**\n * Custom wording\n *\n * @type {Object.}\n */\n wording: {\n type: Object,\n required: false,\n default() {\n return {\n // appears above the list of selected items\n selectedItems: \"Éléments sélectionnés\",\n // label for the column containing the label of each selected item\n label: \"Label\"\n };\n }\n },\n\n /**\n * Function to be called when the item 'Add new item' is selected\n *\n * Please note that the item 'Add new item' is automatically added to the list\n * only if this function is provided.\n *\n * @type {Function}\n */\n createNew: {\n type: Function,\n required: false,\n default: null\n },\n\n /**\n * Default selected items\n *\n * @type {Array.}\n */\n value: {\n type: Array,\n required: false,\n default() {\n return [];\n }\n },\n\n /**\n * Whether the input should be disabled or not\n *\n * @type {Boolean}\n */\n disabled: {\n type: Boolean,\n required: false,\n default: false\n },\n\n /**\n * Placeholder\n *\n * @type {String}\n */\n placeholder: {\n type: String,\n required: false\n }\n },\n\n data() {\n let label = \"\";\n if (!this.allowMultiple && this.value.length === 1) {\n [{ label }] = this.value;\n }\n\n return {\n /**\n * Selected items\n *\n * @type {Array.}\n */\n selectedItems: this.value,\n\n /**\n * Current label of the input\n *\n * @type {String}\n */\n currentLabel: label,\n\n /**\n * The label before the new input\n *\n * @type {String}\n */\n previousLabel: label,\n\n /**\n * Wether the textfield is focused or not\n *\n * @type {Boolean}\n */\n focused: false,\n\n /**\n * List of suggestions\n *\n * An empty array means that we received an empty list of suggestions.\n * Null means that we do not have a list of suggestions.\n *\n * @type {Array.|null}\n */\n suggestions: null,\n\n /**\n * Properties of the suggestion HTTP request\n */\n suggestionRequest: {\n /** @type {Timeout|null} */\n timeout: null,\n\n /** @type {Promise|null} */\n promise: null,\n\n /** @type {Boolean} */\n pending: false,\n\n /** @type {String|null} */\n error: null\n },\n\n /**\n * Index of the currently highlighted item\n *\n * Null, if the keyboard navigation is not triggered yet.\n *\n * @type {Number|null}\n */\n indexOfHighligtedItem: null\n };\n },\n\n computed: {\n /**\n * Ids of selected items\n *\n * @returns {Array.}\n */\n selectedIds() {\n return this.selectedItems.map(({ id }) => id);\n },\n\n /**\n * List of non-empty categories, in alphabetic order\n *\n * @returns {Array.}\n */\n nonEmptyCategories() {\n return Object.keys(this.unselectedSuggestions).sort();\n },\n\n /**\n * List of unselected suggestions, grouped by categories\n *\n * Please note that a special category can be created, named 'extra'.\n *\n * @returns {Object.>}\n */\n unselectedSuggestions() {\n if (this.suggestions === null) {\n return {};\n }\n\n // regular suggestions, grouped by category\n let empty = true;\n const suggestions = this.suggestions.reduce((acc, suggestion) => {\n if (\n this.allowMultiple &&\n this.selectedIds.indexOf(suggestion.id) !== -1\n ) {\n return acc;\n }\n if (!acc[suggestion.category]) {\n acc[suggestion.category] = [];\n }\n\n acc[suggestion.category].push(suggestion);\n empty = false;\n return acc;\n }, {});\n\n // extra suggestions\n if (this.createNew !== null) {\n suggestions._ = [\n {\n id: \"new\",\n label: `Créer \"${this.currentLabel}\"`,\n category: \"\",\n data: {},\n isExtra: true\n }\n ];\n } else if (empty) {\n suggestions._ = [\n {\n id: \"empty\",\n label: \"Aucun résultat\",\n category: \"\",\n data: {},\n isExtra: true\n }\n ];\n }\n\n return suggestions;\n },\n\n /**\n * Ordered list of unselected suggestions\n *\n * @returns {Array.}\n */\n unselectedSuggestionsFlat() {\n return this.nonEmptyCategories.reduce(\n (acc, category) => [\n ...acc,\n ...this.unselectedSuggestions[category]\n ],\n []\n );\n },\n\n /**\n * Indicates whether the list of unselected suggestions is empty\n *\n * Please note that extra suggestions are not taken into account here.\n *\n * @returns {Boolean}\n */\n isSuggestionListEmpty() {\n const list = this.unselectedSuggestionsFlat;\n if (list.length > 1) {\n return false;\n }\n\n if (list.length === 0) {\n return true;\n }\n\n return list[0].isExtra === true && list[0].id === \"empty\";\n },\n\n /**\n * Id of the currently highlighted item\n *\n * @returrns {String|Number|null}\n */\n idOfHighlightedItem() {\n if (this.indexOfHighligtedItem === null) {\n return null;\n }\n\n if (this.indexOfHighligtedItem < 0) {\n return null;\n }\n\n if (\n this.indexOfHighligtedItem >=\n this.unselectedSuggestionsFlat.length\n ) {\n return null;\n }\n\n return this.unselectedSuggestionsFlat[this.indexOfHighligtedItem]\n .id;\n }\n },\n\n watch: {\n // two-way binding\n value() {\n this.selectedItems = this.value;\n },\n\n disabled() {\n this.reset();\n }\n },\n\n mounted() {\n document.addEventListener(\"click\", this.checkOutsideClick);\n },\n\n destroyed() {\n document.removeEventListener(\"click\", this.checkOutsideClick);\n },\n\n methods: {\n /**\n * Handles a new input in the textfield\n *\n * Basically: if the content of the textfield changed, abort\n * the pending or scheduled suggestion request, and schedule\n * a new one.\n * Otherwise, do nothing.\n *\n * @returns {undefined}\n */\n onType() {\n this.positionSpinner();\n\n // ignore key inputs that did not cause a change in the label\n if (this.currentLabel === this.previousLabel) {\n return;\n }\n\n this.previousLabel = this.currentLabel;\n\n // schedule a suggestion request\n this.resetSuggestions();\n this.scheduleSuggestionRequest();\n },\n\n /**\n * Handles a new navigation input in the textfield\n *\n * Basically:\n * - if an arrow key has been pressed, navigate through the suggestions\n * - if the enter key has been pressed, select the currently highligted suggestion\n * - otherwise, reset the navigation\n *\n * @param {KeyboardEvent} event\n *\n * @returns {undefined}\n */\n onNavigation(event) {\n if (this.isSuggestionListEmpty) {\n this.indexOfHighligtedItem = null;\n return;\n }\n\n if (event.keyCode === 38) {\n // up arrow (= previous suggestion)\n if (this.indexOfHighligtedItem - 1 < 0) {\n this.indexOfHighligtedItem = null;\n } else {\n this.indexOfHighligtedItem -= 1;\n }\n } else if (event.keyCode === 40) {\n // down arrow (= next suggestion)\n if (this.unselectedSuggestionsFlat.length > 0) {\n if (this.indexOfHighligtedItem === null) {\n this.indexOfHighligtedItem = 0;\n } else {\n this.indexOfHighligtedItem = Math.min(\n this.unselectedSuggestionsFlat.length - 1,\n this.indexOfHighligtedItem + 1\n );\n }\n }\n } else if (event.keyCode === 13) {\n // key 'enter' (= select current suggestion)\n if (this.indexOfHighligtedItem !== null) {\n this.selectItem(\n this.unselectedSuggestionsFlat[\n this.indexOfHighligtedItem\n ]\n );\n this.$refs.input.focus();\n }\n } else {\n this.indexOfHighligtedItem = null;\n }\n },\n\n /**\n * Schedules a new suggestion request\n *\n * @returns {undefined}\n */\n scheduleSuggestionRequest() {\n this.cancelSuggestionRequest();\n this.suggestionRequest.timeout = setTimeout(\n this.requestSuggestions,\n DEFAULT_TIMEOUT\n );\n },\n\n /**\n * Cancels the pending or scheduled suggestion request\n *\n * @returns {undefined}\n */\n cancelSuggestionRequest() {\n // if a request is pending: abort!\n if (this.suggestionRequest.promise !== null) {\n this.suggestionRequest.promise.abort();\n }\n\n this.resetSuggestionPromise();\n\n // if a request is scheduled: clear!\n if (this.suggestionRequest.timeout !== null) {\n clearTimeout(this.suggestionRequest.timeout);\n this.suggestionRequest.timeout = null;\n }\n },\n\n /**\n * Resets the status of the suggestion request promise\n *\n * @returns {undefined}\n */\n resetSuggestionPromise() {\n this.suggestionRequest.promise = null;\n this.suggestionRequest.pending = false;\n this.suggestionRequest.error = null;\n },\n\n /**\n * Performs a suggestion request\n *\n * @returns {undefined}\n */\n requestSuggestions() {\n if (!this.canLabelTriggerARequest(this.currentLabel)) {\n return;\n }\n\n if (this.suggestionRequest.promise !== null) {\n this.cancelSuggestionRequest();\n }\n\n this.suggestionRequest.pending = true;\n this.suggestionRequest.promise = this.autocompleter(\n this.currentLabel\n );\n this.suggestionRequest.promise\n .then(this.setSuggestions)\n .catch(this.handleSuggestionFailure);\n },\n\n /**\n * Sets a new list of suggestions\n *\n * @param {Array.} suggestions\n *\n * @returns {undefined}\n */\n setSuggestions(suggestions) {\n this.resetSuggestionPromise();\n\n // do not show suggestions if the textfield is not focused anymore\n if (!this.focused) {\n return;\n }\n\n this.suggestions = suggestions;\n if (!this.isSuggestionListEmpty) {\n this.indexOfHighligtedItem = 0;\n }\n },\n\n /**\n * Handles a failure of the suggestion request\n *\n * @param {Object} error\n *\n * @returns {undefined}\n */\n handleSuggestionFailure(error) {\n let errorDetails = \"erreur inconnue\";\n if (error && error.user_message) {\n errorDetails = error.user_message;\n }\n\n this.resetSuggestionPromise();\n this.suggestionRequest.error = `Une erreur est survenue : ${errorDetails}`;\n },\n\n /**\n * Checks if the given label should lead to a suggestion request\n *\n * @param {String} label\n *\n * @returns {Boolean}\n */\n canLabelTriggerARequest(label) {\n return label !== \"\";\n },\n\n /**\n * Clears the textfield\n *\n * @returns {undefined}\n */\n clearLabel() {\n this.cancelSuggestionRequest();\n this.setLabel(\"\");\n\n if (this.allowMultiple === false) {\n this.selectedItems = [];\n this.$emit(\"input\", this.selectedItems);\n }\n },\n\n /**\n * Resets the textfield to initial state\n *\n * @returns {undefined}\n */\n reset() {\n this.cancelSuggestionRequest();\n this.$refs.input.blur();\n\n if (this.allowMultiple || this.selectedItems.length !== 1) {\n this.setLabel(\"\");\n } else {\n this.setLabel(this.selectedItems[0].label);\n }\n },\n\n /**\n * Resets the list of suggestions\n */\n resetSuggestions() {\n this.suggestions = null;\n },\n\n /**\n * Sets a new content for the textfield\n *\n * @param {String} label\n *\n * @returns {undefined}\n */\n setLabel(label) {\n this.currentLabel = label;\n this.previousLabel = label;\n this.resetSuggestions();\n },\n\n /**\n * Checks if the given click event comes from outside the input\n *\n * @param {MouseEvent} event\n *\n * @returns {undefined}\n */\n checkOutsideClick(event) {\n const refs = [\n \"prefixIcon\",\n \"input\",\n \"suffixIcon\",\n \"suggestionContainer\"\n ];\n\n // if the click does not come from the input, reset the field\n if (\n !refs.some(\n ref =>\n this.$refs[ref] &&\n this.$refs[ref].contains(event.target)\n )\n ) {\n this.reset();\n }\n },\n\n /**\n * Adds the given item to the selection\n *\n * @param {AutocompleteItem} item\n *\n * @returns {undefined}\n */\n selectItem(item) {\n // custom behavior for 'extra' items\n if (item.isExtra === true) {\n if (item.id === \"empty\") {\n return;\n }\n\n if (item.id === \"new\") {\n this.createNew(this.currentLabel);\n this.resetSuggestions();\n }\n\n return;\n }\n\n if (this.allowMultiple === false) {\n this.selectedItems = [item];\n this.reset();\n } else {\n // check if the item already is in the selection\n if (this.selectedItems.some(({ id }) => item.id === id)) {\n return;\n }\n\n this.selectedItems.push(item);\n }\n\n this.$emit(\"input\", this.selectedItems);\n },\n\n /**\n * Removes the given item from the selection\n *\n * @param {AutocompleteItem} item\n *\n * @returns {undefined}\n */\n unselectItem(item) {\n const index = this.selectedItems.findIndex(\n ({ id }) => item.id === id\n );\n if (index === -1) {\n return;\n }\n\n this.selectedItems.splice(index, 1);\n this.$emit(\"input\", this.selectedItems);\n },\n\n /**\n * Positions the spinner so that it appears just after the end of the label\n *\n * @returns {undefined}\n */\n positionSpinner() {\n this.$refs.spinner.style.marginLeft = 0;\n const maxMargin = this.$refs.input.clientWidth;\n this.$refs.spinner.offsetLeft - this.$refs.spinner.offsetWidth;\n this.$refs.spinner.style.marginLeft = `${Math.min(\n this.$refs.measure.clientWidth,\n maxMargin\n )}px`;\n }\n }\n};\n\n/**\n * Please note that the property 'data' is completely useless for this component itself,\n * but it might be used by the parent component.\n *\n * @typedef {Object} AutocompleteItem\n * @property {String|Number} id Unique identifier for that item\n * @property {String} label The string that should appear in the textfield\n * @property {String} category A category identifier. Used to group suggestions by category\n * @property {Object} [data] Any additional data related to the item.\n */\n","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./autocompleter.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./autocompleter.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./autocompleter.vue?vue&type=template&id=0ea14275&lang=pug&\"\nimport script from \"./autocompleter.vue?vue&type=script&lang=js&\"\nexport * from \"./autocompleter.vue?vue&type=script&lang=js&\"\nimport style0 from \"./autocompleter.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Autocompleter',_vm._b({attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'Autocompleter',_vm.options,false))}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { getApi } from \"#helpers/api/main\";\n\n/**\n * Computes the unique identifier of the given feature\n *\n * @param {Feature} feature\n *\n * @returns {string}\n */\nfunction computeUid(feature) {\n return `${feature.geometry.coordinates[0]}-${feature.geometry.coordinates[1]}`;\n}\n\n/**\n * Removes duplicate features from the given array of features\n *\n * @param {Array.} features\n *\n * @returns {Array.}\n */\nfunction removeDuplicates(features) {\n const usedUids = [];\n\n return features.filter(feature => {\n const uid = computeUid(feature);\n if (usedUids.indexOf(uid) !== -1) {\n return false;\n }\n\n usedUids.push(uid);\n return true;\n });\n}\n\n/**\n * Handles the response of an autocomplete request\n *\n * @param {Function} success Success callback\n * @param {Function} failure Failure callback\n */\nfunction onAutocompleteLoad(success, failure) {\n if (this.status !== 200) {\n failure();\n return;\n }\n\n try {\n const { features } = JSON.parse(this.responseText);\n success(\n removeDuplicates(features)\n .filter(\n feature => feature.properties && feature.properties.citycode\n )\n .map(feature => ({\n addressType: feature.properties.type,\n citycode: feature.properties.citycode,\n city: feature.properties.city,\n coordinates: feature.geometry.coordinates,\n id: feature.properties.id,\n label: `${feature.properties.label}, ${feature.properties.context}`,\n category: \"address\",\n data: {\n citycode: feature.properties.citycode,\n city: feature.properties.city,\n label: `${feature.properties.label}, ${feature.properties.context}`,\n coordinates: feature.geometry.coordinates\n }\n }))\n );\n } catch (error) {\n failure();\n }\n}\n\n/**\n * Returns autocompletion suggestion for the given address\n *\n * Based on https://adresse.data.gouv.fr/api\n *\n * @param {string} strSearch The string to be autocompleted\n * @param {number} limit The maximum number of suggestions to be returned\n *\n * @returns {Promise}\n */\nexport function autocomplete(strSearch, limit = 5) {\n const xhr = new XMLHttpRequest();\n const promise = new Promise((success, failure) => {\n const queries = [`q=${encodeURIComponent(strSearch)}`];\n\n const parsedLimit = parseInt(limit, 10);\n if (!Number.isNaN(parsedLimit)) {\n queries.push(`limit=${parsedLimit}`);\n }\n\n xhr.open(\n \"GET\",\n `https://api-adresse.data.gouv.fr/search/?${queries.join(\"&\")}`\n );\n xhr.onload = onAutocompleteLoad.bind(xhr, success, failure);\n xhr.onerror = failure;\n xhr.ontimeout = failure;\n xhr.send();\n });\n promise.abort = () => {\n xhr.abort();\n };\n\n return promise;\n}\n\n/**\n * Searches for cities/epcis/departements\n *\n * @param {string} strSearch The string to be autocompleted\n *\n * @returns {Promise}\n */\nexport function autocompleteLocation(strSearch) {\n const p1 = getApi(`/locations/search?q=${encodeURIComponent(strSearch)}`);\n const p2 = p1.then(results =>\n results.map(result => ({\n label:\n result.code.length === 5\n ? `(${result.code.slice(0, 2)}) ${result.name}`\n : result.name,\n code: result.code,\n type: result.label,\n locationType: result.type,\n departement: result.departement,\n data: {\n code: result.code,\n type: result.type\n }\n }))\n );\n p2.abort = p1.abort;\n return p2;\n}\n\n/**\n * Lists all departements\n *\n * @returns {Promise}\n */\nexport function departements() {\n return getApi(\"/departements\");\n}\n\n/**\n * @typedef {Object} Feature\n * @property {Feature_Properties} properties\n * @property {Feature_Geometry} geometry\n */\n\n/**\n * @typedef {Object} Feature_Properties\n * @property {string} label\n * @property {string} context\n */\n\n/**\n * @typedef {Object} Feature_Geometry\n * @property {Array.} coordinates An array of two double numbers, ie. the latitude and longitude\n */\n\n/**\n * @typedef {Suggestion}\n * @property {string} label\n * @property {Array.} coordinates\n */\n\n/**\n * @typedef {Object} Address\n * @property {String} id\n * @property {String} label\n * @property {AddressData} data\n */\n\n/**\n * @typedef {Object} AddressData\n * @property {String} citycode\n * @property {String} city\n * @property {String} label\n * @property {Point} coordinates\n */\n\nexport default autocomplete;\n","import Autocompleter from \"../autocompleter/autocompleter.vue\";\nimport { autocomplete as autocompleter } from \"#helpers/addressHelper\";\n\nexport default {\n components: {\n Autocompleter\n },\n\n props: {\n /**\n * @type {Address|null}\n */\n value: {\n type: Object,\n required: false,\n default() {\n return null;\n }\n },\n\n /**\n * Whether the input should be disabled or not\n *\n * @type {Boolean}\n */\n disabled: {\n type: Boolean,\n required: false,\n default: false\n },\n\n /**\n * Properties specific to the input\n *\n * @type {Object}\n */\n specificProps: {\n type: Object,\n required: false,\n default() {\n return {};\n }\n }\n },\n\n data() {\n return {\n /**\n * @type {Array.
}\n */\n data: this.value !== null ? [this.value] : [],\n\n /**\n * @type {Object}\n */\n options: { ...this.specificProps, autocompleter }\n };\n },\n\n watch: {\n // two-way binding\n value() {\n this.data = this.value !== null ? [this.value] : [];\n },\n data() {\n this.$emit(\"input\", this.data.length > 0 ? this.data[0] : null);\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./address.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./address.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./address.vue?vue&type=template&id=1485e3f7&lang=pug&\"\nimport script from \"./address.vue?vue&type=script&lang=js&\"\nexport * from \"./address.vue?vue&type=script&lang=js&\"\nimport style0 from \"./address.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"location\"},[_c('div',{ref:\"map\",staticClass:\"location-map\"}),(_vm.showTutorial)?_c('div',{staticClass:\"location-tutorial\"},[_c('div',{staticClass:\"location-tutorialWrapper\"},[_c('h1',{staticClass:\"location-tutorialTitle\"},[_vm._v(_vm._s(_vm.tutorialWording.title))]),_c('br'),_c('p',{staticClass:\"location-tutorialDescription\"},[_vm._v(_vm._s(_vm.tutorialWording.description))]),(_vm.showCloseTutorial)?_c('p',{staticClass:\"location-tutorialButton\"},[_c('button',{staticClass:\"button\",on:{\"click\":_vm.closeTutorial}},[_vm._v(\"J'ai compris\")])]):_vm._e()])]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import L from \"leaflet\";\nimport \"leaflet-providers\";\n\n/**\n * Default zoom\n *\n * @type {number}\n */\nconst DEFAULT_ZOOM = 6;\n\n/**\n * View for the center of France\n *\n * @type {MapView}\n */\nconst FRANCE_CENTER = {\n coordinates: [46.7755829, 2.0497727],\n zoom: DEFAULT_ZOOM\n};\n\nexport default {\n props: {\n /**\n * Location value\n *\n * @type {MapView}\n */\n value: {\n type: Object,\n required: false,\n default() {\n return FRANCE_CENTER;\n }\n },\n\n /**\n * Status of the tutorial\n *\n * @type {String}\n */\n tutorial: {\n type: String,\n required: false,\n default: \"auto\"\n },\n\n /**\n * Whether the marker should be hidden when the tutorial is visible\n *\n * @type {Boolean}\n */\n autoHideMarker: {\n type: Boolean,\n required: false,\n default: false\n },\n\n /**\n * Custom wording\n *\n * @type {Object.}\n */\n wording: {\n type: Object,\n required: false,\n default() {\n return {\n // appears above the list of selected items\n tutorialTitle: \"Sélectionner une position géographique\",\n // label for the column containing the label of each selected item\n tutorialDescription:\n \"Positionnez le marqueur en vous déplaçant sur la carte, puis en cliquant sur la localisation désirée.\"\n };\n }\n },\n\n /**\n * Whether the input should be disabled or not\n *\n * @type {Boolean}\n */\n disabled: {\n type: Boolean,\n required: false,\n default: false\n }\n },\n\n data() {\n return {\n /**\n * Map instance\n *\n * @type {Leaflet.Map}\n */\n map: null,\n\n /**\n * Marker\n *\n * @type {Leaflet.Marker}\n */\n marker: null,\n\n /**\n * Click timeout\n *\n * @type {Timeout|null}\n */\n clickTimeout: null,\n\n /**\n * Whether the tutorial should be shown, or not\n *\n * @type {Boolean}\n */\n showTutorial: this.shouldShowTutorial(this.tutorial),\n\n /**\n * Whether the tutorial has been closed at least once, or not\n *\n * @type {Boolean}\n */\n tutorialHasBeenClosed: false\n };\n },\n\n computed: {\n /**\n * Returns the current view for the marker\n *\n * @returns {MapView}\n */\n view() {\n const { lat, lng } = this.marker.getLatLng();\n\n return {\n coordinates: [lat, lng],\n zoom: this.map.getZoom() || DEFAULT_ZOOM\n };\n },\n\n /**\n * Wording for the tutorial\n *\n * @returns {Object.}\n */\n tutorialWording() {\n if (this.disabled === true) {\n return {\n title: \"\",\n description: \"\"\n };\n }\n\n return {\n title: this.wording.tutorialTitle,\n description: this.wording.tutorialDescription\n };\n },\n\n /**\n * Wether the close-tutorial button should be shown\n *\n * @returns {Boolean}\n */\n showCloseTutorial() {\n return !this.disabled && this.tutorial === \"auto\";\n }\n },\n\n watch: {\n value() {\n this.syncMap(this.value, false);\n },\n\n tutorial() {\n this.showTutorial = this.shouldShowTutorial(this.tutorial);\n },\n\n showTutorial() {\n this.syncMarker();\n },\n\n autoHideMarker() {\n this.syncMarker();\n },\n\n disabled() {\n if (this.disabled === true) {\n this.showTutorial = true;\n } else {\n this.showTutorial = this.shouldShowTutorial(this.tutorial);\n }\n }\n },\n\n mounted() {\n this.$nextTick(this.initialize);\n },\n\n methods: {\n /**\n * Initializes the map\n *\n * @returns {undefined}\n */\n initialize() {\n this.map = L.map(this.$refs.map);\n\n this.setTileLayers();\n this.createMarker();\n this.syncMap(this.value, false);\n },\n\n /**\n * Sets the tile layers for the given map\n *\n * This methods sets both:\n * - the default tile layer\n * - the tile layer control\n *\n * @returns {undefined}\n */\n setTileLayers() {\n const layers = {\n Satellite: L.tileLayer.provider(\"Esri.WorldImagery\"),\n Dessin: L.tileLayer.provider(\"OpenStreetMap.Mapnik\")\n };\n\n layers.Dessin.addTo(this.map);\n L.control.layers(layers).addTo(this.map);\n },\n\n /**\n * Creates the marker\n *\n * @returns {undefined}\n */\n createMarker() {\n this.marker = L.marker(this.value.coordinates, { draggable: true });\n this.map.addEventListener(\"click\", event => {\n clearTimeout(this.clickTimeout);\n this.clickTimeout = setTimeout(\n this.handleClick.bind(this, event),\n 200\n );\n });\n this.map.addEventListener(\"dblclick\", () => {\n clearTimeout(this.clickTimeout);\n this.clickTimeout = null;\n });\n this.marker.addEventListener(\"dragend\", () => {\n this.syncMap(this.view, true);\n });\n\n if (this.shouldShowMarker()) {\n this.marker.addTo(this.map);\n }\n },\n\n /**\n * Syncs the map view and the marker to the given value\n *\n * @param {View} view The new view value to be synced to\n * @param {boolean} [emitInput] Wether an 'input' event should be sent\n *\n * @returns {undefined}\n */\n syncMap(view, emitInput = false) {\n this.marker.setLatLng(view.coordinates);\n this.map.setView(view.coordinates, view.zoom);\n\n if (emitInput === true) {\n this.$emit(\"input\", view);\n }\n\n clearTimeout(this.clickTimeout);\n this.clickTimeout = null;\n },\n\n /**\n * Handles a click on the map\n *\n * @param {Event} event\n *\n * @returns {undefined}\n */\n handleClick({ latlng: { lat, lng } }) {\n this.marker.setLatLng([lat, lng]);\n this.syncMap(this.view, true);\n this.clickTimeout = null;\n },\n\n /**\n * Closes the tutorial\n *\n * @returns {undefined}\n */\n closeTutorial() {\n this.showTutorial = false;\n this.tutorialHasBeenClosed = true;\n },\n\n /**\n * Indicates whether the marker should be shown or not\n *\n * @returns {Boolean}\n */\n shouldShowMarker() {\n return this.autoHideMarker === false || this.showTutorial !== true;\n },\n\n /**\n * Updates the visibility of the marker\n *\n * @returns {undefined}\n */\n syncMarker() {\n if (this.marker === null) {\n return;\n }\n\n if (this.shouldShowMarker()) {\n this.marker.addTo(this.map);\n } else {\n this.marker.remove();\n }\n },\n\n /**\n * Indicates if the tutorial should be shown, with the given tutorial directive\n *\n * @param {String} tutorial\n *\n * @returns {Boolean}\n */\n shouldShowTutorial(tutorial) {\n if (tutorial === \"no\") {\n return false;\n }\n\n if (tutorial === \"yes\") {\n return true;\n }\n\n return !this.tutorialHasBeenClosed;\n }\n }\n};\n\n/**\n * An array containing, in that order, latitude and longitude\n * @typedef {Array.} Point\n */\n\n/**\n * A map view\n *\n * @typedef {Object} MapView\n * @property {Point} cooordinates\n * @property {number} zoom\n */\n","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./location.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./location.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./location.vue?vue&type=template&id=3a8bf702&lang=pug&\"\nimport script from \"./location.vue?vue&type=script&lang=js&\"\nexport * from \"./location.vue?vue&type=script&lang=js&\"\nimport style0 from \"./location.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('Address',_vm._b({attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.address),callback:function ($$v) {_vm.address=$$v},expression:\"address\"}},'Address',_vm.addressOptions,false)),_c('Location',_vm._b({ref:\"location\",attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.location),callback:function ($$v) {_vm.location=$$v},expression:\"location\"}},'Location',_vm.locationOptions,false))],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Address from \"../address/address.vue\";\nimport Location from \"../location/location.vue\";\n\nexport default {\n components: {\n Address,\n Location\n },\n\n props: {\n /**\n * @type {AddressWithLocationValue}\n */\n value: {\n type: Object,\n required: false,\n default() {\n return null;\n }\n },\n\n /**\n * Properties specific to the input\n *\n * @type {Object}\n */\n specificProps: {\n type: Object,\n required: false,\n default() {\n return {\n address: {},\n location: {}\n };\n }\n },\n\n /**\n * Whether the input should be disabled or not\n *\n * @type {Boolean}\n */\n disabled: {\n type: Boolean,\n required: false,\n default: false\n }\n },\n\n data() {\n return {\n /**\n * @type {Array.
}\n */\n address: this.value !== null ? this.value.address : undefined,\n\n /**\n * @type {MapView}\n */\n location: this.value !== null ? this.value.location : undefined\n };\n },\n\n computed: {\n /**\n * Options for the address component\n *\n * @returns {Object}\n */\n addressOptions() {\n return { ...this.specificProps.address };\n },\n\n /**\n * Options for the location component\n *\n * @returns {Object}\n */\n locationOptions() {\n return {\n ...this.specificProps.location,\n tutorial: this.address ? \"auto\" : \"yes\",\n autoHideMarker: !this.address,\n wording: this.address\n ? {\n tutorialTitle: \"Adresse détectée\",\n tutorialDescription:\n \"Vous pouvez déplacer le marqueur en cliquant à l'endroit souhaité sur la carte\"\n }\n : {\n tutorialTitle: \"Saisir une adresse\",\n tutorialDescription:\n \"Veuillez saisir une adresse dans le champ de texte ci-dessus avant d'accéder à la carte\"\n }\n };\n },\n\n /**\n * Current value of the address/location\n *\n * @returns {AddressWithLocationValue}\n */\n data() {\n if (!this.address) {\n return null;\n }\n\n return {\n address: this.address,\n location: this.location\n };\n }\n },\n\n watch: {\n // two-way binding\n value() {\n this.address = this.value !== null ? this.value.address : undefined;\n this.location =\n this.value !== null ? this.value.location : undefined;\n },\n address() {\n if (this.address) {\n const [lon, lat] = this.address.coordinates;\n this.location = {\n coordinates: [lat, lon],\n zoom: 15\n };\n }\n\n this.$emit(\"input\", this.data);\n },\n location() {\n this.$emit(\"input\", this.data);\n }\n }\n};\n\n/**\n * @typedef {Object} AddressWithLocationValue\n * @property {Address} address\n * @property {MapView} location\n */\n","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./address-with-location.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./address-with-location.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./address-with-location.vue?vue&type=template&id=2f53146c&lang=pug&\"\nimport script from \"./address-with-location.vue?vue&type=script&lang=js&\"\nexport * from \"./address-with-location.vue?vue&type=script&lang=js&\"\nimport style0 from \"./address-with-location.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.status === 'loading' || _vm.status === null)?_c('div',[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_vm._v(\" Chargement de la liste des sites en cours... \")]):_vm._e(),(_vm.status === 'error')?_c('div',{staticClass:\"error\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/warning.svg\",\"width\":\"20\"}}),_vm._v(\" Le chargement de la liste des sites a échoué : \"+_vm._s(_vm.loadingError)+\" \")]):_vm._e(),(_vm.status === 'loaded')?_c('div',[_c('p',{staticClass:\"selectionInfo\"},[_vm._v(\"Nombre total de sites sélectionnés : \"+_vm._s(_vm.selectedTowns.length))]),_c('div',{staticClass:\"switch\"},[_c('button',{class:{ active: _vm.statusOfVisibleTowns === 'open' },on:{\"click\":function($event){return _vm.showTowns('open')}}},[_vm._v(\"Sites existants\")]),_c('button',{class:{ active: _vm.statusOfVisibleTowns === 'closed' },on:{\"click\":function($event){return _vm.showTowns('closed')}}},[_vm._v(\"Sites fermés\")])]),_c('CollectivityInput',{staticClass:\"townList-search\",model:{value:(_vm.location),callback:function ($$v) {_vm.location=$$v},expression:\"location\"}}),_c('Table',{attrs:{\"columns\":_vm.columns,\"content\":_vm.pageContent,\"emptyLabel\":\"Aucun site\"},on:{\"click\":_vm.toggleTown},scopedSlots:_vm._u([{key:\"checkbox\",fn:function(props){return [_c('input',{attrs:{\"type\":\"checkbox\",\"disabled\":_vm.disabled},domProps:{\"checked\":_vm.selectedTowns.some(function (id) { return id === props.row.id; })},on:{\"change\":function($event){return _vm.toggleTown(props.row)}}})]}},{key:\"city\",fn:function(props){return [_vm._v(_vm._s(props.row.city.name))]}},{key:\"address\",fn:function(props){return [_vm._v(_vm._s(props.row.usename))]}},{key:\"fieldType\",fn:function(props){return [_c('span',{staticClass:\"fieldType\"},[_c('i',{style:((\"background-color: \" + (_vm.fieldTypes[props.row.fieldType.id].color)))}),_vm._v(\" \"),_c('span',[_vm._v(_vm._s(props.row.fieldType.label))])])]}},{key:\"people\",fn:function(props){return [(props.row.populationTotal === null)?_c('span',{staticClass:\"secondary\"},[_vm._v(\"NC\")]):_c('span',[_vm._v(_vm._s(props.row.populationTotal))])]}}],null,false,2250559664)})],1):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { getApi, postApi, putApi, deleteApi } from \"#helpers/api/main\";\n\n/**\n * Fetches all towns from the database\n *\n * @param {Object.} [filters]\n * @param {Array.} [order]\n *\n * @returns {Promise}\n */\nexport function all(filters = {}, order = []) {\n const queries = [];\n\n // filters\n Object.keys(filters).forEach(filterName => {\n queries.push(\n `${filterName}=${encodeURIComponent(filters[filterName])}`\n );\n });\n\n // order\n if (order.length > 0) {\n queries.push(\n `order=${order.map(s => encodeURIComponent(s)).join(\",\")}`\n );\n }\n\n return getApi(`/towns${queries.length > 0 ? `?${queries.join(\"&\")}` : \"\"}`);\n}\n\n/**\n * Fetchs a specific town from the database\n *\n * @param {string} id\n *\n * @returns {Promise}\n */\nexport function get(id) {\n return getApi(`/towns/${id}`);\n}\n\n/**\n * Creates a new town\n *\n * @param {Town_Data} data\n *\n * @returns {Promise}\n */\nexport function add(data) {\n return postApi(\"/towns\", data);\n}\n\n/**\n * Updates a town\n *\n * @param {string} id\n * @param {Town_Data} data\n *\n * @returns {Promise}\n */\nexport function edit(id, data) {\n return postApi(`/towns/${id}`, data);\n}\n\n/**\n * Closes a town\n *\n * @param {string} id\n * @param {Town_Data} data\n *\n * @returns {Promise}\n */\nexport function close(id, data) {\n return postApi(`/towns/${id}/close`, data);\n}\n\n/**\n * Deletes a town\n *\n * @param {string} id\n *\n * @returns {Promise}\n */\nexport function destroy(id) {\n return deleteApi(`/towns/${id}`);\n}\n\n/**\n * Adds a comment to a town\n *\n * @param {string} id Town id\n * @param {ShantytownComment_Data} data Comment data\n *\n * @returns {Promise}\n */\nexport function addComment(id, data) {\n return postApi(`/towns/${id}/comments`, data);\n}\n\n/**\n * Adds a covid comment to a town\n *\n * @param {string} id Town id\n * @param {ShantytownCovidComment_Data} data Comment data\n *\n * @returns {Promise}\n */\nexport function addCovidComment(id, data) {\n return postApi(`/towns/${id}/covidComments`, data);\n}\n\n/**\n * Edits a comment from a town\n *\n * @param {string} townId Town id\n * @param {number} commentId Comment id\n * @param {ShantytownComment_Data} data Comment data\n *\n * @returns {Promise}\n */\nexport function editComment(townId, commentId, comment) {\n return postApi(`/towns/${townId}/comments/${commentId}`, comment);\n}\n\n/**\n * Delete a comment from a town\n *\n * @param {string} townId Town id\n * @param {number} commentId Comment id\n * @param {String} message\n *\n * @returns {Promise}\n */\nexport function deleteComment(townId, commentId, message) {\n return deleteApi(`/towns/${townId}/comments/${commentId}`, { message });\n}\n\n/**\n * Gets all recent comments\n *\n * @returns {Promise}\n */\nexport function getRecentComments() {\n return getApi(\"/comments\");\n}\n\n/**\n * POST /towns/:id/actors\n */\nexport function addActor(townId, actor) {\n return postApi(`/towns/${townId}/actors`, actor);\n}\n\n/**\n * DELETE /towns/:id/actors/:user_id\n */\nexport function removeActor(townId, userId) {\n return deleteApi(`/towns/${townId}/actors/${userId}`);\n}\n\n/**\n * PUT /towns/:id/actors/:user_id\n */\nexport function updateActorThemes(townId, userId, themes) {\n return putApi(`/towns/${townId}/actors/${userId}`, { themes });\n}\n\n/**\n * DELETE /towns/:id/actors/:user_id/themes/:theme_id\n */\nexport function removeActorTheme(townId, userId, themeId) {\n return deleteApi(`/towns/${townId}/actors/${userId}/themes/${themeId}`);\n}\n\n/**\n * PUT /towns/:id/invitations\n */\nexport function inviteNewActor(townId, email) {\n return putApi(`/towns/${townId}/invitations`, { email });\n}\n\n/**\n * GET /towns/:id/relations\n */\nexport function findRelations(townId, query) {\n return getApi(`/towns/${townId}/relations?q=${encodeURIComponent(query)}`);\n}\n\n/**\n * @typedef {Object} Town_Data\n * @property {number} latitude,\n * @property {number} longitude,\n * @property {string} address,\n * @property {string} detailed_address,\n * @property {?Date} built_at,\n * @property {?number} population_total,\n * @property {?number} population_couples,\n * @property {?number} population_minors,\n * @property {Object} electricity_type,\n * @property {?boolean} access_to_water,\n * @property {?boolean} trash_evacuation,\n * @property {Array.} social_origins,\n * @property {number} field_type,\n * @property {number} owner_type,\n */\n\n/**\n * @typedef {Object} ShantytownComment_Data\n * @property {string} description\n */\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"rb-table\"},[_c('aside',{staticClass:\"rb-table-aside\"},[_vm._t(\"aside\",[_c('p')]),_c('div',{staticClass:\"rb-pagination\"},[_c('span',{staticClass:\"link\",class:{ 'link--disabled': _vm.currentPage === 0 },on:{\"click\":_vm.previousPage}},[_c('font-awesome-icon',{attrs:{\"icon\":\"caret-square-left\"}}),_vm._v(\" Précédent\")],1),_c('span',{staticClass:\"pagination-pages\"},[_vm._v(_vm._s(_vm.indexOfFirstRowInCurrentPage)+\" - \"+_vm._s(_vm.indexOfLastRowInCurrentPage)+\" sur \"+_vm._s(_vm.filteredContent.length))]),_c('span',{staticClass:\"link\",class:{ 'link--disabled': _vm.currentPage === _vm.indexOfLastPage },on:{\"click\":_vm.nextPage}},[_vm._v(\"Suivant \"),_c('font-awesome-icon',{attrs:{\"icon\":\"caret-square-right\"}})],1)])],2),_c('table',{staticClass:\"table\"},[_c('thead',[_c('tr',_vm._l((_vm.parsedColumns),function(column){\nvar _obj;\nreturn _c('th',{class:( _obj = { 'table-col--filterable': column.isFilterable, 'table-col--active': [column.id].length > 0 }, _obj[(\"table-col--\" + (column.id))] = true, _obj )},[(column.isFilterable)?_c('TableFilter',{attrs:{\"visible\":_vm.currentFilter === column.id},on:{\"outside-click\":_vm.hideFilter,\"clean\":_vm.hideFilter},model:{value:(_vm.parsedFilters[column.id]),callback:function ($$v) {_vm.$set(_vm.parsedFilters, column.id, $$v)},expression:\"parsedFilters[column.id]\"}}):_vm._e(),(column.isFilterable)?_c('span',{on:{\"click\":function($event){return _vm.toggleFilter(column.id)}}},[_vm._v(_vm._s(column.label)+\" \"),(_vm.checkedFilters[column.id].length > 0)?_c('span',{staticClass:\"badge\"},[_vm._v(_vm._s(_vm.checkedFilters[column.id].length))]):_vm._e(),_c('font-awesome-icon',{attrs:{\"icon\":\"sort-down\",\"size\":\"2x\"}})],1):_c('span',[_vm._v(_vm._s(column.label))])],1)}),0)]),_c('tbody',[(_vm.filteredContent.length === 0)?_c('tr',{staticClass:\"table-row--empty\"},[_c('td',{attrs:{\"colspan\":_vm.parsedColumns.length}},[_vm._v(_vm._s(_vm.emptyLabel))])]):_vm._e(),_vm._l((_vm.currentPageContent),function(row,index){return _c('tr',{class:index % 2 === 0 ? 'table-row--odd' : '',on:{\"click\":function($event){return _vm.click($event, row)}}},_vm._l((_vm.parsedColumns),function(column){return _c('td',{class:(\"table-col--\" + (column.id))},[_vm._t(column.id,[_c('span',{domProps:{\"innerHTML\":_vm._s(row[column.id])}})],{\"row\":row})],2)}),0)})],2)]),_c('aside',{staticClass:\"rb-table-aside\"},[_vm._t(\"aside\",[_c('p')]),_c('div',{staticClass:\"rb-pagination\"},[_c('span',{staticClass:\"link\",class:{ 'link--disabled': _vm.currentPage === 0 },on:{\"click\":_vm.previousPage}},[_c('font-awesome-icon',{attrs:{\"icon\":\"caret-square-left\"}}),_vm._v(\" Précédent\")],1),_c('span',{staticClass:\"pagination-pages\"},[_vm._v(_vm._s(_vm.indexOfFirstRowInCurrentPage)+\" - \"+_vm._s(_vm.indexOfLastRowInCurrentPage)+\" sur \"+_vm._s(_vm.filteredContent.length))]),_c('span',{staticClass:\"link\",class:{ 'link--disabled': _vm.currentPage === _vm.indexOfLastPage },on:{\"click\":_vm.nextPage}},[_vm._v(\"Suivant \"),_c('font-awesome-icon',{attrs:{\"icon\":\"caret-square-right\"}})],1)])],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:\"container\",staticClass:\"tableFilter\",style:({ display: _vm.visible === true ? 'block' : 'none' })},[_c('ul',_vm._l((_vm.items),function(item,itemId){return _c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(item.checked),expression:\"item.checked\"}],attrs:{\"type\":\"checkbox\",\"id\":(\"tableFilter-\" + _vm.id + \"-\" + itemId)},domProps:{\"checked\":Array.isArray(item.checked)?_vm._i(item.checked,null)>-1:(item.checked)},on:{\"change\":function($event){var $$a=item.checked,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(item, \"checked\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(item, \"checked\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(item, \"checked\", $$c)}}}}),_c('label',{attrs:{\"for\":(\"tableFilter-\" + _vm.id + \"-\" + itemId)}},[_vm._t(\"default\",[_vm._v(_vm._s(item.label))],{\"item\":item})],2)])}),0),_c('footer',[_c('span',{staticClass:\"link link--secondary\",on:{\"click\":_vm.clean}},[_vm._v(\"Effacer\")])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default {\n props: {\n value: {\n required: true,\n type: Array\n },\n\n visible: {\n required: false,\n type: Boolean,\n default: false\n }\n },\n\n data() {\n return {\n items: this.value,\n timeout: null,\n id: null\n };\n },\n\n watch: {\n value() {\n this.items = this.value;\n },\n\n items() {\n this.$emit(\"input\", this.items);\n },\n\n visible() {\n if (this.visible === true) {\n this.timeout = setTimeout(\n () =>\n document.addEventListener(\n \"click\",\n this.checkOutsideClick\n ),\n 500\n );\n } else {\n clearTimeout(this.timeout);\n document.removeEventListener(\"click\", this.checkOutsideClick);\n }\n }\n },\n\n mounted() {\n // eslint-disable-next-line no-underscore-dangle\n this.id = this._uid;\n },\n\n methods: {\n clean() {\n for (let i = 0; i < this.items.length; i += 1) {\n this.items[i].checked = false;\n }\n\n this.$emit(\"clean\");\n },\n\n checkOutsideClick(event) {\n if (\n !this.$refs.container ||\n !this.$refs.container.contains(event.target)\n ) {\n this.$emit(\"outside-click\", event);\n }\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./tableFilter.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./tableFilter.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./tableFilter.vue?vue&type=template&id=cdbe4124&scoped=true&lang=pug&\"\nimport script from \"./tableFilter.vue?vue&type=script&lang=js&\"\nexport * from \"./tableFilter.vue?vue&type=script&lang=js&\"\nimport style0 from \"./tableFilter.vue?vue&type=style&index=0&id=cdbe4124&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"cdbe4124\",\n null\n \n)\n\nexport default component.exports","import TableFilter from \"#app/components/tableFilter/tableFilter.vue\";\n\n/**\n * Default umber of items per page\n *\n * @const {Number}\n */\nconst DEFAULT_ITEMS_PER_PAGE = 10;\n\nexport default {\n components: {\n TableFilter\n },\n\n props: {\n /**\n * The list of columns\n *\n * @type {Array.}\n */\n columns: {\n type: Array,\n required: true\n },\n\n /**\n * The unfiltered content of the table\n *\n * @type {Array.} The object obviously depends on the list of columns\n */\n content: {\n type: Array,\n required: false,\n default() {\n return [];\n }\n },\n\n /**\n * The message to be shown whenever the table is empty\n *\n * @type {String}\n */\n emptyLabel: {\n type: String,\n required: false,\n default: \"Aucune donnée disponible pour les filtres sélectionnés\"\n },\n\n /**\n * Number of items per page\n *\n * @type {Number}\n */\n itemsPerPage: {\n type: Number,\n required: false,\n default: DEFAULT_ITEMS_PER_PAGE\n }\n },\n\n data() {\n return {\n /**\n * Map of filters for each column\n *\n * @type {Object.>}\n */\n parsedFilters: this.parseFilters(),\n\n /**\n * Column id for the currently visible filter\n *\n * @type {String|null}\n */\n currentFilter: null,\n\n /**\n * Index of the current page, starting from 0\n *\n * @type {Number}\n */\n currentPage: 0\n };\n },\n\n computed: {\n /**\n * Parses the list of columns and enriches it with automatically computed properties\n *\n * @returns {Array.}\n */\n parsedColumns() {\n return this.columns.map(column => ({\n ...column,\n isFilterable: column.filters !== undefined\n }));\n },\n\n /**\n * Returns the list of checked filter items for each column\n *\n * Please note that even columns with no defined filters appear in the result: they are\n * always matched with an empty array.\n *\n * @returns {Object.>}\n */\n checkedFilters() {\n return Object.keys(this.parsedFilters).reduce(\n (acc, columnId) => ({\n ...acc,\n [columnId]: this.parsedFilters[columnId].filter(\n ({ checked }) => checked === true\n )\n }),\n {}\n );\n },\n\n /**\n * Filters the content\n *\n * @returns {Array.}\n */\n filteredContent() {\n // every time the content of the table changes, reset the pagination\n this.currentPage = 0;\n\n // eslint-disable-next-line arrow-body-style\n return this.content.filter(row => {\n // keep the row only if the filters are matched for each column\n return this.columns.every(({ id: columnId, filterFn }) => {\n if (this.checkedFilters[columnId].length === 0) {\n return true;\n }\n\n return filterFn(row, this.checkedFilters[columnId]);\n });\n });\n },\n\n /**\n * Current page content\n *\n * @returns {Array.}\n */\n currentPageContent() {\n return this.filteredContent.slice(\n this.currentPage * this.itemsPerPage,\n this.currentPage * this.itemsPerPage + this.itemsPerPage\n );\n },\n\n /**\n * Index of the last available page, starting from 0\n *\n * @returns {Number}\n */\n indexOfLastPage() {\n return Math.max(\n 0,\n Math.ceil(this.filteredContent.length / this.itemsPerPage) - 1\n );\n },\n\n /**\n * Index of the first row displayed in current page, starting from 1\n *\n * @returns {Number}\n */\n indexOfFirstRowInCurrentPage() {\n return this.filteredContent.length > 0\n ? this.currentPage * this.itemsPerPage + 1\n : 0;\n },\n\n /**\n * Index of the last row displayed in current page, starting from 1\n *\n * @returns {Number}\n */\n indexOfLastRowInCurrentPage() {\n return Math.min(\n this.indexOfFirstRowInCurrentPage + this.itemsPerPage - 1,\n this.filteredContent.length\n );\n }\n },\n\n watch: {\n /**\n * Every time the list of columns of the table changes:\n *\n * - reset the pagination\n * - reset the filters\n */\n columns() {\n this.parsedFilters = this.parseFilters();\n this.currentPage = 0;\n },\n\n /**\n * Every time the content of the table changes:\n *\n * - reset the pagination\n * - reset the filters\n */\n content() {\n this.parsedFilters = this.parseFilters();\n this.currentFilter = null;\n this.currentPage = 0;\n }\n },\n\n methods: {\n /**\n * Propagates any click on a row\n *\n * @param {ClickEvent} event\n * @param {Object} row\n *\n * @returns {undefined}\n */\n click(event, row) {\n this.$emit(\"click\", row, event);\n },\n\n /**\n * Creates a map, matching a list of filter items for each column id\n *\n * Please note that columns with no defined filters will be in the map, matched with an\n * empty array.\n *\n * @returns {Object.>}\n */\n parseFilters() {\n return this.columns.reduce((acc, column) => {\n // columns with no filters get an empty array\n if (column.filters === undefined) {\n return { ...acc, [column.id]: [] };\n }\n\n // parse every filter item of this column (basically, initialize the value of `checked`)\n return {\n ...acc,\n [column.id]: column.filters.map(filter => {\n if (filter.checked !== undefined) {\n return filter;\n }\n\n return { ...filter, checked: false };\n })\n };\n }, {});\n },\n\n /**\n * Toggles the filter of a specific column\n *\n * @param {String} columnId\n *\n * @returns {undefined}\n */\n toggleFilter(columnId) {\n if (this.currentFilter === columnId) {\n this.currentFilter = null;\n } else {\n this.currentFilter = columnId;\n }\n },\n\n /**\n * Hides the currently visible filter\n *\n * @returns {undefined}\n */\n hideFilter() {\n this.currentFilter = null;\n },\n\n /**\n * Moves to previous page\n *\n * @returns {undefined}\n */\n previousPage() {\n this.currentPage = Math.max(0, this.currentPage - 1);\n },\n\n /**\n * Moves to next page\n *\n * @returns {undefined}\n */\n nextPage() {\n this.currentPage = Math.min(\n this.indexOfLastPage,\n this.currentPage + 1\n );\n }\n }\n};\n\n/**\n * @typedef {Object} TableFilterItem\n * @property {String} label\n * @property {Object} value\n * @property {Boolean} [checked=false] If not defined, it is automatically set to `false`\n */\n\n/**\n * @callback TableFilterFunction\n *\n * This function checks whether the given row should be visible, based on the given checked\n * filter items.\n *\n * @param {Object} row Any row from `content`\n * @param {Array.} checkedItems The list of checked items\n *\n * @returns {Boolean} True if the row should be visible, false otherwise\n */\n\n/**\n * @typedef {Object} TableColumn\n * @property {String} id\n * @property {String} label\n * @property {Array.} [filters] Mandatory if `filterFn` is provided\n * @property {TableFilterFunction} [filterFn] Mandatory if `filters` is provided\n * @property {Boolean} [isFilterable] This property is automatically computed\n * based on the definition of `filters`\n */\n","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./table.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./table.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./table.vue?vue&type=template&id=538c7406&lang=pug&\"\nimport script from \"./table.vue?vue&type=script&lang=js&\"\nexport * from \"./table.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Autocompleter',_vm._b({attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'Autocompleter',_vm.options,false))}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Autocompleter from \"../autocompleter/autocompleter.vue\";\nimport { autocompleteLocation as autocompleter } from \"#helpers/addressHelper\";\n\nexport default {\n components: {\n Autocompleter\n },\n\n props: {\n /**\n * @type {Address|null}\n */\n value: {\n type: Object,\n required: false,\n default() {\n return null;\n }\n },\n\n /**\n * Whether the input should be disabled or not\n *\n * @type {Boolean}\n */\n disabled: {\n type: Boolean,\n required: false,\n default: false\n },\n\n /**\n * Properties specific to the input\n *\n * @type {Object}\n */\n specificProps: {\n type: Object,\n required: false,\n default() {\n return {};\n }\n }\n },\n\n data() {\n return {\n /**\n * @type {Array.
}\n */\n data: this.value !== null ? [this.value] : [],\n\n /**\n * @type {Object}\n */\n options: {\n ...this.specificProps,\n showCategory: true,\n autocompleter: (...args) => {\n const p1 = autocompleter(...args);\n const p2 = p1.then(result =>\n result.map(({ label, code, type, locationType }) => ({\n id: code,\n label,\n category: type,\n data: {\n code,\n type: locationType\n }\n }))\n );\n p2.abort = p1.abort;\n return p2;\n }\n }\n };\n },\n\n watch: {\n // two-way binding\n value() {\n this.data = this.value !== null ? [this.value] : [];\n },\n data() {\n this.$emit(\"input\", this.data.length > 0 ? this.data[0] : null);\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./collectivity.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./collectivity.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./collectivity.vue?vue&type=template&id=0fec7cc4&lang=pug&\"\nimport script from \"./collectivity.vue?vue&type=script&lang=js&\"\nexport * from \"./collectivity.vue?vue&type=script&lang=js&\"\nimport style0 from \"./collectivity.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { get as getConfig, getPermission } from \"#helpers/api/config\";\nimport { all as fetchAll } from \"#helpers/api/town\";\nimport Table from \"#app/components/table/table.vue\";\nimport CollectivityInput from \"#app/components/form/input/collectivity/collectivity.vue\";\n\nexport default {\n components: {\n Table,\n CollectivityInput\n },\n\n props: {\n /**\n * @type {Array.}\n */\n value: {\n type: Array,\n required: false,\n default() {\n return [];\n }\n },\n\n /**\n * Whether the input should be disabled or not\n *\n * @type {Boolean}\n */\n disabled: {\n type: Boolean,\n required: false,\n default: false\n },\n\n /**\n * A function that takes a town as input, and returns a boolean\n *\n * @type {Function}\n */\n filter: {\n type: Function,\n required: false,\n default: null\n }\n },\n\n data() {\n const { field_types: fieldTypes, user } = getConfig();\n const permission = getPermission(\"shantytown.list\");\n\n const userLocation = {\n id:\n user.organization.location.type === \"nation\"\n ? null\n : user.organization.location[\n user.organization.location.type\n ].code,\n label:\n user.organization.location.type === \"nation\"\n ? \"France\"\n : user.organization.location[\n user.organization.location.type\n ].name,\n category: user.organization.location.type,\n data: {\n code:\n user.organization.location.type === \"nation\"\n ? null\n : user.organization.location[\n user.organization.location.type\n ].code,\n type: user.organization.location.type\n }\n };\n const hasNationalPermission = permission.geographic_level === \"nation\";\n\n let location;\n let defaultLocation;\n if (\n hasNationalPermission !== true ||\n user.organization.location.type === \"nation\"\n ) {\n defaultLocation = { ...userLocation };\n location = null;\n } else {\n defaultLocation = {\n id: null,\n label: \"France\",\n category: \"Pays\",\n data: {\n code: null,\n type: \"nation\"\n }\n };\n location = { ...userLocation };\n }\n\n return {\n location,\n defaultLocation,\n\n columns: [\n { id: \"checkbox\", label: \"\" },\n { id: \"city\", label: \"Commune\" },\n { id: \"address\", label: \"Adresse\" },\n { id: \"fieldType\", label: \"Type de site\" },\n { id: \"people\", label: \"Nombre de personnes\" }\n ],\n\n fieldTypes: fieldTypes.reduce(\n (acc, fieldType) => ({ ...acc, [fieldType.id]: fieldType }),\n {}\n ),\n\n /**\n * Data loading status\n *\n * @type {String|null} Either 'loading', 'loaded', 'error'\n */\n status: null,\n\n /**\n * Data loading error message\n *\n * @type {String|null}\n */\n loadingError: null,\n\n /**\n * List of towns\n *\n * @type {Array.}\n */\n towns: [],\n\n /**\n * Ids of selected towns\n *\n * @type {Array.}\n */\n selectedTowns: this.value,\n\n /**\n * Status of visible towns\n *\n * @type {'open'|'closed'}\n */\n statusOfVisibleTowns: \"open\"\n };\n },\n\n computed: {\n currentLocation() {\n return this.location || this.defaultLocation;\n },\n\n pageContent() {\n return this.towns\n .filter(({ closedAt }) => {\n if (this.statusOfVisibleTowns === \"open\") {\n return closedAt === null;\n }\n return closedAt !== null;\n })\n .filter(shantytown => {\n if (this.currentLocation.data.type === \"nation\") {\n return true;\n }\n\n const l = shantytown[this.currentLocation.data.type];\n return (\n l && `${l.code}` === `${this.currentLocation.data.code}`\n );\n });\n }\n },\n\n watch: {\n // two-way binding\n value() {\n this.selectedTowns = this.value;\n },\n\n selectedTowns() {\n this.$emit(\"input\", this.selectedTowns);\n }\n },\n\n mounted() {\n // on mount, try to load the list of shantytowns\n this.load();\n },\n\n methods: {\n /**\n * Loads shantytowns\n *\n * @returns {undefined}\n */\n load() {\n if (this.status === \"loaded\" || this.status === \"loading\") {\n return;\n }\n\n this.status = \"loading\";\n this.loadingError = null;\n\n fetchAll({}, [\"city.asc\", \"population.desc\"])\n .then(data => {\n this.status = \"loaded\";\n this.towns = data;\n })\n .catch(({ user_message: error }) => {\n this.status = \"error\";\n this.loadingError = error;\n });\n },\n\n /**\n * Changes which towns are displayed in the list\n *\n * @param {'open'|'closed'} status\n *\n * @returns {undefined}\n */\n showTowns(status) {\n this.statusOfVisibleTowns = status;\n },\n\n /**\n * Adds/removes a town from the list of selected towns\n *\n * @param {Shantytown} town\n *\n * @returns {undefined}\n */\n toggleTown({ id: townId }, event) {\n if (event && event.target && event.target.type === \"checkbox\") {\n return;\n }\n\n if (this.disabled) {\n return;\n }\n\n const index = this.selectedTowns.findIndex(id => id === townId);\n if (index !== -1) {\n this.selectedTowns.splice(index, 1);\n } else {\n this.selectedTowns.push(townId);\n }\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./townList.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./townList.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./townList.vue?vue&type=template&id=0307fd5d&lang=pug&\"\nimport script from \"./townList.vue?vue&type=script&lang=js&\"\nexport * from \"./townList.vue?vue&type=script&lang=js&\"\nimport style0 from \"./townList.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"planFunding\"},[_c('header',{staticClass:\"planFunding-header\"},[_c('font-awesome-icon',{staticClass:\"planFunding-yearSwitch\",class:{ 'planFunding-yearSwitch--disabled': this.focusedYear === this.minYear },attrs:{\"icon\":\"caret-square-left\"},on:{\"click\":_vm.showPreviousYear}}),_c('span',[_vm._v(_vm._s(_vm.focusedYear)+\" \")]),_c('font-awesome-icon',{staticClass:\"planFunding-yearSwitch\",class:{ 'planFunding-yearSwitch--disabled': this.focusedYear === this.maxYear },attrs:{\"icon\":\"caret-square-right\"},on:{\"click\":_vm.showNextYear}})],1),_c('table',{staticClass:\"table\"},[_vm._m(0),_c('tbody',[_vm._l((_vm.currentFundings),function(funding,index){return _c('PlanFundingRow',{key:index,attrs:{\"index\":index,\"inputMode\":_vm.inputMode,\"relatedYear\":_vm.focusedYear,\"disabled\":_vm.disabled},on:{\"onremove\":function($event){return _vm.removeRow(index)},\"input\":_vm.onRowChange},model:{value:(funding.data),callback:function ($$v) {_vm.$set(funding, \"data\", $$v)},expression:\"funding.data\"}})}),(_vm.inputMode === 'default')?_c('tr',[_c('td',{staticClass:\"planFunding-addRow\",class:{ 'planFunding-addRow--disabled': _vm.disabled },attrs:{\"colspan\":\"5\"},on:{\"click\":_vm.addRow}},[_vm._v(\"Ajouter une ligne de financement\")])]):_vm._e()],2)])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('thead',[_c('tr',[_c('th',{staticClass:\"planFunding-type\"},[_vm._v(\"Type de financements\")]),_c('th',{staticClass:\"planFunding-amount\"},[_vm._v(\"Montants\"),_c('br'),_vm._v(\"Prévus\")]),_c('th',{staticClass:\"planFunding-details\"},[_vm._v(\"Précision\")]),_c('th',{staticClass:\"planFunding-details\"},[_vm._v(\"Dépenses\"),_c('br'),_vm._v(\"exécutées\")]),_c('th')])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('tr',{staticClass:\"planFundingRow\",class:{ 'planFundingRow--disabled': _vm.disabled }},[_c('td',[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.type),expression:\"type\"}],attrs:{\"disabled\":_vm.disabled || _vm.inputMode === 'closing' || !_vm.allowEdition},on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.type=$event.target.multiple ? $$selectedVal : $$selectedVal[0]}}},_vm._l((_vm.financeTypes),function(financeType){return _c('option',{domProps:{\"value\":financeType.uid}},[_vm._v(_vm._s(financeType.name))])}),0)]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.amount),expression:\"amount\"}],attrs:{\"type\":\"text\",\"readonly\":_vm.disabled || _vm.inputMode === 'closing' || !_vm.allowEdition,\"disabled\":_vm.disabled || _vm.inputMode === 'closing' || !_vm.allowEdition},domProps:{\"value\":(_vm.amount)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.amount=$event.target.value}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.details),expression:\"details\"}],attrs:{\"type\":\"text\",\"readonly\":_vm.disabled || _vm.inputMode === 'closing' || !_vm.allowEdition,\"disabled\":_vm.disabled || _vm.inputMode === 'closing' || !_vm.allowEdition},domProps:{\"value\":(_vm.details)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.details=$event.target.value}}})]),(_vm.showRealAmount)?_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.realAmount),expression:\"realAmount\"}],attrs:{\"type\":\"text\",\"readonly\":_vm.disabled || !_vm.allowEdition,\"disabled\":_vm.disabled || !_vm.allowEdition},domProps:{\"value\":(_vm.realAmount)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.realAmount=$event.target.value}}})]):_c('td',[(_vm.index === 0)?_c('span',[_vm._v(\"À remplir entre janvier et mars de l'année prochaine\")]):_vm._e()]),_c('td',[_c('img',{attrs:{\"src\":\"/img/remove.svg\"},on:{\"click\":_vm.remove}})])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { get as getConfig } from \"#helpers/api/config\";\n\nexport default {\n props: {\n /**\n * @type {PlanFundingData}\n */\n value: {\n type: Object,\n required: false,\n default() {\n return {\n type: null,\n amount: 0.0,\n realAmount: null,\n details: \"\"\n };\n }\n },\n\n /**\n * Whether the input should be disabled or not\n *\n * @type {Boolean}\n */\n disabled: {\n type: Boolean,\n required: false,\n default: false\n },\n\n /**\n * Index of the row, starting from 0\n *\n * @type {Number}\n */\n index: {\n type: Number,\n required: true\n },\n\n /**\n * Year related to the row\n *\n * @type {Number}\n */\n relatedYear: {\n type: Number,\n required: true\n },\n\n /**\n * Input mode\n *\n * @see planFunding.js\n *\n * @type {\"default|\"closing\"}\n */\n inputMode: {\n type: String,\n required: false,\n default: \"default\"\n }\n },\n\n data() {\n const showRealAmount =\n this.inputMode !== \"default\" || !this.isCurrentYear();\n const allowEdition = !Number.isFinite(this.value.realAmount);\n\n return {\n /**\n * List of funding-types\n *\n * @type {Array.}\n */\n financeTypes: getConfig().finance_types || [],\n\n /**\n *\n */\n showRealAmount,\n allowEdition,\n\n // please see definition of PlanFundingData\n type: this.value.type,\n amount: this.value.amount,\n realAmount: showRealAmount ? this.value.realAmount : null,\n details: this.value.details\n };\n },\n\n watch: {\n // two-way binding\n value() {\n this.showRealAmount =\n this.inputMode !== \"default\" || !this.isCurrentYear();\n this.allowEdition = !Number.isFinite(this.value.realAmount);\n this.type = this.value.type;\n this.amount = this.value.amount;\n this.realAmount = this.showRealAmount\n ? this.value.realAmount\n : null;\n this.details = this.value.details;\n },\n\n type() {\n this.emitInput();\n },\n amount() {\n this.emitInput();\n },\n realAmount() {\n this.emitInput();\n },\n details() {\n this.emitInput();\n }\n },\n\n methods: {\n /**\n *\n */\n isCurrentYear() {\n return new Date().getFullYear() === this.relatedYear;\n },\n\n /**\n * Emits an input for data binding\n *\n * @returns {undefined}\n */\n emitInput() {\n this.$emit(\"input\", {\n type: this.type,\n amount: this.amount,\n realAmount: this.realAmount,\n details: this.details\n });\n },\n\n /**\n * Throws a 'remove' event\n *\n * @returns {undefined}\n */\n remove() {\n this.$emit(\"onremove\");\n }\n }\n};\n\n/**\n * @typedef {Object} FinanceType\n * @property {Number} uid\n * @property {String} name\n */\n","\n\n\n\n\n","import mod from \"-!../../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./planFundingRow.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./planFundingRow.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./planFundingRow.vue?vue&type=template&id=6c0ed8b8&lang=pug&\"\nimport script from \"./planFundingRow.vue?vue&type=script&lang=js&\"\nexport * from \"./planFundingRow.vue?vue&type=script&lang=js&\"\nimport style0 from \"./planFundingRow.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import PlanFundingRow from \"./planFundingRow/planFundingRow.vue\";\n\nexport default {\n components: {\n PlanFundingRow\n },\n\n props: {\n /**\n * @type {Array.}\n */\n value: {\n type: Array,\n required: false,\n default() {\n return [];\n }\n },\n\n /**\n * Whether the input should be disabled or not\n *\n * @type {Boolean}\n */\n disabled: {\n type: Boolean,\n required: false,\n default: false\n },\n\n /**\n * The oldest year that can be provided\n *\n * @type {Number|null}\n */\n minYear: {\n type: Number,\n required: false,\n default: null\n },\n\n /**\n * Input mode\n *\n * Three possible modes:\n * - \"default\": new rows are allowed, all inputs are enabled except the realAmount\n * of the current year\n * - \"closing\": new rows are not allowed, all inputs are disabled except empty realAmounts\n * (even the ones of the current year)p\n *\n * @type {\"default|\"closing\"}\n */\n inputMode: {\n type: String,\n required: false,\n default: \"default\"\n }\n },\n\n data() {\n return {\n /**\n * Upper limit for focusedYear\n *\n * @type {Number}\n */\n maxYear: new Date().getFullYear(),\n\n /**\n * Currently edited year\n *\n * @type {Number}\n */\n focusedYear: new Date().getFullYear(),\n\n /**\n * Funding rows\n *\n * @type {Array.}\n */\n fundings: this.value.map(({ year, data }) => ({\n year,\n data: data.map(d => ({\n data: d\n }))\n }))\n };\n },\n\n computed: {\n allowRealAmount() {\n return (\n this.inputMode === \"closing\" ||\n this.focusedYear < new Date().getFullYear()\n );\n },\n currentFundings() {\n const currentFundings = this.getCurrentFundings();\n if (currentFundings === undefined) {\n return [];\n }\n\n return currentFundings.data;\n }\n },\n\n watch: {\n // two-way binding\n value() {\n this.fundings = this.value.map(({ year, data }) => ({\n year,\n data: data.map(d => ({\n data: d\n }))\n }));\n }\n },\n\n methods: {\n /**\n * Returns the funding rows for currently selected year\n *\n * @returns {Array.}\n */\n getCurrentFundings() {\n return this.fundings.find(({ year }) => year === this.focusedYear);\n },\n\n /**\n * Adds a funding row\n *\n * @returns {undefined}\n */\n addRow() {\n if (this.disabled) {\n return;\n }\n\n let currentFundings = this.getCurrentFundings();\n if (currentFundings === undefined) {\n currentFundings = {\n year: this.focusedYear,\n data: []\n };\n this.fundings.push(currentFundings);\n }\n\n currentFundings.data.push({\n data: {\n type: null,\n amount: 0.0,\n realAmount: null,\n details: \"\"\n }\n });\n this.emitInput();\n },\n\n /**\n * Removes a funding row\n *\n * @param {Number} index\n *\n * @returns {undefined}\n */\n removeRow(index) {\n if (this.disabled) {\n return;\n }\n\n const currentFundings = this.getCurrentFundings();\n if (currentFundings === undefined) {\n return;\n }\n\n currentFundings.data.splice(index, 1);\n this.emitInput();\n },\n\n /**\n * Handles a change in the value of a row\n *\n * @returns {undefined}\n */\n onRowChange() {\n this.emitInput();\n },\n\n /**\n * Emits input for data binding\n *\n * @returns {undefined}\n */\n emitInput() {\n this.$emit(\n \"input\",\n this.fundings.map(({ year, data }) => ({\n year,\n data: data.map(({ data: d }) => d)\n }))\n );\n },\n\n /**\n * Switches to next year\n *\n * @returns {undefined}\n */\n showNextYear() {\n this.focusedYear = Math.min(this.maxYear, this.focusedYear + 1);\n },\n\n /**\n * Switches to previous year\n *\n * @returns {undefined}\n */\n showPreviousYear() {\n if (this.minYear === null) {\n this.focusedYear -= 1;\n } else {\n this.focusedYear = Math.max(this.minYear, this.focusedYear - 1);\n }\n }\n }\n};\n\n/**\n * @typedef {Object} PlanFundingData\n * @property {Number} type Type id\n * @property {Number} amount Amount in euros as a float number\n * @property {Number} realAmount Amount in euros as a float number\n * @property {String} details\n */\n\n/**\n * @typedef {Object} PlanFunding\n * @property {PlanFundingData} data\n */\n","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./planFunding.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./planFunding.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./planFunding.vue?vue&type=template&id=8b67ced2&lang=pug&\"\nimport script from \"./planFunding.vue?vue&type=script&lang=js&\"\nexport * from \"./planFunding.vue?vue&type=script&lang=js&\"\nimport style0 from \"./planFunding.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"rb-table\"},[_c('table',{staticClass:\"table\"},[_vm._m(0),_c('tbody',[_c('tr',[_c('th',[_vm._v(\"SIAO\")]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.siao.families),expression:\"data.siao.families\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.siao.families)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.siao, \"families\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.siao.people),expression:\"data.siao.people\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.siao.people)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.siao, \"people\", $event.target.value)}}})])]),_c('tr',[_c('th',[_vm._v(\"Logement social\")]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.logement_social.families),expression:\"data.logement_social.families\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.logement_social.families)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.logement_social, \"families\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.logement_social.people),expression:\"data.logement_social.people\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.logement_social.people)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.logement_social, \"people\", $event.target.value)}}})])]),_c('tr',[_c('th',[_vm._v(\"DALO\")]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.dalo.families),expression:\"data.dalo.families\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.dalo.families)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.dalo, \"families\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.dalo.people),expression:\"data.dalo.people\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.dalo.people)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.dalo, \"people\", $event.target.value)}}})])])])]),_c('table',{staticClass:\"table\"},[_vm._m(1),_c('tbody',[_c('tr',[_c('th',[_vm._v(\"Logement accompagné / adapté\")]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.accompagnes.families),expression:\"data.accompagnes.families\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.accompagnes.families)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.accompagnes, \"families\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.accompagnes.people),expression:\"data.accompagnes.people\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.accompagnes.people)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.accompagnes, \"people\", $event.target.value)}}})])]),_c('tr',[_vm._m(2),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.non_accompagnes.families),expression:\"data.non_accompagnes.families\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.non_accompagnes.families)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.non_accompagnes, \"families\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.non_accompagnes.people),expression:\"data.non_accompagnes.people\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.non_accompagnes.people)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.non_accompagnes, \"people\", $event.target.value)}}})])]),_c('tr',[_vm._m(3),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.heberges.families),expression:\"data.heberges.families\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.heberges.families)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.heberges, \"families\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.heberges.people),expression:\"data.heberges.people\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.heberges.people)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.heberges, \"people\", $event.target.value)}}})])])])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('thead',[_c('tr',[_c('th',[_vm._v(\"Demandes de logement\")]),_c('th',[_vm._v(\"Ménages\")]),_c('th',[_vm._v(\"Personnes\")])])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('thead',[_c('tr',[_c('th',[_vm._v(\"Accès à un logement ou hébergement\")]),_c('th',[_vm._v(\"Ménages\")]),_c('th',[_vm._v(\"Personnes\")])])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('th',[_vm._v(\" Logement sans accompagnement \"),_c('br'),_c('span',[_vm._v(\"(social ou privé)\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('th',[_vm._v(\" Hébergement \"),_c('span',[_vm._v(\"(hors mise à l'abri ou hébergement d'urgence)\")])])}]\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./planHousing.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./planHousing.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./planHousing.vue?vue&type=template&id=0c9f54ed&scoped=true&\"\nimport script from \"./planHousing.vue?vue&type=script&lang=js&\"\nexport * from \"./planHousing.vue?vue&type=script&lang=js&\"\nimport style0 from \"./planHousing.vue?vue&type=style&index=0&id=0c9f54ed&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"0c9f54ed\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Autocompleter',_vm._b({attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.data),callback:function ($$v) {_vm.data=$$v},expression:\"data\"}},'Autocompleter',_vm.options,false))}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Autocompleter from \"../autocompleter/autocompleter.vue\";\nimport { autocompleteOrganization as autocompleter } from \"#helpers/api/user\";\n\nexport default {\n components: {\n Autocompleter\n },\n\n props: {\n /**\n * @type {Organization|null}\n */\n value: {\n type: Object,\n required: false,\n default() {\n return null;\n }\n },\n\n /**\n * Whether the input should be disabled or not\n *\n * @type {Boolean}\n */\n disabled: {\n type: Boolean,\n required: false,\n default: false\n },\n\n /**\n * Properties specific to the input\n *\n * @type {Object}\n */\n specificProps: {\n type: Object,\n required: false,\n default() {\n return {};\n }\n }\n },\n\n data() {\n return {\n /**\n * @type {Array.}\n */\n data: this.value !== null ? [this.value] : [],\n\n /**\n * @type {Object}\n */\n options: {\n ...this.specificProps,\n showCategory: true,\n autocompleter: (...args) => {\n const p1 = autocompleter(...args);\n const p2 = p1.then(result =>\n result.map(r => ({\n id: r.id,\n label: r.label,\n category: r.type.label,\n data: r\n }))\n );\n p2.abort = p1.abort;\n return p2;\n }\n }\n };\n },\n\n watch: {\n // two-way binding\n value() {\n this.data = this.value !== null ? [this.value] : [];\n },\n data() {\n this.$emit(\"input\", this.data.length > 0 ? this.data[0] : null);\n }\n }\n};\n","\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./organization.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./organization.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./organization.vue?vue&type=template&id=98f43ca8&lang=pug&\"\nimport script from \"./organization.vue?vue&type=script&lang=js&\"\nexport * from \"./organization.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_vm._l((_vm.rows),function(row,index){return (_vm.rows.length > 0)?_c('p',{staticClass:\"etp-row dataSection-line\"},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(row.type),expression:\"row.type\"}],staticClass:\"etp-type\",attrs:{\"disabled\":_vm.disabled},on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.$set(row, \"type\", $event.target.multiple ? $$selectedVal : $$selectedVal[0])}}},_vm._l((_vm.types),function(type){return _c('option',{domProps:{\"value\":type.uid}},[_vm._v(_vm._s(type.name))])}),0),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(row.total),expression:\"row.total\"}],staticClass:\"etp-total\",attrs:{\"type\":\"number\",\"disabled\":_vm.disabled,\"step\":\"0.1\"},domProps:{\"value\":(row.total)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(row, \"total\", $event.target.value)}}}),_vm._v(\" ETP \"),_c('font-awesome-icon',{staticClass:\"etp-removeButton\",attrs:{\"icon\":\"trash-alt\"},on:{\"click\":function($event){return _vm.removeRow(index)}}})],1):_vm._e()}),(_vm.rows.length === 0)?_c('p',[_vm._v(\"Aucun ETP enregistré pour le moment\")]):_vm._e(),_c('p',{staticClass:\"etp-addButton\",on:{\"click\":_vm.addRow}},[_c('font-awesome-icon',{attrs:{\"icon\":\"plus-circle\"}}),_c('span',[_vm._v(\"Ajouter\")])],1)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { get as getConfig } from \"#helpers/api/config\";\n\nexport default {\n props: {\n /**\n * Value\n *\n * @type {Array.}\n */\n value: {\n type: Array,\n required: false,\n default() {\n return [];\n }\n },\n\n /**\n * Whether the input should be disabled or not\n *\n * @type {Boolean}\n */\n disabled: {\n type: Boolean,\n required: false,\n default: false\n }\n },\n\n data() {\n const { etp_types: types } = getConfig();\n\n return {\n rows: this.value,\n types\n };\n },\n\n computed: {\n parsedRows() {\n return this.rows.map(row => ({\n type: row.type ? row.type : null,\n total: parseFloat(row.total)\n }));\n }\n },\n\n watch: {\n parsedRows() {\n this.emitInput();\n }\n },\n\n methods: {\n /**\n *\n */\n addRow() {\n if (this.disabled) {\n return;\n }\n\n this.rows.push({\n type: undefined,\n total: 0\n });\n this.emitInput();\n },\n\n /**\n *\n */\n removeRow(i) {\n if (this.disabled) {\n return;\n }\n\n if (i >= this.rows.length) {\n return;\n }\n\n this.rows.splice(i, 1);\n this.emitInput();\n },\n\n /**\n * Emits input for data binding\n *\n * @returns {undefined}\n */\n emitInput() {\n this.$emit(\"input\", this.parsedRows);\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./etp.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./etp.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./etp.vue?vue&type=template&id=6ee93220&lang=pug&\"\nimport script from \"./etp.vue?vue&type=script&lang=js&\"\nexport * from \"./etp.vue?vue&type=script&lang=js&\"\nimport style0 from \"./etp.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"rb-table\"},[_c('table',{staticClass:\"table\"},[_vm._m(0),_c('tbody',[(!_vm.outOnly)?_c('tr',[(!_vm.inOnly)?_c('td',[_c('strong',[_vm._v(\"Entrées\")]),_vm._v(\" dans le dispositif\")]):_vm._e(),(_vm.inOnly)?_c('td',[_vm._v(\"Publics intégrés au dispositif\")]):_vm._e(),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.in.households),expression:\"data.in.households\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.in.households)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.in, \"households\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.in.people),expression:\"data.in.people\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.in.people)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.in, \"people\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.in.women),expression:\"data.in.women\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.in.women)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.in, \"women\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.in.minors),expression:\"data.in.minors\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.in.minors)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.in, \"minors\", $event.target.value)}}})])]):_vm._e(),(!_vm.inOnly)?_c('tr',[_vm._m(1),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.out_positive.households),expression:\"data.out_positive.households\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.out_positive.households)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.out_positive, \"households\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.out_positive.people),expression:\"data.out_positive.people\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.out_positive.people)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.out_positive, \"people\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.out_positive.women),expression:\"data.out_positive.women\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.out_positive.women)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.out_positive, \"women\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.out_positive.minors),expression:\"data.out_positive.minors\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.out_positive.minors)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.out_positive, \"minors\", $event.target.value)}}})])]):_vm._e(),(!_vm.inOnly)?_c('tr',[_vm._m(2),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.out_abandoned.households),expression:\"data.out_abandoned.households\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.out_abandoned.households)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.out_abandoned, \"households\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.out_abandoned.people),expression:\"data.out_abandoned.people\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.out_abandoned.people)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.out_abandoned, \"people\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.out_abandoned.women),expression:\"data.out_abandoned.women\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.out_abandoned.women)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.out_abandoned, \"women\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.out_abandoned.minors),expression:\"data.out_abandoned.minors\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.out_abandoned.minors)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.out_abandoned, \"minors\", $event.target.value)}}})])]):_vm._e(),(!_vm.inOnly)?_c('tr',[_vm._m(3),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.out_excluded.households),expression:\"data.out_excluded.households\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.out_excluded.households)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.out_excluded, \"households\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.out_excluded.people),expression:\"data.out_excluded.people\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.out_excluded.people)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.out_excluded, \"people\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.out_excluded.women),expression:\"data.out_excluded.women\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.out_excluded.women)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.out_excluded, \"women\", $event.target.value)}}})]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.out_excluded.minors),expression:\"data.out_excluded.minors\"}],attrs:{\"type\":\"number\",\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.data.out_excluded.minors)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.data.out_excluded, \"minors\", $event.target.value)}}})])]):_vm._e()])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('thead',[_c('tr',[_c('th',{staticClass:\"table-col\"}),_c('th',{staticClass:\"table-col\"},[_vm._v(\"Ménages\")]),_c('th',{staticClass:\"table-col\"},[_vm._v(\"Personnes\")]),_c('th',{staticClass:\"table-col\"},[_vm._v(\"dont femmes\"),_c('br'),_vm._v(\"(facultatif)\")]),_c('th',{staticClass:\"table-col\"},[_vm._v(\"dont mineurs\"),_c('br'),_vm._v(\"(facultatif)\")])])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('td',[_c('strong',[_vm._v(\"Sorties positivement\")]),_c('br'),_vm._v(\"fin accompagnement social et/ou\"),_c('br'),_vm._v(\"prise en charge dans un autre dispositif\")])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('td',[_c('strong',[_vm._v(\"Exclusion\")]),_vm._v(\" du dispositif\")])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('td',[_c('strong',[_vm._v(\"Abandon / départ volontaire\")])])}]\n\nexport { render, staticRenderFns }","/* eslint-disable object-shorthand */\nexport default {\n props: {\n /**\n * Value\n *\n * @type {Object}\n */\n value: {\n type: Object,\n required: false,\n default() {\n return {\n in: {\n households: 0,\n people: 0,\n women: 0,\n minors: 0\n },\n out_positive: {\n households: 0,\n people: 0,\n women: 0,\n minors: 0\n },\n out_abandoned: {\n households: 0,\n people: 0,\n women: 0,\n minors: 0\n },\n out_excluded: {\n households: 0,\n people: 0,\n women: 0,\n minors: 0\n }\n };\n }\n },\n\n /**\n * In-only\n *\n * Whether the \"in\" fields only should be shown\n *\n * @type {Boolean}\n */\n inOnly: {\n type: Boolean,\n required: false,\n default: false\n },\n\n /**\n * Out-only\n *\n * Whether the \"out\" fields only should be shown\n *\n * @type {Boolean}\n */\n outOnly: {\n type: Boolean,\n required: false,\n default: false\n },\n\n /**\n * Whether the input should be disabled or not\n *\n * @type {Boolean}\n */\n disabled: {\n type: Boolean,\n required: false,\n default: false\n }\n },\n\n data() {\n return {\n data: this.value\n };\n },\n\n watch: {\n \"data.in.households\"() {\n this.emitInput();\n },\n \"data.in.people\"() {\n this.emitInput();\n },\n \"data.in.women\"() {\n this.emitInput();\n },\n \"data.in.minors\"() {\n this.emitInput();\n },\n\n \"data.out_positive.households\"() {\n this.emitInput();\n },\n \"data.out_positive.people\"() {\n this.emitInput();\n },\n \"data.out_positive.women\"() {\n this.emitInput();\n },\n \"data.out_positive.minors\"() {\n this.emitInput();\n },\n\n \"data.out_abandoned.households\"() {\n this.emitInput();\n },\n \"data.out_abandoned.people\"() {\n this.emitInput();\n },\n \"data.out_abandoned.women\"() {\n this.emitInput();\n },\n \"data.out_abandoned.minors\"() {\n this.emitInput();\n },\n\n \"data.out_excluded.households\"() {\n this.emitInput();\n },\n \"data.out_excluded.people\"() {\n this.emitInput();\n },\n \"data.out_excluded.women\"() {\n this.emitInput();\n },\n \"data.out_excluded.minors\"() {\n this.emitInput();\n }\n },\n\n mounted() {\n this.emitInput();\n },\n\n methods: {\n emitInput() {\n this.$emit(\"input\", this.data);\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./audience.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./audience.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./audience.vue?vue&type=template&id=561fcbde&lang=pug&\"\nimport script from \"./audience.vue?vue&type=script&lang=js&\"\nexport * from \"./audience.vue?vue&type=script&lang=js&\"\nimport style0 from \"./audience.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Datepicker from \"vuejs-datepicker\";\nimport { fr as datepickerFr } from \"vuejs-datepicker/dist/locale\";\nimport Autocompleter from \"./autocompleter/autocompleter.vue\";\nimport Address from \"./address/address.vue\";\nimport Location from \"./location/location.vue\";\nimport AddressWithLocation from \"./address-with-location/address-with-location.vue\";\nimport TownList from \"./townList/townList.vue\";\nimport PlanFunding from \"./planFunding/planFunding.vue\";\nimport PlanHousing from \"./planHousing/planHousing.vue\";\nimport Collectivity from \"./collectivity/collectivity.vue\";\nimport Organization from \"./organization/organization.vue\";\nimport Etp from \"./etp/etp.vue\";\nimport Audience from \"./audience/audience.vue\";\n\n/**\n * Input types that accept a list of values\n *\n * @type {Array.}\n */\nconst multipleValueInputs = [\n \"selectMultiple\",\n \"checkbox\",\n \"autocompleter\",\n \"townList\",\n \"planFunding\",\n \"etp\"\n];\n\nexport default {\n components: {\n Datepicker,\n Autocompleter,\n Address,\n Location,\n AddressWithLocation,\n TownList,\n PlanFunding,\n Collectivity,\n Organization,\n Etp,\n Audience,\n PlanHousing\n },\n\n props: {\n /**\n * Unique id of the field\n *\n * @type {String}\n */\n id: {\n type: String,\n required: true\n },\n\n /**\n * Whether this input is mandatory or not\n *\n * @type {Boolean}\n */\n mandatory: {\n type: Boolean,\n required: true\n },\n\n /**\n * Input type\n *\n * @type {\n * 'hidden',\n * 'text',\n * 'password',\n * 'textarea',\n * 'number',\n * 'select',\n * 'selectMultiple',\n * 'radio',\n * 'checkbox',\n * 'date',\n * 'autocompleter',\n * 'address',\n * 'location',\n * 'addressWithLocation',\n * 'townList',\n * 'planFunding',\n * 'collectivity',\n * 'organization',\n * 'etp',\n * 'audience',\n * 'planHousing'\n * }\n */\n type: {\n type: String,\n required: false,\n default: \"text\"\n },\n\n /**\n * Label\n *\n * @type {String}\n */\n label: {\n type: String,\n required: true\n },\n\n /**\n * Description\n *\n * @type {String}\n */\n description: {\n type: String,\n required: false\n },\n\n /**\n * Options\n *\n * Used by inputs of type:\n * - select\n * - selectMultiple\n * - radio\n * - checkbox\n *\n * Please note that the InputOptionGroup is accepted for selects only.\n *\n * @type {Array.|Array.}\n */\n options: {\n type: Array,\n required: false,\n default() {\n return [];\n }\n },\n\n /**\n * Properties specific to the input\n *\n * @type {Object}\n */\n specificProps: {\n type: Object,\n required: false,\n default() {\n return {};\n }\n },\n\n /**\n * Value of the input\n *\n * @type {Object} Obviously depends on the input type\n */\n value: {\n required: false,\n default() {\n if (multipleValueInputs.indexOf(this.type) !== -1) {\n return [];\n }\n\n return undefined;\n }\n },\n\n /**\n * Whether the input should be disabled or not\n *\n * @type {Boolean}\n */\n disabled: {\n type: Boolean,\n required: false,\n default: false\n },\n\n /**\n * List of errors\n *\n * @type {Array.}\n */\n errors: {\n type: Array,\n required: false,\n default() {\n return [];\n }\n },\n\n /**\n * Message to be displayed as a prefix alert\n *\n * @type {String}\n */\n alertMessage: {\n type: String,\n required: false,\n default: null\n }\n },\n\n data() {\n return {\n data: this.value,\n showPassword: false // for type 'password' only\n };\n },\n\n computed: {\n props() {\n let defaultProps = {};\n if (this.type === \"date\") {\n defaultProps = {\n language: datepickerFr,\n mondayFirst: true,\n fullMonthName: true,\n format: \"dd MMMM yyyy\",\n calendarButton: true,\n calendarButtonIconContent: \"\",\n clearButton: true\n };\n }\n\n return Object.assign(defaultProps, this.specificProps);\n },\n\n optionsAreGrouped() {\n return (\n this.options &&\n Object.prototype.hasOwnProperty.call(this.options[0], \"options\")\n );\n }\n },\n\n mounted() {\n this.$nextTick(() => {\n this.$emit(\"input\", this.data);\n });\n },\n\n watch: {\n // two-way binding\n value() {\n this.data = this.value;\n },\n data() {\n this.$emit(\"input\", this.data);\n this.$emit(\"change\");\n },\n options() {\n if (Array.isArray(this.data)) {\n this.data = this.data.filter(\n v => this.options.indexOf(v) !== -1\n );\n } else if (this.options.indexOf(this.data) === -1) {\n this.data = undefined;\n }\n }\n }\n};\n\n/**\n * @typedef {Object} InputOption\n * @property {String|Number} value\n * @property {String} label\n */\n\n/**\n * @typedef {Object} InputOptionGroup\n * @property {String} label\n * @property {Array.} options\n */\n","\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./input.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./input.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./input.vue?vue&type=template&id=4a2f7e60&lang=pug&\"\nimport script from \"./input.vue?vue&type=script&lang=js&\"\nexport * from \"./input.vue?vue&type=script&lang=js&\"\nimport style0 from \"./input.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:{ slideNote: true, 'slideNote--visible': _vm.visible }},[_c('header',{staticClass:\"slideNote-header\"},[_c('h1',{staticClass:\"slideNote-title\"},[_c('font-awesome-icon',{attrs:{\"icon\":_vm.iconName}}),_vm._v(\" \"+_vm._s(_vm.title))],1),_c('span',{staticClass:\"slideNote-toggle\",on:{\"click\":_vm.toggle}},[_c('font-awesome-icon',{attrs:{\"icon\":_vm.caret,\"size\":\"2x\"}})],1)]),_c('div',{ref:\"body\",staticClass:\"slideNote-body\"},[_vm._t(\"content\",[_c('p',{ref:\"content\",staticClass:\"slideNote-content\",domProps:{\"innerHTML\":_vm._s(_vm.content)}})])],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default {\n props: {\n /**\n * Single-line title\n */\n title: {\n required: true,\n type: String\n },\n\n /**\n * HTML content\n */\n content: {\n required: false,\n type: String\n },\n\n /**\n * Whether the block should be visible by default\n *\n * @type {Boolean}\n */\n opened: {\n required: false,\n type: Boolean,\n default: true\n },\n\n /**\n * Font-awesome-icon\n *\n * @type {String}\n */\n icon: {\n required: false,\n type: String,\n default: \"info-circle\"\n }\n },\n\n data() {\n return {\n iconName: this.icon,\n maxHeight: null,\n visible: this.opened !== false\n };\n },\n\n computed: {\n caret() {\n return `caret-${this.visible === true ? \"up\" : \"down\"}`;\n }\n },\n\n mounted() {\n this.maxHeight = this.$refs.body.offsetHeight;\n this.refreshHeight();\n },\n\n methods: {\n toggle() {\n this.visible = !this.visible;\n this.refreshHeight();\n },\n refreshHeight() {\n if (this.visible === true) {\n this.$refs.body.style.maxHeight = `${this.maxHeight}px`;\n } else {\n this.$refs.body.style.maxHeight = \"0\";\n }\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./slide-note.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./slide-note.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./slide-note.vue?vue&type=template&id=569f8548&scoped=true&lang=pug&\"\nimport script from \"./slide-note.vue?vue&type=script&lang=js&\"\nexport * from \"./slide-note.vue?vue&type=script&lang=js&\"\nimport style0 from \"./slide-note.vue?vue&type=style&index=0&id=569f8548&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"569f8548\",\n null\n \n)\n\nexport default component.exports","import Vue from \"vue\";\n\n/**\n * Default duration of the notification, in milliseconds\n *\n * @const {Number}\n */\nconst DEFAULT_DURATION = 6000;\n\n/**\n * Proxy to vue-notification.notify()\n *\n * Its purpose is to set a default duration, if not already defined.\n *\n * @param {Object} options Please see vue-notification official documentation\n */\nexport function notify(options) {\n return Vue.notify(\n Object.prototype.hasOwnProperty.call(options, \"duration\")\n ? options\n : { ...options, duration: DEFAULT_DURATION }\n );\n}\n\nexport default notify;\n","import Input from \"./input/input.vue\";\nimport SlideNote from \"#app/components/slide-note/slide-note.vue\";\nimport { notify } from \"#helpers/notificationHelper\";\n\nexport default {\n components: {\n Input,\n SlideNote\n },\n\n props: {\n /**\n * Title of the form\n *\n * @type {String}\n */\n title: {\n type: String,\n required: false\n },\n\n /**\n * Description title of the form\n *\n * @type {String}\n */\n descriptionTitle: {\n type: String,\n required: false\n },\n\n /**\n * Description of the form\n *\n * @type {String}\n */\n description: {\n type: String,\n required: false\n },\n\n /**\n * List of steps\n *\n * @type {Array.}\n */\n steps: {\n type: Array,\n required: true\n },\n\n /**\n * Value of the inputs\n *\n * @type {Object.}\n */\n value: {\n type: Object,\n required: false,\n default() {\n return {};\n }\n }\n },\n\n data() {\n return {\n /**\n * Index used to force a refresh of the form\n *\n * @type {Number}\n */\n refreshId: 0,\n\n /**\n * Index of the current step\n *\n * @type {Number}\n */\n currentStepIndex: 0,\n\n /**\n * Data\n *\n * @type {Object.}\n */\n data: this.value,\n\n /**\n * Whether a submission is pending\n *\n * @type {Boolean}\n */\n pending: false,\n\n /**\n * Errors\n *\n * @type {Object}\n */\n errors: null,\n\n /**\n * Responses\n *\n * @type {Array.}\n */\n responses: []\n };\n },\n\n computed: {\n /**\n * Computes the list of all breadcrumb items\n *\n * The breadcrumb items includes:\n * - one item per form step\n * - one separator item in-between each form step\n *\n * @returns {Array.}\n */\n breadcrumbItems() {\n return this.steps\n .reduce(\n (breadcrumb, step, stepIndex) => [\n ...breadcrumb,\n ...[\n {\n ...step,\n classNames: {\n \"form-breadcrumbItem\": true,\n \"form-breadcrumbItem--current\":\n stepIndex === this.currentStepIndex,\n \"form-breadcrumbItem--done\":\n stepIndex < this.currentStepIndex\n },\n isSeparator: false,\n stepIndex\n },\n {\n classNames: {\n \"form-breadcrumbSeparator\": true\n },\n isSeparator: true\n }\n ]\n ],\n []\n )\n .slice(0, -1);\n },\n\n /**\n * Current step\n *\n * @returns {FormStep|null}\n */\n currentStep() {\n return this.steps[this.currentStepIndex] || null;\n },\n\n /**\n * List of sections of the current step\n *\n * @returns {Array.}\n */\n sections() {\n return this.currentStep ? this.currentStep.sections : [];\n },\n\n /**\n * List of sections of the current step with at least one input\n *\n * @returns {Array.}\n */\n fullSections() {\n return this.sections.filter(({ inputs }) =>\n Object.values(inputs).some(input => this.isInputVisible(input))\n );\n },\n\n /**\n * Inputs of the current step\n *\n * @returns {Array.}\n */\n inputs() {\n return this.currentStep.sections.reduce(\n (inputs, section) => ({ ...inputs, ...section.inputs }),\n {}\n );\n },\n\n /**\n * Wording\n *\n * @returns {FormStepWording}\n */\n wording() {\n return {\n submit: \"Étape suivante\",\n error: \"Certaines données saisies sont incorrectes\",\n success: null,\n ...(this.currentStep.wording || {})\n };\n },\n\n /**\n * Filtered data\n *\n * Basically, the data of active inputs.\n *\n * @returns {Object}\n */\n filteredData() {\n const inputIds = Object.keys(this.inputs);\n return inputIds\n .filter(id => this.isInputActive(this.inputs[id]))\n .reduce((data, id) => ({ ...data, [id]: this.data[id] }), {});\n },\n\n /**\n * Errors matching existing inputs\n *\n * @returns {Object}\n */\n filteredErrors() {\n if (!this.errors) {\n return null;\n }\n\n return Object.keys(this.errors.fields || {})\n .filter(inputId => this.inputs[inputId] !== undefined)\n .reduce(\n (errors, inputId) => ({\n ...errors,\n [inputId]: this.errors.fields[inputId]\n }),\n {}\n );\n },\n\n /**\n * Number of filtered errors\n *\n * @returns {Number}\n */\n numberOfFilteredErrors() {\n if (!this.filteredErrors) {\n return 0;\n }\n\n return Object.keys(this.filteredErrors).length;\n },\n\n /**\n *\n */\n submitPrefix() {\n return this.currentStep && this.currentStep.submitPrefix;\n }\n },\n\n watch: {\n // two-way binding\n value() {\n this.data = this.value;\n },\n data() {\n this.onDataChange();\n }\n },\n\n methods: {\n /**\n * Submits the current user's input for validation\n *\n * @returns {undefined}\n */\n submit() {\n if (!this.currentStep.submit) {\n this.goToNextStep(null);\n return;\n }\n\n if (this.pending === true) {\n return;\n }\n\n this.pending = true;\n this.errors = null;\n\n this.currentStep\n .submit(this.filteredData, this.responses)\n .then(response => {\n if (this.wording.success !== null) {\n notify({\n group: \"notifications\",\n type: \"success\",\n title: \"Succès\",\n text: this.wording.success\n });\n }\n\n this.$emit(\"stepcomplete\", this.currentStepIndex, response);\n this.goToNextStep(response);\n\n this.pending = false;\n this.errors = null;\n })\n .catch(error => {\n this.pending = false;\n this.errors = {\n main:\n (error && error.user_message) || \"erreur inconnue\",\n fields: (error && error.fields) || {}\n };\n });\n },\n\n /**\n * Shows the next step, if any\n *\n * @param {Object|null} response Response got from the submission promise\n *\n * @returns {undefined}\n */\n goToNextStep(response) {\n this.responses.push(response);\n\n if (this.currentStepIndex >= this.steps.length - 1) {\n this.$emit(\"complete\", response, this.responses);\n return;\n }\n\n this.currentStepIndex += 1;\n },\n\n /**\n * Finds an input based on the given id\n *\n * @param {String} inputId\n *\n * @returns {Input}\n */\n getInputById(inputId) {\n if (this.currentStep === null) {\n return null;\n }\n\n return this.inputs[inputId] || null;\n },\n\n /**\n * Handles a change in the value of one of the inputs\n *\n * @returns {undefined}\n */\n onDataChange() {\n this.refreshId += 1;\n this.$emit(\"input\", this.data);\n },\n\n /**\n * Indicates whether the given input is active or not\n *\n * @param {Input} input\n *\n * @returns {Boolean}\n */\n isInputActive(input) {\n if (!input.condition) {\n return true;\n }\n\n return input.condition(this.data);\n },\n\n /**\n * Indicates whether the given input is visible or not\n *\n * Please note that an input might be visible but inactive (meaning disabled and\n * not included in filtered-data).\n *\n * @param {Input} input\n *\n * @returns {Boolean}\n */\n isInputVisible(input) {\n return this.isInputActive(input) || input.inactiveMessage;\n },\n\n /**\n * Indicates whether the given input is disabled or not\n *\n * @param {Input} input\n *\n * @returns {Boolean}\n */\n isInputDisabled(input) {\n return (\n this.pending === true ||\n input.disabled === true ||\n (input.inactiveMessage && !this.isInputActive(input))\n );\n },\n\n /**\n * Returns the alert message to be displayed for the given input\n *\n * @param {Input} input\n *\n * @returns {String|Null}\n */\n getInputAlert(input) {\n if (input.inactiveMessage && !this.isInputActive(input)) {\n return input.inactiveMessage;\n }\n\n return null;\n }\n }\n};\n\n/**\n * @typedef {Object} FormStepWording\n * @property {String} submit Label of the button leading to the next step\n * @property {String} error Prefix of the error notification, in case of submissions failure\n * @property {String} success Content of the success notification, in case of submission success\n */\n\n/**\n * @typedef {Object} FormStep\n * @property {String} title Title of the step\n * @property {Array.} sections\n * @property {FormStepWording} [wording] Custom wording\n * @property {Function} [submit] Function called with the user's input. Should return a promise.\n * @property {String} [submitPrefix] Prefix text that is displayed above the submit button (HTML accepted)\n */\n\n/**\n * @typedef {Object} FormSection\n * @property {String} [title] Title of that section\n * @property {String} [description] Description of that section\n * @property {Object.} inputs List of inputs\n */\n\n/**\n * @typedef {Input} FormInput\n * @property {Function} [condition] A function that indicates if the input should be active or not\n * @property {String} [inactiveMessage] Message to be displayed if inactive (if not provided, the whole input will be invisible)\n */\n\n/**\n * @typedef {FormStep} FormBreadcrumbItem\n * @property {Object} classNames A map of dynamic CSS classes for that item\n * @property {Boolean} isSeparator Whether this item is a separator item or not\n * @property {Number} [stepIndex] Absolute index of the related form step (not set for separator items)\n */\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./form.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./form.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./form.vue?vue&type=template&id=38308f15&lang=pug&\"\nimport script from \"./form.vue?vue&type=script&lang=js&\"\nexport * from \"./form.vue?vue&type=script&lang=js&\"\nimport style0 from \"./form.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport { login } from \"#helpers/api/user\";\nimport Form from \"#app/components/form/form.vue\";\n\nexport default {\n components: {\n NavBar,\n Form\n },\n data() {\n return {\n formData: {},\n formDefinition: {\n title: \"Connexion à la plateforme\",\n\n steps: [\n {\n sections: [\n {\n inputs: {\n email: {\n type: \"text\",\n label: \"Votre courriel\",\n mandatory: true\n },\n password: {\n type: \"password\",\n label: \"Votre mot de passe\",\n mandatory: true\n }\n }\n }\n ],\n wording: {\n submit: \"Me connecter\",\n succes: \"Vous êtes désormais connecté\",\n error: \"La tentative de connexion a échoué\"\n },\n submit: ({ email, password }) => login(email, password)\n }\n ]\n }\n };\n },\n methods: {\n onComplete() {\n window.localStorage.setItem(\"logged_once\", true);\n this.$router.push({ path: \"/\" });\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./signin.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./signin.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./signin.vue?vue&type=template&id=0e202dfa&lang=pug&\"\nimport script from \"./signin.vue?vue&type=script&lang=js&\"\nexport * from \"./signin.vue?vue&type=script&lang=js&\"\nimport style0 from \"./signin.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('PublicLayout',{staticClass:\"contact\",attrs:{\"stickyHeader\":false,\"displayLanguagePicker\":true}},[_c('div',{staticClass:\"bg-corail full-width text-center py-8\"},[_c('div',{staticClass:\"max-w-3xl mx-auto\"},[_c('h1',{staticClass:\"text-display-lg text-white \"},[_vm._v(\" \"+_vm._s(_vm.$t(\"contactPage.title\"))+\" \")])])]),_c('PublicContainer',{staticClass:\"py-16\"},[_c('div',{staticClass:\"max-w-xl mx-auto\"},[_c('h2',{staticClass:\"text-display-lg mb-4\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"contactPage.contactUs\"))+\" \")]),_c('ValidationObserver',{ref:\"form\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nvar errors = ref.errors;\nreturn [_c('form',{staticClass:\"max-w-xl mt-12\",on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.submitForm)}}},[_c('InputGroup',[_c('TextInput',{attrs:{\"label\":_vm.$t('contactPage.email'),\"id\":\"email\",\"validationName\":\"Email\",\"rules\":\"required|email\"},model:{value:(_vm.commonFields.email),callback:function ($$v) {_vm.$set(_vm.commonFields, \"email\", $$v)},expression:\"commonFields.email\"}}),_c('TextInput',{attrs:{\"label\":_vm.$t('contactPage.firstname'),\"id\":\"first_name\",\"name\":\"Prénom\",\"rules\":\"required\"},model:{value:(_vm.commonFields.first_name),callback:function ($$v) {_vm.$set(_vm.commonFields, \"first_name\", $$v)},expression:\"commonFields.first_name\"}}),_c('TextInput',{attrs:{\"label\":_vm.$t('contactPage.lastname'),\"id\":\"last_name\",\"name\":\"Nom de famille\",\"rules\":\"required\"},model:{value:(_vm.commonFields.last_name),callback:function ($$v) {_vm.$set(_vm.commonFields, \"last_name\", $$v)},expression:\"commonFields.last_name\"}})],1),_c('CheckableGroup',{attrs:{\"label\":_vm.$t('contactPage.requestType'),\"name\":_vm.$t('contactPage.requestType'),\"id\":\"request_type\",\"direction\":\"row\"}},[_c('Checkbox',{attrs:{\"checkValue\":\"help\",\"label\":_vm.$t('contactPage.help'),\"variant\":\"card\"},model:{value:(_vm.commonFields.request_type),callback:function ($$v) {_vm.$set(_vm.commonFields, \"request_type\", $$v)},expression:\"commonFields.request_type\"}}),_c('Checkbox',{attrs:{\"checkValue\":\"report\",\"label\":_vm.$t('contactPage.report'),\"variant\":\"card\"},model:{value:(_vm.commonFields.request_type),callback:function ($$v) {_vm.$set(_vm.commonFields, \"request_type\", $$v)},expression:\"commonFields.request_type\"}}),_c('Checkbox',{attrs:{\"checkValue\":\"help-request\",\"label\":_vm.$t('contactPage.requestHelp'),\"variant\":\"card\"},model:{value:(_vm.commonFields.request_type),callback:function ($$v) {_vm.$set(_vm.commonFields, \"request_type\", $$v)},expression:\"commonFields.request_type\"}}),_c('Checkbox',{attrs:{\"checkValue\":\"info-request\",\"label\":_vm.$t('contactPage.requestInfo'),\"variant\":\"card\"},model:{value:(_vm.commonFields.request_type),callback:function ($$v) {_vm.$set(_vm.commonFields, \"request_type\", $$v)},expression:\"commonFields.request_type\"}}),_c('Checkbox',{attrs:{\"checkValue\":\"access-request\",\"label\":_vm.$t('contactPage.requestAccess'),\"variant\":\"card\"},model:{value:(_vm.commonFields.request_type),callback:function ($$v) {_vm.$set(_vm.commonFields, \"request_type\", $$v)},expression:\"commonFields.request_type\"}})],1),(_vm.isRequestAccess)?_c('CheckableGroup',{attrs:{\"label\":_vm.$t('contactPage.isActor'),\"info\":_vm.$t('contactPage.actorExample'),\"rules\":\"required\",\"id\":\"access_request\",\"direction\":\"row\"}},[_c('Radio',{attrs:{\"checkValue\":true,\"label\":_vm.$t('contactPage.yes'),\"variant\":\"card\"},model:{value:(_vm.commonFields.is_actor),callback:function ($$v) {_vm.$set(_vm.commonFields, \"is_actor\", $$v)},expression:\"commonFields.is_actor\"}}),_c('Radio',{attrs:{\"checkValue\":false,\"label\":_vm.$t('contactPage.no'),\"variant\":\"card\"},model:{value:(_vm.commonFields.is_actor),callback:function ($$v) {_vm.$set(_vm.commonFields, \"is_actor\", $$v)},expression:\"commonFields.is_actor\"}})],1):_vm._e(),(_vm.isRequestAccessAndActor)?_c('CheckableGroup',{attrs:{\"label\":_vm.$t('contactPage.whichEstablishment'),\"rules\":\"required\",\"id\":\"is_actor\"}},[_c('Radio',{attrs:{\"checkValue\":\"public_establishment\",\"label\":_vm.$t('contactPage.public'),\"variant\":\"card\"},model:{value:(\n _vm.requestAccessFields.organization_category\n ),callback:function ($$v) {_vm.$set(_vm.requestAccessFields, \"organization_category\", $$v)},expression:\"\\n requestAccessFields.organization_category\\n \"}}),_c('Radio',{attrs:{\"checkValue\":\"territorial_collectivity\",\"label\":_vm.$t('contactPage.territorialCollectivity'),\"variant\":\"card\"},model:{value:(\n _vm.requestAccessFields.organization_category\n ),callback:function ($$v) {_vm.$set(_vm.requestAccessFields, \"organization_category\", $$v)},expression:\"\\n requestAccessFields.organization_category\\n \"}}),_c('Radio',{attrs:{\"checkValue\":\"association\",\"label\":_vm.$t('contactPage.association'),\"variant\":\"card\"},model:{value:(\n _vm.requestAccessFields.organization_category\n ),callback:function ($$v) {_vm.$set(_vm.requestAccessFields, \"organization_category\", $$v)},expression:\"\\n requestAccessFields.organization_category\\n \"}}),_c('Radio',{attrs:{\"checkValue\":\"administration\",\"label\":_vm.$t('contactPage.administration'),\"variant\":\"card\"},model:{value:(\n _vm.requestAccessFields.organization_category\n ),callback:function ($$v) {_vm.$set(_vm.requestAccessFields, \"organization_category\", $$v)},expression:\"\\n requestAccessFields.organization_category\\n \"}})],1):_vm._e(),(_vm.isPublicEstablishmentRequest)?_c('PublicEstablishmentForm',{attrs:{\"organizationType\":_vm.publicEstablishmentFields.organization_type,\"organizationTerritory\":_vm.publicEstablishmentFields.organization_public,\"organizationFunction\":_vm.requestAccessFields.position},on:{\"update:organizationType\":function($event){return _vm.$set(_vm.publicEstablishmentFields, \"organization_type\", $event)},\"update:organization-type\":function($event){return _vm.$set(_vm.publicEstablishmentFields, \"organization_type\", $event)},\"update:organizationTerritory\":function($event){return _vm.$set(_vm.publicEstablishmentFields, \"organization_public\", $event)},\"update:organization-territory\":function($event){return _vm.$set(_vm.publicEstablishmentFields, \"organization_public\", $event)},\"update:organizationFunction\":function($event){return _vm.$set(_vm.requestAccessFields, \"position\", $event)},\"update:organization-function\":function($event){return _vm.$set(_vm.requestAccessFields, \"position\", $event)}}}):_vm._e(),(_vm.isTerritorialCollectivityRequest)?_c('TerritorialCollectivityForm',{attrs:{\"collectivityName\":_vm.territorialCollectivityFields.territorial_collectivity,\"collectivityFunction\":_vm.requestAccessFields.position},on:{\"update:collectivityName\":function($event){return _vm.$set(_vm.territorialCollectivityFields, \"territorial_collectivity\", $event)},\"update:collectivity-name\":function($event){return _vm.$set(_vm.territorialCollectivityFields, \"territorial_collectivity\", $event)},\"update:collectivityFunction\":function($event){return _vm.$set(_vm.requestAccessFields, \"position\", $event)},\"update:collectivity-function\":function($event){return _vm.$set(_vm.requestAccessFields, \"position\", $event)}}}):_vm._e(),(_vm.isAssociationRequest)?_c('AssociationForm',{attrs:{\"associationName\":_vm.associationFields.association,\"associationTerritory\":_vm.associationFields.departement,\"associationFunction\":_vm.associationFields.position,\"newAssociationName\":_vm.associationFields.new_association_name,\"newAssociationAcronym\":_vm.associationFields.new_association_abbreviation},on:{\"update:associationName\":function($event){return _vm.$set(_vm.associationFields, \"association\", $event)},\"update:association-name\":function($event){return _vm.$set(_vm.associationFields, \"association\", $event)},\"update:associationTerritory\":function($event){return _vm.$set(_vm.associationFields, \"departement\", $event)},\"update:association-territory\":function($event){return _vm.$set(_vm.associationFields, \"departement\", $event)},\"update:associationFunction\":function($event){return _vm.$set(_vm.associationFields, \"position\", $event)},\"update:association-function\":function($event){return _vm.$set(_vm.associationFields, \"position\", $event)},\"update:newAssociationName\":function($event){return _vm.$set(_vm.associationFields, \"new_association_name\", $event)},\"update:new-association-name\":function($event){return _vm.$set(_vm.associationFields, \"new_association_name\", $event)},\"update:newAssociationAcronym\":function($event){return _vm.$set(_vm.associationFields, \"new_association_abbreviation\", $event)},\"update:new-association-acronym\":function($event){return _vm.$set(_vm.associationFields, \"new_association_abbreviation\", $event)}}}):_vm._e(),(_vm.isAdministrationRequest)?_c('AdministrationForm',{attrs:{\"administrationName\":_vm.administrationFields.organization_administration,\"administrationFunction\":_vm.requestAccessFields.position},on:{\"update:administrationName\":function($event){return _vm.$set(_vm.administrationFields, \"organization_administration\", $event)},\"update:administration-name\":function($event){return _vm.$set(_vm.administrationFields, \"organization_administration\", $event)},\"update:administrationFunction\":function($event){return _vm.$set(_vm.requestAccessFields, \"position\", $event)},\"update:administration-function\":function($event){return _vm.$set(_vm.requestAccessFields, \"position\", $event)}}}):_vm._e(),_c('TextArea',{attrs:{\"rows\":8,\"label\":_vm.$t('contactPage.message'),\"id\":\"access_request_message\"},model:{value:(_vm.commonFields.access_request_message),callback:function ($$v) {_vm.$set(_vm.commonFields, \"access_request_message\", $$v)},expression:\"commonFields.access_request_message\"}}),_vm._v(\" \"),_c('CheckableGroup',{attrs:{\"validationName\":\"Accord\",\"rules\":\"required\",\"id\":\"legal\"}},[_c('Checkbox',{attrs:{\"checkValue\":\"confirm\",\"label\":_vm.$t('contactPage.legal')},model:{value:(_vm.commonFields.legal),callback:function ($$v) {_vm.$set(_vm.commonFields, \"legal\", $$v)},expression:\"commonFields.legal\"}})],1),(\n Object.values(errors).filter(function (err) { return err.length; })\n .length\n )?_c('div',{staticClass:\"bg-red-200 p-3 mb-8\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"contactPage.error\"))+\" \"),_c('ul',{staticClass:\"mt-4\"},_vm._l((errors),function(error,inputId){return _c('li',{directives:[{name:\"show\",rawName:\"v-show\",value:(error.length),expression:\"error.length\"}],key:inputId},[_c('router-link',{staticClass:\"link\",attrs:{\"to\":{ hash: inputId }}},[_vm._v(_vm._s(error[0]))])],1)}),0)]):_vm._e(),_c('div',{staticClass:\"bg-orange300 p-4 flex items-center mx-auto w-full\"},[_c('div',{staticClass:\"container flex items-center\"},[_c('Icon',{staticClass:\"text-display-xl mr-4 text-primary\",attrs:{\"icon\":\"exclamation-triangle\"}}),_c('div',[_c('div',{staticClass:\"text-display-md text-primary mb-2\"},[_vm._v(\" Attention \")]),_c('div',{staticClass:\"mb-2\"},[_vm._v(\" La plateforme Résorption-bidonvilles est indisponible depuis le 10 mars 2021 suite à \"),_c('a',{attrs:{\"href\":\"https://www.lemonde.fr/societe/article/2021/03/10/a-strasbourg-un-important-incendie-sur-le-site-de-l-entreprise-ovh-classe-seveso_6072548_3224.html\",\"target\":\"_blank\"}},[_vm._v(\"un incendie chez notre hébergeur\")]),_vm._v(\". Les demandes d’accès à la plateforme ne pourront être traitées qu'à partir de la semaine du 22 mars 2021. Merci de votre patience. \")])])],1)]),_c('div',{staticClass:\"flex justify-between mt-8\"},[_c('router-link',{attrs:{\"to\":\"/\"}},[_c('Button',{attrs:{\"variant\":\"primaryText\"}},[_vm._v(_vm._s(_vm.$t(\"contactPage.cancel\")))])],1),_c('Button',{attrs:{\"type\":\"submit\",\"variant\":\"primary\",\"loading\":_vm.loading}},[_vm._v(_vm._s(_vm.$t(\"contactPage.send\")))])],1)],1)]}}])}),_c('div',{staticClass:\"text-display-md mt-32 mb-2\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"contactPage.share\"))+\" \")]),_c('SocialShare',{staticClass:\"mb-8\"})],1)])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { postApi } from \"#helpers/api/main\";\n\n/**\n * POST /contact\n */\nexport function contact(data) {\n return postApi(\"/contact\", data);\n}\n\nexport default contact;\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('Select',{attrs:{\"label\":\"Précisez le type de structure\",\"value\":_vm.organizationType,\"rules\":\"required\",\"id\":\"organization_type\"},on:{\"input\":function (val) { return _vm.$emit('update:organizationType', val); }}},[_c('SelectOption',{attrs:{\"value\":\"none\"}},[_vm._v(\"- Selectionner un choix -\")]),_vm._l((_vm.orgTypesOptions),function(item){return _c('SelectOption',{key:item.value,attrs:{\"value\":item.value}},[_vm._v(_vm._s(item.label))])})],2),_c('Select',{attrs:{\"label\":\"Territoire de rattachement\",\"value\":_vm.organizationTerritory,\"rules\":\"required\",\"id\":\"organization_public\"},on:{\"input\":function (val) { return _vm.$emit('update:organizationTerritory', val); }}},[_c('SelectOption',[_vm._v(\"- Selectionner un choix -\")]),_vm._l((_vm.orgTerritoryOptions),function(item){return _c('SelectOption',{key:item.value,attrs:{\"value\":item.value}},[_vm._v(\" \"+_vm._s(item.label)+\" \")])})],2),_c('TextInput',{attrs:{\"label\":\"Votre fonction\",\"value\":_vm.organizationFunction,\"rules\":\"required\",\"id\":\"position\"},on:{\"input\":function (val) { return _vm.$emit('update:organizationFunction', val); }}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { getApi } from \"#helpers/api/main\";\n\n/**\n * Lists all categories\n *\n * @returns {Promise}\n */\nexport function categories() {\n return getApi(\"/organization-categories\");\n}\n\n/**\n * Lists all types of a specific category\n *\n * @param {String} categoryUid\n *\n * @returns {Promise}\n */\nexport function types(categoryUid) {\n return getApi(`/organization-categories/${categoryUid}/organization-types`);\n}\n\n/**\n * Lists all organizations of a specific category\n *\n * @param {String} categoryUid\n * @param {String} [search]\n *\n * @returns {Promise}\n */\nexport function getByCategory(categoryUid, search = null) {\n return getApi(\n `/organization-categories/${categoryUid}/organizations${\n search !== null ? `?search=${search}` : \"\"\n }`\n );\n}\n\n/**\n * Lists all organizations of a specific type\n *\n * @param {Number} typeId\n *\n * @returns {Promise}\n */\nexport function getByType(typeId) {\n return getApi(`/organization-types/${typeId}/organizations`);\n}\n\n/**\n * Lists all users of a specific organization\n *\n * @param {Number} organizationId\n *\n * @returns {Promise}\n */\nexport function getMembers(organizationId) {\n return getApi(`/organizations/${organizationId}/users`);\n}\n\n/**\n * Lists all users of a specific organization\n *\n * @param {Number} organizationId\n *\n * @returns {Promise}\n */\nexport function getMembersOfCategory(categoryId, regionId, departementId) {\n let query = \"\";\n if (departementId !== undefined) {\n query = `departementId=${encodeURIComponent(departementId)}`;\n } else if (regionId !== undefined) {\n query = `regionId=${encodeURIComponent(regionId)}`;\n }\n\n return getApi(`/organization-categories/${categoryId}/users?${query}`);\n}\n","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PublicEstablishmentForm.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PublicEstablishmentForm.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./PublicEstablishmentForm.vue?vue&type=template&id=2ba06527&\"\nimport script from \"./PublicEstablishmentForm.vue?vue&type=script&lang=js&\"\nexport * from \"./PublicEstablishmentForm.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('InputWrapper',[_c('InputLabel',{attrs:{\"label\":\"Nom de la structure\"}}),_c('ValidationProvider',{attrs:{\"rules\":\"required\",\"name\":\"Nom de la structure\",\"vid\":\"territorial_collectivity\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('div',{staticClass:\"v1\"},[_c('Collectivity',{attrs:{\"value\":_vm.collectivityName},on:{\"input\":function (val) { return _vm.$emit('update:collectivityName', val); }}})],1),_c('InputError',[_vm._v(_vm._s(errors[0]))])]}}])})],1),_c('TextInput',{attrs:{\"label\":\"Votre fonction\",\"value\":_vm.collectivityFunction,\"rules\":\"required\",\"id\":\"position\"},on:{\"input\":function (val) { return _vm.$emit('update:collectivityFunction', val); }}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TerritorialCollectivityForm.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TerritorialCollectivityForm.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TerritorialCollectivityForm.vue?vue&type=template&id=a733034c&\"\nimport script from \"./TerritorialCollectivityForm.vue?vue&type=script&lang=js&\"\nexport * from \"./TerritorialCollectivityForm.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('Select',{attrs:{\"label\":\"Précisez le type de structure\",\"value\":_vm.associationName,\"rules\":\"required\",\"id\":\"association\"},on:{\"input\":function (val) { return _vm.$emit('update:associationName', val); }}},[_c('optgroup',{attrs:{\"label\":\"Autre\"}},[_c('option',{attrs:{\"value\":\"Autre\"}},[_vm._v(\"Mon association n'est pas dans cette liste\")])]),_c('optgroup',{attrs:{\"label\":\"Associations connues\"}},_vm._l((_vm.associationNameOptions),function(item){return _c('option',{key:item.value,domProps:{\"value\":item.value}},[_vm._v(_vm._s(item.label))])}),0)]),(_vm.associationName === 'Autre')?_c('div',[_c('TextInput',{attrs:{\"label\":\"Précisez le nom complet\",\"value\":_vm.newAssociationName,\"rules\":\"required\",\"id\":\"new_association_name\"},on:{\"input\":function (val) { return _vm.$emit('update:newAssociationName', val); }}}),_c('TextInput',{attrs:{\"label\":\"Précisez l'acronyme, si besoin\",\"value\":_vm.newAssociationAcronym,\"id\":\"new_association_abbreviation\"},on:{\"input\":function (val) { return _vm.$emit('update:newAssociationAcronym', val); }}})],1):_vm._e(),_c('div',[_c('Select',{attrs:{\"label\":\"Territoire de rattachement\",\"value\":_vm.associationTerritory,\"rules\":\"required\",\"id\":\"departement\"},on:{\"input\":function (val) { return _vm.$emit('update:associationTerritory', val); }}},[_c('SelectOption',[_vm._v(\"- Selectionner un choix -\")]),_vm._l((_vm.associationTerritoryOptions),function(item){return _c('SelectOption',{key:item.value,attrs:{\"value\":item.value}},[_vm._v(\" \"+_vm._s(item.label)+\" \")])})],2)],1),_c('TextInput',{attrs:{\"label\":\"Votre fonction\",\"value\":_vm.associationFunction,\"rules\":\"required\",\"id\":\"position\"},on:{\"input\":function (val) { return _vm.$emit('update:associationFunction', val); }}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AssociationForm.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AssociationForm.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AssociationForm.vue?vue&type=template&id=4675bb9e&\"\nimport script from \"./AssociationForm.vue?vue&type=script&lang=js&\"\nexport * from \"./AssociationForm.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('Select',{attrs:{\"label\":\"Nom de la structure\",\"value\":_vm.administrationName,\"rules\":\"required\",\"id\":\"organization_administration\"},on:{\"input\":function (val) { return _vm.$emit('update:administrationName', val); }}},[_c('SelectOption',{attrs:{\"value\":\"none\"}},[_vm._v(\"- Selectionner un choix -\")]),_vm._l((_vm.administrationNameOptions),function(item){return _c('SelectOption',{key:item.value,attrs:{\"value\":item.value}},[_vm._v(_vm._s(item.label))])})],2),_c('TextInput',{attrs:{\"label\":\"Votre fonction\",\"value\":_vm.administrationFunction,\"rules\":\"required\",\"id\":\"position\"},on:{\"input\":function (val) { return _vm.$emit('update:administrationFunction', val); }}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdministrationForm.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdministrationForm.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdministrationForm.vue?vue&type=template&id=5af61384&\"\nimport script from \"./AdministrationForm.vue?vue&type=script&lang=js&\"\nexport * from \"./AdministrationForm.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('a',{attrs:{\"href\":(\"https://www.facebook.com/sharer/sharer.php?u=\" + _vm.url),\"target\":\"_blank\"}},[_c('Icon',{staticClass:\"text-display-lg\",attrs:{\"icon\":['fab', 'facebook-square']}})],1),_vm._v(\" \"+_vm._s(\" \")+\" \"),_c('a',{attrs:{\"href\":(\"http://www.twitter.com/share?url=\" + _vm.url),\"target\":\"_blank\"}},[_c('Icon',{staticClass:\"text-display-lg\",attrs:{\"icon\":['fab', 'twitter-square']}})],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SocialShare.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SocialShare.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SocialShare.vue?vue&type=template&id=1da2bd5b&\"\nimport script from \"./SocialShare.vue?vue&type=script&lang=js&\"\nexport * from \"./SocialShare.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=53e8cb22&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--dashboard\"},[_c('Quickview',{attrs:{\"town\":_vm.quickview.town,\"origin\":_vm.quickview.originEvent},on:{\"outside-click\":_vm.hideQuickview}}),_c('POIView',{attrs:{\"poi\":_vm.poiview.poi,\"origin\":_vm.poiview.originEvent},on:{\"outside-click\":_vm.hidePOIView}}),_c('NavBar'),_c('section',{staticClass:\"dashboard\"},[_c('simplebar',{ref:\"filters\",staticClass:\"filters\",attrs:{\"data-simplebar-auto-hide\":\"false\"}},_vm._l((_vm.allowedFilters),function(filterGroup){return _c('FilterGroup',{key:filterGroup.id,attrs:{\"id\":filterGroup.id,\"faIcon\":filterGroup.faIcon,\"icon\":filterGroup.icon,\"label\":filterGroup.label,\"options\":filterGroup.options,\"opened\":filterGroup.opened}})}),1),_c('div',{ref:\"main\",staticClass:\"content\",style:({ width: !_vm.loading && !_vm.error ? 'auto' : 0 })},[_c('Map',_vm._b({ref:\"map\",on:{\"town-click\":_vm.showQuickview,\"poi-click\":_vm.showPOIView,\"on-row-click\":_vm.routeToTown}},'Map',_vm.rendererProps,false))],1),(_vm.loading)?_c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Chargement des données en cours...\")])]):_vm._e(),(_vm.error)?_c('div',{staticClass:\"notification error full-width\"},[_c('span',[_vm._v(_vm._s(_vm.error)+\". \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.fetchData}},[_vm._v(\"Réessayer ?\")])])]):_vm._e()],1)],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"filterGroup\"},[_c('aside',[(_vm.faIcon !== null)?_c('font-awesome-icon',{attrs:{\"icon\":_vm.faIcon}}):_c('img',{attrs:{\"src\":_vm.icon,\"alt\":\"\"}})],1),_c('main',[_c('h1',{on:{\"click\":_vm.toggle}},[_vm._v(_vm._s(_vm.label)+\" \"),_c('span',{staticClass:\"filterGroup-toggle\"},[_vm._v(\"( \"+_vm._s(_vm.toggler)+\" )\")])]),_vm._l((_vm.options),function(option,index){return (_vm.status === 'open')?_c('div',{key:index},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(option.checked),expression:\"option.checked\"}],attrs:{\"type\":\"checkbox\",\"id\":_vm.id + '-' + (option.id || index)},domProps:{\"value\":option.value,\"checked\":Array.isArray(option.checked)?_vm._i(option.checked,option.value)>-1:(option.checked)},on:{\"change\":function($event){var $$a=option.checked,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=option.value,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(option, \"checked\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(option, \"checked\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(option, \"checked\", $$c)}}}}),_c('label',{staticClass:\"label-inline\",attrs:{\"for\":_vm.id + '-' + (option.id || index)}},[(option.icon !== undefined)?_c('font-awesome-icon',{style:({ color: '#' + option.icon.color }),attrs:{\"icon\":option.icon.id,\"fixed-width\":\"\"}}):_vm._e(),_c('span',[_vm._v(_vm._s(option.label))])],1),_c('br')]):_vm._e()})],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default {\n props: {\n id: String,\n icon: {\n type: String,\n required: false,\n default: null\n },\n faIcon: {\n type: String,\n required: false,\n default: null\n },\n label: String,\n options: Array,\n opened: {\n type: Boolean,\n default: false\n }\n },\n data() {\n return {\n status: this.opened === true ? \"open\" : \"closed\"\n };\n },\n computed: {\n toggler() {\n return this.status === \"open\" ? \"-\" : \"+\";\n }\n },\n methods: {\n toggle() {\n this.status = this.status === \"open\" ? \"closed\" : \"open\";\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./filterGroup.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./filterGroup.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./filterGroup.vue?vue&type=template&id=f4494468&lang=pug&\"\nimport script from \"./filterGroup.vue?vue&type=script&lang=js&\"\nexport * from \"./filterGroup.vue?vue&type=script&lang=js&\"\nimport style0 from \"./filterGroup.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('section',{staticClass:\"map\"},[(_vm.displaySearchbar)?_c('Address',{attrs:{\"placeholder\":_vm.placeholder},model:{value:(_vm.address),callback:function ($$v) {_vm.address=$$v},expression:\"address\"}}):_vm._e(),_c('div',{attrs:{\"id\":\"map\"}},[_c('div',{ref:\"adressToggler\",staticClass:\"leaflet-address-toggler\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.showAddresses),expression:\"showAddresses\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.showAddresses)?_vm._i(_vm.showAddresses,null)>-1:(_vm.showAddresses)},on:{\"change\":function($event){var $$a=_vm.showAddresses,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.showAddresses=$$a.concat([$$v]))}else{$$i>-1&&(_vm.showAddresses=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.showAddresses=$$c}}}}),_vm._v(\" Voir les adresses des sites \")]),_c('div',{ref:\"legends\",staticClass:\"leaflet-legend\"},[_c('h1',[_vm._v(\"Légende\")]),_vm._l((_vm.fieldTypes),function(fieldType){return _c('p',[_c('span',{style:({ 'background-color': fieldType.color })}),_vm._v(\" \"+_vm._s(fieldType.label)+\" \")])})],2)])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"search__group\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model.trim\",value:(_vm.query),expression:\"query\",modifiers:{\"trim\":true}}],attrs:{\"type\":\"text\",\"placeholder\":_vm.placeholder,\"autofocus\":_vm.autofocus},domProps:{\"value\":(_vm.query)},on:{\"keyup\":_vm.onTyping,\"keydown\":_vm.onNavigation,\"focus\":_vm.onFocus,\"blur\":[_vm.onBlur,function($event){return _vm.$forceUpdate()}],\"input\":function($event){if($event.target.composing){ return; }_vm.query=$event.target.value.trim()}}}),(_vm.suggestions.length)?_c('div',{staticClass:\"autocomplete\"},_vm._l((_vm.suggestions),function(suggestion,index){return _c('p',{staticClass:\"autocomplete-result\",class:{ active: index === _vm.indexOfHighlightedSuggestion },domProps:{\"innerHTML\":_vm._s((suggestion.type ? (\"\" + (suggestion.type) + \"
\") : '') + suggestion.label)},on:{\"mousedown\":function($event){return _vm.onSuggestionClick(suggestion)}}})}),0):_vm._e(),(_vm.showMagnifier)?_c('button',{staticClass:\"overlay-button\",attrs:{\"aria-label\":\"Recherche\"}},[_c('svg',{staticClass:\"icon icon-search\"},[_c('use',{attrs:{\"xlink:href\":\"#magnifier\"}})])]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { autocomplete } from \"#helpers/addressHelper\";\n\n/**\n * Delay before triggering an autocomplete, in milliseconds\n *\n * @const {number}\n */\nconst TYPING_TIMEOUT = 200;\n\n/**\n * Minimum length of the user's query before triggering an autocomplete\n *\n * @const {number}\n */\nconst TYPING_MIN = 3;\n\nexport default {\n props: {\n value: Object,\n autofocus: Boolean,\n placeholder: String,\n autocompleteFunction: {\n type: Function,\n default: autocomplete\n },\n showMagnifier: {\n type: Boolean,\n default: true\n },\n typingMin: {\n type: Number,\n default: TYPING_MIN\n }\n },\n data() {\n return {\n pendingRequest: null,\n typingTimeout: null,\n suggestions: [],\n filled: this.value !== null,\n query: (this.value !== null && this.value.label) || \"\",\n previousQuery: this.value !== null ? this.value.label : \"\",\n focused: false,\n indexOfHighlightedSuggestion: null\n };\n },\n mounted() {\n document.addEventListener(\"click\", this.checkOutsideClick);\n },\n beforeDestroy() {\n if (this.typingTimeout !== null) {\n clearTimeout(this.typingTimeout);\n this.typingTimeout = null;\n }\n },\n destroyed() {\n document.removeEventListener(\"click\", this.checkOutsideClick);\n },\n methods: {\n onTyping() {\n // ignore key inputs that did not cause a change in the value of the query\n if (this.previousQuery === this.query) {\n return;\n }\n\n this.previousQuery = this.query;\n if (this.typingTimeout !== null) {\n clearTimeout(this.typingTimeout);\n }\n\n this.filled = false;\n this.$emit(\"input\", null);\n this.setSuggestions([]);\n this.indexOfHighlightedSuggestion = null;\n this.typingTimeout = setTimeout(this.autocomplete, TYPING_TIMEOUT);\n },\n onFocus() {\n this.focused = true;\n },\n onBlur() {\n this.focused = false;\n\n if (this.pendingRequest !== null) {\n this.pendingRequest.abort();\n }\n\n if (this.filled === false) {\n this.query = \"\";\n this.previousQuery = \"\";\n }\n\n this.setSuggestions([]);\n },\n onNavigation(event) {\n if (event.keyCode === 38) {\n // up arrow (= previous suggestion)\n if (this.indexOfHighlightedSuggestion - 1 < 0) {\n this.indexOfHighlightedSuggestion = null;\n } else {\n this.indexOfHighlightedSuggestion -= 1;\n }\n } else if (event.keyCode === 40) {\n // down arrow (= next suggestion)\n if (this.suggestions.length > 0) {\n if (this.indexOfHighlightedSuggestion === null) {\n this.indexOfHighlightedSuggestion = 0;\n } else {\n this.indexOfHighlightedSuggestion = Math.min(\n this.suggestions.length - 1,\n this.indexOfHighlightedSuggestion + 1\n );\n }\n }\n } else if (event.keyCode === 13) {\n // key 'enter' (= select current suggestion)\n if (this.indexOfHighlightedSuggestion !== null) {\n this.onSelect(\n this.suggestions[this.indexOfHighlightedSuggestion]\n );\n }\n } else {\n this.indexOfHighlightedSuggestion = null;\n }\n },\n onSuggestionClick(suggestion) {\n this.onSelect(suggestion);\n },\n onSelect(value) {\n const { label } = value;\n this.$emit(\"input\", value);\n this.setSuggestions([]);\n this.filled = true;\n this.query = label;\n this.previousQuery = label;\n },\n autocomplete() {\n if (this.pendingRequest !== null) {\n this.pendingRequest.abort();\n }\n\n if (this.query.length < this.typingMin || this.focused !== true) {\n return;\n }\n\n this.pendingRequest = this.autocompleteFunction(this.query);\n this.pendingRequest\n .then(suggestions => {\n if (this.focused === true) {\n this.setSuggestions(suggestions);\n }\n })\n .catch(() => {\n this.pendingRequest = null;\n });\n },\n checkOutsideClick(event) {\n if (!this.$el.contains(event.target)) {\n this.setSuggestions([]);\n }\n },\n setSuggestions(suggestions) {\n this.suggestions = suggestions;\n\n if (this.suggestions.length > 0) {\n this.indexOfHighlightedSuggestion = 0;\n } else {\n this.indexOfHighlightedSuggestion = null;\n }\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./address.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./address.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./address.vue?vue&type=template&id=6b423108&scoped=true&lang=pug&\"\nimport script from \"./address.vue?vue&type=script&lang=js&\"\nexport * from \"./address.vue?vue&type=script&lang=js&\"\nimport style0 from \"./address.vue?vue&type=style&index=0&id=6b423108&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6b423108\",\n null\n \n)\n\nexport default component.exports","/* eslint-disable no-underscore-dangle */\n\nimport L from \"leaflet\";\nimport Address from \"#app/components/address/address.vue\";\nimport { get as getConfig } from \"#helpers/api/config\";\nimport \"leaflet-providers\";\nimport \"leaflet.markercluster/dist/MarkerCluster.css\";\nimport \"leaflet.markercluster/dist/MarkerCluster.Default.css\";\nimport \"leaflet.markercluster/dist/leaflet.markercluster\";\n\nimport waterYes from \"../../../../../public/img/water-yes.png\";\nimport utensils from \"../../../../../public/img/utensils.png\";\nimport waterNo from \"../../../../../public/img/water-no.png\";\nimport waterNull from \"../../../../../public/img/water-null.png\";\n\nconst DEFAULT_VIEW = [46.7755829, 2.0497727];\nconst POI_ZOOM_LEVEL = 13;\n\n/* **************************************************************************************************\n * Ce composant fait apparaître une carte qui propose deux fonctionnalités distinctes :\n *\n * - la possibilité de faire apparaître une liste de bidonvilles sur la carte, chacun d'entre eux\n * étant représenté par un marqueur dont la position est fixe (townMarker)\n * Cette fonctionnalité vient avec une légende spécifique et la possibilité de faire apparaître ou\n * non l'adresse des sites en question.\n *\n * - la possibilité de se déplacer sur la carte en recherchant une adresse via une barre de recherche\n * avec autocomplétion (searchbar)\n ************************************************************************************************* */\n\nexport default {\n components: {\n Address\n },\n\n props: {\n /* *****************************\n * Options pour la liste des sites\n * ************************** */\n\n /**\n * Liste des bidonvilles à afficher\n *\n * @type {Array.}\n */\n towns: {\n type: Array,\n required: false,\n default() {\n return [];\n }\n },\n\n /**\n * Liste des points d'interets à afficher\n *\n * @type {Array.}\n */\n pois: {\n type: Array,\n required: false,\n default() {\n return [];\n }\n },\n\n /* *****************************\n * Options de la searchbar\n * ************************** */\n\n /**\n * Indique si la searchbar doit être affichée ou non\n *\n * @type {Boolean}\n */\n displaySearchbar: {\n type: Boolean,\n required: false,\n default: true\n },\n\n /**\n * Placeholder de la searchbar\n *\n * @type {String}\n */\n placeholder: {\n type: String,\n required: false,\n default: \"Recherchez un lieu en saisissant une adresse\"\n },\n\n /* *****************************\n * Options génériques\n * ************************** */\n\n /**\n * Centre et niveau de zoom par défaut de la carte\n *\n * @type {MapView}\n */\n defaultView: {\n type: Object,\n default: () => ({\n // basically, centering on France\n center: DEFAULT_VIEW,\n zoom: 6\n })\n }\n },\n\n data() {\n return {\n /**\n * La carte\n *\n * @type {L.Map}\n */\n map: null,\n\n /**\n * Groupement de markers\n *\n * @type {Object.}\n */\n markersGroup: {\n towns: L.markerClusterGroup(),\n search: L.markerClusterGroup(),\n pois: L.markerClusterGroup({\n disableClusteringAtZoom: POI_ZOOM_LEVEL\n })\n },\n\n /**\n * Search marker\n *\n * @type {L.Marker}\n */\n searchMarker: this.createSearchMarker(),\n\n /**\n * Town marker that was marked as a search result\n *\n * @type {L.Marker}\n */\n townSearchMarker: null,\n\n /**\n * Town markers\n *\n * @type {Array.}\n */\n townMarkers: [],\n\n /**\n * POI markers\n *\n * @type {Array.}\n */\n poiMarkers: [],\n\n /**\n * POI markers visible\n *\n * @type Boolean\n */\n poiMarkersVisible: false,\n\n /**\n * Town markers, hashed by coordinates\n *\n * @type {Object.}\n */\n hashedTownMarkers: {},\n\n /**\n * Valeur de la searchbar\n *\n * @type {Address}\n */\n address: null,\n\n /**\n * Indique s'il faut afficher les adresses des sites sur la carte ou non\n *\n * Cette valeur est contrôlée par une checkbox directement sur la carte\n *\n * @type {Boolean}\n */\n showAddresses: false,\n\n /**\n * Liste des types de terrains existants\n *\n * @type {Array.}\n */\n fieldTypes: getConfig().field_types\n };\n },\n\n computed: {\n /**\n * Codes couleur des types de terrain, hashés par id\n *\n * @returns {Object.}\n */\n fieldTypeColors() {\n if (!this.fieldTypes) {\n return {};\n }\n\n return this.fieldTypes.reduce(\n (acc, fieldType) =>\n Object.assign(acc, {\n [fieldType.id]: fieldType.color\n }),\n {}\n );\n },\n\n /**\n * Liste des fonds de carte disponibles\n *\n * @returns {Object.}\n */\n mapLayers() {\n return {\n Satellite: L.tileLayer.provider(\"Esri.WorldImagery\"),\n Dessin: L.tileLayer.provider(\"OpenStreetMap.Mapnik\")\n };\n }\n },\n\n watch: {\n /**\n * Met à jour la liste des marqueurs de site\n */\n towns() {\n this.syncTownMarkers();\n },\n\n pois() {\n this.syncPOIMarkers();\n },\n\n /**\n * Affiche/masque les adresses des sites\n *\n * @returns {undefined}\n */\n showAddresses() {\n if (this.showAddresses === true) {\n document.body.setAttribute(\"class\", \"leaflet-show-addresses\");\n } else {\n document.body.setAttribute(\"class\", \"\");\n }\n },\n\n /**\n * Ajoute un résultat de recherche sur la carte\n *\n * @returns {undefined}\n */\n address() {\n if (this.address === null) {\n this.clearSearchMarker();\n return;\n }\n\n const {\n coordinates: [lon, lat],\n label,\n addressType: type\n } = this.address;\n this.centerMap([lat, lon], 20);\n\n this.$nextTick(() => {\n this.setSearchMarker(type, label, [lat, lon]);\n });\n }\n },\n\n mounted() {\n this.createMap();\n this.syncTownMarkers();\n },\n\n methods: {\n /**\n * Initialise tous les contrôles de la carte\n *\n * @returns {undefined}\n */\n setupMapControls() {\n this.setupZoomControl();\n this.setupLayersControl();\n this.setupAddressTogglerControl();\n this.setupFieldTypesLegendControl();\n },\n\n /**\n * Initialise le contrôle \"Zoom\"\n *\n * @returns {undefined}\n */\n setupZoomControl() {\n this.map.zoomControl.setPosition(\"bottomright\");\n },\n\n /**\n * Initialise le contrôle \"Fonds de carte\"\n *\n * @returns {undefined}\n */\n setupLayersControl() {\n const layersControl = L.control.layers(this.mapLayers, undefined, {\n collapsed: false\n });\n\n this.map.addControl(layersControl);\n },\n\n /**\n * Initialise le contrôle \"Voir les adresses des sites\"\n *\n * @returns {undefined}\n */\n setupAddressTogglerControl() {\n const { adressToggler } = this.$refs;\n const AddressToggler = L.Control.extend({\n options: {\n position: \"bottomleft\"\n },\n\n onAdd() {\n return adressToggler;\n }\n });\n\n this.map.addControl(new AddressToggler());\n },\n\n /**\n * Initialise le contrôle \"Légende\"\n *\n * @returns {undefined}\n */\n setupFieldTypesLegendControl() {\n const { legends } = this.$refs;\n const Legend = L.Control.extend({\n options: {\n position: \"bottomleft\"\n },\n\n onAdd() {\n return legends;\n }\n });\n\n this.map.addControl(new Legend());\n },\n\n /**\n * Initialise tous les clusters de markers\n *\n * @returns {undefined}\n */\n setupMarkerGroups() {\n this.map.addLayer(this.markersGroup.towns);\n this.map.addLayer(this.markersGroup.search);\n this.map.addLayer(this.markersGroup.pois);\n },\n\n /**\n * Met en place la vue par défaut sur la carte\n *\n * @returns {undefined}\n */\n setupView() {\n const { center, zoom } = this.defaultView;\n this.centerMap(center, zoom);\n },\n\n /**\n * Crée la carte et initialise sa vue et ses contrôles\n *\n * Attention, cette méthode n'initialise pas le contenu (les markers) de la carte !\n *\n * @returns {undefined}\n */\n createMap() {\n this.map = L.map(\"map\", {\n layers: this.mapLayers.Dessin, // fond de carte par défaut\n scrollWheelZoom: false // interdire le zoom via la molette de la souris\n });\n\n this.map.on(\"zoomend\", this.onZoomEnd);\n\n this.setupMapControls();\n this.setupMarkerGroups();\n this.setupView();\n },\n\n /**\n * Affiche les points d'interet à partir d'un certain niveau de zoom\n *\n * @returns {undefined}\n */\n onZoomEnd() {\n const zoomLevel = this.map.getZoom();\n\n if (!this.poiMarkersVisible && zoomLevel > POI_ZOOM_LEVEL) {\n this.poiMarkersVisible = true;\n this.pois.forEach(this.createPOIMarker);\n }\n\n if (this.poiMarkersVisible && zoomLevel <= POI_ZOOM_LEVEL) {\n this.poiMarkersVisible = false;\n this.removeAllPOIMarkers();\n }\n },\n\n /**\n * Supprime et recrée la liste des marqueurs de site\n *\n * @returns {undefined}\n */\n syncTownMarkers() {\n this.removeAllTownMarkers();\n this.towns.forEach(this.createTownMarker);\n },\n\n /**\n * Supprime et recrée la liste des marqueurs de site\n *\n * @returns {undefined}\n */\n syncPOIMarkers() {\n this.removeAllPOIMarkers();\n if (this.poiMarkersVisible) {\n this.pois.forEach(this.createPOIMarker);\n }\n },\n\n /**\n * Supprime tous les marqueurs de site existants\n *\n * @returns {undefined}\n */\n removeAllTownMarkers() {\n this.markersGroup.towns.clearLayers();\n this.townMarkers = [];\n this.hashedTownMarkers = {};\n },\n\n /**\n * Supprime tous les marqueurs de site existants\n *\n * @returns {undefined}\n */\n removeAllPOIMarkers() {\n this.markersGroup.pois.clearLayers();\n this.poiMarkers = [];\n },\n\n getTownAddress(town) {\n return town.usename;\n },\n\n getTownCoordinates(town) {\n const { latitude, longitude } = town;\n return [latitude, longitude];\n },\n\n getTownColor(town) {\n if (town.fieldType !== undefined) {\n return this.fieldTypeColors[town.fieldType.id];\n }\n\n return \"#cccccc\";\n },\n\n getTownWaterImage(town) {\n if (town.accessToWater === true) {\n return waterYes;\n }\n\n if (town.accessToWater === false) {\n return waterNo;\n }\n\n return waterNull;\n },\n\n /**\n * Crée le marqueur de résultat de recherche\n *\n * @returns {L.Marker}\n */\n createSearchMarker() {\n return L.marker(DEFAULT_VIEW, {\n title: \"A\",\n icon: L.divIcon({\n className: \"leaflet-marker\",\n html: `\n \n \n \n \n `,\n iconAnchor: [13, 28]\n })\n });\n },\n\n /**\n * Crée un marqueur de site et l'ajoute sur la carte\n *\n * @param {Shantytown} town\n *\n * @returns {undefined}\n */\n createTownMarker(town) {\n const address = this.getTownAddress(town);\n const coordinates = this.getTownCoordinates(town);\n const color = this.getTownColor(town);\n const waterImage = this.getTownWaterImage(town);\n\n const marker = L.marker(coordinates, {\n title: town.address,\n icon: L.divIcon({\n className: \"leaflet-marker\",\n html: `\n \n \n \n \n ${address}\n `,\n iconAnchor: [13, 28]\n })\n });\n marker.on(\"click\", this.handleTownMarkerClick.bind(this, town));\n marker.on(\"add\", () => {\n if (marker.searchResult === true) {\n this.markTownAsSearchResult(marker);\n }\n });\n\n marker.addTo(this.markersGroup.towns);\n this.townMarkers.push(marker);\n this.hashedTownMarkers[coordinates.join(\";\")] = marker;\n },\n\n /**\n * Crée un marqueur de site et l'ajoute sur la carte\n *\n * @param {Shantytown} town\n *\n * @returns {undefined}\n */\n createPOIMarker(poi) {\n const { latitude, longitude } = poi;\n const coordinates = [latitude, longitude];\n\n const marker = L.marker(coordinates, {\n title: poi.address,\n icon: L.divIcon({\n className: \"leaflet-marker\",\n html: `\n \n \n \n ${poi.address}\n `,\n iconAnchor: [13, 28]\n })\n });\n marker.on(\"click\", this.handlePOIMarkerClick.bind(this, poi));\n\n marker.addTo(this.markersGroup.pois);\n\n this.poiMarkers.push(marker);\n },\n\n /**\n * Gère un clic sur un marqueur de site\n *\n * @param {L.Marker} marker\n * @param {Event} event\n *\n * @returns {undefined}\n */\n handleTownMarkerClick(marker, event) {\n this.$emit(\"town-click\", marker, event);\n },\n\n /**\n * Gère un clic sur un marqueur de point d'interet\n *\n * @param {L.Marker} marker\n * @param {Event} event\n *\n * @returns {undefined}\n */\n handlePOIMarkerClick(marker, event) {\n this.$emit(\"poi-click\", marker, event);\n },\n\n /**\n * Met à jour le centre et le zoom de la carte\n *\n * @param {MapCoordinates} coordinates\n * @param {Number} zoom\n *\n * @returns {undefined}\n */\n centerMap(coordinates, zoom) {\n this.map.setView(coordinates, zoom);\n },\n\n /**\n * Force un redimensionnement de la carte pour prendre toute la place disponible\n *\n * @returns {undefined}\n */\n resize() {\n if (this.map === null) {\n return;\n }\n\n this.map.invalidateSize(true);\n },\n\n clearSearchMarker() {\n if (this.townSearchMarker !== null) {\n if (this.townSearchMarker._icon) {\n this.townSearchMarker._icon\n .querySelector(\".mapPin\")\n .classList.remove(\"mapPin--result\");\n }\n\n this.townSearchMarker.searchResult = false;\n this.townSearchMarker = null;\n return;\n }\n\n this.searchMarker.remove();\n },\n\n getMatchingTownMarker(coordinates) {\n return this.hashedTownMarkers[coordinates.join(\";\")] || null;\n },\n\n markTownAsSearchResult(marker) {\n this.townSearchMarker = marker;\n this.townSearchMarker.searchResult = true;\n marker._icon\n .querySelector(\".mapPin\")\n .classList.add(\"mapPin--result\");\n },\n\n setSearchMarker(type, address, coordinates) {\n this.clearSearchMarker();\n\n // check if there is a marker existing at that exact address\n const townMarker = this.getMatchingTownMarker(coordinates);\n if (townMarker !== null) {\n this.markTownAsSearchResult(townMarker);\n return;\n }\n\n this.searchMarker.addTo(this.markersGroup.search);\n this.searchMarker.setLatLng(coordinates);\n\n this.searchMarker._icon.querySelector(\n \".mapPin-address\"\n ).innerHTML = address;\n\n let action = \"add\";\n if (type !== \"housenumber\") {\n action = \"remove\";\n }\n\n this.searchMarker._icon\n .querySelector(\".mapPin\")\n .classList[action](\"mapPin--street\");\n }\n }\n};\n\n/**\n * @typedef {Array} MapCoordinates\n * @property {Float} [0] Latitude\n * @property {Float} [1] Longitude\n */\n\n/**\n * @typedef {Object} MapView\n * @property {MapCoordinates} center Coordonnées géographiques du centre de la vue\n * @property {Number} zoom Niveau de zoom, voir la documentation de Leaflet\n */\n\n/**\n * @typedef {Object} Address Une adresse au format adresse.data.gouv.fr\n * @property {String} label Adresse complète\n * @property {String} city Nom de la ville\n * @property {String} citycode Code communal (/!\\ différent du code postal)\n * @property {MapCoordinates} coordinates Coordonnées géographiques\n */\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./map.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./map.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./map.vue?vue&type=template&id=055bfb64&scoped=true&lang=pug&\"\nimport script from \"./map.vue?vue&type=script&lang=js&\"\nexport * from \"./map.vue?vue&type=script&lang=js&\"\nimport style0 from \"./map.vue?vue&type=style&index=0&id=055bfb64&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"055bfb64\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:{ active: _vm.active }},[_c('div',{staticClass:\"shadow\"}),_c('simplebar',{ref:\"quickviewPanel\",staticClass:\"quickview\",attrs:{\"data-simplebar-auto-hide\":\"false\"}},[(_vm.town)?_c('header',{staticClass:\"quickview-header\"},[_c('div',{staticClass:\"quickview-actions\"},[_c('button',{staticClass:\"actionButton\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.showTown}},[_vm._v(\"Voir le site\")]),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){return _vm.$emit('outside-click')}}},[_c('svg',{staticClass:\"icon icon-cross\"},[_c('use',{attrs:{\"xlink:href\":\"#round-cross\"}})])])]),_c('h1',{staticClass:\"quickview-title\"},[_c('a',{on:{\"click\":_vm.showTown}},[_vm._v(_vm._s(_vm.town.address.split(/[0-9]{5}/)[0].replace(/[0-9]/g, '').replace(/,/g, ' ').replace(/\\s{2,}/g, ' ')))])]),_c('h2',{staticClass:\"quickview-subtitle\"},[_vm._v(\"Site de \"+_vm._s(_vm.town.city.name))]),(_vm.town.name)?_c('h2',{staticClass:\"quickview-name\"},[_vm._v(_vm._s(_vm.town.name))]):_vm._e(),(_vm.town.updatedAt !== undefined)?_c('h2',{staticClass:\"quickview-time\"},[_vm._v(\"(Dernière modification le \"),_c('time',[_vm._v(_vm._s(_vm.formatDate(_vm.town.updatedAt)))]),_vm._v(\")\")]):_vm._e()]):_vm._e(),_vm._l((_vm.sections),function(section,index){return _c('section',{class:{ even: index % 2 !== 0 }},[_c('header',[_c('h1',[_vm._v(_vm._s(section.title))])]),_c('table',[_c('tbody',_vm._l((section.rows),function(row){return _c('tr',[(row.label)?_c('th',[_vm._v(_vm._s(row.label)+\" :\")]):_vm._e(),_c('td',{attrs:{\"colspan\":row.label ? 1 : 2}},[_vm._v(_vm._s(row.value))])])}),0)])])})],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import simplebar from \"simplebar-vue\";\nimport { hasPermission } from \"#helpers/api/config\";\nimport { open } from \"#helpers/tabHelper\";\n\nexport default {\n components: {\n simplebar\n },\n props: {\n town: Object,\n origin: Event // this event is the one that caused that quick-view to appear\n },\n computed: {\n active() {\n return !!this.town;\n },\n caracteristicSection() {\n if (!this.town) {\n return null;\n }\n\n const rows = [];\n if (this.town.fieldType !== undefined) {\n rows.push({\n label: \"Type de site\",\n value: this.town.fieldType.label\n });\n }\n if (this.town.ownerType !== undefined) {\n rows.push({\n label: \"Type de propriétaire\",\n value: this.town.ownerType.label\n });\n }\n if (this.town.builtAt !== undefined) {\n rows.push({\n label: \"Date d'installation\",\n value: this.town.builtAt\n ? App.formatDate(this.town.builtAt)\n : \"Inconnue\"\n });\n }\n\n if (rows.length === 0) {\n return null;\n }\n\n return {\n title: \"Caractéristiques\",\n rows\n };\n },\n demographySection() {\n if (!this.town) {\n return null;\n }\n\n const rows = [];\n if (this.town.populationTotal !== undefined) {\n rows.push({\n label: \"Nombre de personnes\",\n value:\n this.town.populationTotal !== null\n ? this.town.populationTotal\n : \"inconnu\"\n });\n }\n if (this.town.populationCouples !== undefined) {\n rows.push({\n label: \"Nombre de ménages\",\n value:\n this.town.populationCouples !== null\n ? this.town.populationCouples\n : \"inconnu\"\n });\n }\n if (this.town.populationMinors !== undefined) {\n rows.push({\n label: \"Nombre de mineurs\",\n value:\n this.town.populationMinors !== null\n ? this.town.populationMinors\n : \"inconnu\"\n });\n }\n if (this.town.populationMinors0To3 !== undefined) {\n rows.push({\n label: \"Nombre de mineurs (0-3 ans)\",\n value:\n this.town.populationMinors0To3 !== null\n ? this.town.populationMinors0To3\n : \"inconnu\"\n });\n }\n if (this.town.populationMinors3To6 !== undefined) {\n rows.push({\n label: \"Nombre de mineurs (3-6 ans)\",\n value:\n this.town.populationMinors3To6 !== null\n ? this.town.populationMinors3To6\n : \"inconnu\"\n });\n }\n\n if (this.town.populationMinors6To12 !== undefined) {\n rows.push({\n label: \"Nombre de mineurs (6-12 ans)\",\n value:\n this.town.populationMinors6To12 !== null\n ? this.town.populationMinors6To12\n : \"inconnu\"\n });\n }\n\n if (this.town.populationMinors12To16 !== undefined) {\n rows.push({\n label: \"Nombre de mineurs (12-16 ans)\",\n value:\n this.town.populationMinors12To16 !== null\n ? this.town.populationMinors12To16\n : \"inconnu\"\n });\n }\n\n if (this.town.populationMinors16To18 !== undefined) {\n rows.push({\n label: \"Nombre de mineurs (16-18 ans)\",\n value:\n this.town.populationMinors16To18 !== null\n ? this.town.populationMinors16To18\n : \"inconnu\"\n });\n }\n\n if (this.town.minorsInSchool !== undefined) {\n rows.push({\n label:\n \"Nombre d'enfants inscrits dans un établissement scolaire\",\n value:\n this.town.minorsInSchool !== null\n ? this.town.minorsInSchool\n : \"inconnu\"\n });\n }\n\n if (this.town.socialOrigins !== undefined) {\n rows.push({\n label: \"Origines\",\n value: this.town.socialOrigins.length > 0 ? \"\" : \"inconnu\"\n });\n\n this.town.socialOrigins.forEach(socialOrigin => {\n rows.push({\n value: socialOrigin.label\n });\n });\n }\n\n if (rows.length === 0) {\n return null;\n }\n\n return {\n title: \"Habitants\",\n rows\n };\n },\n justiceSection() {\n if (!this.town) {\n return null;\n }\n\n const rows = [];\n const boolConverter = {\n [true]: \"oui\",\n [false]: \"non\"\n };\n if (this.town.justiceProcedure !== undefined) {\n rows.push({\n label: \"Existence d'une procédure judiciaire\",\n value:\n boolConverter[this.town.justiceProcedure] || \"inconnu\"\n });\n }\n if (this.town.justiceRendered !== undefined) {\n rows.push({\n label: \"Décision de justice rendue\",\n value: boolConverter[this.town.justiceRendered] || \"inconnu\"\n });\n }\n if (this.town.policeStatus !== undefined) {\n const converter = {\n none: \"non demandé\",\n requested: \"demandé\",\n granted: \"obtenu\"\n };\n rows.push({\n label: \"Concours de la force publique demandé\",\n value: converter[this.town.policeStatus] || \"inconnu\"\n });\n }\n\n if (rows.length === 0) {\n return null;\n }\n\n return {\n title: \"Procédure judiciaire d'expulsion\",\n rows\n };\n },\n sections() {\n return [\n this.caracteristicSection,\n this.demographySection,\n this.justiceSection\n ].filter(section => section !== null);\n }\n },\n mounted() {\n document.addEventListener(\"click\", this.checkOutsideClick);\n },\n destroyed() {\n document.removeEventListener(\"click\", this.checkOutsideClick);\n },\n methods: {\n hasPermission,\n formatDate: ts => App.formatDate(ts),\n checkOutsideClick(event) {\n if (!this.town) {\n return;\n }\n\n // ignore the origin event\n if (event === this.origin) {\n return;\n }\n\n // if the click was outside ourselves, share the info\n if (!this.$refs.quickviewPanel.$el.contains(event.target)) {\n this.$emit(\"outside-click\", event);\n }\n },\n showTown() {\n const routerData = this.$router.resolve(`/site/${this.town.id}`);\n open(routerData.href);\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./quickview.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./quickview.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./quickview.vue?vue&type=template&id=12c43bda&scoped=true&lang=pug&\"\nimport script from \"./quickview.vue?vue&type=script&lang=js&\"\nexport * from \"./quickview.vue?vue&type=script&lang=js&\"\nimport style0 from \"./quickview.vue?vue&type=style&index=0&id=12c43bda&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"12c43bda\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:{ active: _vm.active }},[_c('div',{staticClass:\"shadow\"}),_c('simplebar',{ref:\"quickviewPanel\",staticClass:\"quickview\",attrs:{\"data-simplebar-auto-hide\":\"false\"}},[(_vm.poi)?_c('header',{staticClass:\"quickview-header\"},[_c('div',{staticClass:\"px-4\"},[_c('div',{staticClass:\"text-right\"},[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){return _vm.$emit('outside-click')}}},[_c('svg',{staticClass:\"icon icon-cross\"},[_c('use',{attrs:{\"xlink:href\":\"#round-cross\"}})])])]),_c('h1',{staticClass:\"quickview-title\"},[_vm._v(\" Point de distribution alimentaire \")]),_c('div',{staticClass:\"text-G600 uppercase text-sm my-2 \"},[_vm._v(\" source: soliguide.fr \")]),(_vm.poi.name)?_c('h4',{staticClass:\"my-4\"},[_vm._v(\" \"+_vm._s(_vm.poi.name)+\" \")]):_vm._e(),(_vm.poi.address)?_c('div',[_vm._v(\" \"+_vm._s(_vm.poi.address)+\" \")]):_vm._e(),(_vm.poi.phone)?_c('div',{staticClass:\"my-2\"},[_vm._v(\" Tel: \"+_vm._s(_vm.poi.phone)+\" \")]):_vm._e(),(_vm.poi.email)?_c('div',{staticClass:\"my-2\"},[_vm._v(\" Email: \"+_vm._s(_vm.poi.email)+\" \")]):_vm._e(),(_vm.poi.language)?_c('div',{staticClass:\"my-2\"},[_vm._v(\" Langue: \"+_vm._s(_vm.poi.language)+\" \")]):_vm._e(),(_vm.poi.temporarily_closed)?_c('div',{staticClass:\"my-2\"},[_vm._v(\" \"+_vm._s(_vm.poi.temporarily_closed)+\" \")]):_vm._e(),(_vm.poi.temporary_information)?_c('div',{staticClass:\"my-2\"},[_vm._v(\" \"+_vm._s(_vm.poi.temporary_information)+\" \")]):_vm._e(),(_vm.poi.solinum_id)?_c('a',{staticClass:\"my-2\",attrs:{\"target\":\"_blank\",\"href\":'https://soliguide.fr/fiche/' + _vm.poi.solinum_id},on:{\"click\":_vm.trackOpenSoliguide}},[_vm._v(\" Voir plus \")]):_vm._e()])]):_vm._e()])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./POIView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./POIView.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./POIView.vue?vue&type=template&id=263a7bb8&scoped=true&\"\nimport script from \"./POIView.vue?vue&type=script&lang=js&\"\nexport * from \"./POIView.vue?vue&type=script&lang=js&\"\nimport style0 from \"./POIView.vue?vue&type=style&index=0&id=263a7bb8&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"263a7bb8\",\n null\n \n)\n\nexport default component.exports","import { getApi } from \"#helpers/api/main\";\n\n/**\n * Fetches all pois from the database\n *\n *\n * @returns {Promise}\n */\nexport function all() {\n return getApi(`/pois`);\n}\n","import simplebar from \"simplebar-vue\";\nimport NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport FilterGroup from \"./filterGroup/filterGroup.vue\";\nimport Map from \"#app/components/map/map.vue\";\nimport Quickview from \"#app/components/quickview/quickview.vue\";\nimport POIView from \"./POIView.vue\";\nimport { all as fetchAllTowns } from \"#helpers/api/town\";\nimport { all as fetchAllPois } from \"#helpers/api/poi\";\nimport { get as getConfig, getPermission } from \"#helpers/api/config\";\nimport { open } from \"#helpers/tabHelper\";\n\nimport iconType from \"../../../../../public/img/type.svg\";\nimport iconPeople from \"../../../../../public/img/people.svg\";\nimport iconStatus from \"../../../../../public/img/status.svg\";\nimport iconPin from \"../../../../../public/img/pin.svg\";\n\n/**\n * Returns the appropriate zoom level for the given location type\n *\n * @param {String} locationType\n *\n * @returns {Number}\n */\nfunction getDefaultZoomFor(locationType) {\n switch (locationType) {\n case \"nation\":\n case \"region\":\n return 6;\n\n default:\n case \"departement\":\n case \"epci\":\n case \"city\":\n return 10;\n }\n}\n\nexport default {\n components: {\n NavBar,\n FilterGroup,\n Map,\n Quickview,\n POIView,\n simplebar\n },\n data() {\n const { user } = getConfig();\n\n return {\n error: undefined,\n loading: false,\n defaultMapView: {\n center: [\n user.organization.location.latitude,\n user.organization.location.longitude\n ],\n zoom: getDefaultZoomFor(user.organization.location.type)\n },\n towns: [],\n pois: [],\n quickview: {\n town: null,\n originEvent: null\n },\n poiview: {\n poi: null,\n originEvent: null\n },\n permission: getPermission(\"shantytown.list\"),\n filters: [\n {\n faIcon: \"tint\",\n label: \"Accès à l'eau\",\n id: \"accessToWater\",\n options: [\n {\n value: true,\n label: \"Oui\",\n checked: true,\n icon: { id: \"tint\", color: \"00a0e3\" }\n },\n {\n value: false,\n label: \"Non\",\n checked: true,\n icon: { id: \"tint-slash\", color: \"ADB9C9\" }\n },\n {\n value: null,\n label: \"Inconnu\",\n checked: true,\n icon: { id: \"question\", color: \"ADB9C9\" }\n }\n ],\n opened: true\n },\n {\n icon: iconType,\n label: \"Types de site\",\n id: \"fieldType\",\n options: [],\n opened: true\n },\n {\n icon: iconPeople,\n label: \"Nombre de personnes\",\n id: \"population\",\n options: [\n { value: null, label: \"Inconnu\", checked: true },\n {\n value: \"-9\",\n label: \"Moins de 10 personnes\",\n checked: true\n },\n {\n value: \"10-99\",\n label: \"Entre 10 et 99 personnes\",\n checked: true\n },\n {\n value: \"100-\",\n label: \"100 personnes et plus\",\n checked: true\n }\n ]\n },\n {\n icon: iconStatus,\n label: \"Statut des sites\",\n id: \"status\",\n options: [\n { value: \"closed\", label: \"Disparus\", checked: false },\n { value: \"opened\", label: \"Existants\", checked: true }\n ]\n },\n {\n icon: iconPeople,\n label: \"Type de propriétaire\",\n id: \"ownerType\",\n options: getConfig().owner_types.map(type => ({\n value: type.id,\n label: type.label,\n checked: true\n }))\n },\n {\n icon: iconPin,\n label: \"Points d'intérêts\",\n id: \"poi\",\n options: [\n {\n value: \"food_bank\",\n label: \"Distribution alimentaire\",\n checked: true\n }\n ],\n opened: true\n }\n ]\n };\n },\n computed: {\n allowedFilters() {\n if (!this.permission) {\n return [];\n }\n\n return this.filters.filter(\n filter =>\n !filter.permissions ||\n filter.permissions.every(\n permission => this.permission[permission]\n )\n );\n },\n rendererProps() {\n return {\n towns: this.visibleTowns,\n pois: this.visiblePOIs,\n defaultView: this.defaultMapView\n };\n },\n visiblePOIs() {\n let pois = this.pois;\n\n this.allowedFilters.forEach(filterGroup => {\n switch (filterGroup.id) {\n case \"poi\":\n {\n pois = pois.filter(\n () => filterGroup.options[0].checked\n );\n }\n break;\n\n default:\n }\n });\n\n return pois;\n },\n visibleTowns() {\n let visibleTowns = this.towns;\n\n this.allowedFilters.forEach(filterGroup => {\n switch (filterGroup.id) {\n case \"accessToWater\":\n {\n const allowed = filterGroup.options\n .filter(option => option.checked)\n .map(option => option.value);\n\n visibleTowns = visibleTowns.filter(\n town =>\n allowed.indexOf(town.accessToWater) !== -1\n );\n }\n break;\n\n case \"fieldType\":\n {\n const allowedFieldTypes = filterGroup.options\n .filter(option => option.checked)\n .map(option => option.value);\n\n visibleTowns = visibleTowns.filter(\n town =>\n town.fieldType &&\n allowedFieldTypes.indexOf(\n town.fieldType.id\n ) !== -1\n );\n }\n break;\n\n case \"population\":\n {\n const disallowedPopulation = filterGroup.options\n .filter(option => !option.checked)\n .map(option => option.value);\n\n disallowedPopulation.forEach(value => {\n if (value === null) {\n visibleTowns = visibleTowns.filter(\n town => town.populationTotal !== null\n );\n return;\n }\n\n let [min, max] = value.split(\"-\");\n min = parseInt(min, 10);\n max = parseInt(max, 10);\n\n visibleTowns = visibleTowns.filter(town => {\n if (town.populationTotal === null) {\n return true;\n }\n\n if (\n !Number.isNaN(min) &&\n !Number.isNaN(max)\n ) {\n return (\n town.populationTotal < min ||\n town.populationTotal > max\n );\n }\n\n if (!Number.isNaN(min)) {\n return town.populationTotal < min;\n }\n\n if (!Number.isNaN(max)) {\n return town.populationTotal > max;\n }\n\n return true;\n });\n });\n }\n break;\n\n case \"status\":\n {\n const disallowedStatuses = filterGroup.options\n .filter(option => !option.checked)\n .map(option => option.value);\n\n disallowedStatuses.forEach(value => {\n if (value === \"closed\") {\n visibleTowns = visibleTowns.filter(\n town => town.status === \"open\"\n );\n } else if (value === \"opened\") {\n visibleTowns = visibleTowns.filter(\n town => town.status !== \"open\"\n );\n }\n });\n }\n break;\n\n case \"ownerType\":\n {\n const allowedOwnerTypes = filterGroup.options\n .filter(option => option.checked)\n .map(option => option.value);\n\n visibleTowns = visibleTowns.filter(\n town =>\n town.ownerType &&\n allowedOwnerTypes.indexOf(\n town.ownerType.id\n ) !== -1\n );\n }\n break;\n\n default:\n }\n });\n\n return visibleTowns;\n }\n },\n created() {\n this.fetchData();\n },\n mounted() {\n window.addEventListener(\"resize\", this.resize);\n },\n beforeDestroy() {\n window.removeEventListener(\"resize\", this.resize);\n },\n methods: {\n sortNumber(x, y) {\n if (x === \"inconnu\" && y === \"inconnu\") {\n return 0;\n }\n\n if (x === \"inconnu\") {\n return -1;\n }\n\n if (y === \"inconnu\") {\n return 1;\n }\n\n if (x < y) {\n return -1;\n }\n\n if (x > y) {\n return 1;\n }\n\n return 0;\n },\n showQuickview(town, event) {\n this.quickview = {\n town,\n originEvent: event.originalEvent\n };\n },\n showPOIView(poi, event) {\n this.poiview = {\n poi,\n originEvent: event.originalEvent\n };\n },\n hideQuickview() {\n this.quickview = {\n town: null,\n originEvent: null\n };\n },\n hidePOIView() {\n this.poiview = {\n town: null,\n originEvent: null\n };\n },\n routeToTown(params) {\n const routeData = this.$router.resolve(`/site/${params.row.id}`);\n open(routeData.href);\n },\n resize() {\n if (!this.$refs.main) {\n return;\n }\n\n this.stretchToBottom(this.$refs.main);\n this.stretchToBottom(this.$refs.filters.$el);\n },\n stretchToBottom(element) {\n const height = element.offsetHeight;\n const newHeight =\n height +\n (document.body.offsetHeight -\n (this.absoluteOffsetTop(element) + height));\n\n // eslint-disable-next-line\n element.style.height = `${newHeight}px`;\n },\n absoluteOffsetTop(element) {\n let top = 0;\n let el = element;\n\n do {\n top += el.offsetTop || 0;\n el = el.offsetParent;\n } while (el);\n\n return top;\n },\n fetchData() {\n if (this.loading === true) {\n return;\n }\n\n this.loading = true;\n this.error = undefined;\n\n Promise.all([fetchAllTowns(), fetchAllPois()])\n .then(([towns, pois]) => {\n const { field_types: fieldTypes } = getConfig();\n\n this.loading = false;\n\n // build the field-type filter\n const fieldTypeFilter = this.filters.filter(\n ({ id }) => id === \"fieldType\"\n )[0];\n fieldTypeFilter.options = [\n // options based on field-types returned by the api\n ...fieldTypes.map(fieldType => ({\n id: fieldType.id,\n value: fieldType.id,\n label: fieldType.label,\n checked: true\n }))\n ];\n\n this.towns = towns;\n this.pois = pois;\n this.$nextTick(() => {\n this.resize();\n this.$refs.map.resize();\n });\n })\n .catch(errors => {\n this.error = errors.user_message;\n this.loading = false;\n });\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./dashboard.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./dashboard.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./dashboard.vue?vue&type=template&id=9f1f45ac&lang=pug&\"\nimport script from \"./dashboard.vue?vue&type=script&lang=js&\"\nexport * from \"./dashboard.vue?vue&type=script&lang=js&\"\nimport style0 from \"./dashboard.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('NavBar'),_c('section',{staticClass:\"section section-white\"},[_c('div',{staticClass:\"container\"},[(_vm.error)?_c('div',{staticClass:\"notification error full-width\"},[_c('span',[_vm._v(_vm._s(_vm.error)+\". \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.loadConfig}},[_vm._v(\"Réessayer ?\")])])]):_c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Initialisation de la plateforme en cours...\")])])])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport { isLoaded as isConfigLoaded, load, get } from \"#helpers/api/config\";\nimport { getEntryPoint } from \"#app/router\";\n\nexport default {\n data() {\n return {\n error: null\n };\n },\n components: {\n NavBar\n },\n mounted() {\n this.loadConfig();\n },\n methods: {\n loadConfig() {\n if (isConfigLoaded() === true) {\n this.redirect();\n return;\n }\n\n this.error = null;\n load()\n .then(() => {\n this.redirect();\n })\n .catch(response => {\n this.error = response.user_message;\n });\n },\n redirect() {\n const { user } = get();\n this.track(user);\n this.$router.push(getEntryPoint());\n },\n track(user) {\n if (!this.$piwik) {\n return;\n }\n\n this.$piwik.setUserId(user.id);\n this.$piwik.setCustomVariable(1, \"superuser\", user.is_superuser);\n this.$piwik.setCustomVariable(\n 2,\n \"structure\",\n user.organization.type.abbreviation ||\n user.organization.type.name_singular\n );\n this.$piwik.setCustomVariable(\n 3,\n \"niveau_geo\",\n user.organization.location.type\n );\n this.$piwik.setCustomVariable(\n 4,\n \"geo_nom\",\n user.organization.location[user.organization.location.type]\n ? user.organization.location[\n user.organization.location.type\n ].name\n : null\n );\n }\n }\n};\n","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./launcher.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./launcher.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./launcher.vue?vue&type=template&id=3c5db2b9&lang=pug&\"\nimport script from \"./launcher.vue?vue&type=script&lang=js&\"\nexport * from \"./launcher.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('PrivateLayout',[(_vm.exportIsVisible)?_c('Export',{attrs:{\"towns\":[],\"location\":_vm.currentLocation,\"closedTowns\":_vm.filters.status !== 'open'},on:{\"close\":_vm.hideExport}}):_vm._e(),_c('div',{staticClass:\"bg-G100 print:hidden\"},[_c('PrivateContainer',{staticClass:\"py-6\"},[_c('h1',{staticClass:\"text-display-md text-center mb-4\"},[_vm._v(\" Rechercher une commune, un département... ? \")]),_c('TownsListSearchBar',{attrs:{\"value\":_vm.filters.location},on:{\"input\":function (val) { return _vm.updateFilters('location', val); }}})],1)],1),_c('PrivateContainer',{staticClass:\"pt-10\"},[_c('TownsListHeader',{staticClass:\"mb-6\",attrs:{\"search\":_vm.filters.location}},[_c('template',{slot:\"filters\"},[_c('TownsListHeaderTab',{staticClass:\"mr-8\",attrs:{\"active\":_vm.filters.status === 'open'},on:{\"click\":_vm.onClickOpenTab}},[_vm._v(\"Sites existants\")]),_c('TownsListHeaderTab',{attrs:{\"active\":_vm.filters.status === 'close'},on:{\"click\":_vm.onClickCloseTab}},[_vm._v(\"Sites fermés\")])],1),_c('template',{slot:\"title\"},[_c('div',{staticClass:\"text-display-xl mb-2\"},[_vm._v(_vm._s(_vm.title))]),(!_vm.isLoading)?_c('div',{staticClass:\"flex items-center\"},[_c('div',{staticClass:\"mr-4\"},[_c('img',{attrs:{\"src\":_vm.locationImg,\"width\":\"80\",\"height\":\"80\"}})]),_c('div',[_c('div',[_c('div',[_vm._v(_vm._s(_vm.populationTotal)+\" personnes\")]),_c('div',[_vm._v(\" \"+_vm._s(_vm.filteredShantytowns.length)+\" sites \")]),(_vm.hasJusticePermission && _vm.justiceTotal)?_c('div',[_vm._v(\" \"+_vm._s(_vm.justiceTotal)+\" site(s) avec une procédure judiciaire \")]):_vm._e()])])]):_vm._e()]),_c('template',{slot:\"buttons\"},[_c('Button',{staticClass:\"mr-6 mb-2 md:mb-0\",attrs:{\"icon\":\"print\",\"iconPosition\":\"left\",\"variant\":\"primaryOutline\"},on:{\"click\":_vm.togglePrintModal}},[_vm._v(\"Imprimer\")]),(_vm.hasPermission('shantytown.export'))?_c('Button',{staticClass:\"mr-6 mb-2 md:mb-0\",attrs:{\"icon\":\"file-excel\",\"iconPosition\":\"left\",\"variant\":\"primary\",\"disabled\":_vm.filteredShantytowns.length === 0},on:{\"click\":_vm.showExport}},[_vm._v(\"Exporter\")]):_vm._e()],1)],2),(!_vm.isLoading)?_c('div',[_c('div',{staticClass:\"md:flex items-end mb-4 justify-between print:hidden\"},[_c('TownsListFilters',[_c('TownsListFilter',{staticClass:\"mr-2 mb-2\",attrs:{\"title\":\"Type de sites\",\"value\":_vm.filters.fieldType,\"options\":_vm.fieldTypes.map(function (f) { return ({\n label: f.label,\n value: f.id\n }); })},on:{\"input\":function (val) { return _vm.updateFilters('fieldType', val); }}}),_c('TownsListFilter',{staticClass:\"mr-2 mb-2\",attrs:{\"title\":\"Nombre de personnes\",\"value\":_vm.filters.population,\"options\":[\n { value: null, label: 'Inconnu' },\n { value: '-9', label: 'Moins de 10 personnes' },\n {\n value: '10-99',\n label: 'Entre 10 et 99 personnes'\n },\n {\n value: '100-',\n label: 'Plus de 100 personnes'\n }\n ]},on:{\"input\":function (val) { return _vm.updateFilters('population', val); }}}),_c('TownsListFilter',{staticClass:\"mr-2 mb-2\",attrs:{\"title\":\"Origines\",\"value\":_vm.filters.origin,\"options\":[\n {\n value: 1,\n label: 'Français'\n },\n {\n value: 2,\n label: 'Union européenne'\n },\n {\n value: 3,\n label: 'Hors Union européenne'\n },\n {\n value: null,\n label: 'Inconnu'\n }\n ]},on:{\"input\":function (val) { return _vm.updateFilters('origin', val); }}}),_c('TownsListFilter',{staticClass:\"mr-2 mb-2\",attrs:{\"title\":\"Conditions de vie\",\"value\":_vm.filters.conditions,\"options\":[\n {\n value: 'accessToWater',\n label: 'eau'\n },\n {\n value: 'accessToSanitary',\n label: 'toilettes'\n },\n {\n value: 'accessToElectricity',\n label: 'électricité'\n },\n {\n value: 'accessToTrash',\n label: 'évac. des déchets'\n },\n\n {\n value: 'vermin',\n label: 'pres. de nuisibles'\n },\n {\n value: 'firePreventionMeasures',\n label: 'prev. incendie'\n }\n ]},on:{\"input\":function (val) { return _vm.updateFilters('conditions', val); }},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\n var label = ref.label;\nreturn [_c('div',{staticClass:\"text-red flex items-center\"},[_c('div',{staticClass:\"mr-2\"},[_c('Icon',{attrs:{\"icon\":\"times\"}}),_vm._v(\"/\"),_c('Icon',{staticClass:\"text-xs\",attrs:{\"icon\":\"question\"}})],1),_vm._v(\" \"+_vm._s(label)+\" \")])]}}],null,false,1485956960)}),(_vm.hasJusticePermission)?_c('TownsListFilter',{staticClass:\"mr-2 mb-2\",attrs:{\"title\":\"Procédure judiciaire\",\"value\":_vm.filters.justice,\"options\":[\n { value: null, label: 'Inconnu' },\n { value: 'none', label: 'Aucune' },\n {\n value: 'ownerComplaint',\n label: 'Plainte déposée'\n },\n {\n value: 'justiceProcedure',\n label: 'Procédure en cours'\n },\n {\n value: 'justiceRendered',\n label: 'Décision rendue'\n }\n ]},on:{\"input\":function (val) { return _vm.updateFilters('justice', val); }}}):_vm._e(),_c('TownsListFilter',{staticClass:\"mr-2 mb-2\",attrs:{\"title\":\"Intervenants\",\"value\":_vm.filters.actors,\"options\":[\n { value: 'yes', label: 'Oui' },\n { value: 'no', label: 'Non' }\n ]},on:{\"input\":function (val) { return _vm.updateFilters('actors', val); }}})],1),_c('TownsListSort',{staticClass:\"mb-2\",attrs:{\"value\":_vm.sort,\"status\":_vm.filters.status},on:{\"input\":_vm.updateSort}})],1),_c('div',[_vm._l((_vm.printMode\n ? _vm.filteredShantytowns\n : _vm.filteredShantytownsByPage),function(shantytown){return _c('TownCard',{key:shantytown.id,staticClass:\"mb-6\",attrs:{\"shantytown\":shantytown,\"hasJusticePermission\":_vm.hasJusticePermission}})}),_c('div',{staticClass:\"flex flex-col items-end mb-12 print:hidden mt-2\"},[(_vm.nbPages > 1)?_c('Pagination',{staticClass:\"md:mt-0 mb-2\",attrs:{\"currentPage\":_vm.currentPage,\"nbPages\":_vm.nbPages,\"onChangePage\":_vm.onChangePage}}):_vm._e(),_c('div',{staticClass:\"pr-6 text-G600\"},[_vm._v(_vm._s(_vm.elementsOnPage))])],1)],2),(!_vm.filteredShantytowns.length)?_c('div',{staticClass:\"text-center text-G600 italic pt-4\"},[_vm._v(\" Aucun site ne correspond à votre recherche, essayez d'autres filtres ou périmètre géographique \")]):_vm._e()]):_c('div',{staticClass:\"text-center text-primary text-display-lg mt-16\"},[_c('Spinner')],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container px-10 mx-auto print:px-0 print:max-w-none\"},[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./PrivateContainer.vue?vue&type=template&id=304b0962&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"v1 print:hidden\"},[_c('NavBar')],1),_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=2e2cd091&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:[\n 'rounded-sm cursor-pointer border preventPrintBreak',\n _vm.isHover ? 'bg-blue100 border-transparent' : ''\n ],on:{\"mouseenter\":function($event){_vm.isHover = true},\"mouseleave\":function($event){_vm.isHover = false}}},[_c('router-link',{attrs:{\"to\":(\"site/\" + (_vm.shantytown.id))}},[_c('div',{staticClass:\"pt-6\"},[_c('div',{staticClass:\"text-md px-6\"},[_c('div',{staticClass:\"text-primary text-display-md \"},[_c('span',{staticClass:\"font-bold\"},[_vm._v(\" \"+_vm._s(_vm.shantytown.addressSimple)+\" \"),(_vm.shantytown.name)?_c('span',[_vm._v(\"« \"+_vm._s(_vm.shantytown.name)+\" »\")]):_vm._e()]),_c('span',{staticClass:\"font-normal\"},[_vm._v(\" \"+_vm._s(_vm.shantytown.city.name)+\" \")])])]),_c('div',{staticClass:\"md:grid print:grid cardGridTemplateColumns gap-10 px-6 py-4\"},[_c('div',[_c('div',{staticClass:\"flex items-center customAlign\"},[_c('Icon',{staticClass:\"text-lg\",style:((\"color: \" + (_vm.shantytown.fieldType.color))),attrs:{\"icon\":\"map-marker-alt\"}}),_c('div',{staticClass:\"font-bold ml-2\"},[_vm._v(\" \"+_vm._s(_vm.shantytown.fieldType.label)+\" \")])],1),_c('div',{staticClass:\"ml-5\"},[_c('div',[_vm._v(\" \"+_vm._s(_vm.shantytown.statusName)+\" depuis \"),_c('br'),_c('span',{staticClass:\"font-bold\"},[_vm._v(_vm._s(_vm.shantytown.statusSince))])])])]),_c('div',[(_vm.shantytown.populationTotal === null)?_c('div',{staticClass:\"font-bold\"},[_vm._v(\" Population : inconnu \")]):_c('div',{staticClass:\"text-lg font-bold flex items-center\"},[_c('div',{staticClass:\"mr-2\"},[_vm._v(\" \"+_vm._s(_vm.shantytown.populationTotal)+\" \")]),_c('div',[_c('Icon',{attrs:{\"icon\":\"male\"}}),_vm._v(_vm._s(\" \")+\" \"),(_vm.shantytown.populationTotal >= 25)?_c('span',[_c('Icon',{attrs:{\"icon\":\"male\"}}),_vm._v(_vm._s(\" \"))],1):_vm._e(),(_vm.shantytown.populationTotal >= 75)?_c('span',[_c('Icon',{attrs:{\"icon\":\"male\"}}),_vm._v(_vm._s(\" \"))],1):_vm._e(),(_vm.shantytown.populationTotal >= 100)?_c('span',[_c('Icon',{attrs:{\"icon\":\"male\"}})],1):_vm._e()],1)]),_c('div',[(!_vm.shantytown.socialOrigins.length)?_c('div',{staticClass:\"text-G600\"},[_vm._v(\" Origine : inconnu \")]):_vm._l((_vm.shantytown.socialOrigins),function(origin){return _c('div',{key:origin.id,staticClass:\"flex\"},[_c('img',{staticClass:\" w-6 h-4 mr-2 mt-1\",attrs:{\"src\":_vm.socialOrigin(origin).img}}),_c('div',[_vm._v(_vm._s(_vm.socialOrigin(origin).label))])])})],2)]),_c('div',[_c('div',[_c('TownCardIcon',{attrs:{\"value\":_vm.shantytown.accessToWater,\"details\":_vm.details.water}},[_vm._v(\"eau\")]),_c('TownCardIcon',{attrs:{\"value\":_vm.shantytown.accessToSanitary,\"details\":_vm.details.sanitary}},[_vm._v(\"toilettes\")]),_c('TownCardIcon',{attrs:{\"value\":_vm.shantytown.electricityType.value}},[_vm._v(\"électricité\")]),_c('TownCardIcon',{attrs:{\"value\":_vm.shantytown.trashEvacuation,\"details\":_vm.details.trash}},[_vm._v(\"évac. des déchets\")]),_c('TownCardIcon',{attrs:{\"value\":_vm.shantytown.vermin,\"details\":_vm.details.vermin,\"inverted\":\"\"}},[_vm._v(\"pres. de nuisibles\")]),_c('TownCardIcon',{attrs:{\"value\":_vm.shantytown.firePreventionMeasures,\"details\":_vm.details.firePrevention}},[_vm._v(\"prev. incendie\")])],1)]),(_vm.hasJusticePermission)?_c('div',[(\n !_vm.shantytown.justiceStatuses ||\n !_vm.shantytown.justiceStatuses.length\n )?_c('div',{staticClass:\"text-G600\"},[_c('Icon',{attrs:{\"icon\":\"ban\"}}),_vm._v(\" Aucune procédure judiciaire en cours \")],1):_c('div',_vm._l((_vm.shantytown.justiceStatuses),function(status){return _c('div',{key:status.label,staticClass:\"flex \"},[(status.icon)?_c('Icon',{attrs:{\"icon\":status.icon}}):_vm._e(),(status.img)?_c('img',{staticClass:\"w-5 h-4 mt-1\",attrs:{\"src\":status.img}}):_vm._e(),_c('div',{staticClass:\"ml-2\"},[_c('span',{staticClass:\"font-bold\"},[_vm._v(_vm._s(status.label))]),(status.date)?_c('span',{staticClass:\"secondary\"},[_vm._v(\" le \"+_vm._s(_vm.formatDate(status.date, \"d/m/y\")))]):_vm._e()])],1)}),0)]):_vm._e(),_c('div',{staticClass:\"flex\"},[_c('div',{class:{\n 'text-G600': _vm.shantytown.actors.length === 0,\n 'text-primary': _vm.shantytown.actors.length > 0,\n 'font-bold': _vm.shantytown.actors.length > 0\n }},[_c('span',[_c('Icon',{attrs:{\"icon\":\"user-circle\"}})],1)]),_c('div',{staticClass:\"ml-2 flex-grow\"},[(_vm.shantytown.actors.length === 0)?_c('span',{staticClass:\"text-G600\"},[_vm._v(\" Aucun intervenant\")]):_c('span',{staticClass:\"text-primary font-bold\"},[_vm._v(_vm._s(_vm.shantytown.actors.length)+\" intervenant\"+_vm._s(_vm.shantytown.actors.length > 1 ? \"s\" : \"\"))]),(_vm.shantytown.actors.length > 0)?_c('ul',{staticClass:\"text-primary\"},_vm._l((_vm.mergedActors),function(actor){return _c('li',{key:actor.id},[_vm._v(\" - \"+_vm._s(actor.name)+\" \")])}),0):_vm._e()])])]),_c('div',{staticClass:\"flex justify-between items-center px-4 pt-4 print:hidden\"},[_c('Tag',{staticClass:\"text-xs\"},[_vm._v(\" \"+_vm._s(_vm.lastUpdate)+\" \")]),_c('div',{staticClass:\"print:hidden\"},[_c('Button',{staticClass:\"text-display-sm hover:underline -mb-1\",attrs:{\"variant\":\"primaryText\",\"icon\":\"arrow-right\"}},[_vm._v(\"Voir la fiche du site\")])],1)],1)])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:['flex items-center', _vm.colorClass]},[_c('div',{staticClass:\"mr-2 w-4\"},[_c('Icon',{attrs:{\"icon\":_vm.icon}})],1),_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownCardIcon.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownCardIcon.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownCardIcon.vue?vue&type=template&id=63d1f991&\"\nimport script from \"./TownCardIcon.vue?vue&type=script&lang=js&\"\nexport * from \"./TownCardIcon.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export default function getSince(ts) {\n const now = new Date();\n const then = new Date(ts * 1000);\n\n const days = Math.floor(\n Math.abs(now.getTime() - then.getTime()) / (1000 * 3600 * 24)\n );\n\n const weeks = Math.floor(days / 7);\n const months = Math.floor(days / 30);\n const years = Math.floor(days / 365);\n\n return {\n days,\n weeks,\n months,\n years\n };\n}\n","export function formatLivingConditions(town) {\n const result = {\n water: {\n negative: [],\n positive: [],\n unknown: []\n },\n sanitary: {\n negative: [],\n positive: [],\n unknown: []\n },\n trash: {\n negative: [],\n positive: [],\n unknown: []\n },\n firePrevention: {\n negative: [],\n positive: [],\n unknown: []\n }\n };\n\n // Eau potable\n const wordingWaterPotable = \"Eau potable\";\n if (town.waterPotable !== null) {\n town.waterPotable\n ? result.water.positive.push({ text: wordingWaterPotable })\n : result.water.negative.push({ text: \"Eau non potable\" });\n } else {\n result.water.unknown.push({ text: wordingWaterPotable });\n }\n\n // Eau continu\n const wordingWaterContinuousAccess =\n \"Accès continu, c’est-à-dire qu’il ne varie pas en qualité et quantité dans la journée et les saisons, sans limite dans le temps\";\n if (town.waterContinuousAccess !== null) {\n town.waterContinuousAccess\n ? result.water.positive.push({ text: wordingWaterContinuousAccess })\n : result.water.negative.push({\n text:\n \"Accès non continu, c’est-à-dire qu’il varie en qualité et quantité dans la journée et les saisons, sans limite dans le temps\"\n });\n } else {\n result.water.unknown.push({ text: wordingWaterContinuousAccess });\n }\n\n // Point d'eau public\n if (town.waterPublicPoint !== null) {\n town.waterPublicPoint &&\n result.water.negative.push({ text: \"Point d'eau public\" });\n } else {\n result.water.unknown.push({ text: \"Point d'eau public\" });\n }\n\n // Distance du point d'eau\n if (town.waterDistance !== null) {\n town.waterDistance === \"0-20\"\n ? result.water.positive.push({\n text: \"Accès situé sur site ou à moins de 20 mètres\"\n })\n : result.water.negative.push({\n text: \"Accès situé à plus de 20 mètres\"\n });\n } else {\n result.water.unknown.push({ text: \"Localisation de l'accès\" });\n }\n\n // Franchissement de rues\n const wordingWaterRoadsToCross =\n \"Pas de franchissement de rue ou route pour accéder aux points d’eau\";\n if (town.waterRoadsToCross !== null) {\n !town.waterRoadsToCross\n ? result.water.positive.push({ text: wordingWaterRoadsToCross })\n : result.water.negative.push({\n text: \"Franchissement de rue ou route nécessaire\"\n });\n } else {\n result.water.unknown.push({ text: wordingWaterRoadsToCross });\n }\n\n // Acces pour tous\n const wordingWaterEveryoneHasAccess = \"Accès pour tous les habitants\";\n if (town.waterEveryoneHasAccess !== null) {\n town.waterEveryoneHasAccess\n ? result.water.positive.push({\n text: wordingWaterEveryoneHasAccess\n })\n : result.water.negative.push({\n text: \"Pas d’accès pour tous les habitants\"\n });\n } else {\n result.water.unknown.push({ text: wordingWaterEveryoneHasAccess });\n }\n\n // Eau stagnante\n const wordingWaterStagnantWater =\n \"Pas d’eaux stagnantes autour du point de distribution\";\n if (town.waterStagnantWater !== null) {\n !town.waterStagnantWater\n ? result.water.positive.push({ text: wordingWaterStagnantWater })\n : result.water.negative.push({\n text: \"Eaux stagnantes autour du point de distribution\"\n });\n } else {\n result.water.unknown.push({ text: wordingWaterStagnantWater });\n }\n\n // Présence de bacs de lavage & nombre\n const waterHandWashAccessPopulationRatio =\n town.populationTotal && town.waterHandWashAccessNumber\n ? Math.floor(\n Number(town.populationTotal) /\n Number(town.waterHandWashAccessNumber)\n )\n : null;\n const wordingRatio = waterHandWashAccessPopulationRatio\n ? ` - soit 1 bac de lavage pour ${waterHandWashAccessPopulationRatio} personnes`\n : \"\";\n const wordingWaterHandWashAccess = `${town.waterHandWashAccessNumber ||\n \"Présence de\"} bac${\n town.waterHandWashAccessNumber > 1 ? \"s\" : \"\"\n } de lavage des mains${wordingRatio}`;\n const infoWaterHandWashAccess =\n \"il est conseillé au moins 1 bac de lavage pour 20 personnes\";\n\n if (\n town.waterHandWashAccess &&\n waterHandWashAccessPopulationRatio &&\n waterHandWashAccessPopulationRatio < 20\n ) {\n result.water.positive.push({\n text: wordingWaterHandWashAccess,\n info: infoWaterHandWashAccess\n });\n } else if (\n town.waterHandWashAccess &&\n waterHandWashAccessPopulationRatio &&\n waterHandWashAccessPopulationRatio > 20\n ) {\n result.water.negative.push({\n text: wordingWaterHandWashAccess,\n info: infoWaterHandWashAccess\n });\n } else if (\n town.waterHandWashAccess &&\n !waterHandWashAccessPopulationRatio\n ) {\n result.water.positive.push({\n text: wordingWaterHandWashAccess\n });\n } else if (town.waterHandWashAccess === false) {\n result.water.negative.push({\n text: \"Pas de de bacs de lavage des mains\",\n info: infoWaterHandWashAccess\n });\n } else {\n result.water.unknown.push({\n text: wordingWaterHandWashAccess,\n info: infoWaterHandWashAccess\n });\n }\n\n // Toilettes sur site\n const wordingSanitaryOnSite = \"Accès sur site\";\n if (town.sanitaryOnSite !== null) {\n town.sanitaryOnSite\n ? result.sanitary.positive.push({ text: wordingSanitaryOnSite })\n : result.sanitary.negative.push({\n text: \"Accès aux abords du site\"\n });\n } else {\n result.sanitary.unknown.push({ text: wordingSanitaryOnSite });\n }\n\n // Nombre de toilettes & Ratio\n const sanitaryNumberPopulationRatio = Math.floor(\n Number(town.populationTotal) / Number(town.sanitaryNumber)\n );\n const wordingSanitaryRatio = town.sanitaryNumber\n ? ` - soit 1 toilette pour ${sanitaryNumberPopulationRatio} personnes`\n : \"\";\n const wordingSanitaryNumber = `${town.sanitaryNumber ||\n \"Présence de\"} toilette${\n town.sanitaryNumber > 1 ? \"s\" : \"\"\n }${wordingSanitaryRatio}`;\n const infoSanitaryNumber =\n \"il est conseillé au moins 1 toilette pour 20 personnes\";\n\n if (town.sanitaryNumber && sanitaryNumberPopulationRatio < 20) {\n result.sanitary.positive.push({\n text: wordingSanitaryNumber,\n info: infoSanitaryNumber\n });\n } else if (town.sanitaryNumber && sanitaryNumberPopulationRatio > 20) {\n result.sanitary.negative.push({\n text: wordingSanitaryNumber,\n info: infoSanitaryNumber\n });\n } else {\n result.sanitary.unknown.push({\n text: \"Nombre de toilettes\",\n info: infoSanitaryNumber\n });\n }\n\n // Sanitaire Insalubre\n const wordingSanitaryInsalubrious =\n \"Pas de marques de défécation à l’air libre\";\n if (town.sanitaryInsalubrious !== null) {\n !town.sanitaryInsalubrious\n ? result.sanitary.positive.push({\n text: wordingSanitaryInsalubrious\n })\n : result.sanitary.negative.push({\n text: \"Marques de défecation à l’air libre\"\n });\n } else {\n result.sanitary.unknown.push({ text: wordingSanitaryInsalubrious });\n }\n\n // Nombre de poubelles/bennes\n const trashCansRatio = Math.floor(\n Number(town.populationTotal) / Number(town.trashCansOnSite)\n );\n if (town.trashCansOnSite !== null) {\n result.trash.positive.push({\n text: `${town.trashCansOnSite} poubelle${\n town.trashCansOnSite > 1 ? \"s\" : \"\"\n } / benne${\n town.trashCansOnSite > 1 ? \"s\" : \"\"\n } sont à proximité immédiate du site (moins de 100 mètres) - soit 1 pour ${trashCansRatio} personnes`\n });\n } else {\n result.trash.unknown.push({\n text:\n \"Nombre de poubelles / bennes à proximité immédiate du site (moins de 100 mètres)\"\n });\n }\n\n // Evacuation régulière des déchets\n const wordingTrashEvacuationRegular =\n \"Collecte régulière des poubelles / bennes. C’est-à-dire au moins une fois par semaine, à partir d’un point de dépôt spécialement aménagé sur le site ou à proximité immédiate\";\n if (town.trashEvacuationRegular !== null) {\n town.trashEvacuationRegular\n ? result.trash.positive.push({\n text: wordingTrashEvacuationRegular\n })\n : result.trash.negative.push({\n text: \"Pas de collecte régulière des poubelles / bennes\"\n });\n } else {\n result.trash.unknown.push({ text: wordingTrashEvacuationRegular });\n }\n\n // Accumulation des déchets\n const wordingTrashAccumulation =\n \"Pas d’accumulation de déchets sur le site ou aux abords\";\n if (town.trashAccumulation !== null) {\n !town.trashAccumulation\n ? result.trash.positive.push({ text: wordingTrashAccumulation })\n : result.trash.negative.push({\n text: \"Accumulation de déchets sur le site ou aux abords\"\n });\n } else {\n result.trash.unknown.push({ text: wordingTrashAccumulation });\n }\n\n // Diagnostic de prévention\n const wordingFirePreventionDiagnostic =\n \"Diagnostic prévention incendie par le SDIS réalisé\";\n if (town.firePreventionDiagnostic !== null) {\n town.firePreventionDiagnostic\n ? result.firePrevention.positive.push({\n text: wordingFirePreventionDiagnostic\n })\n : result.firePrevention.negative.push({\n text:\n \"Pas de diagnostic prévention incendie réalisé par le SDIS\"\n });\n } else {\n result.firePrevention.unknown.push({\n text: wordingFirePreventionDiagnostic\n });\n }\n\n // Mesure spécifiques\n const wordingFirePreventionDevices = \"Mesures spécifiques en place\";\n if (town.firePreventionDevices !== null) {\n town.firePreventionDevices\n ? result.firePrevention.positive.push({\n text: wordingFirePreventionDevices\n })\n : result.firePrevention.negative.push({\n text:\n \"Pas de mesure spécifiques (formation, extincteurs...) en place\"\n });\n } else {\n result.firePrevention.unknown.push({\n text: wordingFirePreventionDevices\n });\n }\n\n // Site accessible aux pompiers\n const wordingFirePreventionSiteAccessible = \"Site accessible aux pompiers\";\n if (town.firePreventionSiteAccessible !== null) {\n town.firePreventionSiteAccessible\n ? result.firePrevention.positive.push({\n text: wordingFirePreventionSiteAccessible\n })\n : result.firePrevention.negative.push({\n text: \"Site pas accessible aux pompiers\"\n });\n } else {\n result.firePrevention.unknown.push({\n text: wordingFirePreventionSiteAccessible\n });\n }\n\n return result;\n}\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownCard.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownCard.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownCard.vue?vue&type=template&id=092149e9&scoped=true&\"\nimport script from \"./TownCard.vue?vue&type=script&lang=js&\"\nexport * from \"./TownCard.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TownCard.vue?vue&type=style&index=0&id=092149e9&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"092149e9\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"mx-auto searchbox -mb-6\"},[_c('AutocompleteV2',{attrs:{\"defaultValue\":this.$props.value,\"search\":_vm.search,\"getResultValue\":_vm.resultValue,\"loading\":_vm.loading,\"prefixIcon\":\"search\",\"inputClasses\":['rounded-full shadow-sm']},on:{\"submit\":function($event){return _vm.$emit('input', $event)}},scopedSlots:_vm._u([{key:\"extra\",fn:function(ref){\nvar removeItem = ref.removeItem;\nreturn [_c('div',{staticClass:\"py-1 px-2 text-right\"},[_c('Button',{staticClass:\"font-bold\",attrs:{\"variant\":\"primaryText\",\"size\":\"sm\"},on:{\"click\":removeItem}},[_vm._v(\"Voir tous les sites de France\")])],1)]}},{key:\"default\",fn:function(ref){\n var results = ref.results;\n var resultListProps = ref.resultListProps;\n var resultListListeners = ref.resultListListeners;\n var resultProps = ref.resultProps;\n var getResultValue = ref.getResultValue;\nreturn [(!results.length)?_c('Menu',[_c('MenuItem',[_vm._v(\" Aucun résultat \")])],1):_vm._e(),_c('Menu',_vm._g(_vm._b({},'Menu',resultListProps,false),resultListListeners),_vm._l((_vm.getCategories(results)),function(category){return _c('div',{key:category.label,staticClass:\"flex flex-row border-b-2 border-G100\"},[_c('div',{staticClass:\"px-4 py-2 w-48 text-G600 border-r-2 border-G100 text-sm text-right pr-4\"},[_vm._v(\" \"+_vm._s(category.label)+\" \")]),_c('div',{staticClass:\"flex-1\"},_vm._l((results),function(r,index){return _c('MenuItem',_vm._b({key:resultProps[index].id,class:[\n 'flex flex-col cursor-pointer hover:bg-G100',\n r.type === category.label\n ? 'block'\n : 'hidden',\n resultProps[index]['aria-selected'] &&\n 'bg-G100'\n ]},'MenuItem',resultProps[index],false),[_vm._v(\" \"+_vm._s(getResultValue(r))+\" \")])}),1)])}),0)]}}]),model:{value:(_vm.result),callback:function ($$v) {_vm.result=$$v},expression:\"result\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsListSearchBar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsListSearchBar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownsListSearchBar.vue?vue&type=template&id=6c3fad6c&scoped=true&\"\nimport script from \"./TownsListSearchBar.vue?vue&type=script&lang=js&\"\nexport * from \"./TownsListSearchBar.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TownsListSearchBar.vue?vue&type=style&index=0&id=6c3fad6c&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6c3fad6c\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"block md:flex justify-between items-baseline\"},[_c('div',[_c('div',{staticClass:\"flex items-center mb-4 print:hidden\"},[_vm._t(\"filters\")],2),_c('div',[_vm._t(\"title\")],2)]),_c('div',{staticClass:\"block md:flex items-center print:hidden\"},[_vm._t(\"buttons\")],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsListHeader.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsListHeader.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownsListHeader.vue?vue&type=template&id=b1e27708&\"\nimport script from \"./TownsListHeader.vue?vue&type=script&lang=js&\"\nexport * from \"./TownsListHeader.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',_vm._g({class:[\n 'border-b-2 pb-1',\n _vm.active\n ? 'text-primary font-bold border-primary'\n : 'cursor-pointer border-transparent'\n ]},_vm.$listeners),[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsListHeaderTab.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsListHeaderTab.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownsListHeaderTab.vue?vue&type=template&id=5a313299&\"\nimport script from \"./TownsListHeaderTab.vue?vue&type=script&lang=js&\"\nexport * from \"./TownsListHeaderTab.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"mb-2\"},[_vm._v(\"Filtrer par\")]),_c('div',{staticClass:\"flex items-center flex-wrap\"},[_vm._t(\"default\")],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./TownsListFilters.vue?vue&type=template&id=2fc307e6&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Dropdown',{scopedSlots:_vm._u([{key:\"button\",fn:function(ref){\nvar isOpen = ref.isOpen;\nreturn [_c('Button',{class:[\n 'px-4 rounded focus:outline-none border border-primary whitespace-nowrap',\n isOpen\n ? 'bg-primary text-white hover:text-white focus:text-white'\n : 'hover:bg-blue200 hover:text-primary text-primary'\n ],attrs:{\"variant\":\"custom\",\"size\":\"sm\",\"icon\":isOpen ? 'chevron-up' : 'chevron-down',\"iconPosition\":\"right\"}},[_vm._v(_vm._s(_vm.titleWithActiveFilters))])]}},{key:\"menu\",fn:function(){return [_c('Menu',{attrs:{\"containerClasses\":\"py-0\"}},[_vm._l((_vm.options),function(option){return _c('div',{key:option.id,staticClass:\"flex items-center whitespace-no-wrap text-sm menuWidth\"},[_c('Checkbox',{attrs:{\"checkValue\":option.value,\"value\":_vm.value,\"variant\":\"invisible\",\"containerClasses\":\"w-full\",\"labelClasses\":\"w-full block\"},on:{\"input\":function($event){return _vm.$emit('input', $event)}},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\n var isChecked = ref.isChecked;\nreturn [_c('div',{staticClass:\"flex items-center justify-between w-full hover:bg-blue200 py-2 px-3 text-primary\"},[_vm._t(\"default\",[_c('div',{staticClass:\"flex-1\"},[_vm._v(_vm._s(option.label))])],{\"label\":option.label}),(isChecked)?_c('div',{staticClass:\"ml-4\"},[_c('Icon',{attrs:{\"icon\":\"check\"}})],1):_vm._e()],2)]}}],null,true)})],1)}),_c('div',{staticClass:\"px-1 py-1 border-t \"},[_c('Button',{staticClass:\"hover:underline\",attrs:{\"size\":\"sm\",\"variant\":\"primaryText\"},on:{\"click\":function($event){return _vm.$emit('input', [])}}},[_vm._v(\" Effacer \")])],1)],2)]},proxy:true}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsListFilter.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsListFilter.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownsListFilter.vue?vue&type=template&id=defa5cd8&scoped=true&\"\nimport script from \"./TownsListFilter.vue?vue&type=script&lang=js&\"\nexport * from \"./TownsListFilter.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TownsListFilter.vue?vue&type=style&index=0&id=defa5cd8&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"defa5cd8\",\n null\n \n)\n\nexport default component.exports","export function filterShantytowns(shantytowns, filters) {\n return shantytowns.filter(shantytown => {\n if (filters.status === \"open\" && shantytown.status !== \"open\") {\n return false;\n }\n\n if (filters.status === \"close\" && shantytown.status === \"open\") {\n return false;\n }\n\n if (filters.location && !checkLocation(shantytown, filters)) {\n return false;\n }\n\n if (\n filters.fieldType.length > 0 &&\n !checkFieldType(shantytown, filters.fieldType)\n ) {\n return false;\n }\n\n if (\n filters.population.length > 0 &&\n !checkPopulation(shantytown, filters.population)\n ) {\n return false;\n }\n\n if (\n filters.justice.length > 0 &&\n !checkJustice(shantytown, filters.justice)\n ) {\n return false;\n }\n\n if (\n filters.origin.length > 0 &&\n !checkOrigin(shantytown, filters.origin)\n ) {\n return false;\n }\n\n if (\n filters.conditions.length > 0 &&\n !checkConditions(shantytown, filters.conditions)\n ) {\n return false;\n }\n\n if (\n filters.actors.length > 0 &&\n !checkActors(shantytown, filters.actors)\n ) {\n return false;\n }\n\n return true;\n });\n}\n\nfunction checkConditions(shantytown, filters) {\n return filters.some(filter => {\n if (filter === \"accessToSanitary\") {\n return !shantytown.accessToSanitary;\n }\n\n if (filter === \"accessToWater\") {\n return !shantytown.accessToWater;\n }\n\n if (filter === \"accessToTrash\") {\n return !shantytown.trashEvacuation;\n }\n\n if (filter === \"accessToElectricity\") {\n return !shantytown.electricityType.value;\n }\n\n if (filter === \"vermin\") {\n return shantytown.vermin;\n }\n\n if (filter === \"firePreventionMeasures\") {\n return !shantytown.firePreventionMeasures;\n }\n\n return true;\n });\n}\n\nfunction checkOrigin(shantytown, filters) {\n if (!shantytown.socialOrigins) {\n return false;\n }\n\n if (!shantytown.socialOrigins.length && filters.includes(null)) {\n return true;\n }\n\n const origins = shantytown.socialOrigins.map(origin => origin.id);\n\n const filteredArray = origins.filter(value => filters.includes(value));\n\n return filteredArray.length;\n}\n\nfunction checkLocation(shantytown, filters) {\n if (filters.location.type === \"nation\") {\n return true;\n }\n\n const l = shantytown[filters.location.locationType];\n\n if (!l) {\n return true;\n }\n\n if (l.code === `${filters.location.code}`) {\n return true;\n }\n\n return l.main === `${filters.location.code}`;\n}\n\n/**\n *\n */\nfunction checkFieldType(shantytown, filters) {\n return filters.indexOf(shantytown.fieldType.id) !== -1;\n}\n\n/**\n *\n */\nfunction checkPopulation(shantytown, filters) {\n return filters.some(value => {\n if (value === null) {\n return shantytown.populationTotal === null;\n }\n\n if (shantytown.populationTotal === null) {\n return false;\n }\n\n const [min, max] = value.split(\"-\");\n if (min !== \"\" && parseInt(min, 10) > shantytown.populationTotal) {\n return false;\n }\n\n if (max !== \"\" && parseInt(max, 10) < shantytown.populationTotal) {\n return false;\n }\n\n return true;\n });\n}\n\n/**\n *\n */\nfunction checkJustice(shantytown, filters) {\n return filters.some(value => {\n if (value === \"ownerComplaint\") {\n return shantytown.ownerComplaint === true;\n }\n\n if (shantytown.justiceRendered === true) {\n return value === \"justiceRendered\";\n }\n\n if (shantytown.justiceProcedure === true) {\n return value === \"justiceProcedure\";\n }\n\n return value === null;\n });\n}\n\n/**\n *\n */\nfunction checkActors(shantytown, filters) {\n if (filters.includes(\"yes\") && shantytown.actors.length > 0) {\n return true;\n }\n\n if (filters.includes(\"no\") && shantytown.actors.length === 0) {\n return true;\n }\n\n return filters.length === 0;\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Modal',{staticClass:\"modalContainer\",attrs:{\"isOpen\":true,\"closeModal\":_vm.close,\"closeClickOutside\":\"\"},scopedSlots:_vm._u([{key:\"header\",fn:function(){return [_c('div',{staticClass:\"pt-10 px-10 pb-4 flex justify-between border-b border-G200\"},[_c('div',{staticClass:\"text-primary\"},[_c('div',{staticClass:\"text-display-md text-primary\"},[_vm._v(\" \"+_vm._s(_vm.closedTowns ? \"Exporter les sites fermés\" : \"Exporter les sites existants\")+\" \")]),_c('div',{staticClass:\"font-bold mt-2\"},[_vm._v(_vm._s(_vm.location.label))])]),_c('div',{staticClass:\"ml-16\"},[_c('Button',{attrs:{\"variant\":\"primaryText\"},on:{\"click\":_vm.close}},[_vm._v(\" Annuler\")]),_c('Button',{staticClass:\"ml-6\",attrs:{\"icon\":\"file-excel\",\"iconPosition\":\"left\"},on:{\"click\":_vm.download}},[_vm._v(\"Exporter\")])],1)])]},proxy:true},{key:\"body\",fn:function(){return [_c('div',[_c('div',{staticClass:\"font-bold mb-1\"},[_vm._v(\" Les données exportées par défaut \")]),_c('ul',[_c('li',[_vm._v(\"- Localisation\")]),_c('li',[_vm._v(\" - Caractéristiques du site \")]),_c('li',[_vm._v(\" - Habitants \")])])]),_c('div',{staticClass:\"mt-4\"},[_c('p',{staticClass:\"font-bold mb-1\"},[_vm._v(\" Cochez les informations supplémentaires que vous souhaitez exporter \")]),_vm._l((_vm.availableOptions),function(option){return _c('Checkbox',{key:option.id,attrs:{\"checkValue\":option.id,\"label\":((option.label) + \" \" + (option.description || ''))},model:{value:(_vm.options),callback:function ($$v) {_vm.options=$$v},expression:\"options\"}})})],2)]},proxy:true}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Export.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Export.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Export.vue?vue&type=template&id=fd85a630&\"\nimport script from \"./Export.vue?vue&type=script&lang=js&\"\nexport * from \"./Export.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"mb-2\"},[_vm._v(\"Trier par\")]),_c('div',{staticClass:\"flex items-center\"},[_c('Dropdown',{scopedSlots:_vm._u([{key:\"button\",fn:function(ref){\nvar isOpen = ref.isOpen;\nreturn [_c('Button',{class:[\n 'px-4 rounded focus:outline-none border border-primary whitespace-no-wrap ',\n isOpen\n ? 'bg-primary text-white hover:text-white focus:text-white'\n : 'hover:bg-blue200 hover:text-primary text-primary'\n ],attrs:{\"variant\":\"custom\",\"size\":\"sm\",\"icon\":isOpen ? 'chevron-up' : 'chevron-down',\"iconPosition\":\"right\"}},[_vm._v(_vm._s(_vm.title)+\" \")])]}},{key:\"menu\",fn:function(){return [_c('Menu',{attrs:{\"containerClasses\":\"py-0\"}},_vm._l((_vm.options[_vm.status]),function(option){return _c('div',{key:option.id,staticClass:\"flex items-center whitespace-no-wrap text-sm menuWidth\"},[_c('Radio',{attrs:{\"checkValue\":option.value,\"value\":_vm.value,\"variant\":\"invisible\",\"containerClasses\":\"w-full\",\"labelClasses\":\"w-full block\"},on:{\"input\":function($event){return _vm.$emit('input', $event)}},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\n var isChecked = ref.isChecked;\nreturn [_c('div',{staticClass:\"flex items-center justify-between w-full hover:bg-blue200 py-2 px-3 text-primary\"},[_c('div',{staticClass:\"flex-1\"},[_vm._v(_vm._s(option.label))]),(isChecked)?_c('div',{staticClass:\"ml-4\"},[_c('Icon',{attrs:{\"icon\":\"check\"}})],1):_vm._e()])]}}],null,true)})],1)}),0)]},proxy:true}])})],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsListSort.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsListSort.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownsListSort.vue?vue&type=template&id=80dfc67a&scoped=true&\"\nimport script from \"./TownsListSort.vue?vue&type=script&lang=js&\"\nexport * from \"./TownsListSort.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TownsListSort.vue?vue&type=style&index=0&id=80dfc67a&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"80dfc67a\",\n null\n \n)\n\nexport default component.exports","import getSince from \"./getSince\";\n\nexport default function formatDateSince(date) {\n const { days, years, months } = getSince(date);\n\n if (years > 0) {\n const yearsText = `${years} an${years > 1 ? \"s\" : \"\"}`;\n return months % 12 > 0\n ? `${yearsText} et ${months % 12} mois`\n : yearsText;\n }\n\n if (months > 0) {\n return `${months} mois`;\n }\n\n if (days > 0) {\n return `${days} jours`;\n }\n\n return \"Aujourd'hui\";\n}\n","/**\n * Enriches the given town with computed properties\n *\n * @param {Shantytown} shantytowns\n *\n * @returns {EnrichedShantytown}\n */\n\nimport policeSiren from \"./assets/police_siren.svg\";\nimport formatDateSince from \"./formatDateSince\";\n\nexport default function enrichShantytown(shantytown, fieldTypes) {\n const fieldTypeColors = fieldTypes.reduce(\n (acc, fieldType) =>\n Object.assign(acc, {\n [fieldType.id]: fieldType.color\n }),\n {}\n );\n\n // electricity\n let electricityValue = true;\n if (shantytown.electricityType.label === \"Inconnu\") {\n electricityValue = null;\n } else if (shantytown.electricityType.label === \"Non\") {\n electricityValue = false;\n }\n\n // justice statuses\n const justiceStatuses = [];\n\n if (shantytown.ownerComplaint === true) {\n justiceStatuses.push({\n icon: \"scroll\",\n label: \"Plainte déposée\"\n });\n }\n\n if (\n shantytown.justiceProcedure &&\n !shantytown.justiceChallenged &&\n !shantytown.justiceRendered\n ) {\n justiceStatuses.push({\n icon: \"balance-scale\",\n label: \"Procédure en cours\"\n });\n }\n\n if (shantytown.justiceProcedure && shantytown.justiceRendered) {\n justiceStatuses.push({\n icon: \"balance-scale\",\n label: \"Décision rendue\",\n date: shantytown.justiceRenderedAt\n });\n }\n\n if (shantytown.justiceProcedure && shantytown.justiceChallenged === true) {\n justiceStatuses.push({\n icon: \"balance-scale\",\n label: \"Contentieux\"\n });\n }\n\n switch (shantytown.policeStatus) {\n case \"none\":\n justiceStatuses.push({\n img: policeSiren,\n label: \"Concours de la force publique non demandé\"\n });\n break;\n\n case \"requested\":\n justiceStatuses.push({\n img: policeSiren,\n label: \"Concours de la force publique demandé\",\n date: shantytown.policeRequestedAt\n });\n break;\n\n case \"granted\":\n justiceStatuses.push({\n img: policeSiren,\n label: \"Concours de la force publique accordé\",\n date: shantytown.policeGrantedAt\n });\n break;\n\n default:\n case null:\n break;\n }\n\n // status\n let statusName;\n let statusDate;\n if (shantytown.status === \"open\") {\n if (shantytown.builtAt) {\n statusName = \"Existe\";\n statusDate = shantytown.builtAt;\n } else if (shantytown.declaredAt) {\n statusName = \"Signalé\";\n statusDate = shantytown.declaredAt;\n } else {\n statusName = null;\n statusDate = null;\n }\n } else {\n statusName = \"Fermé\";\n statusDate = shantytown.closedAt;\n }\n\n const statusSince = statusDate ? formatDateSince(statusDate) : \"\";\n\n // closing solutions\n const totalSolutions = shantytown.closingSolutions.reduce(\n (total, solution) => {\n if (!solution.householdsAffected) {\n return total;\n }\n\n return (total || 0) + solution.householdsAffected;\n },\n null\n );\n\n // final object\n return {\n ...shantytown,\n statusName,\n statusDate,\n statusSince,\n statusDetails: statusDetails[shantytown.status],\n fieldType: {\n ...shantytown.fieldType,\n color: fieldTypeColors[shantytown.fieldType.id]\n },\n electricityType: {\n ...shantytown.electricityType,\n value: electricityValue\n },\n justiceStatuses,\n totalSolutions\n };\n}\n\nconst statusDetails = {\n closed_by_justice: \"Exécution d'une décision de justice\",\n closed_by_admin: \"Exécution d'une décision administrative\",\n other: \"Autre\",\n unknown: \"Raison inconnue\"\n};\n","import Vue from \"vue\";\nimport Vuex from \"vuex\";\nimport {\n all as fetchAll,\n get as fetchOne,\n addActor,\n removeActor,\n updateActorThemes,\n removeActorTheme,\n inviteNewActor\n} from \"#helpers/api/town\";\nimport enrichShantytown from \"#app/pages/TownsList/enrichShantytown\";\nimport { get as getConfig } from \"#helpers/api/config\";\n\nVue.use(Vuex);\n\nexport default new Vuex.Store({\n state: {\n towns: {\n data: [],\n loading: true,\n error: null,\n sort: \"updatedAt\",\n filters: {\n population: [],\n fieldType: [],\n justice: [],\n origin: [],\n conditions: [],\n status: \"open\",\n location: null,\n actors: []\n },\n currentPage: 1\n },\n detailedTown: null\n },\n mutations: {\n setLoading(state, value) {\n state.towns.loading = value;\n },\n setTowns(state, towns) {\n state.towns.data = towns;\n },\n setError(state, err) {\n state.towns.error = err;\n },\n setSort(state, sort) {\n state.towns.sort = sort;\n },\n setFilters(state, filters) {\n state.towns.filters = filters;\n },\n setLocation(state, location) {\n state.towns.filters.location = location;\n },\n setCurrentPage(state, page) {\n state.towns.currentPage = page;\n },\n setDetailedTown(state, town) {\n state.detailedTown = town;\n },\n updateShantytownActors(state, { townId, actors }) {\n if (\n state.detailedTown !== null &&\n state.detailedTown.id === townId\n ) {\n state.detailedTown.actors = actors;\n }\n\n const town = state.towns.data.find(({ id }) => id === townId);\n if (town !== undefined) {\n town.actors = actors;\n }\n },\n updateShantytownActorThemes(state, { townId, userId, themes }) {\n if (\n state.detailedTown !== null &&\n state.detailedTown.id === townId\n ) {\n const actor = state.detailedTown.actors.find(\n ({ id }) => id === userId\n );\n if (actor !== undefined) {\n actor.themes = themes;\n }\n }\n\n const town = state.towns.data.find(({ id }) => id === townId);\n if (town !== undefined) {\n const actor = town.actors.find(({ id }) => id === userId);\n if (actor !== undefined) {\n actor.themes = themes;\n }\n }\n }\n },\n actions: {\n async fetchTowns({ commit }) {\n commit(\"setLoading\", true);\n try {\n const { user, field_types: fieldTypes } = getConfig();\n\n if (\n user.organization.location.type !== \"nation\" &&\n user.role_id !== \"national_admin\"\n ) {\n commit(\"setLocation\", {\n id:\n user.organization.location[\n user.organization.location.type\n ].code,\n label:\n user.organization.location[\n user.organization.location.type\n ].name,\n category: user.organization.location.type,\n locationType: user.organization.location.type,\n code:\n user.organization.location[\n user.organization.location.type\n ].code,\n data: {\n code:\n user.organization.location[\n user.organization.location.type\n ].code,\n type: user.organization.location.type\n }\n });\n }\n\n const originalTowns = await fetchAll();\n const towns = originalTowns.map(s =>\n enrichShantytown(s, fieldTypes)\n );\n commit(\"setTowns\", towns);\n commit(\"setLoading\", false);\n } catch (err) {\n commit(\"setError\", err);\n commit(\"setLoading\", false);\n }\n },\n\n async fetchTownDetails({ commit }, id) {\n const { field_types: fieldTypes } = getConfig();\n const town = enrichShantytown(await fetchOne(id), fieldTypes);\n commit(\"setDetailedTown\", town);\n },\n\n async addTownActor({ commit }, { townId, actor }) {\n const { actors } = await addActor(townId, actor);\n commit(\"updateShantytownActors\", { townId, actors });\n },\n\n async removeTownActor({ commit }, { townId, userId }) {\n const { actors } = await removeActor(townId, userId);\n commit(\"updateShantytownActors\", { townId, actors });\n },\n\n async updateTownActorThemes({ commit }, { townId, userId, themes }) {\n const { themes: updatedThemes } = await updateActorThemes(\n townId,\n userId,\n themes\n );\n commit(\"updateShantytownActorThemes\", {\n townId,\n userId,\n themes: updatedThemes\n });\n },\n\n async removeTownActorTheme({ commit }, { townId, userId, themeId }) {\n const { themes } = await removeActorTheme(townId, userId, themeId);\n commit(\"updateShantytownActorThemes\", { townId, userId, themes });\n },\n\n inviteNewTownActor(args, { townId, email }) {\n return inviteNewActor(townId, email);\n }\n },\n getters: {\n towns: state => {\n return state.towns.data;\n },\n detailedTown: state => {\n return state.detailedTown;\n },\n townsLoading: state => {\n return state.towns.loading;\n },\n townsError: state => {\n return state.towns.error;\n },\n townsFilters: state => {\n return state.towns.filters;\n },\n townsSort: state => {\n return state.towns.sort;\n },\n townsCurrentPage: state => {\n return state.towns.currentPage;\n }\n }\n});\n","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsList.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownsList.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownsList.vue?vue&type=template&id=35d5110e&\"\nimport script from \"./TownsList.vue?vue&type=script&lang=js&\"\nexport * from \"./TownsList.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('PrivateLayout',[_c('TownForm',{attrs:{\"mode\":\"create\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ValidationObserver',{ref:\"form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.submit($event)}},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('form',[_c('div',{staticClass:\"bg-G100 py-8\"},[_c('PrivateContainer',{staticClass:\"flex justify-between items-baseline\"},[_c('div',{staticClass:\"text-display-lg\"},[_vm._v(_vm._s(_vm.submitWording))]),_c('div',[_c('Button',{attrs:{\"variant\":\"primaryText\"},on:{\"click\":_vm.back}},[_vm._v(\"Annuler\")]),_c('Button',{staticClass:\"ml-5\",attrs:{\"variant\":\"tertiary\",\"loading\":_vm.loading,\"data-cy-button\":\"submit\"}},[_vm._v(\"Valider\")])],1)])],1),_c('PrivateContainer',{staticClass:\"flex pt-10\"},[_c('TownFormLeftColumn',{staticClass:\"leftColumnWidth\"}),_c('div',{staticClass:\"flex-1\"},[(_vm.showInfo)?_c('TownFormPanelInfo',{on:{\"close\":function($event){return _vm.closeInfo()}}}):_vm._e(),_c('TownFormErrorLog',{staticClass:\"mt-8 mb-8\",attrs:{\"id\":\"erreurs\",\"errors\":errors}}),_c('TownFormPanelLocation',{staticClass:\"mt-10\",model:{value:(_vm.town.location),callback:function ($$v) {_vm.$set(_vm.town, \"location\", $$v)},expression:\"town.location\"}}),_c('TownFormPanelCharacteristics',{staticClass:\"mt-10 townPanelShadow\",attrs:{\"id\":\"characteristics\"},model:{value:(_vm.town.characteristics),callback:function ($$v) {_vm.$set(_vm.town, \"characteristics\", $$v)},expression:\"town.characteristics\"}}),_c('TownFormPanelPeople',{staticClass:\"mt-10 townPanelShadow\",attrs:{\"id\":\"people\"},model:{value:(_vm.town.people),callback:function ($$v) {_vm.$set(_vm.town, \"people\", $$v)},expression:\"town.people\"}}),_c('TownFormPanelLivingConditions',{staticClass:\"mt-10 townPanelShadow\",attrs:{\"id\":\"living_conditions\",\"population\":_vm.town.people.population},model:{value:(_vm.town.living_conditions),callback:function ($$v) {_vm.$set(_vm.town, \"living_conditions\", $$v)},expression:\"town.living_conditions\"}}),_c('TownFormPanelJudicial',{staticClass:\"mt-10 townPanelShadow\",attrs:{\"id\":\"judicial\"},model:{value:(_vm.town.judicial),callback:function ($$v) {_vm.$set(_vm.town, \"judicial\", $$v)},expression:\"town.judicial\"}}),_c('div',{staticClass:\"mt-8 text-right italic text-red font-bold\"},[_vm._v(\" * : Réponses obligatoires \")])],1)],1),_c('div',{staticClass:\"pt-12 pb-16\"},[_c('PrivateContainer',{staticClass:\"flex justify-end items-baseline\"},[_c('Button',{attrs:{\"variant\":\"primaryText\"},on:{\"click\":_vm.back}},[_vm._v(\"Annuler\")]),_c('Button',{staticClass:\"ml-5\",attrs:{\"variant\":\"tertiary\",\"loading\":_vm.loading}},[_vm._v(\"Valider\")])],1)],1)],1)]}}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"rounded-full inline-block bg-yellow-400 w-6 h-6 text-center text-xs align-middle leading-6\"},[_c('Icon',{attrs:{\"icon\":\"flag\"}})],1),_c('span',{staticClass:\"ml-2 font-bold\"},[_vm._v(\"Qu'est-ce qu'un site ?\")]),_c('span',{staticClass:\"ml-2\",on:{\"click\":_vm.toggle}},[_c('Icon',{staticClass:\"cursor-pointer\",attrs:{\"icon\":_vm.togglerIcon}})],1),_c('transition',{attrs:{\"name\":\"toggle\",\"mode\":\"out-in\"}},[(_vm.visible)?_c('div',{staticClass:\"bg-yellow-200 p-6 mt-2 flex\"},[_vm._v(\" Un site est un bidonville ou squat occupé de manière informelle à des fins d'habitation par plusieurs familles ou personnes, les services de base (eau, électricité, gestion des déchets…) y sont généralement absents. Tous les sites, quelque soit l'origine et le nombre des personnes, peuvent être renseignés. \")]):_vm._e()])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormPanelInfo.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormPanelInfo.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownFormPanelInfo.vue?vue&type=template&id=640d947d&scoped=true&\"\nimport script from \"./TownFormPanelInfo.vue?vue&type=script&lang=js&\"\nexport * from \"./TownFormPanelInfo.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TownFormPanelInfo.vue?vue&type=style&index=0&id=640d947d&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"640d947d\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"bg-gray-200 flex\"},[_c('div',{staticClass:\"p-5 flex-grow\"},[_c('FormParagraph',{attrs:{\"title\":\"Adresse\",\"showMandatoryStar\":true}},[_c('InputAddress',{on:{\"change\":_vm.onAddressChange},model:{value:(_vm.input.address),callback:function ($$v) {_vm.$set(_vm.input, \"address\", $$v)},expression:\"input.address\"}})],1),_c('FormParagraph',{attrs:{\"title\":\"Appellation du site\"}},[_c('InputName',{model:{value:(_vm.input.name),callback:function ($$v) {_vm.$set(_vm.input, \"name\", $$v)},expression:\"input.name\"}})],1)],1),(_vm.input.address.label)?_c('div',{staticClass:\"w-96 h-96\"},[_c('InputCoordinates',{model:{value:(_vm.input.coordinates),callback:function ($$v) {_vm.$set(_vm.input, \"coordinates\", $$v)},expression:\"input.coordinates\"}})],1):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('AutocompleteV2',{attrs:{\"id\":\"address\",\"label\":\"\",\"prefixIcon\":\"search\",\"search\":_vm.autocomplete,\"getResultValue\":_vm.getResultValue,\"validationName\":\"Adresse\",\"data-cy-field\":\"address\",\"defaultValue\":_vm.value},on:{\"submit\":_vm.submit}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputAddress.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputAddress.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputAddress.vue?vue&type=template&id=a788fd2e&\"\nimport script from \"./InputAddress.vue?vue&type=script&lang=js&\"\nexport * from \"./InputAddress.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TextInput',{attrs:{\"id\":\"name\",\"label\":\"\",\"info\":\"Exemples : Entrepôt de la Poste, Rond-point du centre...\",\"cypressName\":\"name\"},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputName.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputName.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputName.vue?vue&type=template&id=57536b9d&\"\nimport script from \"./InputName.vue?vue&type=script&lang=js&\"\nexport * from \"./InputName.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('MapV2',{attrs:{\"zoom\":_vm.zoom},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputCoordinates.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputCoordinates.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputCoordinates.vue?vue&type=template&id=43397fc8&\"\nimport script from \"./InputCoordinates.vue?vue&type=script&lang=js&\"\nexport * from \"./InputCoordinates.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormPanelLocation.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormPanelLocation.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownFormPanelLocation.vue?vue&type=template&id=122226e9&\"\nimport script from \"./TownFormPanelLocation.vue?vue&type=script&lang=js&\"\nexport * from \"./TownFormPanelLocation.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('FormGroup',{attrs:{\"title\":\"Caractéristiques du site\"}},[_c('FormParagraph',{staticClass:\"w-128\",attrs:{\"title\":\"Quelles sont les dates clés du site ?\"}},[_c('div',{staticClass:\"w-64\"},[_c('InputBuiltAt',{model:{value:(_vm.input.built_at),callback:function ($$v) {_vm.$set(_vm.input, \"built_at\", $$v)},expression:\"input.built_at\"}}),_c('InputDeclaredAt',{attrs:{\"disableBefore\":_vm.input.built_at},model:{value:(_vm.input.declared_at),callback:function ($$v) {_vm.$set(_vm.input, \"declared_at\", $$v)},expression:\"input.declared_at\"}})],1),_c('InputFieldType',{model:{value:(_vm.input.field_type),callback:function ($$v) {_vm.$set(_vm.input, \"field_type\", $$v)},expression:\"input.field_type\"}}),_c('InputDetailedAddress',{model:{value:(_vm.input.detailed_address),callback:function ($$v) {_vm.$set(_vm.input, \"detailed_address\", $$v)},expression:\"input.detailed_address\"}})],1),_c('FormParagraph',{staticClass:\"w-128\",attrs:{\"title\":\"Quel est le propriétaire ?\",\"showMandatoryStar\":true}},[_c('InputOwnerType',{ref:\"ownerType\",model:{value:(_vm.input.owner_type),callback:function ($$v) {_vm.$set(_vm.input, \"owner_type\", $$v)},expression:\"input.owner_type\"}}),(!_vm.ownerTypeIsUnknown)?_c('InputOwner',{model:{value:(_vm.input.owner),callback:function ($$v) {_vm.$set(_vm.input, \"owner\", $$v)},expression:\"input.owner\"}}):_vm._e()],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('DatepickerV2',{attrs:{\"id\":\"built_at\",\"label\":\"Date d'installation\",\"rules\":\"required\",\"showMandatoryStar\":true,\"disabled-dates\":{ from: new Date() },\"cypressName\":\"built_at\"},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputBuiltAt.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputBuiltAt.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputBuiltAt.vue?vue&type=template&id=39abd0ab&\"\nimport script from \"./InputBuiltAt.vue?vue&type=script&lang=js&\"\nexport * from \"./InputBuiltAt.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('DatepickerV2',{attrs:{\"id\":\"declared_at\",\"label\":\"Date de signalement\",\"rules\":\"declaredAfterInstallation:@built_at\",\"disabled-dates\":{ to: this.disableBefore, from: new Date() },\"cypressName\":\"declared_at\"},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputDeclaredAt.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputDeclaredAt.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputDeclaredAt.vue?vue&type=template&id=4c805684&\"\nimport script from \"./InputDeclaredAt.vue?vue&type=script&lang=js&\"\nexport * from \"./InputDeclaredAt.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\"Type de site\",\"id\":\"field_type\",\"showMandatoryStar\":true,\"rules\":\"required\"}},_vm._l((_vm.values),function(value){return _c('Radio',{key:value.id,attrs:{\"variant\":\"card\",\"label\":value.label,\"checkValue\":value.id,\"cypressName\":\"field_type\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputFieldType.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputFieldType.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputFieldType.vue?vue&type=template&id=7c1fb40c&\"\nimport script from \"./InputFieldType.vue?vue&type=script&lang=js&\"\nexport * from \"./InputFieldType.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TextInput',{attrs:{\"label\":\"Informations d'accès\",\"info\":\"Saisissez ici toutes les informations qui, en plus de l'adresse, peuvent être utiles pour l'accès au site.\",\"cypressName\":\"detailed_address\"},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputDetailedAddress.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputDetailedAddress.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputDetailedAddress.vue?vue&type=template&id=322f64ae&\"\nimport script from \"./InputDetailedAddress.vue?vue&type=script&lang=js&\"\nexport * from \"./InputDetailedAddress.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\" \",\"id\":\"owner_type\",\"validationName\":\"Type de propriétaire\",\"rules\":\"required\"}},_vm._l((_vm.values),function(value){return _c('Radio',{key:value.id,attrs:{\"variant\":\"card\",\"label\":value.label,\"checkValue\":value.id,\"cypressName\":\"owner_type\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputOwnerType.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputOwnerType.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputOwnerType.vue?vue&type=template&id=b94be39a&\"\nimport script from \"./InputOwnerType.vue?vue&type=script&lang=js&\"\nexport * from \"./InputOwnerType.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TextInput',{attrs:{\"id\":\"owner\",\"label\":\"Nom\",\"cypressName\":\"owner\"},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputOwner.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputOwner.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputOwner.vue?vue&type=template&id=26fba180&\"\nimport script from \"./InputOwner.vue?vue&type=script&lang=js&\"\nexport * from \"./InputOwner.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormPanelCharacteristics.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormPanelCharacteristics.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownFormPanelCharacteristics.vue?vue&type=template&id=6b9fb9e0&\"\nimport script from \"./TownFormPanelCharacteristics.vue?vue&type=script&lang=js&\"\nexport * from \"./TownFormPanelCharacteristics.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('FormGroup',{attrs:{\"title\":\"Habitants\"}},[_c('FormParagraph',{attrs:{\"title\":\"Combien d'habitants vivent sur le site ?\"}},[_c('InputPopulation',{model:{value:(_vm.input.population),callback:function ($$v) {_vm.$set(_vm.input, \"population\", $$v)},expression:\"input.population\"}}),_c('InputPopulationMinors',{model:{value:(_vm.input.populationMinors),callback:function ($$v) {_vm.$set(_vm.input, \"populationMinors\", $$v)},expression:\"input.populationMinors\"}})],1),_c('FormParagraph',{attrs:{\"title\":\"Quelle est l'origine des habitants ?\"}},[_c('InputSocialOrigins',{model:{value:(_vm.input.social_origins),callback:function ($$v) {_vm.$set(_vm.input, \"social_origins\", $$v)},expression:\"input.social_origins\"}})],1),_c('FormParagraph',{attrs:{\"title\":\"Quel est le statut du diagnostic social ?\",\"showMandatoryStar\":true}},[_c('InputCensusStatus',{ref:\"censusStatus\",model:{value:(_vm.input.census_status),callback:function ($$v) {_vm.$set(_vm.input, \"census_status\", $$v)},expression:\"input.census_status\"}}),(!_vm.censusStatusIsUnknown)?_c('div',{staticClass:\"w-64\"},[_c('InputCensusConductedAt',{model:{value:(_vm.input.census_conducted_at),callback:function ($$v) {_vm.$set(_vm.input, \"census_conducted_at\", $$v)},expression:\"input.census_conducted_at\"}})],1):_vm._e(),(!_vm.censusStatusIsUnknown)?_c('InputCensusConductedBy',{model:{value:(_vm.input.census_conducted_by),callback:function ($$v) {_vm.$set(_vm.input, \"census_conducted_by\", $$v)},expression:\"input.census_conducted_by\"}}):_vm._e()],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"mb-3 text-G600\"},[_vm._v(\" Le nombre de personnes sur un site est mouvant, les données fournies par les acteurs - même des estimations - participent à l'amélioration de la connaissance. \")]),_c('div',{staticClass:\"flex\"},[_c('TextInput',{staticClass:\"w-32\",attrs:{\"id\":\"population_total\",\"label\":\"Personnes\",\"rules\":\"numeric|min_value:0\",\"cypressName\":\"population_total\"},model:{value:(_vm.input.populationTotal),callback:function ($$v) {_vm.$set(_vm.input, \"populationTotal\", $$v)},expression:\"input.populationTotal\"}}),_c('TextInput',{staticClass:\"w-32 ml-5\",attrs:{\"id\":\"population_couples\",\"label\":\"Ménages\",\"rules\":\"numeric|min_value:0|couplesLesserThanTotal:@population_total\",\"cypressName\":\"population_couples\"},model:{value:(_vm.input.populationCouples),callback:function ($$v) {_vm.$set(_vm.input, \"populationCouples\", $$v)},expression:\"input.populationCouples\"}}),_c('TextInput',{staticClass:\"w-32 ml-5\",attrs:{\"id\":\"population_minors\",\"label\":\"Mineurs\",\"rules\":\"numeric|min_value:0|minorsLesserThanTotal:@population_total\",\"cypressName\":\"population_minors\"},model:{value:(_vm.input.populationMinors),callback:function ($$v) {_vm.$set(_vm.input, \"populationMinors\", $$v)},expression:\"input.populationMinors\"}})],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputPopulation.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputPopulation.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputPopulation.vue?vue&type=template&id=757c9d5c&\"\nimport script from \"./InputPopulation.vue?vue&type=script&lang=js&\"\nexport * from \"./InputPopulation.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"flex\"},[_c('TextInput',{staticClass:\"w-32\",attrs:{\"id\":\"population_minors_0_3\",\"label\":\"0 - 3 ans\",\"rules\":\"numeric|min_value:0\",\"cypressName\":\"population_minors_0_3\"},model:{value:(_vm.input.populationMinors0To3),callback:function ($$v) {_vm.$set(_vm.input, \"populationMinors0To3\", $$v)},expression:\"input.populationMinors0To3\"}}),_c('TextInput',{staticClass:\"w-32 ml-5\",attrs:{\"id\":\"population_minors_3_6\",\"label\":\"3 - 6 ans\",\"rules\":\"numeric|min_value:0\",\"cypressName\":\"population_minors_3_6\"},model:{value:(_vm.input.populationMinors3To6),callback:function ($$v) {_vm.$set(_vm.input, \"populationMinors3To6\", $$v)},expression:\"input.populationMinors3To6\"}}),_c('TextInput',{staticClass:\"w-32 ml-5\",attrs:{\"id\":\"population_minors_6_12\",\"label\":\"6 - 12 ans\",\"rules\":\"numeric|min_value:0\",\"cypressName\":\"population_minors_6_12\"},model:{value:(_vm.input.populationMinors6To12),callback:function ($$v) {_vm.$set(_vm.input, \"populationMinors6To12\", $$v)},expression:\"input.populationMinors6To12\"}}),_c('TextInput',{staticClass:\"w-32 ml-5\",attrs:{\"id\":\"population_minors_12_16\",\"label\":\"12 - 16 ans\",\"rules\":\"numeric|min_value:0\",\"cypressName\":\"population_minors_12_16\"},model:{value:(_vm.input.populationMinors12To16),callback:function ($$v) {_vm.$set(_vm.input, \"populationMinors12To16\", $$v)},expression:\"input.populationMinors12To16\"}}),_c('TextInput',{staticClass:\"w-32 ml-5\",attrs:{\"id\":\"population_minors_16_18\",\"label\":\"16 - 18 ans\",\"rules\":\"numeric|min_value:0\",\"cypressName\":\"population_minors_16_18\"},model:{value:(_vm.input.populationMinors16To18),callback:function ($$v) {_vm.$set(_vm.input, \"populationMinors16To18\", $$v)},expression:\"input.populationMinors16To18\"}})],1),_c('div',{staticClass:\"flex\"},[_c('TextInput',{attrs:{\"id\":\"minors_in_school\",\"label\":\"Inscrits en établissement scolaire\",\"width\":\"w-32\",\"rules\":\"numeric|min_value:0\",\"cypressName\":\"minors_in_school\"},model:{value:(_vm.input.minorsInSchool),callback:function ($$v) {_vm.$set(_vm.input, \"minorsInSchool\", $$v)},expression:\"input.minorsInSchool\"}})],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputPopulationMinors.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputPopulationMinors.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputPopulationMinors.vue?vue&type=template&id=f8962378&\"\nimport script from \"./InputPopulationMinors.vue?vue&type=script&lang=js&\"\nexport * from \"./InputPopulationMinors.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\" \"}},_vm._l((_vm.values),function(value){return _c('Checkbox',{key:value.id,attrs:{\"variant\":\"card\",\"label\":value.label,\"checkValue\":value.id,\"cypressName\":\"social_origins\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputSocialOrigins.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputSocialOrigins.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputSocialOrigins.vue?vue&type=template&id=1fb0df3b&\"\nimport script from \"./InputSocialOrigins.vue?vue&type=script&lang=js&\"\nexport * from \"./InputSocialOrigins.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\" \",\"id\":\"census_status\",\"rules\":\"required\",\"validationName\":\"Statut du diagnostic social\"}},_vm._l((_vm.statuses),function(status){return _c('Radio',{key:status.value,attrs:{\"variant\":\"card\",\"label\":status.label,\"checkValue\":status.value,\"cypressName\":\"census_status\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputCensusStatus.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputCensusStatus.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputCensusStatus.vue?vue&type=template&id=579e8b3f&\"\nimport script from \"./InputCensusStatus.vue?vue&type=script&lang=js&\"\nexport * from \"./InputCensusStatus.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('DatepickerV2',{attrs:{\"id\":\"census_conducted_at\",\"rules\":\"required|censusConductedAfterCreation:@built_at\",\"label\":\"Date du diagnostic\",\"data-cy-field\":\"census_conducted_at\",\"showMandatoryStar\":true},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputCensusConductedAt.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputCensusConductedAt.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputCensusConductedAt.vue?vue&type=template&id=4056eb74&\"\nimport script from \"./InputCensusConductedAt.vue?vue&type=script&lang=js&\"\nexport * from \"./InputCensusConductedAt.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TextInput',{attrs:{\"id\":\"census_conducted_by\",\"label\":\"Intervenant en charge du diagnostic\",\"rules\":\"required\",\"cypressName\":\"census_conducted_by\",\"showMandatoryStar\":true},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputCensusConductedBy.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputCensusConductedBy.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputCensusConductedBy.vue?vue&type=template&id=24500c11&\"\nimport script from \"./InputCensusConductedBy.vue?vue&type=script&lang=js&\"\nexport * from \"./InputCensusConductedBy.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormPanelPeople.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormPanelPeople.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownFormPanelPeople.vue?vue&type=template&id=f78162a4&\"\nimport script from \"./TownFormPanelPeople.vue?vue&type=script&lang=js&\"\nexport * from \"./TownFormPanelPeople.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('FormGroup',{attrs:{\"title\":\"Conditions de vie et environnement\"}},[_c('FormParagraph',{attrs:{\"title\":\"Les habitants ont-ils accès à l'eau ?\",\"showMandatoryStar\":true}},[_c('InputAccessToWater',{model:{value:(_vm.input.access_to_water),callback:function ($$v) {_vm.$set(_vm.input, \"access_to_water\", $$v)},expression:\"input.access_to_water\"}}),(_vm.input.access_to_water === 1)?_c('div',{staticClass:\"ml-12\"},[_c('InputWaterPotable',{model:{value:(_vm.input.water_potable),callback:function ($$v) {_vm.$set(_vm.input, \"water_potable\", $$v)},expression:\"input.water_potable\"}}),_c('InputWaterContinuousAccess',{model:{value:(_vm.input.water_continuous_access),callback:function ($$v) {_vm.$set(_vm.input, \"water_continuous_access\", $$v)},expression:\"input.water_continuous_access\"}}),_c('InputWaterPublicPoint',{model:{value:(_vm.input.water_public_point),callback:function ($$v) {_vm.$set(_vm.input, \"water_public_point\", $$v)},expression:\"input.water_public_point\"}}),_c('InputWaterDistance',{model:{value:(_vm.input.water_distance),callback:function ($$v) {_vm.$set(_vm.input, \"water_distance\", $$v)},expression:\"input.water_distance\"}}),_c('InputWaterRoadsToCross',{model:{value:(_vm.input.water_roads_to_cross),callback:function ($$v) {_vm.$set(_vm.input, \"water_roads_to_cross\", $$v)},expression:\"input.water_roads_to_cross\"}}),_c('InputWaterEveryoneHasAccess',{model:{value:(_vm.input.water_everyone_has_access),callback:function ($$v) {_vm.$set(_vm.input, \"water_everyone_has_access\", $$v)},expression:\"input.water_everyone_has_access\"}}),_c('InputWaterStagnantWater',{model:{value:(_vm.input.water_stagnant_water),callback:function ($$v) {_vm.$set(_vm.input, \"water_stagnant_water\", $$v)},expression:\"input.water_stagnant_water\"}}),_c('div',{},[_c('InputWaterHandWashAccess',{attrs:{\"withoutBorder\":\"\"},model:{value:(_vm.input.water_hand_wash_access),callback:function ($$v) {_vm.$set(_vm.input, \"water_hand_wash_access\", $$v)},expression:\"input.water_hand_wash_access\"}}),(_vm.input.water_hand_wash_access > 0)?_c('InputWaterHandWashNumber',{attrs:{\"population\":_vm.population},model:{value:(_vm.input.water_hand_wash_access_number),callback:function ($$v) {_vm.$set(_vm.input, \"water_hand_wash_access_number\", $$v)},expression:\"input.water_hand_wash_access_number\"}}):_vm._e()],1)],1):_vm._e(),_c('div',{staticClass:\"ml-12 mt-6\"},[_c('InputWaterComments',{attrs:{\"rules\":_vm.input.access_to_water === 1 &&\n _vm.input.water_public_point > 0\n ? 'required'\n : ''},model:{value:(_vm.input.water_comments),callback:function ($$v) {_vm.$set(_vm.input, \"water_comments\", $$v)},expression:\"input.water_comments\"}})],1)],1),_c('FormParagraph',{attrs:{\"title\":\"Les habitants ont-ils accès à des toilettes ?\",\"showMandatoryStar\":true}},[_c('InputAccessToSanitary',{model:{value:(_vm.input.access_to_sanitary),callback:function ($$v) {_vm.$set(_vm.input, \"access_to_sanitary\", $$v)},expression:\"input.access_to_sanitary\"}}),(_vm.input.access_to_sanitary === 1)?_c('div',{staticClass:\"ml-12\"},[_c('InputSanitaryOnSite',{model:{value:(_vm.input.sanitary_on_site),callback:function ($$v) {_vm.$set(_vm.input, \"sanitary_on_site\", $$v)},expression:\"input.sanitary_on_site\"}}),_c('InputSanitaryNumber',{attrs:{\"population\":_vm.population},model:{value:(_vm.input.sanitary_number),callback:function ($$v) {_vm.$set(_vm.input, \"sanitary_number\", $$v)},expression:\"input.sanitary_number\"}}),_c('InputSanitaryInsalubrious',{staticClass:\"mb-6\",model:{value:(_vm.input.sanitary_insalubrious),callback:function ($$v) {_vm.$set(_vm.input, \"sanitary_insalubrious\", $$v)},expression:\"input.sanitary_insalubrious\"}})],1):_vm._e(),_c('div',{staticClass:\"ml-12 mt-6\"},[_c('InputSanitaryComments',{model:{value:(_vm.input.sanitary_comments),callback:function ($$v) {_vm.$set(_vm.input, \"sanitary_comments\", $$v)},expression:\"input.sanitary_comments\"}})],1)],1),_c('FormParagraph',{attrs:{\"title\":\"Les habitants ont-ils accès à l'électricité ?\",\"showMandatoryStar\":true}},[_c('InputElectricityType',{model:{value:(_vm.input.electricity_type),callback:function ($$v) {_vm.$set(_vm.input, \"electricity_type\", $$v)},expression:\"input.electricity_type\"}}),_c('div',{staticClass:\"ml-12\"},[_c('InputElectricityComments',{model:{value:(_vm.input.electricity_comments),callback:function ($$v) {_vm.$set(_vm.input, \"electricity_comments\", $$v)},expression:\"input.electricity_comments\"}})],1)],1),_c('FormParagraph',{attrs:{\"title\":\"Le ramassage des déchets est-il organisé ?\",\"showMandatoryStar\":true}},[_c('InputTrashEvacuation',{model:{value:(_vm.input.trash_evacuation),callback:function ($$v) {_vm.$set(_vm.input, \"trash_evacuation\", $$v)},expression:\"input.trash_evacuation\"}}),(_vm.input.trash_evacuation === 1)?_c('div',{staticClass:\"ml-12\"},[_c('InputTrashEvacuationRegular',{model:{value:(_vm.input.trash_evacuation_regular),callback:function ($$v) {_vm.$set(_vm.input, \"trash_evacuation_regular\", $$v)},expression:\"input.trash_evacuation_regular\"}}),_c('InputTrashAccumulation',{model:{value:(_vm.input.trash_accumulation),callback:function ($$v) {_vm.$set(_vm.input, \"trash_accumulation\", $$v)},expression:\"input.trash_accumulation\"}}),_c('InputTrashCansOnSite',{model:{value:(_vm.input.trash_cans_on_site),callback:function ($$v) {_vm.$set(_vm.input, \"trash_cans_on_site\", $$v)},expression:\"input.trash_cans_on_site\"}})],1):_vm._e()],1),_c('FormParagraph',{attrs:{\"title\":\"Y a-t-il des nuisibles sur le site ou à proximité ?\"}},[_c('InputVermin',{model:{value:(_vm.input.vermin),callback:function ($$v) {_vm.$set(_vm.input, \"vermin\", $$v)},expression:\"input.vermin\"}}),_c('div',{staticClass:\"ml-12\"},[_c('InputVerminComments',{model:{value:(_vm.input.vermin_comments),callback:function ($$v) {_vm.$set(_vm.input, \"vermin_comments\", $$v)},expression:\"input.vermin_comments\"}})],1)],1),_c('FormParagraph',{attrs:{\"title\":\"Y a-t-il des mesures prévention incendie ?\"}},[_c('InputFirePreventionMeasures',{model:{value:(_vm.input.fire_prevention_measures),callback:function ($$v) {_vm.$set(_vm.input, \"fire_prevention_measures\", $$v)},expression:\"input.fire_prevention_measures\"}}),(_vm.input.fire_prevention_measures === 1)?_c('div',{staticClass:\"ml-12\"},[_c('InputFirePreventionDiagnostic',{model:{value:(_vm.input.fire_prevention_diagnostic),callback:function ($$v) {_vm.$set(_vm.input, \"fire_prevention_diagnostic\", $$v)},expression:\"input.fire_prevention_diagnostic\"}}),_c('InputFirePreventionSiteAccessible',{model:{value:(_vm.input.fire_prevention_site_accessible),callback:function ($$v) {_vm.$set(_vm.input, \"fire_prevention_site_accessible\", $$v)},expression:\"input.fire_prevention_site_accessible\"}}),_c('InputFirePreventionDevices',{model:{value:(_vm.input.fire_prevention_devices),callback:function ($$v) {_vm.$set(_vm.input, \"fire_prevention_devices\", $$v)},expression:\"input.fire_prevention_devices\"}})],1):_vm._e(),_c('div',{staticClass:\"ml-12 mt-6\"},[_c('InputFirePreventionComments',{model:{value:(_vm.input.fire_prevention_comments),callback:function ($$v) {_vm.$set(_vm.input, \"fire_prevention_comments\", $$v)},expression:\"input.fire_prevention_comments\"}})],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\" \",\"direction\":\"horizontal\",\"id\":\"access_to_water\",\"validationName\":\"Accès à l'eau\",\"rules\":\"required\",\"withoutMargin\":true}},[_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Oui\",\"checkValue\":1,\"cypressName\":\"access_to_water\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Non\",\"checkValue\":0,\"cypressName\":\"access_to_water\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Inconnu\",\"checkValue\":-1,\"cypressName\":\"access_to_water\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputAccessToWater.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputAccessToWater.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputAccessToWater.vue?vue&type=template&id=1dfbb97a&\"\nimport script from \"./InputAccessToWater.vue?vue&type=script&lang=js&\"\nexport * from \"./InputAccessToWater.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TextArea',{attrs:{\"id\":\"water_comments\",\"rules\":_vm.rules === 'required' ? 'waterComments' : '',\"label\":\"Modalités d'accès\",\"info\":\"Exemples : citerne remplie par les pompiers tous les jours, 3 robinets raccordés par la collectivité, borne incendie… Champ obligatoire si le point d'eau est public.\",\"placeholder\":\"Votre message\",\"cypressName\":\"water_comments\"},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterComments.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterComments.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputWaterComments.vue?vue&type=template&id=2cc53c54&\"\nimport script from \"./InputWaterComments.vue?vue&type=script&lang=js&\"\nexport * from \"./InputWaterComments.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\" \",\"direction\":\"horizontal\",\"id\":\"electricity_type\",\"validationName\":\"Accès à l'électricité\",\"rules\":\"required\"}},_vm._l((_vm.values),function(value){return _c('Radio',{key:value.id,attrs:{\"variant\":\"card\",\"label\":value.label,\"checkValue\":value.id,\"cypressName\":\"electricity_type\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputElectricityType.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputElectricityType.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputElectricityType.vue?vue&type=template&id=034f2bb5&\"\nimport script from \"./InputElectricityType.vue?vue&type=script&lang=js&\"\nexport * from \"./InputElectricityType.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TextArea',{attrs:{\"id\":\"electricity_comments\",\"label\":\"Modalités d'accès\",\"info\":\"Exemples : groupe électrogène, raccordement à une usine...\",\"cypressName\":\"electricity_comments\",\"placeholder\":\"Votre message\"},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputElectricityComments.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputElectricityComments.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputElectricityComments.vue?vue&type=template&id=96c8bf72&\"\nimport script from \"./InputElectricityComments.vue?vue&type=script&lang=js&\"\nexport * from \"./InputElectricityComments.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\" \",\"direction\":\"horizontal\",\"id\":\"access_to_sanitary\",\"validationName\":\"Accès à des toilettes\",\"rules\":\"required\",\"withoutMargin\":true}},[_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Oui\",\"checkValue\":1,\"cypressName\":\"access_to_sanitary\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Non\",\"checkValue\":0,\"cypressName\":\"access_to_sanitary\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Inconnu\",\"checkValue\":-1,\"cypressName\":\"access_to_sanitary\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputAccessToSanitary.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputAccessToSanitary.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputAccessToSanitary.vue?vue&type=template&id=3353aead&\"\nimport script from \"./InputAccessToSanitary.vue?vue&type=script&lang=js&\"\nexport * from \"./InputAccessToSanitary.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TextArea',{attrs:{\"id\":\"sanitary_comments\",\"label\":\"Modalités d'accès\",\"info\":\"Exemples : toilettes sèches avec fosse / sèches sans fosse, chimiques, raccordées au réseau des eaux usées \",\"cypressName\":\"sanitary_comments\",\"placeholder\":\"Votre message\"},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputSanitaryComments.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputSanitaryComments.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputSanitaryComments.vue?vue&type=template&id=7617d886&\"\nimport script from \"./InputSanitaryComments.vue?vue&type=script&lang=js&\"\nexport * from \"./InputSanitaryComments.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\" \",\"direction\":\"horizontal\",\"id\":\"trash_evacuation\",\"validationName\":\"Évacuation des déchets\",\"rules\":\"required\"}},[_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Oui\",\"checkValue\":1,\"cypressName\":\"trash_evacuation\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Non\",\"checkValue\":0,\"cypressName\":\"trash_evacuation\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Inconnu\",\"checkValue\":-1,\"cypressName\":\"trash_evacuation\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputTrashEvacuation.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputTrashEvacuation.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputTrashEvacuation.vue?vue&type=template&id=10c10272&\"\nimport script from \"./InputTrashEvacuation.vue?vue&type=script&lang=js&\"\nexport * from \"./InputTrashEvacuation.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"L'eau est-elle potable ?\"}},[_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"type\":\"checkbox\",\"label\":\"Oui\",\"checkValue\":1,\"cypressName\":\"water_potable\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"type\":\"checkbox\",\"label\":\"Non\",\"checkValue\":0,\"cypressName\":\"water_potable\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:[\n 'flex flex-row items-center py-1',\n _vm.spaceBetween ? 'justify-between' : '',\n _vm.withoutBorder ? '' : 'border-b border-color-G600'\n ]},[_c('div',{class:['max-w-2xl', !_vm.spaceBetween && 'mr-4']},[_vm._v(_vm._s(_vm.label))]),_c('div',{staticClass:\"flex-shrink-0 ml-2\"},[_vm._t(\"default\")],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SubQuestionWrapper.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SubQuestionWrapper.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SubQuestionWrapper.vue?vue&type=template&id=27c09bd0&\"\nimport script from \"./SubQuestionWrapper.vue?vue&type=script&lang=js&\"\nexport * from \"./SubQuestionWrapper.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterPotable.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterPotable.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputWaterPotable.vue?vue&type=template&id=47486ec1&\"\nimport script from \"./InputWaterPotable.vue?vue&type=script&lang=js&\"\nexport * from \"./InputWaterPotable.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"L'accès est-il continu ? c'est-à-dire qu'il ne varie pas en qualité et en quantité dans la journée et les saisons, sans limite dans le temps.\"}},[_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"label\":\"Oui\",\"checkValue\":1,\"type\":\"checkbox\",\"cypressName\":\"water_continuous_access\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"label\":\"Non\",\"checkValue\":0,\"type\":\"checkbox\",\"cypressName\":\"water_continuous_access\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterContinuousAccess.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterContinuousAccess.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputWaterContinuousAccess.vue?vue&type=template&id=3e6a02e4&\"\nimport script from \"./InputWaterContinuousAccess.vue?vue&type=script&lang=js&\"\nexport * from \"./InputWaterContinuousAccess.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"Est-ce un point d'eau public ? (robinet, fontaine publique...)\"}},[_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"label\":\"Oui\",\"type\":\"checkbox\",\"checkValue\":1,\"cypressName\":\"water_public_point\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"label\":\"Non\",\"type\":\"checkbox\",\"checkValue\":0,\"cypressName\":\"water_public_point\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterPublicPoint.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterPublicPoint.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputWaterPublicPoint.vue?vue&type=template&id=b88c258a&\"\nimport script from \"./InputWaterPublicPoint.vue?vue&type=script&lang=js&\"\nexport * from \"./InputWaterPublicPoint.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"Où se situe l'accès ?\"}},[_c('CheckableGroup',{attrs:{\"direction\":\"vertical\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"label\":\"sur site ou à moins de 20 mètres\",\"checkValue\":\"0-20\",\"type\":\"checkbox\",\"cypressName\":\"water_distance\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"label\":\"entre 20 et 50 mètres du site\",\"checkValue\":\"20-50\",\"type\":\"checkbox\",\"cypressName\":\"water_distance\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"label\":\"entre 50 et 100 mètres du site\",\"checkValue\":\"50-100\",\"type\":\"checkbox\",\"cypressName\":\"water_distance\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"label\":\"à plus de 100 mètres du site\",\"checkValue\":\"100+\",\"type\":\"checkbox\",\"cypressName\":\"water_distance\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterDistance.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterDistance.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputWaterDistance.vue?vue&type=template&id=6b892180&\"\nimport script from \"./InputWaterDistance.vue?vue&type=script&lang=js&\"\nexport * from \"./InputWaterDistance.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"L'accès nécessite-t-il un franchissement de rue ou de route ?\"}},[_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"label\":\"Oui\",\"type\":\"checkbox\",\"checkValue\":1,\"cypressName\":\"water_roads_to_cross\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"label\":\"Non\",\"type\":\"checkbox\",\"checkValue\":0,\"cypressName\":\"water_roads_to_cross\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterRoadsToCross.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterRoadsToCross.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputWaterRoadsToCross.vue?vue&type=template&id=223219da&\"\nimport script from \"./InputWaterRoadsToCross.vue?vue&type=script&lang=js&\"\nexport * from \"./InputWaterRoadsToCross.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"Tous les habitants ont-ils accès aux points d'eau ?\"}},[_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"label\":\"Oui\",\"type\":\"checkbox\",\"checkValue\":1,\"cypressName\":\"water_everyone_has_access\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"label\":\"Non\",\"type\":\"checkbox\",\"checkValue\":0,\"cypressName\":\"water_everyone_has_access\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterEveryoneHasAccess.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterEveryoneHasAccess.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputWaterEveryoneHasAccess.vue?vue&type=template&id=edff7f2e&\"\nimport script from \"./InputWaterEveryoneHasAccess.vue?vue&type=script&lang=js&\"\nexport * from \"./InputWaterEveryoneHasAccess.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"Existe-t-il des eaux stagnantes autour du point de distribution ?\"}},[_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"label\":\"Oui\",\"type\":\"checkbox\",\"checkValue\":1,\"cypressName\":\"water_stagnant_water\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"label\":\"Non\",\"type\":\"checkbox\",\"checkValue\":0,\"cypressName\":\"water_stagnant_water\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterStagnantWater.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterStagnantWater.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputWaterStagnantWater.vue?vue&type=template&id=1013b782&\"\nimport script from \"./InputWaterStagnantWater.vue?vue&type=script&lang=js&\"\nexport * from \"./InputWaterStagnantWater.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"Est-ce qu'il y a des bacs de lavage des mains ?\",\"withoutBorder\":_vm.withoutBorder}},[_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"label\":\"Oui\",\"type\":\"checkbox\",\"checkValue\":1,\"cypressName\":\"water_hand_wash_access\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"label\":\"Non\",\"type\":\"checkbox\",\"checkValue\":0,\"cypressName\":\"water_hand_wash_access\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterHandWashAccess.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterHandWashAccess.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputWaterHandWashAccess.vue?vue&type=template&id=2658f61c&\"\nimport script from \"./InputWaterHandWashAccess.vue?vue&type=script&lang=js&\"\nexport * from \"./InputWaterHandWashAccess.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"flex items-center\"},[_c('div',{staticClass:\"mr-4\"},[_vm._v(\"Nombre de bacs\")]),_c('InlineTextInput',{staticClass:\"w-16\",attrs:{\"cypressName\":\"water_hand_wash_access_number\",\"size\":\"sm\"},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}}),(Number(_vm.input) > 0 && _vm.ratio && _vm.population.populationTotal)?_c('div',{staticClass:\"ml-4\"},[_vm._v(\" Soit 1 bac pour \"+_vm._s(_vm.ratio)+\" personnes \")]):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterHandWashNumber.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputWaterHandWashNumber.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputWaterHandWashNumber.vue?vue&type=template&id=cfd39c52&\"\nimport script from \"./InputWaterHandWashNumber.vue?vue&type=script&lang=js&\"\nexport * from \"./InputWaterHandWashNumber.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"Nombre de toilettes\",\"space-between\":false}},[_c('div',{staticClass:\"flex items-center\"},[_c('InlineTextInput',{staticClass:\"w-16\",attrs:{\"cypressName\":\"sanitary_number\",\"size\":\"sm\",\"type\":\"number\"},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}}),(Number(_vm.input) > 0 && _vm.ratio && _vm.population.populationTotal)?_c('div',{staticClass:\"ml-4\"},[_vm._v(\" Soit 1 toilette pour \"+_vm._s(_vm.ratio)+\" personnes \")]):_vm._e()],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputSanitaryNumber.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputSanitaryNumber.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputSanitaryNumber.vue?vue&type=template&id=1a59c7f9&\"\nimport script from \"./InputSanitaryNumber.vue?vue&type=script&lang=js&\"\nexport * from \"./InputSanitaryNumber.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"Constate-t-on des marques de défécation à l'air libre ?\"}},[_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"type\":\"checkbox\",\"label\":\"Oui\",\"checkValue\":1,\"cypressName\":\"sanitary_insalubrious\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"type\":\"checkbox\",\"label\":\"Non\",\"checkValue\":0,\"cypressName\":\"sanitary_insalubrious\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputSanitaryInsalubrious.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputSanitaryInsalubrious.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputSanitaryInsalubrious.vue?vue&type=template&id=24275192&\"\nimport script from \"./InputSanitaryInsalubrious.vue?vue&type=script&lang=js&\"\nexport * from \"./InputSanitaryInsalubrious.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"Les toilettes se situent-elles sur le site ?\"}},[_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"type\":\"checkbox\",\"label\":\"Oui\",\"checkValue\":1,\"cypressName\":\"sanitary_on_site\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"type\":\"checkbox\",\"label\":\"Non\",\"checkValue\":0,\"cypressName\":\"sanitary_on_site\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputSanitaryOnSite.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputSanitaryOnSite.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputSanitaryOnSite.vue?vue&type=template&id=4354e999&\"\nimport script from \"./InputSanitaryOnSite.vue?vue&type=script&lang=js&\"\nexport * from \"./InputSanitaryOnSite.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"Combien de poubelles / benes sont à proximité immédiate du site (moins de 100 mètres) ?\",\"withoutMargin\":\"\"}},[_c('InlineTextInput',{staticClass:\"w-16\",attrs:{\"size\":\"sm\",\"cypressName\":\"trash_cans_on_site\"},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputTrashCansOnSite.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputTrashCansOnSite.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputTrashCansOnSite.vue?vue&type=template&id=e4e792e8&\"\nimport script from \"./InputTrashCansOnSite.vue?vue&type=script&lang=js&\"\nexport * from \"./InputTrashCansOnSite.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"Constate-t-on une accumulation de déchets sur le site ou aux abords ?\"}},[_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"label\":\"Oui\",\"type\":\"checkbox\",\"checkValue\":1,\"cypressName\":\"trash_accumulation\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"label\":\"Non\",\"type\":\"checkbox\",\"checkValue\":0,\"cypressName\":\"trash_accumulation\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputTrashAccumulation.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputTrashAccumulation.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputTrashAccumulation.vue?vue&type=template&id=9c318682&\"\nimport script from \"./InputTrashAccumulation.vue?vue&type=script&lang=js&\"\nexport * from \"./InputTrashAccumulation.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"La collecte des poubelles / bennes est-elle réalisée de manière régulière ? (C'est-à-dire au moins une fois par semaine, à partir d'un point de dépôt spécialement aménagé sur le site ou à proximité immédiate)\"}},[_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"label\":\"Oui\",\"type\":\"checkbox\",\"checkValue\":1,\"cypressName\":\"trash_evacuation_regular\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"label\":\"Non\",\"type\":\"checkbox\",\"checkValue\":0,\"cypressName\":\"trash_evacuation_regular\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputTrashEvacuationRegular.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputTrashEvacuationRegular.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputTrashEvacuationRegular.vue?vue&type=template&id=3a1325ff&\"\nimport script from \"./InputTrashEvacuationRegular.vue?vue&type=script&lang=js&\"\nexport * from \"./InputTrashEvacuationRegular.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\" \",\"direction\":\"horizontal\",\"id\":\"vermin\",\"validationName\":\"Y a-t-il des nuisibles sur le site ou à proximité\",\"rules\":\"required\"}},[_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Oui\",\"checkValue\":1,\"cypressName\":\"vermin\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Non\",\"checkValue\":0,\"cypressName\":\"vermin\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Inconnu\",\"checkValue\":-1,\"cypressName\":\"vermin\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputVermin.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputVermin.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputVermin.vue?vue&type=template&id=670cda82&\"\nimport script from \"./InputVermin.vue?vue&type=script&lang=js&\"\nexport * from \"./InputVermin.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TextArea',{attrs:{\"id\":\"vermin_comments\",\"placeholder\":\"Votre message\",\"label\":\"Précisions (rats, punaises de lits...)\",\"cypressName\":\"vermin_comments\"},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputVerminComments.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputVerminComments.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputVerminComments.vue?vue&type=template&id=b20f9ae8&\"\nimport script from \"./InputVerminComments.vue?vue&type=script&lang=js&\"\nexport * from \"./InputVerminComments.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\" \",\"direction\":\"horizontal\",\"id\":\"fire_prevention_measures\",\"validationName\":\"Mesures de prévention incendie\",\"rules\":\"required\"}},[_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Oui\",\"checkValue\":1,\"cypressName\":\"fire_prevention_measures\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Non\",\"checkValue\":0,\"cypressName\":\"fire_prevention_measures\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Inconnu\",\"checkValue\":-1,\"cypressName\":\"fire_prevention_measures\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputFirePreventionMeasures.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputFirePreventionMeasures.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputFirePreventionMeasures.vue?vue&type=template&id=2dabb878&\"\nimport script from \"./InputFirePreventionMeasures.vue?vue&type=script&lang=js&\"\nexport * from \"./InputFirePreventionMeasures.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"Est-ce qu’un diagnostic prévention incendie par le SDIS (Service départemental d'incendie et de secours) a été réalisé ?\"}},[_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"label\":\"Oui\",\"type\":\"checkbox\",\"checkValue\":1,\"cypressName\":\"fire_prevention_diagnostic\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"label\":\"Non\",\"type\":\"checkbox\",\"checkValue\":0,\"cypressName\":\"fire_prevention_diagnostic\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputFirePreventionDiagnostic.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputFirePreventionDiagnostic.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputFirePreventionDiagnostic.vue?vue&type=template&id=58748486&\"\nimport script from \"./InputFirePreventionDiagnostic.vue?vue&type=script&lang=js&\"\nexport * from \"./InputFirePreventionDiagnostic.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"Est-ce que le site est accessible aux pompiers ?\"}},[_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"label\":\"Oui\",\"type\":\"checkbox\",\"checkValue\":1,\"cypressName\":\"fire_prevention_site_accessible\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"label\":\"Non\",\"type\":\"checkbox\",\"checkValue\":0,\"cypressName\":\"fire_prevention_site_accessible\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputFirePreventionSiteAccessible.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputFirePreventionSiteAccessible.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputFirePreventionSiteAccessible.vue?vue&type=template&id=9da4d8e2&\"\nimport script from \"./InputFirePreventionSiteAccessible.vue?vue&type=script&lang=js&\"\nexport * from \"./InputFirePreventionSiteAccessible.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TextArea',{attrs:{\"id\":\"fire_prevention_comments\",\"label\":\"Précisions\",\"placeholder\":\"Votre message\",\"cypressName\":\"fire_prevention_comments\"},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputFirePreventionComments.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputFirePreventionComments.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputFirePreventionComments.vue?vue&type=template&id=9597c952&\"\nimport script from \"./InputFirePreventionComments.vue?vue&type=script&lang=js&\"\nexport * from \"./InputFirePreventionComments.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SubQuestionWrapper',{attrs:{\"label\":\"Est-ce que des dispositifs spécifiques (formation, extincteurs...) ont été mis en place ?\"}},[_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"withoutMargin\":\"\"}},[_c('Radio',{attrs:{\"label\":\"Oui\",\"type\":\"checkbox\",\"checkValue\":1,\"cypressName\":\"fire_prevention_devices\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"label\":\"Non\",\"type\":\"checkbox\",\"checkValue\":0,\"cypressName\":\"fire_prevention_devices\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputFirePreventionDevices.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputFirePreventionDevices.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputFirePreventionDevices.vue?vue&type=template&id=d1aba9a4&\"\nimport script from \"./InputFirePreventionDevices.vue?vue&type=script&lang=js&\"\nexport * from \"./InputFirePreventionDevices.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormPanelLivingConditions.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormPanelLivingConditions.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownFormPanelLivingConditions.vue?vue&type=template&id=8af24486&\"\nimport script from \"./TownFormPanelLivingConditions.vue?vue&type=script&lang=js&\"\nexport * from \"./TownFormPanelLivingConditions.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('FormGroup',{attrs:{\"title\":\"Procédure judiciaire\"}},[_c('FormParagraph',{attrs:{\"title\":\"Une plainte a-t-elle été déposée par le propriétaire ?\",\"showMandatoryStar\":true}},[_c('InputOwnerComplaint',{model:{value:(_vm.input.owner_complaint),callback:function ($$v) {_vm.$set(_vm.input, \"owner_complaint\", $$v)},expression:\"input.owner_complaint\"}})],1),_c('FormParagraph',{attrs:{\"title\":\"Une procédure judiciaire est-elle en cours ?\"}},[_c('InputJusticeProcedure',{model:{value:(_vm.input.justice_procedure),callback:function ($$v) {_vm.$set(_vm.input, \"justice_procedure\", $$v)},expression:\"input.justice_procedure\"}}),(_vm.input.justice_procedure === 1)?_c('InputJusticeRendered',{model:{value:(_vm.input.justice_rendered),callback:function ($$v) {_vm.$set(_vm.input, \"justice_rendered\", $$v)},expression:\"input.justice_rendered\"}}):_vm._e(),_c('div',{staticClass:\"w-64\"},[(_vm.input.justice_rendered === 1)?_c('InputJusticeRenderedAt',{model:{value:(_vm.input.justice_rendered_at),callback:function ($$v) {_vm.$set(_vm.input, \"justice_rendered_at\", $$v)},expression:\"input.justice_rendered_at\"}}):_vm._e()],1),_c('div',{staticClass:\"w-128\"},[(_vm.input.justice_rendered === 1)?_c('InputJusticeRenderedBy',{model:{value:(_vm.input.justice_rendered_by),callback:function ($$v) {_vm.$set(_vm.input, \"justice_rendered_by\", $$v)},expression:\"input.justice_rendered_by\"}}):_vm._e()],1),(_vm.input.justice_rendered === 1)?_c('InputJusticeChallenged',{model:{value:(_vm.input.justice_challenged),callback:function ($$v) {_vm.$set(_vm.input, \"justice_challenged\", $$v)},expression:\"input.justice_challenged\"}}):_vm._e(),_c('InputPoliceStatus',{ref:\"policeStatus\",model:{value:(_vm.input.police_status),callback:function ($$v) {_vm.$set(_vm.input, \"police_status\", $$v)},expression:\"input.police_status\"}}),_c('div',{staticClass:\"w-64\"},[(_vm.policeWasRequested)?_c('InputPoliceRequestedAt',{model:{value:(_vm.input.police_requested_at),callback:function ($$v) {_vm.$set(_vm.input, \"police_requested_at\", $$v)},expression:\"input.police_requested_at\"}}):_vm._e()],1),_c('div',{staticClass:\"w-64\"},[(_vm.policeWasGranted)?_c('InputPoliceGrantedAt',{model:{value:(_vm.input.police_granted_at),callback:function ($$v) {_vm.$set(_vm.input, \"police_granted_at\", $$v)},expression:\"input.police_granted_at\"}}):_vm._e()],1),_c('div',{staticClass:\"w-128\"},[_c('InputBailiff',{model:{value:(_vm.input.bailiff),callback:function ($$v) {_vm.$set(_vm.input, \"bailiff\", $$v)},expression:\"input.bailiff\"}})],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\" \",\"direction\":\"horizontal\",\"id\":\"owner_complaint\",\"validationName\":\"Plainte de propriétaire\",\"rules\":\"required\"}},[_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Oui\",\"checkValue\":1,\"cypressName\":\"owner_complaint\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Non\",\"checkValue\":0,\"cypressName\":\"owner_complaint\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Inconnu\",\"checkValue\":-1,\"cypressName\":\"owner_complaint\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputOwnerComplaint.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputOwnerComplaint.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputOwnerComplaint.vue?vue&type=template&id=015ada51&\"\nimport script from \"./InputOwnerComplaint.vue?vue&type=script&lang=js&\"\nexport * from \"./InputOwnerComplaint.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\"Existence d'une procédure judiciaire\",\"direction\":\"horizontal\",\"id\":\"justice_procedure\",\"rules\":\"required\",\"showMandatoryStar\":true}},[_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Oui\",\"checkValue\":1,\"cypressName\":\"justice_procedure\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Non\",\"checkValue\":0,\"cypressName\":\"justice_procedure\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Inconnu\",\"checkValue\":-1,\"cypressName\":\"justice_procedure\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputJusticeProcedure.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputJusticeProcedure.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputJusticeProcedure.vue?vue&type=template&id=9295ce4c&\"\nimport script from \"./InputJusticeProcedure.vue?vue&type=script&lang=js&\"\nexport * from \"./InputJusticeProcedure.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\"Décision de justice rendue\",\"direction\":\"horizontal\",\"id\":\"justice_rendered\",\"rules\":\"required\",\"showMandatoryStar\":true}},[_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Oui\",\"checkValue\":1,\"cypressName\":\"justice_rendered\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Non\",\"checkValue\":0,\"cypressName\":\"justice_rendered\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Inconnu\",\"checkValue\":-1,\"cypressName\":\"justice_rendered\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputJusticeRendered.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputJusticeRendered.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputJusticeRendered.vue?vue&type=template&id=1c2891cc&\"\nimport script from \"./InputJusticeRendered.vue?vue&type=script&lang=js&\"\nexport * from \"./InputJusticeRendered.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('DatepickerV2',{attrs:{\"label\":\"Date de la décision\",\"id\":\"justice_rendered_at\",\"rules\":\"required|renderedAfterInstallation:@built_at\",\"data-cy-field\":\"justice_rendered_at\",\"showMandatoryStar\":true},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputJusticeRenderedAt.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputJusticeRenderedAt.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputJusticeRenderedAt.vue?vue&type=template&id=0d0798ab&\"\nimport script from \"./InputJusticeRenderedAt.vue?vue&type=script&lang=js&\"\nexport * from \"./InputJusticeRenderedAt.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TextInput',{attrs:{\"id\":\"justice_rendered_by\",\"label\":\"Origine de la décision\",\"info\":\"Exemple : tribunal de grande instance\",\"rules\":\"required\",\"cypressName\":\"justice_rendered_by\",\"showMandatoryStar\":true},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputJusticeRenderedBy.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputJusticeRenderedBy.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputJusticeRenderedBy.vue?vue&type=template&id=fd6dc4b8&\"\nimport script from \"./InputJusticeRenderedBy.vue?vue&type=script&lang=js&\"\nexport * from \"./InputJusticeRenderedBy.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\"Existence d'un contentieux\",\"direction\":\"horizontal\",\"id\":\"justice_challenged\",\"rules\":\"required\",\"showMandatoryStar\":true}},[_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Oui\",\"checkValue\":1,\"cypressName\":\"justice_challenged\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Non\",\"checkValue\":0,\"cypressName\":\"justice_challenged\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}}),_c('Radio',{attrs:{\"variant\":\"card\",\"label\":\"Inconnu\",\"checkValue\":-1,\"cypressName\":\"justice_challenged\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputJusticeChallenged.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputJusticeChallenged.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputJusticeChallenged.vue?vue&type=template&id=9789afb2&\"\nimport script from \"./InputJusticeChallenged.vue?vue&type=script&lang=js&\"\nexport * from \"./InputJusticeChallenged.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('CheckableGroup',{attrs:{\"label\":\"Statut du concours de la force publique\",\"id\":\"police_status\",\"rules\":\"required\",\"showMandatoryStar\":true}},_vm._l((_vm.statuses),function(status){return _c('Radio',{key:status.value,attrs:{\"variant\":\"card\",\"label\":status.label,\"checkValue\":status.value,\"cypressName\":\"police_status\"},model:{value:(_vm.checked),callback:function ($$v) {_vm.checked=$$v},expression:\"checked\"}})}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputPoliceStatus.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputPoliceStatus.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputPoliceStatus.vue?vue&type=template&id=6f203046&\"\nimport script from \"./InputPoliceStatus.vue?vue&type=script&lang=js&\"\nexport * from \"./InputPoliceStatus.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('DatepickerV2',{attrs:{\"id\":\"police_requested_at\",\"label\":\"Date de la demande du CFP\",\"rules\":\"required|requestedAfterCreation:@built_at\",\"data-cy-field\":\"police_requested_at\",\"showMandatoryStar\":true},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputPoliceRequestedAt.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputPoliceRequestedAt.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputPoliceRequestedAt.vue?vue&type=template&id=65cdd17f&\"\nimport script from \"./InputPoliceRequestedAt.vue?vue&type=script&lang=js&\"\nexport * from \"./InputPoliceRequestedAt.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('DatepickerV2',{attrs:{\"label\":\"Date d'octroi du CFP\",\"id\":\"police_granted_at\",\"rules\":\"required|grantedAfterCreation:@built_at|grantedAfterRequest:@police_requested_at\",\"data-cy-field\":\"police_granted_at\",\"showMandatoryStar\":true},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputPoliceGrantedAt.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputPoliceGrantedAt.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputPoliceGrantedAt.vue?vue&type=template&id=addfe69a&\"\nimport script from \"./InputPoliceGrantedAt.vue?vue&type=script&lang=js&\"\nexport * from \"./InputPoliceGrantedAt.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TextInput',{attrs:{\"label\":\"Nom de l'étude de l'huissier\",\"id\":\"bailiff\",\"cypressName\":\"bailiff\"},model:{value:(_vm.input),callback:function ($$v) {_vm.input=$$v},expression:\"input\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputBailiff.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputBailiff.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./InputBailiff.vue?vue&type=template&id=381ae6c6&\"\nimport script from \"./InputBailiff.vue?vue&type=script&lang=js&\"\nexport * from \"./InputBailiff.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormPanelJudicial.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormPanelJudicial.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownFormPanelJudicial.vue?vue&type=template&id=b07537a6&\"\nimport script from \"./TownFormPanelJudicial.vue?vue&type=script&lang=js&\"\nexport * from \"./TownFormPanelJudicial.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"sticky stickyColumn\"},[_c('div',{staticClass:\"font-bold\"},[_vm._v(\"Rubriques\")]),_c('LeftColumnNavLink',{attrs:{\"to\":\"#characteristics\",\"activeSection\":_vm.activeSection === 'characteristics'}},[_vm._v(\"Caractéristiques du site\")]),_c('LeftColumnNavLink',{attrs:{\"to\":\"#people\",\"activeSection\":_vm.activeSection === 'people'}},[_vm._v(\"Habitants\")]),_c('LeftColumnNavLink',{attrs:{\"to\":\"#living_conditions\",\"activeSection\":_vm.activeSection === 'living_conditions'}},[_vm._v(\"Conditions de vie et environnement\")]),_c('LeftColumnNavLink',{attrs:{\"to\":\"#judicial\",\"activeSection\":_vm.activeSection === 'judicial'}},[_vm._v(\"Procédure judiciaire\")])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:[\n 'pl-2 border-l-4 my-2',\n _vm.activeSection\n ? 'text-primary border-primary'\n : 'border-transparent'\n ]},[_c('router-link',{attrs:{\"to\":_vm.to}},[_vm._t(\"default\")],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LeftColumnNavLink.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LeftColumnNavLink.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LeftColumnNavLink.vue?vue&type=template&id=a3c5e2d4&\"\nimport script from \"./LeftColumnNavLink.vue?vue&type=script&lang=js&\"\nexport * from \"./LeftColumnNavLink.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormLeftColumn.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormLeftColumn.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownFormLeftColumn.vue?vue&type=template&id=3c84c0c2&scoped=true&\"\nimport script from \"./TownFormLeftColumn.vue?vue&type=script&lang=js&\"\nexport * from \"./TownFormLeftColumn.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TownFormLeftColumn.vue?vue&type=style&index=0&id=3c84c0c2&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3c84c0c2\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (Object.values(_vm.errors).filter(function (err) { return err.length; }).length)?_c('div',{staticClass:\"bg-red200 p-6\"},[_vm._v(\" Le formulaire comprend des erreurs : \"),_c('ul',{staticClass:\"mt-4\"},_vm._l((_vm.errors),function(error,inputId){return _c('li',{directives:[{name:\"show\",rawName:\"v-show\",value:(error.length),expression:\"error.length\"}],key:inputId},[_c('router-link',{staticClass:\"link\",attrs:{\"to\":{ hash: inputId }}},[_vm._v(_vm._s(error[0]))])],1)}),0)]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormErrorLog.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownFormErrorLog.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownFormErrorLog.vue?vue&type=template&id=6ff828fe&\"\nimport script from \"./TownFormErrorLog.vue?vue&type=script&lang=js&\"\nexport * from \"./TownFormErrorLog.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownForm.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownForm.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownForm.vue?vue&type=template&id=76d7e233&scoped=true&\"\nimport script from \"./TownForm.vue?vue&type=script&lang=js&\"\nexport * from \"./TownForm.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TownForm.vue?vue&type=style&index=0&id=76d7e233&scoped=true&lang=css&\"\nimport style1 from \"./TownForm.vue?vue&type=style&index=1&id=76d7e233&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"76d7e233\",\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownCreate.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownCreate.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownCreate.vue?vue&type=template&id=0f5c2fab&\"\nimport script from \"./TownCreate.vue?vue&type=script&lang=js&\"\nexport * from \"./TownCreate.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.error !== null)?_c('PrivateLayout',[_c('div',{staticClass:\"bg-red600 text-center text-primary text-display-lg mt-16\"},[_vm._v(\" \"+_vm._s(_vm.error)+\" \")])]):(_vm.town === null)?_c('PrivateLayout',[_c('div',{staticClass:\"text-center text-primary text-display-lg mt-16\"},[_c('Spinner')],1)]):_c('PrivateLayout',[_c('TownForm',{attrs:{\"mode\":\"update\",\"data\":_vm.town}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownUpdate.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownUpdate.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownUpdate.vue?vue&type=template&id=f2615eb6&\"\nimport script from \"./TownUpdate.vue?vue&type=script&lang=js&\"\nexport * from \"./TownUpdate.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.loading)?_c('PrivateLayout',[_c('div',{staticClass:\"text-center text-primary text-display-lg mt-16\"},[_c('Spinner')],1)]):(_vm.error !== null)?_c('PrivateLayout',[_c('div',{staticClass:\"text-center text-error text-primary text-display-lg mt-16\"},[_vm._v(\" \"+_vm._s(_vm.error)+\" \")])]):_c('PrivateLayout',[(_vm.town)?_c('PrivateContainer',{staticClass:\"py-10\"},[_c('TownDetailsHeader',{attrs:{\"town\":_vm.town},on:{\"openCancel\":_vm.openCancel,\"openCovid\":_vm.openCovid,\"deleteTown\":_vm.deleteTown}}),_c('div',{staticClass:\"flex pt-10 \"},[_c('TownDetailsLeftColumn',{staticClass:\"leftColumnWidth\",attrs:{\"hasJusticePermission\":_vm.hasJusticePermission,\"town\":_vm.town},on:{\"openHistory\":_vm.openHistory}}),_c('div',{staticClass:\"flex-1\"},[_c('TownDetailsPanelCharacteristics',{staticClass:\"mb-10\",attrs:{\"town\":_vm.town,\"id\":\"characteristics\"}}),_c('TownDetailsPanelPeople',{staticClass:\"mb-10\",attrs:{\"town\":_vm.town,\"id\":\"people\"}}),_c('TownDetailsPanelLivingConditions',{staticClass:\"mb-10\",attrs:{\"town\":_vm.town,\"id\":\"living_conditions\"}}),(_vm.hasJusticePermission)?_c('TownDetailsPanelJudicial',{staticClass:\"mb-10\",attrs:{\"town\":_vm.town,\"id\":\"judicial\"}}):_vm._e()],1)],1)],1):_vm._e(),(_vm.town.comments.regular.length)?_c('div',{class:[\n 'bg-orange200',\n 'pt-10',\n _vm.town.comments.regular.length > 0 && 'pb-32'\n ]},[_c('PrivateContainer',{staticClass:\"flex\",attrs:{\"id\":\"comments\"}},[_c('div',{staticClass:\"leftColumnWidth\"}),_c('TownDetailsComments',{staticClass:\"flex-1\",attrs:{\"comments\":_vm.town.comments.regular}})],1)],1):_vm._e(),_c('TownDetailsHistorySidePanel',{attrs:{\"town\":_vm.town,\"isOpen\":_vm.historyOpen,\"closePanel\":function () { return (_vm.historyOpen = false); }}}),_c('TownDetailsCovidCommentsSidePanel',{attrs:{\"town\":_vm.town,\"isOpen\":_vm.covidOpen,\"closePanel\":function () { return (_vm.covidOpen = false); }},on:{\"updateTown\":function($event){_vm.town = $event}}}),_c('TownDetailsCloseModal',{attrs:{\"town\":_vm.town,\"isOpen\":_vm.closeOpen},on:{\"closeModal\":function($event){_vm.closeOpen = false},\"updateTown\":function($event){_vm.town = $event}}}),(_vm.actorThemesOpen)?_c('TownDetailsActorThemesModal',{attrs:{\"town\":_vm.town},on:{\"closeModal\":function($event){_vm.actorThemesOpen = false}}}):_vm._e(),_c('TownDetailsInviteActorModal',{attrs:{\"townId\":_vm.town.id,\"isOpen\":_vm.inviteActorOpen},on:{\"closeModal\":function($event){_vm.inviteActorOpen = false}}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',[_c('div',{attrs:{\"data-cy-data\":\"city\"}},[_vm._v(\" \"+_vm._s(_vm.town.city.name)+\" (\"+_vm._s(_vm.town.departement.name)+\") \")]),_c('div',{staticClass:\"text-display-lg\",attrs:{\"data-cy-data\":\"address\"}},[_vm._v(\" \"+_vm._s(_vm.town.addressSimple)+\" \"),(_vm.town.name)?_c('span',{staticClass:\"text-display-xs\"},[_vm._v(\"« \"+_vm._s(_vm.town.name)+\" »\")]):_vm._e()])]),_c('div',{staticClass:\"flex items-center\"},[_c('div',{staticClass:\"flex items-center uppercase text-sm mr-4\"},[_c('div',{staticClass:\"rounded-full bg-corail h-3 w-3 mr-2 \"}),_vm._v(\" Mis à jour le \"+_vm._s(_vm.formatDate(_vm.town.updatedAt, \"d/m/y\"))+\" \")]),_c('div',{staticClass:\"flex items-center text-red uppercase text-xs font-bold cursor-pointer\",on:{\"click\":function($event){return _vm.$emit('openCovid')}}},[_c('Icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"comment\"}}),_c('div',[_vm._v(\" \"+_vm._s(this.town.comments.covid.length || 0)+\" commentaires covid \")])],1)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsHeader.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsHeader.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsHeader.vue?vue&type=template&id=fe51113c&\"\nimport script from \"./TownDetailsHeader.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsHeader.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"sticky stickyColumn\"},[_c('div',{staticClass:\"font-bold\"},[_vm._v(\"Rubriques\")]),_c('LeftColumnNavLink',{attrs:{\"to\":\"#characteristics\",\"activeSection\":_vm.activeSection === 'characteristics'}},[_vm._v(\"Caractéristiques du site\")]),_c('LeftColumnNavLink',{attrs:{\"to\":\"#people\",\"activeSection\":_vm.activeSection === 'people'}},[_vm._v(\"Habitants\")]),_c('LeftColumnNavLink',{attrs:{\"to\":\"#living_conditions\",\"activeSection\":_vm.activeSection === 'living_conditions'}},[_vm._v(\"Conditions de vie et environnement\")]),(_vm.hasJusticePermission)?_c('LeftColumnNavLink',{attrs:{\"to\":\"#judicial\",\"activeSection\":_vm.activeSection === 'judicial'}},[_vm._v(\"Procédure judiciaire\")]):_vm._e(),_c('LeftColumnNavLink',{attrs:{\"to\":\"#intervenants\",\"activeSection\":_vm.activeSection === 'intervenants'}},[_vm._v(\"Intervenants\")]),(_vm.town.comments.regular.length > 0)?_c('router-link',{staticClass:\"text-secondary\",attrs:{\"to\":\"#comments\"},nativeOn:{\"click\":function($event){return _vm.scrollFix('#comments')}}},[_c('div',{staticClass:\"flex text-secondary font-bold mt-4 cursor-pointer\"},[_c('Icon',{attrs:{\"icon\":\"comment\"}}),_c('div',{staticClass:\"ml-2\"},[_c('div',[_vm._v(\"Le journal du site\")]),_c('div',[_vm._v(\" \"+_vm._s(_vm.town.comments.regular.length)+\" message\"+_vm._s(_vm.town.comments.regular.length > 1 ? \"s\" : \"\")+\" \")])])],1)]):_vm._e(),_c('div',{staticClass:\"flex text-primary font-bold mt-4 cursor-pointer\",on:{\"click\":function($event){return _vm.$emit('openHistory')}}},[_c('Icon',{attrs:{\"icon\":\"history\"}}),_c('div',{staticClass:\"ml-2\"},[_vm._v(\"Voir l'historique des modifications\")])],1)],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:[\n 'pl-2 border-l-4 my-2',\n _vm.activeSection\n ? 'text-primary border-primary'\n : 'border-transparent'\n ]},[_c('router-link',{attrs:{\"to\":_vm.to}},[_vm._t(\"default\")],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LeftColumnNavLink.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LeftColumnNavLink.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LeftColumnNavLink.vue?vue&type=template&id=109ff0c0&\"\nimport script from \"./LeftColumnNavLink.vue?vue&type=script&lang=js&\"\nexport * from \"./LeftColumnNavLink.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsLeftColumn.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsLeftColumn.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsLeftColumn.vue?vue&type=template&id=3d4f402c&scoped=true&\"\nimport script from \"./TownDetailsLeftColumn.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsLeftColumn.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TownDetailsLeftColumn.vue?vue&type=style&index=0&id=3d4f402c&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3d4f402c\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TownDetailsPanel',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\"Caractéristiques du site\")]},proxy:true},{key:\"body\",fn:function(){return [_c('div',{staticClass:\"flex\"},[_c('div',{staticClass:\"w-1/2 pr-8\"},[_c('TownDetailsPanelSection',[_c('div',{staticClass:\"grid grid-cols-2\"},[_c('div',[_c('div',{staticClass:\"font-bold\"},[_vm._v(\" Installé depuis \")]),(_vm.town.builtAt)?_c('div',[_c('div',[_vm._v(\" \"+_vm._s(_vm.formatDateSince(_vm.town.builtAt))+\" \")]),_c('div',{attrs:{\"data-cy-data\":\"built_at\"}},[_vm._v(\" \"+_vm._s(_vm.buildAt)+\" \")])]):_c('div',{attrs:{\"data-cy-data\":\"built_at\"}},[_vm._v(\" non communiquée \")])]),_c('div',[_c('div',{staticClass:\"font-bold\"},[_vm._v(\" Signalé depuis \")]),(_vm.town.declaredAt)?_c('div',[_c('div',[_vm._v(\" \"+_vm._s(_vm.formatDateSince(_vm.town.declaredAt))+\" \")]),_c('div',{attrs:{\"data-cy-data\":\"declared_at\"}},[_vm._v(\" \"+_vm._s(_vm.declaredAt)+\" \")])]):_c('div',{attrs:{\"data-cy-data\":\"declared_at\"}},[_vm._v(\" non communiquée \")])])])]),_c('TownDetailsPanelSection',[_c('div',{staticClass:\"grid grid-cols-2\"},[_c('div',{staticClass:\"font-bold\"},[_vm._v(\" Type de site \")]),_c('div',{staticClass:\"flex items-center\",attrs:{\"data-cy-data\":\"field_type\"}},[_c('Icon',{staticClass:\"text-lg mr-2\",style:((\"color: \" + (_vm.town.fieldType.color))),attrs:{\"icon\":\"map-marker-alt\"}}),_vm._v(\" \"+_vm._s(_vm.town.fieldType.label)+\" \")],1)])]),(_vm.town.addressDetails)?_c('TownDetailsPanelSection',[_c('div',{staticClass:\"grid grid-cols-2\"},[_c('div',{staticClass:\"font-bold\"},[_vm._v(\" Informations d'accès \")]),_c('div',{attrs:{\"data-cy-data\":\"address_details\"}},[_vm._v(\" \"+_vm._s(_vm.town.addressDetails)+\" \")])])]):_vm._e(),_c('TownDetailsPanelSection',[_c('div',{staticClass:\"font-bold\"},[_vm._v(\" Coordonnées GPS \")]),_c('div',{attrs:{\"data-cy-data\":\"address_gps\"}},[_vm._v(\" Lat \"+_vm._s(_vm.town.latitude)+\", Long \"+_vm._s(_vm.town.longitude)+\" \")]),_c('div',[_c('Button',{attrs:{\"variant\":\"primaryText\",\"icon\":\"copy\",\"iconPosition\":\"left\",\"href\":\"#\"},on:{\"click\":_vm.copyCoordinates}},[_vm._v(\"Copier\")])],1)]),_c('TownDetailsPanelSection',[_c('div',{staticClass:\"grid grid-cols-2\"},[_c('div',{staticClass:\"font-bold\"},[_vm._v(\" Propriétaire \")]),_c('div',{attrs:{\"data-cy-data\":\"owner_type\"}},[_vm._v(\" \"+_vm._s(_vm.town.ownerType.label)+\" \")])])]),(_vm.town.ownerType.label !== 'Inconnu')?_c('TownDetailsPanelSection',[_c('div',{staticClass:\"grid grid-cols-2\"},[_c('div',{staticClass:\"font-bold\"},[_vm._v(\" Nom du propriétaire \")]),_c('div',{attrs:{\"data-cy-data\":\"owner\"}},[_vm._v(\" \"+_vm._s(_vm.town.owner || \"non communiqué\")+\" \")])])]):_vm._e()],1),_c('div',{staticClass:\"w-1/2 bg-G200\"},[_c('div',{staticClass:\"v1\"},[_c('Map',{attrs:{\"display-searchbar\":false,\"towns\":[_vm.town],\"default-view\":_vm.center}})],1)])])]},proxy:true}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"townDetailsPanelShadow py-5 px-6\"},[_c('div',{staticClass:\"text-primary text-display-lg\"},[_vm._t(\"title\")],2),_c('div',{staticClass:\"pt-4\"},[_vm._t(\"body\")],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./TownDetailsPanel.vue?vue&type=template&id=1d97ba82&scoped=true&\"\nvar script = {}\nimport style0 from \"./TownDetailsPanel.vue?vue&type=style&index=0&id=1d97ba82&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1d97ba82\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"border-t border-G200 py-4\"},[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./TownDetailsPanelSection.vue?vue&type=template&id=14217000&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsPanelCharacteristics.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsPanelCharacteristics.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsPanelCharacteristics.vue?vue&type=template&id=1d6e0b0d&\"\nimport script from \"./TownDetailsPanelCharacteristics.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsPanelCharacteristics.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TownDetailsPanel',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\"Habitants\")]},proxy:true},{key:\"body\",fn:function(){return [_c('TownDetailsPanelSection',[_c('div',{staticClass:\"italic mb-4\"},[_vm._v(\" Le nombre de personnes sur un site est mouvant, les données fournies par les acteurs, même des estimations, participent à l'amélioration de la connaissance. \")]),_c('table',{staticClass:\"table-fixed text-center mb-6\"},[_c('thead',[_c('tr',[_c('td'),_c('td',{staticClass:\"border-b\"}),_vm._l((_vm.populationHistory),function(col,colIndex){return _c('td',{key:colIndex,staticClass:\"w-24 py-2 border-b\",class:{\n 'font-bold': colIndex === 0,\n 'bg-gray-200': colIndex === 0\n }},[_vm._v(\" \"+_vm._s(col.date)),_c('br'),_vm._v(_vm._s(col.year)+\" \")])})],2)]),_c('tbody',_vm._l((_vm.sections),function(section,index){return _c('tr',{key:index,class:section.css},[(index === 0)?_c('td',{staticClass:\"align-top pr-2 text-xl\",attrs:{\"rowspan\":_vm.sections.length}},[_c('Icon',{staticClass:\"mr-1\",attrs:{\"icon\":\"male\"}}),_c('Icon',{attrs:{\"icon\":\"male\"}})],1):_vm._e(),_c('td',{staticClass:\"text-left pr-4 border-b\"},[_vm._v(\" \"+_vm._s(section.title)+\" \")]),_vm._l((_vm.populationHistory),function(col,colIndex){return _c('td',{key:colIndex,staticClass:\"py-1 border-b\",class:{\n 'border-r':\n colIndex > 0 ||\n _vm.populationHistory.length <= 1,\n 'bg-gray-100': colIndex === 0\n },attrs:{\"data-cy-data\":colIndex === 0 ? section.data : undefined}},[_vm._v(\" \"+_vm._s(col[section.data])+\" \")])})],2)}),0)]),_c('div',[_c('div',{staticClass:\"font-bold\"},[_vm._v(\"Origine\")]),_c('div',{attrs:{\"data-cy-data\":\"social_origins\"}},[(!_vm.town.socialOrigins.length)?_c('div',{staticClass:\"text-G600\"},[_vm._v(\" inconnu \")]):_vm._l((_vm.town.socialOrigins),function(origin){return _c('div',{key:origin.id,staticClass:\"flex items-center\"},[_c('img',{staticClass:\" w-8 mr-2\",attrs:{\"src\":_vm.socialOrigin(origin).img}}),_c('span',{staticClass:\"text-display-sm\"},[_vm._v(_vm._s(_vm.socialOrigin(origin).label))])])})],2)])]),_c('TownDetailsPanelSection',[_c('div',{staticClass:\"flex items-center justify-between\"},[_c('div',{staticClass:\"w-96\"},[_c('div',{staticClass:\"font-bold\"},[_vm._v(\"Diagnostic social\")]),_c('div',{attrs:{\"data-cy-data\":\"census_status\"}},[_vm._v(\" \"+_vm._s(_vm.socialDiagnostic)+\" \")])]),_c('div',{staticClass:\"italic\"},[_vm._v(\" Un diagnostic social vise à identifier les situations et besoins des familles et personnes, de repérer le contexte territorial et les acteurs en présence. \")])])])]},proxy:true}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsPanelPeople.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsPanelPeople.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsPanelPeople.vue?vue&type=template&id=25771469&\"\nimport script from \"./TownDetailsPanelPeople.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsPanelPeople.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TownDetailsPanel',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\"Conditions de vie et environnement\")]},proxy:true},{key:\"body\",fn:function(){return [_c('div',[_c('TownDetailsPanelLivingConditionsSection',{attrs:{\"title\":\"Accès à l’eau\",\"value\":_vm.town.accessToWater,\"cypressName\":\"access_to_water\",\"cypressComments\":\"water_comments\",\"cypressDetailsPrefix\":\"water\",\"comments\":_vm.town.waterComments,\"details\":_vm.details.water}}),_c('TownDetailsPanelLivingConditionsSection',{attrs:{\"title\":\"Accès aux toilettes\",\"value\":_vm.town.accessToSanitary,\"cypressName\":\"access_to_sanitary\",\"cypressComments\":\"sanitary_comments\",\"cypressDetailsPrefix\":\"sanitary\",\"comments\":_vm.town.sanitaryComments,\"details\":_vm.details.sanitary}}),_c('TownDetailsPanelLivingConditionsSection',{attrs:{\"title\":\"Accès à l’électricité\",\"value\":_vm.town.electricityType.value,\"cypressName\":\"electricity_type\",\"cypressComments\":\"electricity_comments\",\"cypressDetailsPrefix\":\"electricity\",\"comments\":_vm.town.electricityComments}}),_c('TownDetailsPanelLivingConditionsSection',{attrs:{\"title\":\"Évacuation des déchets\",\"value\":_vm.town.trashEvacuation,\"cypressName\":\"trash_evacuation\",\"cypressComments\":\"trash_comments\",\"cypressDetailsPrefix\":\"trash\",\"details\":_vm.details.trash}}),_c('TownDetailsPanelLivingConditionsSection',{attrs:{\"title\":\"Présence de nuisibles\",\"value\":_vm.town.vermin,\"cypressName\":\"vermin\",\"inverted\":\"\",\"cypressComments\":\"vermin_comments\",\"cypressDetailsPrefix\":\"vermin\",\"comments\":_vm.town.verminComments}}),_c('TownDetailsPanelLivingConditionsSection',{attrs:{\"title\":\"Prévention des incendies\",\"value\":_vm.town.firePreventionMeasures,\"cypressName\":\"fire_prevention_measures\",\"cypressComments\":\"fire_prevention_comments\",\"cypressDetailsPrefix\":\"fire_prevention\",\"comments\":_vm.town.firePreventionComments,\"details\":_vm.details.firePrevention}})],1)]},proxy:true}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TownDetailsPanelSection',[_c('div',{class:[_vm.colorClass, 'flex items-center']},[_c('Icon',{class:['mr-1', 'font-bold'],attrs:{\"icon\":_vm.icon}}),_c('div',[_c('div',{staticClass:\"flex items-center\"},[_c('div',{class:[_vm.colorClass, 'font-bold', 'mr-1']},[_vm._v(\" \"+_vm._s(_vm.title)+\" : \")]),_c('div',{attrs:{\"data-cy-data\":_vm.cypressName}},[_vm._v(_vm._s(_vm.text))])]),_vm._t(\"default\")],2)],1),_c('div',{staticClass:\"ml-4\"},[(_vm.comments)?_c('div',{attrs:{\"data-cy-data\":_vm.cypressComments}},[_vm._v(\" \"+_vm._s(_vm.comments)+\" \")]):_vm._e(),(\n this.value &&\n _vm.details &&\n (_vm.details.negative.length ||\n _vm.details.positive.length ||\n _vm.details.unknown.length)\n )?_c('div',{staticClass:\"border border-primary rounded px-8 mt-4\"},[_c('div',{staticClass:\"border-b-2 border-G200 py-2 font-bold text-primary flex items-center justify-between\"},[_c('div',[(_vm.details.negative.length)?_c('span',[_vm._v(\" \"+_vm._s(_vm.details.negative.length)+\" action\"+_vm._s(_vm.details.negative.length > 1 ? \"s\" : \"\")+\" pour améliorer l'accès \")]):(_vm.details.positive.length)?_c('span',[_vm._v(\" \"+_vm._s(_vm.details.positive.length)+\" action\"+_vm._s(_vm.details.positive.length > 1 ? \"s\" : \"\")+\" pour entretenir l'accès \")]):_vm._e(),(\n _vm.details.unknown.length &&\n (_vm.details.negative.length ||\n _vm.details.positive.length)\n )?_c('span',[_vm._v(\"et\")]):_vm._e(),(_vm.details.unknown.length)?_c('span',[_vm._v(\" \"+_vm._s(_vm.details.unknown.length)+\" information\"+_vm._s(_vm.details.unknown.length > 1 ? \"s\" : \"\")+\" non renseignée\"+_vm._s(_vm.details.unknown.length > 1 ? \"s\" : \"\")+\" \")]):_vm._e()]),_c('div',[_c('Button',{attrs:{\"icon\":_vm.collapsed ? 'chevron-up' : 'chevron-down',\"variant\":\"primaryText\"},on:{\"click\":_vm.collapse}})],1)]),(!_vm.collapsed)?_c('div',[_c('TownDetailsPanelLivingConditionsDetails',{attrs:{\"type\":\"negative\",\"cypressName\":_vm.cypressDetailsPrefix + '_details_negative',\"details\":_vm.details.negative}}),_c('TownDetailsPanelLivingConditionsDetails',{attrs:{\"type\":\"positive\",\"cypressName\":_vm.cypressDetailsPrefix + '_details_positive',\"details\":_vm.details.positive}}),_c('TownDetailsPanelLivingConditionsDetails',{attrs:{\"type\":\"unknown\",\"cypressName\":_vm.cypressDetailsPrefix + '_details_unknown',\"details\":_vm.details.unknown}})],1):_vm._e()]):_vm._e()])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.details.length)?_c('div',{staticClass:\"border-b-2 border-G200 py-2\"},[_c('div',{staticClass:\"flex items-center\"},[_c('Icon',{class:['mr-1', 'mb-1', 'font-bold', 'text-G600'],attrs:{\"icon\":_vm.icon}}),_c('div',{staticClass:\"font-bold\"},[_vm._v(\" \"+_vm._s(_vm.wording)+\" \")])],1),_c('ul',{staticClass:\"list-disc ml-10\",attrs:{\"data-cy-data\":_vm.cypressName}},_vm._l((_vm.details),function(item,index){return _c('li',{key:index},[_vm._v(\" \"+_vm._s(item.text)+\" \"),_c('span',{staticClass:\"italic\"},[_vm._v(_vm._s(item.info ? (\"- \" + (item.info)) : \"\"))])])}),0)]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsPanelLivingConditionsDetails.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsPanelLivingConditionsDetails.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsPanelLivingConditionsDetails.vue?vue&type=template&id=da411912&\"\nimport script from \"./TownDetailsPanelLivingConditionsDetails.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsPanelLivingConditionsDetails.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsPanelLivingConditionsSection.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsPanelLivingConditionsSection.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsPanelLivingConditionsSection.vue?vue&type=template&id=009b171b&\"\nimport script from \"./TownDetailsPanelLivingConditionsSection.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsPanelLivingConditionsSection.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsPanelLivingConditions.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsPanelLivingConditions.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsPanelLivingConditions.vue?vue&type=template&id=c182cc62&\"\nimport script from \"./TownDetailsPanelLivingConditions.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsPanelLivingConditions.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('TownDetailsPanel',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\"Procédure judiciaire\")]},proxy:true},{key:\"body\",fn:function(){return [_c('TownDetailsPanelSection',[_c('div',{staticClass:\"grid grid-cols-2\"},[_c('div',{staticClass:\"flex items-center\"},[_c('Icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"scroll\"}}),_c('div',{staticClass:\"font-bold\"},[_vm._v(\" Dépôt de plainte du propriétaire \")])],1),_c('div',{attrs:{\"data-cy-data\":\"owner_complaint\"}},[_vm._v(\" \"+_vm._s(_vm.boolToStr(_vm.town.ownerComplaint))+\" \")])])]),_c('div',{staticClass:\"flex\"},[_c('Icon',{staticClass:\"mr-4 mt-5\",attrs:{\"icon\":\"balance-scale\"}}),_c('div',{staticClass:\"flex-1\"},[_c('TownDetailsPanelSection',[_c('div',{staticClass:\"grid grid-cols-2\"},[_c('div',{staticClass:\"font-bold\"},[_vm._v(\" Existence d’une procédure judiciaire \")]),_c('div',{staticClass:\"-ml-5\",attrs:{\"data-cy-data\":\"justice_procedure\"}},[_vm._v(\" \"+_vm._s(_vm.boolToStr(_vm.town.justiceProcedure))+\" \")])])]),_c('TownDetailsPanelSection',[_c('div',{staticClass:\"grid grid-cols-2\"},[_c('div',{staticClass:\"font-bold\"},[_vm._v(\" Décision de justice rendue \")]),_c('div',{staticClass:\"-ml-5\",attrs:{\"data-cy-data\":\"justice_rendered\"}},[_vm._v(\" \"+_vm._s(_vm.justiceRendered)+\" \")])])]),_c('TownDetailsPanelSection',[_c('div',{staticClass:\"grid grid-cols-2\"},[_c('div',{staticClass:\"font-bold\"},[_vm._v(\"Contentieux\")]),_c('div',{staticClass:\"-ml-5\",attrs:{\"data-cy-data\":\"justice_challenged\"}},[_vm._v(\" \"+_vm._s(_vm.boolToStr(_vm.town.justiceChallenged))+\" \")])])])],1)],1),_c('TownDetailsPanelSection',[_c('div',{staticClass:\"grid grid-cols-2\"},[_c('div',{staticClass:\"flex items-center\"},[_c('img',{staticClass:\"w-6 h-6 mr-2\",attrs:{\"src\":_vm.policeSiren}}),_c('div',{staticClass:\"font-bold\"},[_vm._v(\" Concours de la force publique \")])]),_c('div',{attrs:{\"data-cy-data\":\"police_status\"}},[_vm._v(\" \"+_vm._s(_vm.policeStatusLabel)+\" \")])])]),_c('TownDetailsPanelSection',[_c('div',{staticClass:\"grid grid-cols-2\"},[_c('div',{staticClass:\"flex items-center\"},[_c('span',{staticClass:\"w-6 h-6 mr-2 text-center\"},[_c('Icon',{attrs:{\"icon\":\"file\"}})],1),_c('div',{staticClass:\"font-bold\"},[_vm._v(\" Nom de l'étude d'huissier \")])]),_c('div',{attrs:{\"data-cy-data\":\"bailiff\"}},[_vm._v(\" \"+_vm._s(_vm.town.bailiff || \"NC\")+\" \")])])])]},proxy:true}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsPanelJudicial.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsPanelJudicial.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsPanelJudicial.vue?vue&type=template&id=314973e4&\"\nimport script from \"./TownDetailsPanelJudicial.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsPanelJudicial.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"text-display-md pb-2\"},[_vm._v(\" \"+_vm._s(_vm.comments.length)+\" message\"+_vm._s(_vm.comments.length > 1 ? \"s\" : \"\")+\" \")]),_vm._l((_vm.sortedComments),function(comment){return _c('CommentBlock',{key:comment.id,attrs:{\"comment\":comment}})})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"border-t border-G400 py-4\"},[_c('div',{staticClass:\"text-G600 text-sm mb-1\"},[_vm._v(\" \"+_vm._s(_vm.formatDate(_vm.comment.createdAt, \"d M y à h:i\"))+\" \")]),(_vm.comment.private)?_c('div',{staticClass:\"font-bold\"},[_c('Icon',{staticClass:\"text-red\",attrs:{\"icon\":\"lock\"}}),_vm._v(\" Message réservé aux membres de la préfecture et DDCS de votre territoire. \")],1):_vm._e(),_c('div',{staticClass:\"text-primary font-bold mb-1\"},[_c('Icon',{attrs:{\"icon\":\"user\"}}),_vm._v(\" \"+_vm._s(_vm.comment.createdBy.firstName)+\" \"+_vm._s(_vm.comment.createdBy.lastName)+\" - \"+_vm._s(_vm.comment.createdBy.organization)+\" \")],1),_c('div',{staticClass:\"ml-5\"},[_vm._v(_vm._s(_vm.comment.description))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CommentBlock.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CommentBlock.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CommentBlock.vue?vue&type=template&id=426e0dca&\"\nimport script from \"./CommentBlock.vue?vue&type=script&lang=js&\"\nexport * from \"./CommentBlock.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsComments.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsComments.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsComments.vue?vue&type=template&id=7ed726c8&\"\nimport script from \"./TownDetailsComments.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsComments.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SidePanel',{attrs:{\"isOpen\":_vm.isOpen,\"closePanel\":_vm.closePanel,\"closeClickOutside\":true}},[_c('div',{staticClass:\" px-8 \"},[_c('div',{staticClass:\"border-b-2 border-G200 py-4\"},[_c('div',{staticClass:\"flex justify-end\"},[_c('Button',{attrs:{\"variant\":\"primaryText\",\"icon\":\"times\",\"size\":\"lg\"},on:{\"click\":_vm.closePanel}})],1),_c('div',{staticClass:\"flex items-center text-primary\"},[_c('Icon',{staticClass:\"mr-2 \",attrs:{\"icon\":\"history\"}}),_c('div',{staticClass:\"text-display-md text-primary\"},[_vm._v(\" Historique des modifications \")])],1)]),_c('div',[_c('div',{staticClass:\"text-sm font-bold my-4\"},[_vm._v(\" \"+_vm._s(_vm.town.changelog.length)+\" modification\"+_vm._s(_vm.town.changelog.length > 1 ? \"s\" : \"\")+\" \")]),_vm._l((_vm.town.changelog),function(changelog){return _c('div',{key:changelog.id,staticClass:\"py-4 border-b-2 border-G200\"},[_c('div',{staticClass:\"text-sm text-G600\"},[_vm._v(\" \"+_vm._s(_vm.formatDate(changelog.date, \"d M y à h:i\"))+\" \")]),_c('div',{staticClass:\"text-primary\"},[_c('router-link',{attrs:{\"to\":(\"/annuaire/\" + (changelog.author.organization.id))}},[_c('div',{staticClass:\"flex items-center\"},[_c('font-awesome-icon',{staticClass:\"w-8 text-md\",attrs:{\"icon\":\"user\"}}),_c('div',{staticClass:\"font-bold ml-2\"},[_vm._v(\" \"+_vm._s(changelog.author.first_name)+\" \"+_vm._s(changelog.author.last_name)+\" \")])],1)])],1),_c('div',_vm._l((changelog.diff),function(diff){return _c('div',{key:diff.field,staticClass:\"changelogContent my-2\"},[_c('div',{staticClass:\"text-green\"},[_vm._v(_vm._s(diff.field))]),_c('div',[_c('span',{staticClass:\"line-through\"},[_vm._v(_vm._s(diff.oldValue || \"non renseigné\"))]),_c('span',[_vm._v(\", \"+_vm._s(diff.newValue || \"non renseigné\")+\" \")])])])}),0)])})],2)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsHistorySidePanel.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsHistorySidePanel.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsHistorySidePanel.vue?vue&type=template&id=9046989c&\"\nimport script from \"./TownDetailsHistorySidePanel.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsHistorySidePanel.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TownDetailsHistorySidePanel.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SidePanel',{attrs:{\"isOpen\":_vm.isOpen,\"closePanel\":_vm.closePanel,\"closeClickOutside\":true}},[_c('div',{staticClass:\"scrollablePanel\"},[_c('div',{staticClass:\"bg-orange200 px-8 py-4 mt-4\"},[_c('div',{staticClass:\"font-bold mb-4\"},[_vm._v(\" \"+_vm._s(this.town.comments.covid.length)+\" commentaires \")]),_vm._l((_vm.sortedComments),function(comment){return _c('CommentBlock',{key:comment.id,attrs:{\"comment\":comment}})})],2)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsCovidCommentsSidePanel.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsCovidCommentsSidePanel.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsCovidCommentsSidePanel.vue?vue&type=template&id=48cd111e&\"\nimport script from \"./TownDetailsCovidCommentsSidePanel.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsCovidCommentsSidePanel.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Modal',{staticClass:\"modalContainer\",attrs:{\"isOpen\":_vm.isOpen,\"closeModal\":_vm.closeModal},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_c('div',[_vm._v(\"Fermer le site\")])]},proxy:true},{key:\"body\",fn:function(){return [_c('ValidationObserver',{ref:\"form\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nreturn [_c('form',{on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.submitClose)}}},[_c('div',{staticClass:\"scrollableContainer -mx-4 -mt-8 p-4\"},[_c('div',{staticClass:\"w-64\"},[_c('DatepickerV2',{attrs:{\"label\":\"Date de la fermeture du site\",\"id\":\"closed_at\",\"validationName\":\"Date\",\"disabled-dates\":{ from: new Date() },\"language\":_vm.dateLanguage,\"monday-first\":true,\"full-month-name\":true,\"format\":'dd MMMM yyyy',\"rules\":\"required\"},model:{value:(_vm.form.closed_at),callback:function ($$v) {_vm.$set(_vm.form, \"closed_at\", $$v)},expression:\"form.closed_at\"}})],1),_c('CheckableGroup',{attrs:{\"direction\":\"row\",\"id\":\"closed_with_solutions\",\"rules\":\"required\",\"label\":\"Est-ce que ce site a été résorbé définitivement ?\",\"info\":\"C’est-à-dire sans réinstallation illicite et\\n avec un accompagnement de la majorité des\\n personnes vers des solutions pérennes\",\"validationName\":\"Est-ce que ce site a été résorbé définitivement ?\"}},[_c('Radio',{staticClass:\"mr-1\",attrs:{\"checkValue\":true,\"label\":\"Oui\",\"variant\":\"card\"},model:{value:(_vm.form.closed_with_solutions),callback:function ($$v) {_vm.$set(_vm.form, \"closed_with_solutions\", $$v)},expression:\"form.closed_with_solutions\"}}),_c('Radio',{attrs:{\"checkValue\":false,\"label\":\"Non\",\"variant\":\"card\"},model:{value:(_vm.form.closed_with_solutions),callback:function ($$v) {_vm.$set(_vm.form, \"closed_with_solutions\", $$v)},expression:\"form.closed_with_solutions\"}})],1),_c('CheckableGroup',{attrs:{\"label\":\"Cause de la disparition\",\"id\":\"status\",\"direction\":\"vertical\",\"rules\":\"required\",\"validationName\":\"Cause de la disparition\"}},_vm._l((_vm.statusValues),function(item,index){return _c('Radio',{key:index,attrs:{\"label\":item.label,\"checkValue\":item.value},model:{value:(_vm.form.status),callback:function ($$v) {_vm.$set(_vm.form, \"status\", $$v)},expression:\"form.status\"}})}),1),_c('CheckableGroup',{attrs:{\"label\":\"Orientations des ménages :\"}},_vm._l((_vm.closingSolutions),function(item,index){return _c('div',{key:item.id},[_c('Checkbox',{key:index,attrs:{\"label\":item.label,\"checkValue\":item.id,\"id\":\"solutions\"},model:{value:(_vm.checkedSolutions),callback:function ($$v) {_vm.checkedSolutions=$$v},expression:\"checkedSolutions\"}}),_c('div',{staticClass:\"flex items-center ml-10\"},[_c('InlineTextInput',{staticClass:\"mr-4\",attrs:{\"label\":\"Ménages : \",\"type\":\"number\"},model:{value:(\n _vm.form.solutions[item.id]\n .householdsAffected\n ),callback:function ($$v) {_vm.$set(_vm.form.solutions[item.id]\n , \"householdsAffected\", $$v)},expression:\"\\n form.solutions[item.id]\\n .householdsAffected\\n \"}}),_c('InlineTextInput',{attrs:{\"label\":\"Personnes : \",\"type\":\"number\"},model:{value:(\n _vm.form.solutions[item.id]\n .peopleAffected\n ),callback:function ($$v) {_vm.$set(_vm.form.solutions[item.id]\n , \"peopleAffected\", $$v)},expression:\"\\n form.solutions[item.id]\\n .peopleAffected\\n \"}})],1)],1)}),0)],1),_c('div',{staticClass:\"flex justify-end mt-8\"},[_c('Button',{staticClass:\"mr-8\",attrs:{\"variant\":\"primaryText\",\"type\":\"button\"},on:{\"click\":_vm.closeModal}},[_vm._v(\"Annuler\")]),_c('Button',{attrs:{\"variant\":\"tertiary\",\"type\":\"primary\",\"loading\":_vm.loading}},[_vm._v(\"Valider\")])],1)])]}}])})]},proxy:true}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsCloseModal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsCloseModal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsCloseModal.vue?vue&type=template&id=243b0511&\"\nimport script from \"./TownDetailsCloseModal.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsCloseModal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TownDetailsCloseModal.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Modal',{staticClass:\"modalContainer\",attrs:{\"isOpen\":true,\"closeModal\":_vm.closeModal},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_c('div',[_vm._v(\"J'interviens ici\")])]},proxy:true},{key:\"body\",fn:function(){return [_c('ValidationObserver',{ref:\"form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.submit($event)}},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nreturn [_c('form',[_c('div',{staticClass:\"modalWrapper w-128 -mx-4 -mt-8 p-4\"},[_c('ValidationProvider',{attrs:{\"vid\":\"user_id\"}}),_c('ValidationProvider',{attrs:{\"vid\":\"themes\"}}),_c('CheckableGroup',{attrs:{\"direction\":\"horizontal\",\"label\":\"Quels sont vos champs d'intervention sur ce site ?\",\"validationName\":\"Champs d'intervention\"}},_vm._l((_vm.themeIds),function(themeId){return _c('Checkbox',{key:themeId,attrs:{\"variant\":\"card\",\"label\":_vm.themes[themeId],\"checkValue\":themeId},model:{value:(_vm.form.themes),callback:function ($$v) {_vm.$set(_vm.form, \"themes\", $$v)},expression:\"form.themes\"}})}),1),_c('TextInput',{attrs:{\"label\":\"Autre\"},model:{value:(_vm.form.autre),callback:function ($$v) {_vm.$set(_vm.form, \"autre\", $$v)},expression:\"form.autre\"}}),(_vm.error !== null)?_c('p',{staticClass:\"bg-red200 p-6 mb-6\"},[_c('strong',[_vm._v(_vm._s(_vm.error))]),_c('ul',{staticClass:\"mt-4\"},_vm._l((errors),function(error,inputId){return _c('li',{key:inputId},[_vm._v(\" \"+_vm._s(error[0])+\" \")])}),0)]):_vm._e()],1),_c('div',{staticClass:\"flex justify-end mt-8\"},[_c('Button',{staticClass:\"mr-8\",attrs:{\"variant\":\"primaryText\",\"type\":\"button\"},on:{\"click\":_vm.closeModal}},[_vm._v(\"Annuler\")]),_c('Button',{attrs:{\"variant\":\"tertiary\",\"type\":\"primary\",\"loading\":_vm.loading}},[_vm._v(\"Valider\")])],1)])]}}])})]},proxy:true}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsActorThemesModal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsActorThemesModal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsActorThemesModal.vue?vue&type=template&id=2c8fb903&scoped=true&\"\nimport script from \"./TownDetailsActorThemesModal.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsActorThemesModal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TownDetailsActorThemesModal.vue?vue&type=style&index=0&id=2c8fb903&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2c8fb903\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Modal',{staticClass:\"modalContainer\",attrs:{\"isOpen\":_vm.isOpen,\"closeModal\":_vm.closeModal},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_c('div',[_vm._v(\"Inviter un intervenant\")])]},proxy:true},{key:\"body\",fn:function(){return [_c('ValidationObserver',{ref:\"form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.submit($event)}}},[_c('form',[_c('p',{staticClass:\"-mt-6\"},[_vm._v(\" Favorisez la synergie entre les acteurs en invitant un intervenant, un courriel lui sera envoyé. \")]),_c('div',{staticClass:\"mt-4\"},[_c('p',[_c('span',{staticClass:\"font-bold\"},[_vm._v(\"L'intervenant est-il un utilisateur de la plateforme Résorption-bidonvilles ?\")]),_c('br'),_vm._v(\" Cherchez le nom de la personne en tapant au minimum les premières lettre de son nom ou prénom \")]),_c('div',{staticClass:\"w-128\"},[_c('AutocompleteV2',{ref:\"autocomplete\",attrs:{\"id\":\"user_id\",\"label\":\"\",\"prefixIcon\":\"user\",\"search\":_vm.autocomplete,\"loading\":_vm.searching,\"getResultValue\":_vm.getResultValue},model:{value:(_vm.form.user),callback:function ($$v) {_vm.$set(_vm.form, \"user\", $$v)},expression:\"form.user\"}})],1)]),_c('div',{staticClass:\"w-128\"},[_c('p',{staticClass:\"mb-2\"},[_c('span',{staticClass:\"font-bold\"},[_vm._v(\"L'intervenant n'est pas présent dans cette liste ?\")]),_c('br'),_vm._v(\"Saisissez son courriel pour l'inviter \")]),_c('TextInput',{attrs:{\"id\":\"email\",\"label\":\"Courriel\"},model:{value:(_vm.form.email),callback:function ($$v) {_vm.$set(_vm.form, \"email\", $$v)},expression:\"form.email\"}})],1),(_vm.error !== null)?_c('p',{staticClass:\"bg-red200 p-6 mb-6 font-bold\"},[_vm._v(\" \"+_vm._s(_vm.error)+\" \")]):_vm._e(),_c('div',{staticClass:\"flex justify-end mt-2\"},[_c('Button',{staticClass:\"mr-8\",attrs:{\"variant\":\"primaryText\",\"type\":\"button\"},on:{\"click\":_vm.closeModal}},[_vm._v(\"Annuler\")]),_c('Button',{attrs:{\"variant\":\"tertiary\",\"type\":\"primary\",\"loading\":_vm.loading}},[_vm._v(\"Valider\")])],1)])])]},proxy:true}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsInviteActorModal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetailsInviteActorModal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetailsInviteActorModal.vue?vue&type=template&id=6448ddc6&\"\nimport script from \"./TownDetailsInviteActorModal.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetailsInviteActorModal.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetails.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownDetails.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownDetails.vue?vue&type=template&id=c18f9482&scoped=true&\"\nimport script from \"./TownDetails.vue?vue&type=script&lang=js&\"\nexport * from \"./TownDetails.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TownDetails.vue?vue&type=style&index=0&id=c18f9482&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"c18f9482\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--withMargin\"},[_c('NavBar'),(_vm.preloading && !_vm.preloadError)?_c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Chargement des données en cours...\")])]):(_vm.preloading && _vm.preloadError)?_c('div',{staticClass:\"notification error full-width\"},[_c('span',[_vm._v(_vm._s(_vm.preloadError)+\". \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.preload}},[_vm._v(\"Réessayer ?\")])])]):_c('div',[_c('Form',_vm._b({ref:\"form\",on:{\"complete\":_vm.onComplete},model:{value:(_vm.formData),callback:function ($$v) {_vm.formData=$$v},expression:\"formData\"}},'Form',_vm.formDefinition,false)),_c('p',[_vm._v(\"Plus d'informations sur les droits d'accès et les utilisateurs de la plateforme\"),_c('br'),_c('router-link',{staticClass:\"link\",attrs:{\"to\":\"/typologie-des-acces\"}},[_c('font-awesome-icon',{attrs:{\"icon\":\"file-pdf\"}}),_vm._v(\" Guide des accès et de l'administrateur\")],1),_c('br'),_c('router-link',{staticClass:\"link\",attrs:{\"to\":\"/charte-d-engagement\"}},[_c('font-awesome-icon',{attrs:{\"icon\":\"file-pdf\"}}),_vm._v(\" Charte d'engagement de l'utilisateur\")],1)],1)],1)],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport Form from \"#app/components/form/form.vue\";\nimport { me, edit } from \"#helpers/api/user\";\n\nexport default {\n components: {\n NavBar,\n Form\n },\n data() {\n const formData = {\n first_name: \"\",\n last_name: \"\",\n password: \"\"\n };\n\n const formDefinition = {\n title: \"Modifier vos données personnelles\",\n description:\n \"Vous pouvez compléter votre profil d'utilisateur et modifier votre mot de passe sur cette page.\",\n steps: [\n {\n title: \"\",\n sections: [\n {\n title: \"\",\n inputs: {\n first_name: {\n label: \"Votre prénom\",\n mandatory: true,\n type: \"text\"\n },\n last_name: {\n label: \"Votre nom de famille\",\n mandatory: true,\n type: \"text\"\n },\n password: {\n label: \"Mot de passe\",\n description:\n \"Laissez ce champ vide si vous souhaitez conserver votre mot de passe actuel.

Votre mot de passe doit comporter au minimum 12 caractères, une majuscule, une minuscule, et un caractère non alphabétique (exemples : '.' ';' ',' '_' '!' '?', ...)
Nous vous recommandons de choisir une phrase intelligible en guise de mot de passe : plus simple à retenir qu'une suite de caractères aléatoires, et plus sécurisée.\",\n mandatory: false,\n type: \"password\"\n }\n }\n }\n ],\n wording: {\n submit: \"Modifier\",\n error: \"Les modifications n'ont pas été appliquées\",\n success:\n \"Les modifications ont bien été prises en compte\"\n },\n submit: edit\n }\n ]\n };\n\n return {\n preloading: true,\n preloadError: null,\n loading: false,\n\n /**\n * Form data\n */\n formData,\n\n /**\n * Form definition\n *\n * @type {Form},\n */\n formDefinition\n };\n },\n\n created() {\n this.preload();\n },\n\n methods: {\n preload() {\n this.preloadError = null;\n this.preloading = true;\n this.fetchData()\n .then(() => {\n this.preloading = false;\n })\n .catch(error => {\n this.preloadError = error.user_message;\n });\n },\n\n fetchData() {\n return me().then(data => {\n this.formData.first_name = data.first_name;\n this.formData.last_name = data.last_name;\n this.formData.password = \"\";\n });\n },\n\n /**\n *\n */\n onComplete() {\n this.preload();\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./me.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./me.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./me.vue?vue&type=template&id=dd1c1884&scoped=true&lang=pug&\"\nimport script from \"./me.vue?vue&type=script&lang=js&\"\nexport * from \"./me.vue?vue&type=script&lang=js&\"\nimport style0 from \"./me.vue?vue&type=style&index=0&id=dd1c1884&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"dd1c1884\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--withMargin\"},[_c('NavBar'),_c('section',{staticClass:\"section section-white\"},[_c('div',{staticClass:\"container\"},[_c('h1',[_vm._v(\"Liste des utilisateurs\")]),(_vm.state === 'loading')?_c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Chargement des données en cours...\")])]):_vm._e(),(_vm.state === 'error')?_c('div',{staticClass:\"notification error full-width\"},[_c('span',[_vm._v(_vm._s(_vm.error)+\". \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.retryLoading}},[_vm._v(\"Réessayer ?\")])])]):_vm._e(),(_vm.state === 'loaded')?_c('div',[_c('header',{staticClass:\"userList-header\"},[_c('router-link',{staticClass:\"link\",attrs:{\"to\":\"/typologie-des-acces\"}},[_c('font-awesome-icon',{attrs:{\"icon\":\"file-pdf\"}}),_vm._v(\" Guide des accès et de l'administrateur\")],1),_c('router-link',{staticClass:\"link\",attrs:{\"to\":\"/charte-d-engagement\"}},[_c('font-awesome-icon',{attrs:{\"icon\":\"file-pdf\"}}),_vm._v(\" Charte d'engagement de l'utilisateur\")],1)],1),_c('Table',_vm._b({on:{\"on-row-click\":_vm.routeToUserValidation},scopedSlots:_vm._u([{key:\"table-row\",fn:function(props){return [(props.column.id === 'status')?_c('span',[_c('font-awesome-icon',{staticClass:\"user-statusIcon\",class:(\"user-statusIcon--\" + (props.formattedRow[props.column.field].icon)),attrs:{\"icon\":props.formattedRow[props.column.field].icon}}),_vm._v(\" \"),_c('span',{domProps:{\"innerHTML\":_vm._s(props.formattedRow[props.column.field].label)}})],1):(props.column.id === 'role')?_c('span',[_c('span',{staticClass:\"role\"},[_vm._v(_vm._s(props.formattedRow[props.column.field]))])]):(props.column.id === 'validate')?_c('span',[_c('span',[_c('font-awesome-icon',{staticClass:\"user-validateIcon\",attrs:{\"icon\":\"arrow-right\"},on:{\"click\":_vm.routeToUserValidation}})],1)]):_c('span',{class:(\"userList-row--\" + (props.column.id))},[_vm._v(_vm._s(props.formattedRow[props.column.field]))])]}}],null,false,1614286866)},'Table',_vm.tableProperties,false))],1):_vm._e()])])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"alert\"},[_c('div',{ref:\"wrapper\",staticClass:\"wrapper\"},[_c('div',{staticClass:\"alert-close\"},[_c('div',{staticClass:\"alert-close-wrapper\"},[_c('img',{attrs:{\"src\":\"/img/cross.svg\",\"alt\":\"\",\"width\":\"20\"},on:{\"click\":_vm.close}})])]),_vm._t(\"default\")],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default {\n mounted() {\n document.addEventListener(\"click\", this.checkOutsideClick);\n },\n destroyed() {\n document.removeEventListener(\"click\", this.checkOutsideClick);\n },\n methods: {\n checkOutsideClick(event) {\n // ignore the origin event\n if (this.$refs.wrapper.offsetHeight === 0) {\n return;\n }\n\n if (!this.$refs.wrapper.contains(event.target)) {\n this.close();\n }\n },\n close() {\n this.$emit(\"close\");\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./modal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./modal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./modal.vue?vue&type=template&id=70f3cb96&scoped=true&lang=pug&\"\nimport script from \"./modal.vue?vue&type=script&lang=js&\"\nexport * from \"./modal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./modal.vue?vue&type=style&index=0&id=70f3cb96&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"70f3cb96\",\n null\n \n)\n\nexport default component.exports","import { VueGoodTable as Table } from \"vue-good-table\";\nimport { list } from \"#helpers/api/user\";\nimport \"vue-good-table/dist/vue-good-table.css\";\nimport NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport Modal from \"#app/components/modal/modal.vue\";\nimport { get as getConfig } from \"#helpers/api/config\";\nimport { open } from \"#helpers/tabHelper\";\n\nexport default {\n components: {\n NavBar,\n Table,\n Modal\n },\n\n data() {\n const { token_expires_in: tokenExpiresIn } = getConfig();\n\n return {\n /**\n * Duration of validity of an activation token (in seconds)\n *\n * @type {Number}\n */\n tokenExpiresIn,\n\n /**\n * List of users\n *\n * @type {Array.}\n */\n users: [],\n\n /**\n * The error's user message\n *\n * Obivously, null if there is no error\n *\n * @type {string|null}\n */\n error: null,\n\n /**\n * The current state of the page\n *\n * One out of: 'loading', 'error', or 'loaded'\n *\n * @type {string|null}\n */\n state: null\n };\n },\n\n computed: {\n tableProperties() {\n return {\n columns: [\n {\n id: \"lastName\",\n label: \"NOM\",\n field: user => user.last_name.toUpperCase()\n },\n {\n id: \"firstName\",\n label: \"PRÉNOM\",\n field: \"first_name\"\n },\n {\n id: \"organization\",\n label: \"STRUCTURE\",\n field: user => {\n if (user.organization.type.abbreviation !== null) {\n return `${user.organization.type.abbreviation} (${user.organization.name})`;\n }\n\n if (user.organization.abbreviation !== null) {\n return `${user.organization.abbreviation} (${user.organization.name})`;\n }\n\n return user.organization.name;\n }\n },\n {\n id: \"location\",\n label: \"TERRITOIRE\",\n field: user => {\n if (user.organization.location.type === \"nation\") {\n return \"National\";\n }\n\n const location =\n user.organization.location[\n user.organization.location.type\n ];\n if (!location) {\n return \"\";\n }\n\n if (\n user.organization.location.type ===\n \"departement\"\n ) {\n return `${location.name} (${location.code})`;\n }\n\n return location.name;\n }\n },\n {\n id: \"role\",\n label: \"TYPE D'ACCÈS\",\n field: \"role\",\n width: \"230px\",\n thClass: \"userList-column--role\",\n tdClass: \"userList-column--role\"\n },\n {\n id: \"status\",\n label: \"STATUT DU COMPTE\",\n field: user => {\n if (user.status === \"active\") {\n if (user.role_id === \"local_admin\") {\n return {\n icon: \"user-shield\",\n label:\n \"Administrateur local\"\n };\n }\n\n if (user.role_id === \"national_admin\") {\n return {\n icon: \"user-shield\",\n label:\n \"Administrateur national\"\n };\n }\n\n return {\n icon: \"user-check\",\n label: `Compte activé le ${App.formatDate(\n user.user_access.used_at,\n \"d M y\"\n )}`\n };\n }\n\n if (user.user_access !== null) {\n if (\n Date.now() -\n user.user_access.expires_at * 1000 >=\n 0\n ) {\n return {\n icon: \"unlink\",\n label: `Lien expiré le ${App.formatDate(\n user.user_access.expires_at,\n \"d M y\"\n )}`\n };\n }\n\n return {\n icon: \"paper-plane\",\n label: `Accès envoyé le ${App.formatDate(\n user.user_access.created_at,\n \"d M y\"\n )}`\n };\n }\n\n return {\n icon: \"flag\",\n label: `Demandé le ${App.formatDate(\n user.created_at,\n \"d M y\"\n )}`\n };\n }\n },\n {\n id: \"validate\",\n label: \"\",\n field: () => true\n }\n ],\n rows: this.users,\n \"row-style-class\": row =>\n row.status !== \"active\" && row.user_access === null\n ? \"userList-row userList-row--highlight\"\n : \"userList-row\",\n \"sort-options\": {\n enabled: true\n },\n \"search-options\": {\n enabled: true,\n placeholder:\n \"Rechercher par utilisateur, structure, territoire, ou type d'accès\"\n }\n };\n }\n },\n\n created() {\n this.load();\n },\n\n methods: {\n /**\n * Tries fetching the data from the API\n *\n * Please note that this cannot be done if the data has already been loaded\n * before.\n */\n load() {\n // loading data is forbidden if the component is already loading or loaded\n if ([null, \"error\"].indexOf(this.state) === -1) {\n return;\n }\n\n this.state = \"loading\";\n this.error = null;\n\n list()\n .then(users => {\n this.users = users.filter(\n ({ status }) => status !== \"inactive\"\n );\n this.state = \"loaded\";\n })\n .catch(({ user_message: error }) => {\n this.error = error;\n this.state = \"error\";\n });\n },\n\n /**\n * Alias to load(), for better readibility in the view\n *\n * @see load()\n */\n retryLoading() {\n this.load();\n },\n\n /**\n *\n */\n routeToUserValidation(params) {\n const routeData = this.$router.resolve(\n `/nouvel-utilisateur/${params.row.id}`\n );\n open(routeData.href);\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.list.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.list.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./users.list.vue?vue&type=template&id=54c6ec14&lang=pug&\"\nimport script from \"./users.list.vue?vue&type=script&lang=js&\"\nexport * from \"./users.list.vue?vue&type=script&lang=js&\"\nimport style0 from \"./users.list.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--withMargin\"},[(!_vm.isPopup)?_c('NavBar'):_vm._e(),(_vm.state === 'loading')?_c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Chargement des données en cours...\")])]):_vm._e(),(_vm.state === 'error')?_c('div',{staticClass:\"notification error full-width\"},[_c('span',[_vm._v(_vm._s(_vm.loadingError)+\". \"),_c('span',{on:{\"click\":_vm.retryLoading}},[_vm._v(\"Réessayer ?\")])])]):_vm._e(),(_vm.state === 'loaded')?_c('div',[_c('Form',_vm._b({ref:\"form\",on:{\"complete\":_vm.onComplete},model:{value:(_vm.formData),callback:function ($$v) {_vm.formData=$$v},expression:\"formData\"}},'Form',_vm.formDefinition,false))],1):_vm._e()],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import {\n categories as getOrgCategories,\n types as getOrgTypes,\n getByType as getOrganizationsByType,\n getByCategory as getOrganizationsByCategory\n} from \"#helpers/api/organization\";\nimport { departements as listDepartements } from \"#helpers/addressHelper\";\n\n/**\n * @typedef {Object} NewUserWording\n * @property {String} title\n * @property {String} description\n * @property {Object} stepWording\n * @property {String} organizationTitle Title of the organization section\n * @property {String} position Label of the input 'position'\n * @property {String} organization Label of the input organization_category\n * @property {String} associationIsMissing Label of the 'other' option of the input association\n */\n\n/**\n * @param {NewUserWording} wording\n * @param {Function} submitFn\n */\nexport default (wording, submitFn) => ({\n data() {\n const formData = {};\n const formDefinition = {\n title: wording.title,\n descriptionTitle: \"\",\n description: wording.description,\n steps: [\n {\n wording: wording.stepWording,\n sections: [\n {\n title: \"Informations personnelles\",\n inputs: {\n last_name: {\n label: \"NOM\",\n mandatory: true,\n type: \"text\"\n },\n first_name: {\n label: \"Prénom\",\n mandatory: true,\n type: \"text\"\n },\n email: {\n label: \"Courriel\",\n mandatory: true,\n type: \"text\"\n }\n }\n },\n {\n title: wording.organizationTitle,\n inputs: {\n organization_category: {\n label: wording.organization,\n mandatory: true,\n type: \"radio\",\n options: []\n },\n organization_type: {\n label: \"Précisez le type de structure\",\n mandatory: true,\n type: \"select\",\n options: [],\n condition({\n organization_category: category\n }) {\n return (\n category === \"public_establishment\"\n );\n }\n },\n organization_public: {\n label: \"Territoire de rattachement\",\n mandatory: true,\n type: \"select\",\n options: [],\n condition: ({\n organization_category: category,\n organization_type: type\n }) =>\n category === \"public_establishment\" &&\n type !== undefined\n },\n territorial_collectivity: {\n label: \"Nom de la structure\",\n mandatory: true,\n type: \"collectivity\",\n condition({\n organization_category: category\n }) {\n return (\n category ===\n \"territorial_collectivity\"\n );\n }\n },\n association: {\n label: \"Nom de la structure\",\n mandatory: true,\n type: \"select\",\n options: [],\n condition({\n organization_category: category\n }) {\n return category === \"association\";\n }\n },\n new_association_name: {\n label: \"Précisez le nom complet\",\n mandatory: true,\n type: \"text\",\n condition({\n organization_category: category,\n association\n }) {\n return (\n category === \"association\" &&\n association === \"Autre\"\n );\n }\n },\n new_association_abbreviation: {\n label: \"Précisez l'acronyme, si besoin\",\n mandatory: false,\n type: \"text\",\n condition({\n organization_category: category,\n association\n }) {\n return (\n category === \"association\" &&\n association === \"Autre\"\n );\n }\n },\n departement: {\n label: \"Territoire de rattachement\",\n mandatory: true,\n type: \"select\",\n options: [],\n condition({\n organization_category: category\n }) {\n return category === \"association\";\n }\n },\n organization_administration: {\n label: \"Nom de la structure\",\n mandatory: true,\n type: \"select\",\n options: [],\n condition({\n organization_category: category\n }) {\n return category === \"administration\";\n }\n },\n position: {\n label: wording.position,\n mandatory: true,\n type: \"text\",\n condition({\n organization_category: category\n }) {\n return category !== undefined;\n }\n }\n }\n }\n ],\n submit: data =>\n submitFn({\n ...data,\n legal:\n data.legal &&\n data.legal.length === 1 &&\n data.legal[0] === true\n })\n }\n ]\n };\n\n return {\n /**\n * The current state of the page\n *\n * One out of: 'loading', 'error', or 'loaded'\n *\n * @type {string|null}\n */\n state: null,\n\n /**\n * @type {string|null}\n */\n loadingError: null,\n\n /**\n * Form data\n */\n formData,\n\n /**\n * Form definition\n */\n formDefinition\n };\n },\n\n watch: {\n \"formData.organization_type\": function organizationType() {\n this.$refs.form.getInputById(\"organization_public\").options = [];\n\n getOrganizationsByType(this.formData.organization_type).then(\n ({ organizations }) => {\n this.$refs.form.getInputById(\n \"organization_public\"\n ).options = organizations.map(organization => {\n const level = organization.location_type;\n let label = organization[`${level}_name`];\n\n if (level === \"nation\") {\n label = \"France\";\n } else if (level === \"departement\") {\n label = `${organization[`${level}_code`]} - ${\n organization[`${level}_name`]\n }`;\n }\n\n return {\n value: organization.id,\n label\n };\n });\n this.formData.organization_public = undefined;\n }\n );\n }\n },\n\n methods: {\n /**\n * Tries fetching the data from the API\n *\n * Please note that this cannot be done if the data has already been loaded\n * before.\n */\n load() {\n // loading data is forbidden if the component is already loading or loaded\n if ([null, \"error\"].indexOf(this.state) === -1) {\n return;\n }\n\n this.state = \"loading\";\n this.loadingError = null;\n\n Promise.all([\n getOrgCategories(),\n getOrgTypes(\"public_establishment\"),\n getOrganizationsByCategory(\"administration\"),\n getOrganizationsByCategory(\"association\"),\n listDepartements()\n ])\n .then(\n ([\n { categories },\n { types },\n { organizations },\n { organizations: associations },\n { departements }\n ]) => {\n this.formDefinition.steps[0].sections[1].inputs.organization_category.options = categories.map(\n ({ uid, name_singular: name }) => ({\n value: uid,\n label: name\n })\n );\n this.formDefinition.steps[0].sections[1].inputs.organization_type.options = types\n .filter(\n ({ numberOfOrganizations }) =>\n numberOfOrganizations > 0\n )\n .filter(\n ({ name_singular: name }) =>\n name !== \"Gendarmerie nationale\"\n )\n .map(\n ({\n id,\n name_singular: name,\n abbreviation\n }) => ({\n value: id,\n label: abbreviation || name\n })\n );\n this.formDefinition.steps[0].sections[1].inputs.organization_administration.options = organizations.map(\n ({ id, name }) => ({\n value: id,\n label: name\n })\n );\n\n const usedAssociations = [];\n this.formDefinition.steps[0].sections[1].inputs.association.options = [\n {\n label: \"Autres cas\",\n options: [\n {\n value: \"Autre\",\n label: wording.associationIsMissing\n }\n ]\n },\n {\n label: \"Associations connues\",\n options: associations\n .filter(association => {\n if (\n usedAssociations.indexOf(\n association.name\n ) !== -1\n ) {\n return false;\n }\n\n usedAssociations.push(association.name);\n return true;\n })\n .map(({ name, abbreviation }) => ({\n value: name,\n label:\n abbreviation !== null\n ? `${abbreviation} (${name})`\n : name\n }))\n }\n ];\n this.formDefinition.steps[0].sections[1].inputs.departement.options = departements.map(\n ({ code, name }) => ({\n value: code,\n label: `${code} - ${name}`\n })\n );\n this.state = \"loaded\";\n }\n )\n .catch(({ user_message: error }) => {\n this.loadingError = error;\n this.state = \"error\";\n });\n }\n }\n});\n","import NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport Form from \"#app/components/form/form.vue\";\nimport { create } from \"#helpers/api/user\";\nimport newUser from \"./newUser\";\n\nconst component = newUser(\n {\n title: \"Créer un utilisateur\",\n organizationTitle: \"Structure\",\n organization: \"Quelle est la structure de l'utilisateur ?\",\n position: \"Fonction de l'utilisateur\",\n associationIsMissing:\n \"L'association de l'utilisateur n'est pas dans cette liste\",\n stepWording: {\n submit: \"Continuer\",\n error: \"L'utilisateur n'a pas pu être créé\",\n success: \"L'utilisateur a bien été créé\"\n }\n },\n create\n);\n\nexport default {\n components: {\n NavBar,\n Form\n },\n\n data() {\n const data = component.data();\n data.isPopup = this.$route.query.association_name !== undefined;\n data.formDefinition.steps[0].sections.push({\n inputs: {\n legal: {\n label: \"\",\n mandatory: false,\n type: \"checkbox\",\n options: [\n {\n value: true,\n label:\n \"Je certifie que ces données personnelles ont été saisies avec l'accord de leur propriétaire\"\n }\n ]\n }\n }\n });\n\n if (this.$route.query.association_name !== undefined) {\n data.formDefinition.steps[0].sections[1].inputs.organization_category.disabled = true;\n data.formDefinition.steps[0].sections[1].inputs.association.disabled = true;\n data.formDefinition.steps[0].sections[1].inputs.departement.disabled = true;\n }\n\n return data;\n },\n\n watch: Object.assign(component.watch, {\n state() {\n if (\n this.state === \"loaded\" &&\n this.$route.query.association_name !== undefined\n ) {\n this.formData.organization_category = \"association\";\n this.formData.association = this.$route.query.association_name;\n this.formData.departement = this.$route.query.association_departement;\n }\n }\n }),\n\n mounted() {\n this.load();\n },\n\n methods: Object.assign(component.methods, {\n /**\n * Alias to load(), for better readibility in the view\n *\n * @see load()\n */\n retryLoading() {\n this.load();\n },\n\n /**\n * On form's complete\n */\n onComplete(user) {\n if (this.isPopup) {\n window.opener.postMessage(user, \"*\");\n window.close();\n return;\n }\n\n this.$router.push(`/nouvel-utilisateur/${user.id}`);\n }\n })\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.create.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.create.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./users.create.vue?vue&type=template&id=17835908&scoped=true&lang=pug&\"\nimport script from \"./users.create.vue?vue&type=script&lang=js&\"\nexport * from \"./users.create.vue?vue&type=script&lang=js&\"\nimport style0 from \"./users.create.vue?vue&type=style&index=0&id=17835908&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"17835908\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--withMargin\"},[_c('NavBar'),(_vm.state === 'loading')?_c('section',{staticClass:\"section section-white\",attrs:{\"id\":\"form\"}},[_vm._m(0)]):_vm._e(),(_vm.state === 'error')?_c('div',{staticClass:\"notification error full-width\"},[_c('p',[_c('font-awesome-icon',{attrs:{\"icon\":\"times\"}}),_vm._v(\" \"),_c('strong',[_vm._v(\"Une erreur est survenue\")])],1),_c('p',[_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.error.replace(/\\n/g, '
'))}})]),_c('p',[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.retryLoading}},[_vm._v(\"Réessayer ?\")])])]):_vm._e(),(_vm.state === 'loaded')?_c('div',[_c('Form',_vm._b({ref:\"form\",on:{\"complete\":_vm.onComplete},model:{value:(_vm.formData),callback:function ($$v) {_vm.formData=$$v},expression:\"formData\"}},'Form',_vm.formDefinition,false))],1):_vm._e()],1)])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Chargement des données en cours...\")])])])}]\n\nexport { render, staticRenderFns }","import { checkActivationToken, activate } from \"#helpers/api/user\";\nimport NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport Form from \"#app/components/form/form.vue\";\n\nexport default {\n components: {\n NavBar,\n Form\n },\n\n data() {\n const formData = {\n email: \"\"\n };\n\n const formDefinition = {\n title: \"Activation de votre compte utilisateur\",\n descriptionTitle: \"\",\n description:\n \"Vous vous apprêtez à activer votre compte utilisateur, veuillez choisir votre mot de passe de connexion.\",\n steps: [\n {\n title: \"\",\n sections: [\n {\n title: \"\",\n inputs: {\n email: {\n label: \"Votre email\",\n mandatory: false,\n type: \"text\",\n disabled: true\n },\n password: {\n label: \"Définissez votre mot de passe\",\n description:\n \"Votre mot de passe doit comporter au minimum 12 caractères, une majuscule, une minuscule, et un caractère non alphabétique (exemples : '.' ';' ',' '_' '!' '?', ...)
Nous vous recommandons de choisir une phrase intelligible en guise de mot de passe : plus simple à retenir qu'une suite de caractères aléatoires, et plus sécurisée.\",\n mandatory: true,\n type: \"password\"\n }\n }\n }\n ],\n wording: {\n submit: \"Activer mon compte\",\n error: \"Votre compte n'a pas pu être activé\",\n success:\n \"Vous pouvez désormais vous connecter à la plateforme\"\n },\n submitPrefix:\n 'En cliquant sur \"Activer mon compte\", j\\'accepte les conditions générales d\\'utilisation et de partager mes données (nom, prénom, courriel, structure et lorsque renseigné, numéro de téléphone) aux utilisateurs de la plateforme via l’annuaire',\n submit: data =>\n activate(\n this.user.id,\n Object.assign(data, {\n token: this.$route.params.token\n })\n )\n }\n ]\n };\n\n return {\n state: null,\n error: null,\n user: null,\n\n /**\n * Form data\n */\n formData,\n\n /**\n * Form definition\n *\n * @type {Form},\n */\n formDefinition\n };\n },\n\n created() {\n this.load();\n },\n\n methods: {\n /**\n * Tries validating the activation token\n */\n load() {\n // loading data is forbidden if the component is already loading or loaded\n if ([null, \"error\"].indexOf(this.state) === -1) {\n return;\n }\n\n this.state = \"loading\";\n this.error = null;\n\n checkActivationToken(this.$route.params.token)\n .then(user => {\n this.user = user;\n this.formData.email = user.email;\n this.state = \"loaded\";\n })\n .catch(({ user_message: error }) => {\n this.error = error;\n this.state = \"error\";\n });\n },\n\n /**\n * Alias to load(), for better readibility in the view\n *\n * @see load()\n */\n retryLoading() {\n this.load();\n },\n\n /**\n *\n */\n onComplete() {\n this.$router.push(\"/\");\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.activate.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.activate.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./users.activate.vue?vue&type=template&id=043c7c3f&scoped=true&lang=pug&\"\nimport script from \"./users.activate.vue?vue&type=script&lang=js&\"\nexport * from \"./users.activate.vue?vue&type=script&lang=js&\"\nimport style0 from \"./users.activate.vue?vue&type=style&index=0&id=043c7c3f&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"043c7c3f\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--withMargin\"},[_c('NavBar'),_c('section',{staticClass:\"section section-white\"},[_c('div',{staticClass:\"container container--userValidation\"},[(_vm.state === 'loading')?_c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Chargement des données en cours...\")])]):_vm._e(),(_vm.state === 'error')?_c('div',{staticClass:\"notification error full-width\"},[_c('span',[_vm._v(_vm._s(_vm.error)+\". \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.retryLoading}},[_vm._v(\"Réessayer ?\")])])]):_vm._e(),(_vm.state === 'loaded')?_c('section',{staticClass:\"userValidation\"},[(_vm.user && _vm.user.status !== 'active')?_c('h1',[_vm._v(\"Demande d'accès\")]):(_vm.user)?_c('h1',[_vm._v(\"Fiche utilisateur\")]):_vm._e(),_c('div',{staticClass:\"userValidation-main\"},[_c('aside',{staticClass:\"userInfo\"},[_c('section',{staticClass:\"userInfo-section\"},[_c('hgroup',[_c('h1',[_vm._v(_vm._s(_vm.user.last_name.toUpperCase())+\" \"+_vm._s(_vm.user.first_name))]),_c('h3',[_vm._v(\"Structure\")]),_c('h2',[_vm._v(_vm._s(_vm.user.organization.name))])]),_c('p',[_vm._v(_vm._s(_vm.user.position)),_c('br'),_c('span',{staticClass:\"email\"},[_vm._v(_vm._s(_vm.user.email))])])]),_c('section',{staticClass:\"userInfo-section\"},[(_vm.isExpired)?_c('p',{staticClass:\"userHistory-item\"},[_c('span',[_c('font-awesome-icon',{staticClass:\"user-statusIcon\",attrs:{\"icon\":\"unlink\"}}),_vm._v(\" \"),_c('strong',[_vm._v(\"Lien expiré\")]),_vm._v(\" le \"+_vm._s(_vm.formatDate(_vm.user.user_access.expires_at, 'd M y')))],1),_c('br'),_vm._v(\"Un lien d'activation est valable \"+_vm._s(_vm.tokenExpiresIn)+\" jours\"),_c('br')]):_vm._e(),(_vm.user.user_access !== null)?_c('p',{staticClass:\"userHistory-item\"},[_c('span',[_c('font-awesome-icon',{staticClass:\"user-statusIcon\",attrs:{\"icon\":\"paper-plane\"}}),_vm._v(\" \"),_c('strong',[_vm._v(\"Accès envoyé\")]),_vm._v(\" le \"+_vm._s(_vm.formatDate(_vm.user.user_access.created_at, 'd M y')))],1),_c('br')]):_vm._e(),_c('p',{staticClass:\"userHistory-item\"},[_c('span',[_c('font-awesome-icon',{staticClass:\"user-statusIcon user-statusIcon--flag\",attrs:{\"icon\":\"flag\"}}),_vm._v(\" \"),_c('strong',[_vm._v(\"Demandé\")]),_vm._v(\" le \"+_vm._s(_vm.formatDate(_vm.user.created_at, 'd M y')))],1)])]),_c('section',{staticClass:\"userInfo-section\",domProps:{\"innerHTML\":_vm._s((_vm.user.access_request_message || '').replace('\\n','
'))}})]),_c('main',{staticClass:\"userPermissions\"},[_c('hgroup',{staticClass:\"userPermissions-header\"},[_c('h1',[_vm._v(\"Accès\")]),_c('h2',{staticClass:\"role\"},[_vm._v(_vm._s(_vm.user.role))])]),_c('p',[_vm._v(_vm._s(_vm.permission.description)),_c('br')]),_c('p',[_vm._v(\"Ainsi, l'utilisateur peut :\")]),(_vm.hasPermissionsFor('national'))?_c('UserPermissions',{attrs:{\"title\":\"À l'échelle nationale\",\"items\":_vm.permission.national_permissions}}):_vm._e(),(_vm.hasPermissionsFor('local'))?_c('UserPermissions',{attrs:{\"title\":\"Sur le territoire d'intervention\",\"items\":_vm.permission.local_permissions}}):_vm._e(),(_vm.options.length > 0 && _vm.user.status === 'active')?_c('div',[_c('h1',{staticClass:\"userPermissions-sectionTitle\"},[_vm._v(\"Options\")]),(!_vm.user.organization.active)?_c('p',[_vm._v(\"Pour cette structure, je souhaite :\")]):_vm._e(),_c('ul',{staticClass:\"userOptionsList\"},_vm._l((_vm.options),function(option,optionIndex){return _c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.checkedOptions[option.id]),expression:\"checkedOptions[option.id]\"}],attrs:{\"type\":\"checkbox\",\"id\":(\"option-\" + optionIndex),\"disabled\":_vm.user.organization.active},domProps:{\"value\":option.id,\"checked\":Array.isArray(_vm.checkedOptions[option.id])?_vm._i(_vm.checkedOptions[option.id],option.id)>-1:(_vm.checkedOptions[option.id])},on:{\"change\":function($event){var $$a=_vm.checkedOptions[option.id],$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=option.id,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.checkedOptions, option.id, $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.checkedOptions, option.id, $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.checkedOptions, option.id, $$c)}}}}),_c('label',{staticClass:\"label-inline\",attrs:{\"for\":(\"option-\" + optionIndex)}},[_vm._v(_vm._s(option.label))])])}),0)]):_vm._e()],1)]),(_vm.validation.error)?_c('div',{staticClass:\"userValidation-error notification error\"},[_vm._v(_vm._s(_vm.validation.error))]):_vm._e()]):_vm._e()])])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('h1',{staticClass:\"userPermissions-sectionTitle\"},[_vm._v(_vm._s(_vm.title))]),_c('ul',{staticClass:\"userPermissionsList\"},_vm._l((_vm.parsedItems),function(item){\nvar _obj;\nreturn _c('li',{class:( _obj = { 'userPermissionsList-item': true }, _obj[(\"userPermissionsList-item--\" + (item.type))] = true, _obj['userPermissionsList-item--subsection'] = item.subsection === true, _obj )},[_c('span',{domProps:{\"innerHTML\":_vm._s(item.label.replace(/%(.+?)%/gi, '$1'))}}),(item.comments)?_c('span',{staticClass:\"userPermissionsList-comments\"},[_c('br'),_vm._v(_vm._s(item.comments))]):_vm._e()])}),0)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * Matching between item types and fontawesome icones\n *\n * @const {Object.}\n */\nconst TYPES_TO_ICONS = {\n view: \"eye\",\n edit: \"pencil-alt\",\n deny: \"times\"\n};\n\nexport default {\n props: {\n /**\n * Title of the section\n *\n * @type {String}\n */\n title: {\n type: String,\n required: true\n },\n\n /**\n * List of items\n *\n * @type {Array.>}\n */\n items: {\n type: Array,\n required: true\n }\n },\n\n computed: {\n /**\n * Merges the different sections of permission items into a single array\n *\n * @param {Array.>} permissionItems\n *\n * @returns {Array.}\n */\n parsedItems() {\n return this.items.reduce((acc, arr) => {\n if (arr.length > 0) {\n Object.assign(arr[0], { subsection: true });\n }\n\n return [...acc, ...arr.map(this.resolveIcon)];\n }, []);\n }\n },\n\n methods: {\n /**\n * Resolves the icon to be used, based on the item's type\n *\n * @param {UserPermissionParsedItem} item\n *\n * @returns {UserPermissionParsedItem}\n */\n resolveIcon(item) {\n return { ...item, icon: TYPES_TO_ICONS[item.type] };\n }\n }\n};\n\n/**\n * @typedef {Object} UserPermissionItem\n * @property {String} type Either 'view', 'edit', or 'deny'\n * @property {String} label Label of the permission (HTML allowed)\n * @property {String} [comments] Additional line of text below the label (no HTML allowed)\n */\n\n/**\n * @type {UserPermissionItem} UserPermissionParsedItem\n * @property {String} icon Name of the fontawesome icon to be used\n * @property {Boolean} [subsection=false] Whether this item is the first one of a subsection of permissions (used for styling)\n */\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./userPermissions.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./userPermissions.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./userPermissions.vue?vue&type=template&id=bcdb6d54&lang=pug&\"\nimport script from \"./userPermissions.vue?vue&type=script&lang=js&\"\nexport * from \"./userPermissions.vue?vue&type=script&lang=js&\"\nimport style0 from \"./userPermissions.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { VueGoodTable as Table } from \"vue-good-table\";\nimport { get, sendActivationLink, denyAccess, remove } from \"#helpers/api/user\";\nimport UserPermissions from \"#app/layouts/userPermissions/userPermissions.vue\";\nimport \"vue-good-table/dist/vue-good-table.css\";\nimport NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport { get as getConfig } from \"#helpers/api/config\";\nimport { notify } from \"#helpers/notificationHelper\";\n\nlet permissions;\n\nexport default {\n components: {\n NavBar,\n Table,\n UserPermissions\n },\n\n data() {\n let activationTokenExpiresIn;\n ({\n permissions_description: permissions,\n activation_token_expires_in: activationTokenExpiresIn\n } = getConfig());\n\n return {\n /**\n * @type {User}\n */\n user: null,\n\n /**\n * The error's user message\n *\n * Obivously, null if there is no error\n *\n * @type {string|null}\n */\n error: null,\n\n /**\n * The current state of the page\n *\n * One out of: 'loading', 'error', or 'loaded'\n *\n * @type {string|null}\n */\n state: null,\n\n /**\n * Wether an activation link is being generated for one of the users\n *\n * @type {boolean}\n */\n loading: false,\n\n /**\n * Validation state\n *\n * @type {Object}\n */\n validation: {\n state: null,\n error: null\n },\n\n /**\n * List of checked options\n *\n * @type {Object.}\n */\n checkedOptions: {},\n\n /**\n * Number of days of validity of an activation days\n *\n * @type {Number}\n */\n tokenExpiresIn: activationTokenExpiresIn / 3600 / 24\n };\n },\n\n computed: {\n /**\n * Details about the permissions requested by the user\n *\n * @returns {Object}\n */\n permission() {\n if (!this.user) {\n return null;\n }\n\n return permissions[this.user.role_id];\n },\n\n /**\n * Get the allowed options for the current user\n *\n * @returns {Array}\n */\n options() {\n if (this.user === null || !this.permission) {\n return [];\n }\n\n return this.permission.options;\n },\n\n /**\n * Indicates whether the activation link is now expired\n *\n * @returns {Boolean}\n */\n isExpired() {\n const now = Date.now();\n return (\n this.user !== null &&\n this.user.status !== \"active\" &&\n this.user.user_access !== null &&\n now - this.user.user_access.expires_at * 1000 > 0\n );\n }\n },\n\n created() {\n this.load();\n },\n\n methods: {\n formatDate(...args) {\n return App.formatDate.call(App, ...args);\n },\n\n /**\n * Tries fetching the data from the API\n *\n * Please note that this cannot be done if the data has already been loaded\n * before.\n */\n load() {\n // loading data is forbidden if the component is already loading or loaded\n if ([null, \"error\"].indexOf(this.state) === -1) {\n return;\n }\n\n this.state = \"loading\";\n this.error = null;\n\n get(this.$route.params.id)\n .then(user => {\n this.user = user;\n this.checkedOptions = this.options.reduce(\n (acc, option) =>\n Object.assign(acc, {\n [option.id]:\n user.permission_options.indexOf(\n option.id\n ) !== -1\n }),\n {}\n );\n\n this.state = \"loaded\";\n })\n .catch(({ user_message: error }) => {\n this.error = error;\n this.state = \"error\";\n });\n },\n\n /**\n * Alias to load(), for better readibility in the view\n *\n * @see load()\n */\n retryLoading() {\n this.load();\n },\n\n /**\n * Checks whether the user requires at least one permission for the given level\n *\n * @param {'national'|'local'} level\n *\n * @returns {Boolean}\n */\n hasPermissionsFor(level) {\n return (\n this.permission &&\n this.permission[`${level}_permissions`] &&\n this.permission[`${level}_permissions`].length > 0\n );\n },\n\n /**\n * Allows access to the user\n */\n validate() {\n if (this.validation.state === \"loading\") {\n return;\n }\n\n this.validation.state = \"loading\";\n this.validation.error = null;\n\n sendActivationLink(this.$route.params.id, {\n options: this.checkedOptions\n })\n .then(() => {\n this.validation.state = null;\n\n notify({\n group: \"notifications\",\n type: \"success\",\n title: \"Accès envoyé\",\n text: \"Un accès a été envoyé à l'utilisateur\"\n });\n\n this.$router.push(\"/liste-des-utilisateurs\");\n })\n .catch(({ user_message: error }) => {\n this.validation.state = null;\n this.validation.error = error;\n });\n },\n\n /**\n * Denies access to the user\n */\n deny() {\n if (this.validation.state === \"loading\") {\n return;\n }\n\n this.validation.state = \"loading\";\n this.validation.error = null;\n\n denyAccess(this.$route.params.id)\n .then(() => {\n this.validation.state = null;\n\n notify({\n group: \"notifications\",\n type: \"success\",\n title: \"Accès refusé\",\n text: \"L'utilisateur a été supprimé de la base\"\n });\n\n this.$router.push(\"/liste-des-utilisateurs\");\n })\n .catch(({ user_message: error }) => {\n this.validation.state = null;\n this.validation.error = error;\n });\n },\n\n /**\n *\n */\n remove() {\n if (this.validation.state === \"loading\") {\n return;\n }\n\n // eslint-disable-next-line no-alert\n if (\n !window.confirm(\n \"Êtes-vous sûr de vouloir supprimer cet accès ?\"\n )\n ) {\n return;\n }\n\n this.validation.state = \"loading\";\n this.validation.error = null;\n\n remove(this.$route.params.id)\n .then(() => {\n this.validation.state = null;\n\n notify({\n group: \"notifications\",\n type: \"success\",\n title: \"Accès supprimé\",\n text: \"L'utilisateur a été supprimé de la base\"\n });\n\n this.$router.push(\"/liste-des-utilisateurs\");\n })\n .catch(({ user_message: error }) => {\n this.validation.state = null;\n this.validation.error = error;\n });\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.validate.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.validate.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./users.validate.vue?vue&type=template&id=5244792c&lang=pug&\"\nimport script from \"./users.validate.vue?vue&type=script&lang=js&\"\nexport * from \"./users.validate.vue?vue&type=script&lang=js&\"\nimport style0 from \"./users.validate.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--withMargin\"},[_c('NavBar'),_c('section',{staticClass:\"section section-white\"},[_c('div',{staticClass:\"container\"},[_c('Form',_vm._b({on:{\"complete\":_vm.onComplete},model:{value:(_vm.formData),callback:function ($$v) {_vm.formData=$$v},expression:\"formData\"}},'Form',_vm.formDefinition,false))],1)])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport Form from \"#app/components/form/form.vue\";\nimport { get as getConfig, load } from \"#helpers/api/config\";\nimport { upgrade } from \"#helpers/api/user\";\n\nexport default {\n components: {\n NavBar,\n Form\n },\n\n data() {\n const {\n user: { id: userId, email }\n } = getConfig();\n\n return {\n formData: {\n email\n },\n formDefinition: {\n title: \"Résorption Bidonvilles a été mise à jour\",\n description:\n \"La plateforme a été mise à jour en septembre 2019. A présent, il est possible pour les correspondants d'ouvrir des accès à un plus grand nombre d'acteurs.\",\n\n steps: [\n {\n sections: [\n {\n title:\n \"Pour compléter le futur annuaire, merci de renseigner les champs suivants\",\n inputs: {\n email: {\n type: \"text\",\n mandatory: false,\n label: \"Votre email\",\n disabled: true\n },\n position: {\n type: \"text\",\n mandatory: true,\n label: \"Votre fonction\"\n },\n phone: {\n type: \"text\",\n mandatory: false,\n label: \"Votre numéro de téléphone\",\n specificProps: {\n maxlength: 10\n }\n }\n }\n },\n {\n title:\n \"Pour bénéficier de la mise à jour, merci de créer un nouveau mot de passe\",\n inputs: {\n password: {\n type: \"password\",\n mandatory: true,\n label:\n \"Définissez votre nouveau mot de passe\",\n description:\n \"Votre mot de passe doit comporter au minimum 12 caractères, une majuscule, une minuscule, et un caractère non alphabétique (exemples : '.' ';' ',' '_' '!' '?', ...)
Nous vous recommandons de choisir une phrase intelligible en guise de mot de passe : plus simple à retenir qu'une suite de caractères aléatoires, et plus sécurisée.\"\n }\n }\n }\n ],\n wording: {\n submit: \"Mettre à jour\",\n error: \"Votre compte n'a pas pu être mis à jour\",\n success: \"Votre compte a ben été mis à jour\"\n },\n submit: data => upgrade(userId, data)\n }\n ]\n }\n };\n },\n\n methods: {\n onComplete() {\n load()\n .then(() => {\n this.$router.push({ path: \"/\" });\n })\n .catch(() => {\n window.location.reload();\n });\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.upgrade.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.upgrade.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./users.upgrade.vue?vue&type=template&id=2e308644&lang=pug&\"\nimport script from \"./users.upgrade.vue?vue&type=script&lang=js&\"\nexport * from \"./users.upgrade.vue?vue&type=script&lang=js&\"\nimport style0 from \"./users.upgrade.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--withMargin\"},[_c('NavBar'),_c('section',{staticClass:\"section section-white requestNewPassword\"},[_c('div',{staticClass:\"container\"},[_c('Form',_vm._b({on:{\"complete\":_vm.onComplete},model:{value:(_vm.formData),callback:function ($$v) {_vm.formData=$$v},expression:\"formData\"}},'Form',_vm.formDefinition,false))],1)])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport { requestNewPassword } from \"#helpers/api/user\";\nimport Form from \"#app/components/form/form.vue\";\n\nexport default {\n components: {\n NavBar,\n Form\n },\n data() {\n return {\n formData: {},\n formDefinition: {\n title: \"Renouvellement de mot de passe\",\n description:\n \"Si vous avez perdu votre mot de passe, vous pouvez demander à en définir un nouveau.\",\n\n steps: [\n {\n sections: [\n {\n inputs: {\n email: {\n type: \"text\",\n label: \"Votre courriel\",\n description:\n \"Saisissez ici le courriel associé au compte Résorption Bidonvilles pour lequel vous souhaitez renouveler le mot de passe\",\n mandatory: true\n }\n }\n }\n ],\n wording: {\n submit: \"Renouveller mon mot de passe\",\n success:\n \"Un mail vous a été adressé avec les instructions\",\n error: \"La demande de renouvellement a échoué\"\n },\n submit: ({ email }) => requestNewPassword(email)\n }\n ]\n }\n };\n },\n methods: {\n onComplete() {\n this.$router.push({ path: \"/\" });\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.requestNewPassword.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.requestNewPassword.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./users.requestNewPassword.vue?vue&type=template&id=1f7873ca&lang=pug&\"\nimport script from \"./users.requestNewPassword.vue?vue&type=script&lang=js&\"\nexport * from \"./users.requestNewPassword.vue?vue&type=script&lang=js&\"\nimport style0 from \"./users.requestNewPassword.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--withMargin\"},[_c('NavBar'),_c('section',{staticClass:\"section section-white\",attrs:{\"id\":\"form\"}},[_c('div',{staticClass:\"container\"},[(_vm.state === 'loading')?_c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Chargement des données en cours...\")])]):_vm._e(),(_vm.state === 'error')?_c('div',{staticClass:\"notification error full-width\"},[_c('p',[_c('font-awesome-icon',{attrs:{\"icon\":\"times\"}}),_vm._v(\" \"),_c('strong',[_vm._v(\"Une erreur est survenue\")])],1),_c('p',[_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.error.replace(/\\n/g, '
'))}})]),_c('p',[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.retryLoading}},[_vm._v(\"Réessayer ?\")])])]):_vm._e(),(_vm.state === 'loaded')?_c('div',[_c('Form',_vm._b({ref:\"form\",on:{\"complete\":_vm.onComplete},model:{value:(_vm.formData),callback:function ($$v) {_vm.formData=$$v},expression:\"formData\"}},'Form',_vm.formDefinition,false))],1):_vm._e()])])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { checkPasswordToken, setPassword } from \"#helpers/api/user\";\nimport NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport Form from \"#app/components/form/form.vue\";\n\nexport default {\n components: {\n NavBar,\n Form\n },\n\n data() {\n const formData = {\n email: \"\"\n };\n\n const formDefinition = {\n title: \"Définition d'un nouveau mot de passe\",\n description:\n \"Le formulaire suivant vous permet de choisir un nouveau mot de passe\",\n steps: [\n {\n title: \"\",\n sections: [\n {\n title: \"\",\n inputs: {\n email: {\n label: \"Votre email\",\n mandatory: false,\n type: \"text\",\n disabled: true\n },\n password: {\n label: \"Définissez votre mot de passe\",\n description:\n \"Votre mot de passe doit comporter au minimum 12 caractères, une majuscule, une minuscule, et un caractère non alphabétique (exemples : '.' ';' ',' '_' '!' '?', ...)
Nous vous recommandons de choisir une phrase intelligible en guise de mot de passe : plus simple à retenir qu'une suite de caractères aléatoires, et plus sécurisée.\",\n mandatory: true,\n type: \"password\"\n }\n }\n }\n ],\n wording: {\n submit: \"Changer de mot de passe\",\n error: \"Votre mot de passe n'a pas pu être changé\",\n success: \"Votre nouveau mot de passe a été changé\"\n },\n submit: data =>\n setPassword(\n this.user.id,\n Object.assign(data, {\n token: this.$route.params.token\n })\n )\n }\n ]\n };\n\n return {\n state: null,\n error: null,\n user: null,\n\n /**\n * Form data\n */\n formData,\n\n /**\n * Form definition\n *\n * @type {Form},\n */\n formDefinition\n };\n },\n\n created() {\n this.load();\n },\n\n methods: {\n /**\n * Tries validating the token\n */\n load() {\n // loading data is forbidden if the component is already loading or loaded\n if ([null, \"error\"].indexOf(this.state) === -1) {\n return;\n }\n\n this.state = \"loading\";\n this.error = null;\n\n checkPasswordToken(this.$route.params.token)\n .then(user => {\n this.user = user;\n this.formData.email = user.email;\n this.state = \"loaded\";\n })\n .catch(({ user_message: error }) => {\n this.error = error;\n this.state = \"error\";\n });\n },\n\n /**\n * Alias to load(), for better readibility in the view\n *\n * @see load()\n */\n retryLoading() {\n this.load();\n },\n\n /**\n *\n */\n onComplete() {\n this.$router.push(\"/\");\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.setNewPassword.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./users.setNewPassword.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./users.setNewPassword.vue?vue&type=template&id=58aa4163&lang=pug&\"\nimport script from \"./users.setNewPassword.vue?vue&type=script&lang=js&\"\nexport * from \"./users.setNewPassword.vue?vue&type=script&lang=js&\"\nimport style0 from \"./users.setNewPassword.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--withMargin\"},[_c('NavBar'),_c('section',[(_vm.state !== 'loaded')?_c('div',{staticClass:\"container\"},[(_vm.state === 'loading')?_c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Chargement des données en cours...\")])]):_vm._e(),(_vm.state === 'error')?_c('div',{staticClass:\"notification error full-width\"},[_c('span',[_vm._v(_vm._s(_vm.error)+\". \"),_c('span',{on:{\"click\":_vm.retryLoading}},[_vm._v(\"Réessayer ?\")])])]):_vm._e()]):_vm._e(),(_vm.state === 'loaded')?_c('div',[_c('header',{staticClass:\"pageHeader\"},[_c('div',{staticClass:\"pageHeader-wrapper\"},[_c('section',{staticClass:\"pageHeader-main\"},[_c('section',{staticClass:\"pageHeader-info\"},[_c('h1',{staticClass:\"pageHeader-title\"},[_vm._v(\"Dispositifs - \"+_vm._s(_vm.locationTitle))])])])])]),_c('div',{staticClass:\"container plansList-body\"},[_c('CollectivityInput',{staticClass:\"planList-search\",model:{value:(_vm.location),callback:function ($$v) {_vm.location=$$v},expression:\"location\"}}),_c('Table',{attrs:{\"columns\":_vm.columns,\"content\":_vm.pageContent,\"emptyLabel\":'Aucun dispositif sur ce territoire'},on:{\"click\":_vm.routeToPlan},scopedSlots:_vm._u([{key:\"name\",fn:function(props){return [_c('strong',[_vm._v(_vm._s(props.row.name))]),_c('br'),(props.row.expected_to_end_at)?_c('span',[_vm._v(\"du \"+_vm._s(_vm.formatDate(props.row.started_at / 1000))),_c('br'),_vm._v(\"au \"+_vm._s(_vm.formatDate(props.row.expected_to_end_at / 1000))),_c('br'),_vm._v(_vm._s(_vm.dateDiff(props.row.started_at, props.row.expected_to_end_at)))]):_c('span',[_vm._v(\"depuis le \"+_vm._s(_vm.formatDate(props.row.started_at / 1000)))]),_c('br'),_vm._l((props.row.topics),function(topic){return _c('p',[_c('span',{staticClass:\"rbTag\"},[_vm._v(_vm._s(topic.name))])])})]}},{key:\"departement\",fn:function(props){return [_vm._v(_vm._s(props.row.departement.code))]}},{key:\"location\",fn:function(props){return [(props.row.location_type.id === 'shantytowns')?_c('span',_vm._l((props.row.shantytowns),function(shantytown){return _c('span',[_vm._v(\"- \"+_vm._s(shantytown.usename)),_c('br')])}),0):_vm._e(),(props.row.location_type.id === 'location')?_c('span',[_vm._v(_vm._s(props.row.location.label))]):_vm._e(),(props.row.location_type.id === 'housing')?_c('span',[_vm._v(\"Dans le logement\")]):_vm._e(),(props.row.location_type.id === 'other')?_c('span',[_vm._v(_vm._s(props.row.location_details))]):_vm._e()]}},{key:\"government\",fn:function(props){return [_c('router-link',{staticClass:\"user\",attrs:{\"to\":(\"/annuaire/\" + (props.row.government_contacts[0].organization.id))}},[_vm._v(_vm._s(props.row.government_contacts[0].name)),_c('br'),_vm._v(_vm._s(props.row.government_contacts[0].organization.name))])]}},{key:\"operator\",fn:function(props){return [_c('router-link',{staticClass:\"user\",attrs:{\"to\":(\"/annuaire/\" + (props.row.operator_contacts[0].organization.id))}},[_vm._v(_vm._s(props.row.operator_contacts[0].name)),_c('br'),_vm._v(_vm._s(props.row.operator_contacts[0].organization.name))])]}}],null,false,1173401747)})],1)]):_vm._e()])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { postApi, getApi, patchApi } from \"#helpers/api/main\";\n\n/**\n * Lists all existing plans\n *\n * @returns {Promise}\n */\nexport function list() {\n return getApi(\"/plans\");\n}\n\n/**\n * Fetchs a specific plan from the database\n *\n * @param {string} id\n *\n * @returns {Promise}\n */\nexport async function get(id) {\n return getApi(`/plans/${id}`);\n}\n\n/**\n * Creates a new plan\n *\n * @param {Object} data\n *\n * @returns {Promise}\n */\nexport async function create(data) {\n return postApi(\"/plans\", data);\n}\n\n/**\n * Updates a plan\n *\n * @param {Object} data\n *\n * @returns {Promise}\n */\nexport async function update(id, data) {\n return postApi(`/plans/${id}`, data);\n}\n\n/**\n * Updates a plan's details\n *\n * @param {number} planId\n * @param {Object} data\n *\n * @returns {Promise}\n */\nexport async function addState(planId, data) {\n return postApi(`/plans/${planId}/states`, data);\n}\n\n/**\n *\n */\nexport async function close(planId, data) {\n return patchApi(`/plans/${planId}`, {\n operation: \"close\",\n data\n });\n}\n","import Table from \"#app/components/table/table.vue\";\nimport { list } from \"#helpers/api/plan\";\nimport \"vue-good-table/dist/vue-good-table.css\";\nimport NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport CollectivityInput from \"#app/components/form/input/collectivity/collectivity.vue\";\nimport { open } from \"#helpers/tabHelper\";\nimport {\n get as getConfig,\n getPermission,\n hasPermission\n} from \"#helpers/api/config\";\n\nexport default {\n components: {\n NavBar,\n Table,\n CollectivityInput\n },\n\n data() {\n const { user } = getConfig();\n const permission = getPermission(\"plan.list\");\n const hasNationalPermission = permission.geographic_level === \"nation\";\n const data = {\n locationTitle: null,\n defaultLocation: null,\n location: null\n };\n\n let userLocationType = user.organization.location.type;\n if (userLocationType === \"epci\" || userLocationType === \"city\") {\n userLocationType = \"departement\";\n }\n\n const userLocation = {\n id:\n userLocationType === \"nation\"\n ? null\n : user.organization.location[userLocationType].code,\n label:\n userLocationType === \"nation\"\n ? \"France\"\n : user.organization.location[userLocationType].name,\n category: userLocationType,\n data: {\n code:\n userLocationType === \"nation\"\n ? null\n : user.organization.location[userLocationType].code,\n type: userLocationType\n }\n };\n\n if (hasNationalPermission !== true || userLocationType === \"nation\") {\n data.defaultLocation = { ...userLocation };\n data.location = null;\n } else {\n data.defaultLocation = {\n id: null,\n label: \"France\",\n category: \"Pays\",\n data: {\n code: null,\n type: \"nation\"\n }\n };\n data.location = { ...userLocation };\n }\n\n if (data.defaultLocation.data.type === \"nation\") {\n data.locationTitle = \"National\";\n } else {\n data.locationTitle = data.defaultLocation.label;\n }\n\n return Object.assign(data, {\n /**\n * List of plans\n *\n * @type {Array.}\n */\n plans: [],\n\n /**\n * The error's user message\n *\n * Obivously, null if there is no error\n *\n * @type {string|null}\n */\n error: null,\n\n /**\n * The current state of the page\n *\n * One out of: 'loading', 'error', or 'loaded'\n *\n * @type {string|null}\n */\n state: null\n });\n },\n\n computed: {\n currentLocation() {\n return this.location || this.defaultLocation;\n },\n columns() {\n return [\n { id: \"name\", label: \"Nom du dispositif\" },\n { id: \"departement\", label: \"Dpt\" },\n { id: \"location\", label: \"Lieu\" },\n { id: \"government\", label: \"Service de l'état\" },\n { id: \"operator\", label: \"Opérateur\" }\n ];\n },\n pageContent() {\n return this.plans\n .filter(({ closed_at: closedAt }) => closedAt === null)\n .filter(plan => {\n if (this.currentLocation.data.type === \"nation\") {\n return true;\n }\n\n const l = plan[this.currentLocation.data.type];\n return l && l.code === `${this.currentLocation.data.code}`;\n });\n }\n },\n\n created() {\n this.load();\n },\n\n methods: {\n dateDiff(...args) {\n return App.dateDiff(...args);\n },\n\n formatDate(...args) {\n return window.App.formatDate(...args);\n },\n\n /**\n * Tries fetching the data from the API\n *\n * Please note that this cannot be done if the data has already been loaded\n * before.\n */\n load() {\n // loading data is forbidden if the component is already loading or loaded\n if ([null, \"error\"].indexOf(this.state) === -1) {\n return;\n }\n\n this.state = \"loading\";\n this.error = null;\n\n list()\n .then(plans => {\n this.plans = plans;\n this.state = \"loaded\";\n })\n .catch(({ user_message: error }) => {\n this.error = error;\n this.state = \"error\";\n });\n },\n\n /**\n * Alias to load(), for better readibility in the view\n *\n * @see load()\n */\n retryLoading() {\n this.load();\n },\n\n /**\n * Redirects to a plan's details page\n *\n * @param {Object}\n */\n routeToPlan({ id: planId }) {\n const routeData = this.$router.resolve(`/dispositif/${planId}`);\n open(routeData.href);\n },\n\n hasPermission(...args) {\n return hasPermission(...args);\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./plans.list.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./plans.list.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./plans.list.vue?vue&type=template&id=ca8ce470&scoped=true&lang=pug&\"\nimport script from \"./plans.list.vue?vue&type=script&lang=js&\"\nexport * from \"./plans.list.vue?vue&type=script&lang=js&\"\nimport style0 from \"./plans.list.vue?vue&type=style&index=0&id=ca8ce470&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"ca8ce470\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('NavBar'),(_vm.loading.status === 'loading')?_c('section',{staticClass:\"section section-white\"},[_vm._m(0)]):_vm._e(),(_vm.loading.status === 'failed')?_c('section',{staticClass:\"section section-white\"},[_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"notification error full-width\"},[_c('span',[_vm._v(_vm._s(_vm.loading.error)+\". \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.load}},[_vm._v(\"Réessayer ?\")])])])])]):_vm._e(),(_vm.loading.status === 'completed')?_c('Form',_vm._b({ref:\"form\",on:{\"complete\":_vm.onComplete},model:{value:(_vm.formData),callback:function ($$v) {_vm.formData=$$v},expression:\"formData\"}},'Form',_vm.formDefinition,false)):_vm._e()],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Chargement des données en cours...\")])])])}]\n\nexport { render, staticRenderFns }","import { getApi } from \"#helpers/api/main\";\n\n/**\n * Lists all departements related to a specific region\n *\n * @returns {Promise}\n */\nexport function getDepartementsForRegion(regionCode) {\n return getApi(`/regions/${regionCode}/departements`);\n}\n\n/**\n * Lists all departements related to a specific epci\n *\n * @returns {Promise}\n */\nexport function getDepartementsForEpci(epciCode) {\n return getApi(`/epci/${epciCode}/departements`);\n}\n","import NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport Form from \"#app/components/form/form.vue\";\nimport { get as getConfig, hasPermission } from \"#helpers/api/config\";\nimport { create } from \"#helpers/api/plan\";\nimport {\n getByCategory,\n getMembers,\n getMembersOfCategory\n} from \"#helpers/api/organization\";\nimport { notify } from \"#helpers/notificationHelper\";\nimport { getDepartementsForRegion } from \"#helpers/api/geo\";\n\nexport default {\n components: {\n NavBar,\n Form\n },\n\n data() {\n const { user: me, topics } = getConfig();\n const data = {\n user: me,\n formData: {\n association: []\n },\n loading: {\n status: null,\n error: null\n }\n };\n const that = this;\n const refs = this.$refs;\n\n const contactMissing = {\n type: \"hidden\",\n label: \"Personne référente dans la structure\",\n description:\n \"Aucune personne de cette structure n'est encore enregistrée sur la plateforme résorption bidonville.\",\n mandatory: true,\n condition({ association }) {\n return (\n association !== undefined &&\n association.length > 0 &&\n refs.form.getInputById(\"contact\").options.length === 0 &&\n that.loadingAssociationContacts === false\n );\n }\n };\n\n data.formDefinition = {\n title: \"Déclarer un dispositif\",\n descriptionTitle: \"Qu'est-ce qu'un dispositif ?\",\n description:\n \"C’est une action mise en place et financée en partie ou en totalité par un acteur public. Sa finalité est la résorption des bidonvilles.
Qui doit le déclarer ? Le service de l'Etat à l'initiative du dispositif doit le déclarer. L'acteur de terrain sera en charge de renseigner les informations relatives à l'action menée.\",\n steps: [\n {\n title: \"Dispositf\",\n wording: {\n error: \"La déclaration du dispositif a échoué\",\n submit: \"Déclarer le dispositif\"\n },\n sections: [\n {\n title: \"Intervention\",\n icon: \"list\",\n inputs: {\n name: {\n type: \"text\",\n label: \"Nom du dispositif\",\n mandatory: true\n },\n departement: {\n type: \"select\",\n label: \"Département d'intervention\",\n mandatory: true\n },\n startedAt: {\n type: \"date\",\n label: \"Date de début\",\n mandatory: true\n },\n expectedToEndAt: {\n type: \"date\",\n label: \"Date de fin prévue (facultatif)\",\n mandatory: false\n },\n in_and_out: {\n type: \"radio\",\n label:\n \"Ce dispositif implique-t-il un système d'entrées et de sorties des personnes ?\",\n mandatory: true,\n options: [\n { value: 1, label: \"Oui\" },\n { value: 0, label: \"Non\" }\n ]\n },\n topics: {\n type: \"checkbox\",\n label: \"Champs d'intervention\",\n description:\n \"Les thématiques sélectionnées définissent l'action que vous menez et les indicateurs de suivi associés.\",\n mandatory: true,\n options: topics.map(({ uid, name }) => ({\n value: uid,\n label: name\n }))\n },\n goals: {\n type: \"textarea\",\n label: \"Objectifs\",\n mandatory: true,\n specificProps: {\n placeholder:\n \"Précisez les objectifs, les enjeux, le contexte du dispositif\\n\\nPar exemple : résorber le bidonville, scolariser 80% des enfants identités en bidonvilles...\"\n }\n }\n }\n },\n {\n title: \"Lieu\",\n icon: \"map-pin\",\n inputs: {\n locationType: {\n type: \"radio\",\n label:\n \"L'action se déroule dans le cadre suivant\",\n mandatory: true,\n options: [\n {\n value: \"shantytowns\",\n label:\n \"sur site(s) : bidonville ou squat\"\n },\n {\n value: \"location\",\n label: \"sur terrain d'insertion\"\n },\n {\n value: \"housing\",\n label: \"dans le logement\"\n },\n {\n value: \"other\",\n label:\n \"dans plusieurs lieux (hébergement, permanence, rue...)\"\n }\n ]\n },\n locationShantytowns: {\n type: \"townList\",\n label: \"Sites concernés\",\n description: `Merci de sélectionner les sites concernés par le dispositif.
Si vous ne trouvez pas un site, vous pouvez déclarer un nouveau site.`,\n mandatory: true,\n condition({ locationType }) {\n return locationType === \"shantytowns\";\n }\n },\n locationAddress: {\n type: \"addressWithLocation\",\n label: \"Adresse du terrain d'insertion\",\n mandatory: true,\n condition({ locationType }) {\n return locationType === \"location\";\n }\n },\n locationDetails: {\n type: \"text\",\n label: \"Préciser\",\n mandatory: true,\n condition({ locationType }) {\n return locationType === \"other\";\n }\n }\n }\n },\n {\n title: \"Contacts\",\n inputs: {\n government: {\n type: \"autocompleter\",\n label:\n \"Personne au service de l'état en charge du pilotage\",\n mandatory: true,\n specificProps: {\n autocompleter: d => {\n const p = getMembersOfCategory(\n \"public_establishment\"\n );\n const p2 = p.then(({ users }) =>\n users\n .filter(\n ({\n first_name: firstName,\n last_name: lastName\n }) =>\n [\n firstName,\n lastName\n ].some(value =>\n d\n .split(\" \")\n .every(\n part =>\n value\n .toLowerCase()\n .indexOf(\n part.toLowerCase()\n ) !==\n -1\n )\n )\n )\n .map(\n ({\n id,\n first_name: firstName,\n last_name: lastName\n }) => ({\n id,\n label: `${firstName} ${lastName.toUpperCase()}`\n })\n )\n );\n p2.abort = p.abort;\n\n return p2;\n },\n showCategory: false,\n allowMultiple: false,\n float: true\n }\n },\n association: {\n type: \"autocompleter\",\n label:\n \"Opérateur ou service en charge de l'intervention\",\n mandatory: true,\n specificProps: {\n autocompleter: d => {\n const p = getByCategory(\n \"association\"\n );\n const p2 = p.then(\n ({ organizations }) =>\n organizations\n .filter(\n ({\n name,\n abbreviation\n }) =>\n d\n .split(\" \")\n .every(\n part =>\n name\n .toLowerCase()\n .indexOf(\n part.toLowerCase()\n ) !==\n -1\n ) ||\n (abbreviation !==\n null &&\n abbreviation\n .toLowerCase()\n .indexOf(\n d.toLowerCase()\n ) >= 0)\n )\n .map(organization => ({\n id: organization.id,\n label:\n organization.name,\n category: `${organization.departement_code} - ${organization.departement_name}`,\n data: {\n name:\n organization.name,\n departement:\n organization.departement_code\n }\n }))\n );\n p2.abort = p.abort;\n\n return p2;\n },\n showCategory: true,\n allowMultiple: false,\n float: true\n }\n },\n contact: {\n type: \"select\",\n label:\n \"Personne référente dans la structure\",\n mandatory: true,\n options: [],\n condition({ association }) {\n return (\n association !== undefined &&\n association.length > 0 &&\n this.options.length > 0\n );\n }\n },\n contact_missing: contactMissing\n }\n },\n {\n title: \"Financements\",\n inputs: {\n finances: {\n type: \"planFunding\",\n label: \"Financements\",\n mandatory: false\n }\n }\n }\n ],\n submit: create\n }\n ]\n };\n\n if (hasPermission(\"user.create\")) {\n window.createUser = this.createUser;\n contactMissing.description +=\n '
Vous pouvez créer un compte utilisateur en cliquant ici.';\n }\n\n if (me.organization.category.uid === \"public_establishment\") {\n data.formData.government = [\n {\n id: me.id,\n label: `${me.first_name} ${me.last_name.toUpperCase()}`\n }\n ];\n }\n\n return data;\n },\n\n watch: {\n \"formData.association\": function organizationType() {\n this.loadingAssociationContacts = true;\n this.$refs.form.getInputById(\"contact\").options = [];\n\n if (this.formData.association.length === 0) {\n return;\n }\n\n getMembers(this.formData.association[0].id).then(({ users }) => {\n this.$refs.form.getInputById(\"contact\").options = users.map(\n ({ id, first_name: firstName, last_name: lastName }) => ({\n value: id,\n label: `${firstName} ${lastName.toUpperCase()}`\n })\n );\n this.loadingAssociationContacts = false;\n });\n }\n },\n\n mounted() {\n this.load();\n window.addEventListener(\n \"message\",\n ({ data }) => {\n this.$refs.form.getInputById(\"contact\").options = [\n {\n value: data.id,\n label: `${\n data.first_name\n } ${data.last_name.toUpperCase()}`\n }\n ];\n this.formData.contact = data.id;\n this.loadingAssociationContacts = false;\n\n notify({\n group: \"notifications\",\n type: \"success\",\n title: \"Utilisateur créé\",\n text: \"La personne référente est désormais sélectionnée\"\n });\n },\n false\n );\n },\n\n methods: {\n getDepartementsForCurrentUser() {\n const LEVEL_VALUES = {\n city: 1,\n epci: 2,\n departement: 3,\n region: 4,\n nation: 5\n };\n const featureLevel = this.user.permissions.plan.create\n .geographic_level;\n const userLevel = this.user.organization.location.type;\n\n let level;\n if (featureLevel === \"local\") {\n level = userLevel;\n } else if (LEVEL_VALUES[userLevel] > LEVEL_VALUES[featureLevel]) {\n level = userLevel;\n } else {\n level = featureLevel;\n }\n\n // feature level = \"local\"\n switch (level) {\n case \"nation\": {\n const { departements } = getConfig();\n return Promise.resolve(departements);\n }\n\n case \"region\":\n return getDepartementsForRegion(\n this.user.organization.location.region.code\n ).then(({ departements }) => departements);\n\n default:\n return Promise.resolve([\n this.user.organization.location.departement\n ]);\n }\n },\n\n load() {\n if (\n this.loading.status === \"loading\" ||\n this.loading.status === \"completed\"\n ) {\n return;\n }\n\n this.loading.status = \"loading\";\n this.loading.error = null;\n\n this.getDepartementsForCurrentUser()\n .then(departements => {\n this.loading.status = \"completed\";\n\n this.$nextTick(() => {\n const input = this.$refs.form.getInputById(\n \"departement\"\n );\n input.options = departements.map(({ code, name }) => ({\n label: `${code} - ${name}`,\n value: code\n }));\n });\n })\n .catch(error => {\n this.loading.status = \"failed\";\n this.loading.error = error;\n });\n },\n createUser() {\n const { name, departement } = this.formData.association[0].data;\n const { href } = this.$router.resolve(\"/nouvel-utilisateur\");\n window.open(\n `${href}?association_name=${encodeURIComponent(\n name\n )}&association_departement=${departement}`,\n \"newUser\",\n \"menubar=no, status=no\"\n );\n },\n onComplete(stepData, [{ id }]) {\n notify({\n group: \"notifications\",\n type: \"success\",\n title: \"Dispositif correctement déclaré\",\n text: \"Le dispositif a bien été ajouté en base de données\"\n });\n\n this.$router.push(`/dispositif/${id}`);\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./plans.create.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./plans.create.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./plans.create.vue?vue&type=template&id=2ee54620&lang=pug&\"\nimport script from \"./plans.create.vue?vue&type=script&lang=js&\"\nexport * from \"./plans.create.vue?vue&type=script&lang=js&\"\nimport style0 from \"./plans.create.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--withMargin\"},[_c('NavBar'),(_vm.closingAlertStatus !== 'hidden')?_c('div',{staticClass:\"alert\"},[_c('div',{ref:\"wrapper\",staticClass:\"alert-wrapper\"},[_c('header',{staticClass:\"alert-header\"},[_c('hgroup',[_c('h1',{staticClass:\"alert-title\"},[_vm._v(\"Confirmez-vous la fermeture du dispositif \"+_vm._s(_vm.plan.name)+\" ?\")])]),_c('div',{staticClass:\"alert-actionButtons\"},[_c('button',{staticClass:\"button secondary\",attrs:{\"disabled\":_vm.closingStatus === 'pending'},on:{\"click\":function($event){return _vm.setClosingAlertStatus('hidden')}}},[_vm._v(\"Annuler\")]),(_vm.closingAlertStatus === 'step1')?_c('button',{staticClass:\"button\",on:{\"click\":_vm.checkClosing}},[_vm._v(\"Suite\")]):_vm._e(),(_vm.closingAlertStatus === 'step2')?_c('button',{staticClass:\"button\",attrs:{\"disabled\":_vm.closingStatus === 'pending'},on:{\"click\":_vm.close}},[_vm._v(\"Valider\")]):_vm._e()])]),_c('section',{staticClass:\"alert-body\"},[(_vm.closingAlertStatus === 'step1')?_c('div',[_c('p',[_vm._v(\"Avant de fermer définitivement le dispositif, assurez-vous que les indicateurs de suivi renseignés par l'opérateur sont à jour.\"),(_vm.plan.last_update !== null)?_c('span',[_vm._v(\" Pour information, la dernière mise à jour des indicateurs a eu lieu le \"+_vm._s(_vm.formatDate(_vm.plan.last_update / 1000, 'd/m/y'))+\".\")]):_vm._e(),_c('br'),_vm._v(\"Merci de renseigner les dépenses exécutées de l'année en cours et des années précédentes si nécessaire\")]),_c('PlanFunding',{attrs:{\"inputMode\":\"closing\",\"minYear\":_vm.minYear},model:{value:(_vm.closingData.finances),callback:function ($$v) {_vm.$set(_vm.closingData, \"finances\", $$v)},expression:\"closingData.finances\"}})],1):_c('div',[_c('p',[_c('Input',{attrs:{\"id\":\"closedAt\",\"mandatory\":true,\"type\":\"date\",\"label\":\"Date de fermeture du dispositif\",\"description\":\"La date de fermeture du dispositif doit être postérieure - ou égale - à la dernière date de mise à jour des indicateurs.\",\"disabled\":_vm.closingStatus === 'pending'},model:{value:(_vm.closingData.closedAt),callback:function ($$v) {_vm.$set(_vm.closingData, \"closedAt\", $$v)},expression:\"closingData.closedAt\"}})],1),_c('p',[_c('Input',{attrs:{\"id\":\"comment\",\"mandatory\":true,\"type\":\"textarea\",\"label\":\"Commentaire\",\"description\":_vm.closingCommentDescription,\"disabled\":_vm.closingStatus === 'pending'},model:{value:(_vm.closingData.comment),callback:function ($$v) {_vm.$set(_vm.closingData, \"comment\", $$v)},expression:\"closingData.comment\"}})],1)]),(_vm.closingErrors.length > 0)?_c('div',{staticClass:\"notification error\"},[_vm._v(\"Une erreur est survenue\")]):_vm._e(),(_vm.closingErrors.length > 0)?_c('p',{staticClass:\"error\"},[_c('ul',_vm._l((_vm.closingErrors),function(error){return _c('li',[_vm._v(_vm._s(error))])}),0)]):_vm._e()])])]):_vm._e(),_c('section',{staticClass:\"section-white\"},[(_vm.status !== 'loaded')?_c('div',{staticClass:\"container\"},[(!_vm.status || _vm.status === 'loading')?_c('div',[_vm._m(0)]):(_vm.status === 'loadingError')?_c('div',[_c('div',{staticClass:\"notification error full-width\"},[_c('span',[_vm._v(_vm._s(_vm.error)+\". \"),_c('span',{on:{\"click\":_vm.load}},[_vm._v(\"Réessayer ?\")])])])]):_vm._e()]):_vm._e(),(_vm.status === 'loaded')?_c('div',[_c('header',{staticClass:\"pageHeader\"},[_c('div',{staticClass:\"pageHeader-wrapper\"},[_c('section',{staticClass:\"pageHeader-main\"},[_c('section',{staticClass:\"pageHeader-info\"},[_c('h1',{staticClass:\"pageHeader-title\"},[_vm._v(_vm._s(_vm.plan.name))])]),_c('aside',{staticClass:\"pageHeader-buttons\"})])])]),_c('section',{staticClass:\"container\"},[_c('SlideNote',{attrs:{\"title\":\"Qu'est-ce qu'un dispositif ?\"}},[_c('template',{slot:\"content\"},[_c('p',[_vm._v(\"C’est une action mise en place et financée en partie ou en totalité par un acteur public. Sa finalité est la résorption des bidonvilles.\"),_c('br'),_c('strong',[_vm._v(\"Qui doit le déclarer ?\")]),_vm._v(\" Le service de l'Etat à l'initiative du dispositif doit le déclarer. L'acteur de terrain sera en charge de renseigner les informations relatives à l'action menée.\")]),_c('p',[_c('strong',[_vm._v(\"À quoi sert le suivi ?\")]),_c('br'),_vm._v(\"La mise à jour des données de suivi permettent d’observer la progression des démarches des habitants par rapport à une situation initiale et les résultats des actions.\"),_c('br'),_vm._v(\"Toutes ces données peuvent êtres utilisées pour la communication auprès des partenaires.\")])])],2),_c('section',{staticClass:\"dataSection\"},[_c('header',{staticClass:\"dataSection-header\"},[_c('h1',{staticClass:\"dataSection-title\"},[_c('span',{staticClass:\"dataSection-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"list\"}})],1),_vm._v(\" Intervention \")])]),_c('article',{staticClass:\"block\"},[_c('div',{staticClass:\"dataSection-line\"},[_c('p',{staticClass:\"data\"},[_c('span',{staticClass:\"data-label\"},[_vm._v(\"Date de début\")]),_c('br'),_vm._v(_vm._s(_vm.formatDate(_vm.plan.started_at / 1000, 'd M y')))]),(_vm.plan.expected_to_end_at)?_c('p',{staticClass:\"data\"},[_c('span',{staticClass:\"data-label\"},[_vm._v(\"Date de fin prévue\")]),_c('br'),_vm._v(_vm._s(_vm.formatDate(_vm.plan.expected_to_end_at / 1000, 'd M y'))),_c('br'),_c('strong',[_vm._v(\"Durée prévue : \"+_vm._s(_vm.dateDiff(_vm.plan.started_at, _vm.plan.expected_to_end_at)))])]):_vm._e(),(_vm.plan.closed_at)?_c('p',{staticClass:\"data\"},[_c('span',{staticClass:\"data-label\"},[_vm._v(\"Date de fin\")]),_c('br'),_vm._v(_vm._s(_vm.formatDate(_vm.plan.closed_at / 1000, 'd M y'))),_c('br'),_c('strong',[_vm._v(\"Durée : \"+_vm._s(_vm.dateDiff(_vm.plan.started_at, _vm.plan.closed_at)))])]):_vm._e()]),_c('p',{staticClass:\"data-label\"},[_vm._v(\"Champs d'intervention\")]),_vm._l((_vm.plan.topics),function(topic){return _c('p',[_c('span',{staticClass:\"rbTag rbTag--warning\"},[_vm._v(_vm._s(topic.name))]),_c('br')])}),_c('div',{staticClass:\"dataSection-line\"},[_c('p',{staticClass:\"data\"},[_c('span',{staticClass:\"data-label\"},[_vm._v(\"Objectifs\")]),_c('br'),_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.escapeHtml(_vm.plan.goals).replace(/\\n/g, '
'))}})])]),(_vm.plan.final_comment)?_c('div',{staticClass:\"dataSection-line\"},[_c('p',{staticClass:\"data\"},[_c('span',{staticClass:\"data-label\"},[_vm._v(\"Commentaire\")]),_c('br'),_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.escapeHtml(_vm.plan.final_comment).replace(/\\n/g, '
'))}})])]):_vm._e()],2)]),_c('section',{staticClass:\"dataSection\"},[_c('header',{staticClass:\"dataSection-header\"},[_c('h1',{staticClass:\"dataSection-title\"},[_c('span',{staticClass:\"dataSection-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"map-pin\"}})],1),_vm._v(\" Lieu \")])]),_c('article',{staticClass:\"block\"},[_c('div',{staticClass:\"dataSection-line\"},[_c('p',[_c('span',{staticClass:\"data-label\"},[_vm._v(_vm._s(_vm.plan.location_type.label))]),_c('br'),(_vm.plan.location_type.id === 'shantytowns')?_c('span',_vm._l((_vm.plan.shantytowns),function(shantytown){return _c('p',[_c('router-link',{staticClass:\"locationPoint\",attrs:{\"to\":(\"/site/\" + (shantytown.id))}},[_vm._v(_vm._s(shantytown.usename))])],1)}),0):_vm._e(),(_vm.plan.location_type.id === 'location')?_c('span',{staticClass:\"locationPoint\"},[_vm._v(_vm._s(_vm.plan.location.label))]):_vm._e(),(_vm.plan.location_type.id === 'other')?_c('span',[_vm._v(_vm._s(_vm.plan.location_details))]):_vm._e()])]),(_vm.plan.location_type.id === 'location')?_c('Map',{attrs:{\"display-searchbar\":false,\"towns\":[ _vm.address ],\"default-view\":_vm.center}}):_vm._e()],1)]),_c('section',{staticClass:\"dataSection\"},[_c('header',{staticClass:\"dataSection-header\"},[_c('h1',{staticClass:\"dataSection-title\"},[_c('span',{staticClass:\"dataSection-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"address-book\"}})],1),_vm._v(\" Contacts \")])]),_c('article',{staticClass:\"block\"},[_c('div',{staticClass:\"dataSection-line\"},[_c('p',{staticClass:\"data\"},[_c('span',{staticClass:\"data-label\"},[_vm._v(\"Service de l'état\")]),_c('br'),_c('router-link',{staticClass:\"user\",attrs:{\"to\":(\"/annuaire/\" + (_vm.plan.government_contacts[0].organization.id))}},[_vm._v(_vm._s(_vm.plan.government_contacts[0].first_name)+\" \"+_vm._s(_vm.plan.government_contacts[0].last_name.toUpperCase())),_c('br'),_vm._v(_vm._s(_vm.plan.government_contacts[0].organization.name))])],1)]),_c('div',{staticClass:\"dataSection-line\"},[_c('p',{staticClass:\"data\"},[_c('span',{staticClass:\"data-label\"},[_vm._v(\"Opérateur ou service en charge\")]),_c('br'),_c('router-link',{staticClass:\"user\",attrs:{\"to\":(\"/annuaire/\" + (_vm.plan.operator_contacts[0].organization.id))}},[_vm._v(_vm._s(_vm.plan.operator_contacts[0].first_name)+\" \"+_vm._s(_vm.plan.operator_contacts[0].last_name.toUpperCase())),_c('br'),_vm._v(_vm._s(_vm.plan.operator_contacts[0].organization.name))])],1)])])]),(_vm.plan && _vm.plan.finances && _vm.plan.finances.length > 0)?_c('section',{staticClass:\"dataSection rb-table\"},[_c('header',{staticClass:\"dataSection-header\"},[_c('h1',{staticClass:\"dataSection-title\"},[_c('span',{staticClass:\"dataSection-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"euro-sign\"}})],1),_vm._v(\" Financements \")])]),_c('header',{staticClass:\"planFunding-header\"},[_c('font-awesome-icon',{staticClass:\"planFunding-yearSwitch\",class:{ 'planFunding-yearSwitch--disabled': _vm.reachedMinFinanceIndex === true },attrs:{\"icon\":\"caret-square-left\"},on:{\"click\":_vm.showPreviousYear}}),_c('span',[_vm._v(_vm._s(_vm.plan.finances[_vm.currentFinanceIndex].year)+\" \")]),_c('font-awesome-icon',{staticClass:\"planFunding-yearSwitch\",class:{ 'planFunding-yearSwitch--disabled': _vm.reachedMaxFinanceIndex === true },attrs:{\"icon\":\"caret-square-right\"},on:{\"click\":_vm.showNextYear}})],1),_c('table',{staticClass:\"table block\"},[_vm._m(1),_c('tbody',[_vm._l((_vm.plan.finances[_vm.currentFinanceIndex].data),function(finance){return _c('tr',[_c('td',[_vm._v(_vm._s(finance.type.name))]),_c('td',[_vm._v(_vm._s(finance.amount)+\" €\"),_c('br'),_vm._v(\"soit \"+_vm._s(Math.round((finance.amount / _vm.financeTotal()) * 100))+\"%\")]),_c('td',[_vm._v(_vm._s(finance.details))]),(finance.realAmount)?_c('td',[_vm._v(_vm._s(finance.realAmount)+\" €\")]):(_vm.reachedMaxFinanceIndex)?_c('td',[_vm._v(\"À remplir entre janvier et mars\")]):_c('td',[_vm._v(\"Non renseignées\")])])}),_c('tr',[_c('td'),_c('td',{attrs:{\"colspan\":\"3\"}},[_c('strong',[_vm._v(\"TOTAL : \"+_vm._s(_vm.financeTotal())+\"€\")])])])],2)])]):_vm._e(),(_vm.plan.states.length > 0)?_c('section',{staticClass:\"dataSection rb-table\"},[_c('header',{staticClass:\"dataSection-header\"},[_c('h1',{staticClass:\"dataSection-title\"},[_c('span',{staticClass:\"dataSection-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"users\"}})],1),_vm._v(\" Équipe \")])]),_c('table',{staticClass:\"table block\"},[_c('thead',[_c('tr',[_c('th'),_vm._l((_vm.plan.states),function(state){return _c('th',[_vm._v(_vm._s(_vm.formatDate(new Date(state.date).getTime() / 1000, 'd B y')))])})],2)]),_c('tbody',_vm._l((_vm.availableEtpTypes),function(etpType){return _c('tr',[_c('th',[_vm._v(_vm._s(etpType.name))]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s((state.etp.find(function (ref) {\n\tvar uid = ref.type.uid;\n\n\treturn uid === etpType.uid;\n}) || { total: 0 }).total))])})],2)}),0)])]):_vm._e(),(_vm.audience)?_c('section',{staticClass:\"dataSection rb-table\"},[_c('header',{staticClass:\"dataSection-header\"},[_c('h1',{staticClass:\"dataSection-title\"},[_c('span',{staticClass:\"dataSection-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"arrow-right\"}})],1),_vm._v(\" Public \")])]),_c('table',{staticClass:\"table block\"},[_vm._m(2),_c('tbody',[_c('tr',[_vm._m(3),_c('td',[_vm._v(_vm._s(_vm.audience.in.families))]),_c('td',[_vm._v(_vm._s(_vm.audience.in.total))]),_c('td',[_vm._v(_vm._s(_vm.audience.in.women))]),_c('td',[_vm._v(_vm._s(_vm.audience.in.minors))])]),_c('tr',[_vm._m(4),_c('td',[_vm._v(_vm._s(_vm.audience.out_positive.families))]),_c('td',[_vm._v(_vm._s(_vm.audience.out_positive.total))]),_c('td',[_vm._v(_vm._s(_vm.audience.out_positive.women))]),_c('td',[_vm._v(_vm._s(_vm.audience.out_positive.minors))])]),_c('tr',[_vm._m(5),_c('td',[_vm._v(_vm._s(_vm.audience.out_excluded.families))]),_c('td',[_vm._v(_vm._s(_vm.audience.out_excluded.total))]),_c('td',[_vm._v(_vm._s(_vm.audience.out_excluded.women))]),_c('td',[_vm._v(_vm._s(_vm.audience.out_excluded.minors))])]),_c('tr',[_vm._m(6),_c('td',[_vm._v(_vm._s(_vm.audience.out_abandoned.families))]),_c('td',[_vm._v(_vm._s(_vm.audience.out_abandoned.total))]),_c('td',[_vm._v(_vm._s(_vm.audience.out_abandoned.women))]),_c('td',[_vm._v(_vm._s(_vm.audience.out_abandoned.minors))])])])])]):_vm._e(),(_vm.plan.states.length > 0)?_c('section',{staticClass:\"dataSection rb-table\"},[_c('header',{staticClass:\"dataSection-header\"},[_c('h1',{staticClass:\"dataSection-title\"},[_c('span',{staticClass:\"dataSection-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"id-card\"}})],1),_vm._v(\" Droit commun et ressources \")])]),_c('table',{staticClass:\"table block\"},[_c('thead',[_c('tr',[_c('th',{staticClass:\"table-col\"},[_vm._v(\"Nombre de personnes ayant\")]),_vm._l((_vm.plan.states),function(state){return _c('th',{staticClass:\"table-col\"},[_vm._v(_vm._s(_vm.formatDate(new Date(state.date).getTime() / 1000, 'd B y')))])})],2)]),_c('tbody',[_c('tr',[_c('td',[_vm._v(\"une domiciliation\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.droit_commun.domiciliation === null ? 'NC' : state.droit_commun.domiciliation))])})],2),_c('tr',[_c('td',[_vm._v(\"des droits CAF ouverts\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.droit_commun.droits_caf === null ? 'NC' : state.droit_commun.droits_caf))])})],2),_c('tr',[_c('td',[_vm._v(\"un emploi stable / ressources suffisantes\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.droit_commun.emploi_stable === null ? 'NC' : state.droit_commun.emploi_stable))])})],2)])])]):_vm._e(),(_vm.plan.states.length > 0 && _vm.plan.topics.find(function (ref) {\n\tvar uid = ref.uid;\n\n\treturn uid === 'health';\n}))?_c('section',{staticClass:\"dataSection rb-table\"},[_c('header',{staticClass:\"dataSection-header\"},[_c('h1',{staticClass:\"dataSection-title\"},[_c('span',{staticClass:\"dataSection-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"user-md\"}})],1),_vm._v(\" Santé \")])]),_c('table',{staticClass:\"table block\"},[_c('thead',[_c('tr',[_c('th',{staticClass:\"table-col\"}),_vm._l((_vm.plan.states),function(state){return _c('th',{staticClass:\"table-col\"},[_vm._v(_vm._s(_vm.formatDate(new Date(state.date).getTime() / 1000, 'd B y')))])})],2)]),_c('tbody',[_c('tr',[_c('th',{attrs:{\"colspan\":_vm.plan.states.length + 1}},[_c('strong',[_vm._v(\"Nombre de personnes avec...\")])])]),_c('tr',[_c('td',[_vm._v(\"une couverture AME valide\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.sante.ame_valide === null ? 'NC' : state.sante.ame_valide))])})],2),_c('tr',[_c('td',[_vm._v(\"une couverture PUMA valide\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.sante.puma_valide === null ? 'NC' : state.sante.puma_valide))])})],2),_c('tr',[_c('td',[_vm._v(\"une demande AME en cours\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.sante.ame_en_cours === null ? 'NC' : state.sante.ame_en_cours))])})],2),_c('tr',[_c('td',[_vm._v(\"une demande PUMA en cours\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.sante.puma_en_cours === null ? 'NC' : state.sante.puma_en_cours))])})],2),_c('tr',[_c('th',{attrs:{\"colspan\":_vm.plan.states.length + 1}},[_c('strong',[_vm._v(\"Nombre de personnes ayant fait l'objet d'au moins...\")])])]),_c('tr',[_c('td',[_vm._v(\"une orientation vers une structure de santé\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.sante.orientation === null ? 'NC' : state.sante.orientation))])})],2),_c('tr',[_c('td',[_vm._v(\"un accompagnement physique vers une structure de santé\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.sante.accompagnement === null ? 'NC' : state.sante.accompagnement))])})],2)])])]):_vm._e(),(_vm.plan.states.length > 0 && _vm.plan.topics.find(function (ref) {\n\tvar uid = ref.uid;\n\n\treturn uid === 'school';\n}))?_c('section',{staticClass:\"dataSection rb-table\"},[_c('header',{staticClass:\"dataSection-header\"},[_c('h1',{staticClass:\"dataSection-title\"},[_c('span',{staticClass:\"dataSection-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"user-md\"}})],1),_vm._v(\" Éducation et scolarisation \")])]),_c('table',{staticClass:\"table block\"},[_c('thead',[_c('tr',[_c('th',{staticClass:\"table-col\"}),_vm._l((_vm.plan.states),function(state){return _c('th',{staticClass:\"table-col\"},[_vm._v(_vm._s(_vm.formatDate(new Date(state.date).getTime() / 1000, 'd B y')))])})],2)]),_c('tbody',[_c('tr',[_c('td',[_vm._v(\"Mineurs en âge d'être scolarisé ou suivant une formation\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.education.scolarisables === null ? 'NC' : state.education.scolarisables))])})],2),_c('tr',[_c('td',[_vm._v(\"Mineurs bénéficiant d'une action de médiation (3 - 18 ans)\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.education.en_mediation === null ? 'NC' : state.education.en_mediation))])})],2),_c('tr',[_c('td',[_vm._v(\"Inscrits en maternelle\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.education.maternelles === null ? 'NC' : state.education.maternelles))])})],2),_c('tr',[_c('td',[_vm._v(\"Inscrits en primaire\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.education.elementaires === null ? 'NC' : state.education.elementaires))])})],2),_c('tr',[_c('td',[_vm._v(\"Inscrits en collège\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.education.colleges === null ? 'NC' : state.education.colleges))])})],2),_c('tr',[_c('td',[_vm._v(\"Inscrits au Lycée - formation professionnelle\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.education.lycees === null ? 'NC' : state.education.lycees))])})],2)])])]):_vm._e(),(_vm.plan.states.length > 0 && _vm.plan.topics.find(function (ref) {\n\tvar uid = ref.uid;\n\n\treturn uid === 'work';\n}))?_c('section',{staticClass:\"dataSection rb-table\"},[_c('header',{staticClass:\"dataSection-header\"},[_c('h1',{staticClass:\"dataSection-title\"},[_c('span',{staticClass:\"dataSection-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"briefcase\"}})],1),_vm._v(\" Formation et emploi \")])]),_c('table',{staticClass:\"table block\"},[_c('thead',[_c('tr',[_c('th',{staticClass:\"table-col\"}),_vm._l((_vm.plan.states),function(state){return _c('th',{staticClass:\"table-col\"},[_vm._v(_vm._s(_vm.formatDate(new Date(state.date).getTime() / 1000, 'd B y')))])})],2)]),_c('tbody',[_c('tr',[_c('th',{attrs:{\"colspan\":_vm.plan.states.length + 1}},[_c('strong',[_vm._v(\"Nombre de personnes inscrites ou suivies par...\")])])]),_c('tr',[_c('td',[_vm._v(\"Pôle emploi\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.formation.pole_emploi === null ? 'NC' : state.formation.pole_emploi))])})],2),_c('tr',[_vm._m(7),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.formation.pole_emploi_femmes === null ? 'NC' : state.formation.pole_emploi_femmes))])})],2),_c('tr',[_c('td',[_vm._v(\"Mission locale\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.formation.mission_locale === null ? 'NC' : state.formation.mission_locale))])})],2),_c('tr',[_vm._m(8),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.formation.mission_locale_femmes === null ? 'NC' : state.formation.mission_locale_femmes))])})],2),_c('tr',[_c('th',{attrs:{\"colspan\":_vm.plan.states.length + 1}},[_c('strong',[_vm._v(\"Nombre de personnes ayant\")])])]),_c('tr',[_c('td',[_vm._v(\"Un contrat\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.formation.contrats === null ? 'NC' : state.formation.contrats))])})],2),_c('tr',[_vm._m(9),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.formation.contrats_femmes === null ? 'NC' : state.formation.contrats_femmes))])})],2),_c('tr',[_c('td',[_vm._v(\"Une formation\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.formation.formations === null ? 'NC' : state.formation.formations))])})],2),_c('tr',[_vm._m(10),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.formation.formations_femmes === null ? 'NC' : state.formation.formations_femmes))])})],2),_c('tr',[_c('td',[_vm._v(\"Un statut autoentrepreneur\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.formation.autoentrepreneurs === null ? 'NC' : state.formation.autoentrepreneurs))])})],2),_c('tr',[_vm._m(11),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.formation.autoentrepreneurs_femmes === null ? 'NC' : state.formation.autoentrepreneurs_femmes))])})],2),_c('tr',[_c('td',[_vm._v(\"l'ARE\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.formation.are === null ? 'NC' : state.formation.are))])})],2),_c('tr',[_vm._m(12),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.formation.are_femmes === null ? 'NC' : state.formation.are_femmes))])})],2)])])]):_vm._e(),(_vm.plan.states.length > 0 && _vm.plan.topics.find(function (ref) {\n\tvar uid = ref.uid;\n\n\treturn uid === 'housing';\n}))?_c('section',{staticClass:\"dataSection rb-table\"},[_c('header',{staticClass:\"dataSection-header\"},[_c('h1',{staticClass:\"dataSection-title\"},[_c('span',{staticClass:\"dataSection-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"home\"}})],1),_vm._v(\" Logement \")])]),_c('table',{staticClass:\"table block\"},[_c('thead',[_c('tr',[_c('th',{staticClass:\"table-col\"}),_vm._l((_vm.plan.states),function(state){return _c('th',{staticClass:\"table-col\"},[_vm._v(_vm._s(_vm.formatDate(new Date(state.date).getTime() / 1000, 'd B y')))])})],2)]),_c('tbody',[_vm._l((_vm.housingFields),function(field){return [_c('tr',[_c('th',{attrs:{\"colspan\":_vm.plan.states.length + 1}},[_c('strong',[_vm._v(_vm._s(field.label))])])]),_c('tr',[_c('td',[_vm._v(\"Nombre de personnes\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.logement[field.name].people === null ? 'NC' : state.logement[field.name].people))])})],2),_c('tr',[_c('td',[_vm._v(\"Nombre de ménages\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.logement[field.name].families === null ? 'NC' : state.logement[field.name].families))])})],2)]})],2)])]):_vm._e(),(_vm.plan.states.length > 0 && _vm.plan.topics.find(function (ref) {\n\tvar uid = ref.uid;\n\n\treturn uid === 'safety';\n}))?_c('section',{staticClass:\"dataSection rb-table\"},[_c('header',{staticClass:\"dataSection-header\"},[_c('h1',{staticClass:\"dataSection-title\"},[_c('span',{staticClass:\"dataSection-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"seedling\"}})],1),_vm._v(\" Stabilisation et sécurisation du site \")])]),_c('table',{staticClass:\"table block\"},[_c('thead',[_c('tr',[_c('th',{staticClass:\"table-col\"}),_vm._l((_vm.plan.states),function(state){return _c('th',{staticClass:\"table-col\"},[_vm._v(_vm._s(_vm.formatDate(new Date(state.date).getTime() / 1000, 'd B y')))])})],2)]),_c('tbody',[_c('tr',[_c('td',[_vm._v(\"Nombre d'accès réguliers à l'eau potable\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.securisation.points_eau === null ? 'NC' : state.securisation.points_eau))])})],2),_c('tr',[_c('td',[_vm._v(\"Nombre de sanitaires\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.securisation.wc === null ? 'NC' : state.securisation.wc))])})],2),_c('tr',[_c('td',[_vm._v(\"Nombre d'accès réguliers à l'électricité\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.securisation.electricite === null ? 'NC' : state.securisation.electricite))])})],2),_c('tr',[_c('td',[_vm._v(\"Nombre de bennes disponibles pour le ramassage des déchets du site\")]),_vm._l((_vm.plan.states),function(state){return _c('td',[_vm._v(_vm._s(state.securisation.nombre_bennes === null ? 'NC' : state.securisation.nombre_bennes))])})],2)])])]):_vm._e(),(_vm.plan.states.length === 0 && _vm.plan.canUpdateMarks)?_c('div',{staticClass:\"note\"},[_c('div',{staticClass:\"note-body\"},[_c('p',[_c('strong',[_vm._v(\"Aucun indicateur de suivi renseigné par l'opérateur\")]),_c('br'),_c('router-link',{staticClass:\"button\",attrs:{\"to\":(\"/dispositif/\" + (_vm.plan.id) + \"/indicateurs\")}},[_c('font-awesome-icon',{attrs:{\"icon\":\"pencil-alt\"}}),_c('span',[_vm._v(\"Modifier\")])],1)],1)])]):_vm._e()],1)]):_vm._e()])],1)])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Chargement des données en cours...\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('thead',[_c('tr',[_c('th',{staticClass:\"table-col\"},[_vm._v(\"Type de financements\")]),_c('th',{staticClass:\"table-col\"},[_vm._v(\"Montants\"),_c('br'),_vm._v(\"prévus\")]),_c('th',{staticClass:\"table-col\"},[_vm._v(\"Précision\")]),_c('th',{staticClass:\"table-col\"},[_vm._v(\"Dépenses\"),_c('br'),_vm._v(\"exécutées\")])])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('thead',[_c('tr',[_c('th',{staticClass:\"table-col\"}),_c('th',{staticClass:\"table-col\"},[_vm._v(\"Ménages\")]),_c('th',{staticClass:\"table-col\"},[_vm._v(\"Personnes\")]),_c('th',{staticClass:\"table-col\"},[_vm._v(\"dont femmes\")]),_c('th',{staticClass:\"table-col\"},[_vm._v(\"dont mineurs\")])])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('td',[_c('strong',[_vm._v(\"Entrées\")]),_vm._v(\" dans le dispositif\")])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('td',[_c('strong',[_vm._v(\"Sorties positivement\")]),_c('br'),_vm._v(\"fin accompagnement social et/ou\"),_c('br'),_vm._v(\"prise en charge dans un autre dispositif\")])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('td',[_c('strong',[_vm._v(\"Exclusion\")]),_vm._v(\" du dispositif\")])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('td',[_c('strong',[_vm._v(\"Abandon / départ volontaire\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('td',[_c('em',[_vm._v(\"(dont femmes)\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('td',[_c('em',[_vm._v(\"(dont femmes)\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('td',[_c('em',[_vm._v(\"(dont femmes)\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('td',[_c('em',[_vm._v(\"(dont femmes)\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('td',[_c('em',[_vm._v(\"(dont femmes)\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('td',[_c('em',[_vm._v(\"(dont femmes)\")])])}]\n\nexport { render, staticRenderFns }","import NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport SlideNote from \"#app/components/slide-note/slide-note.vue\";\nimport Map from \"#app/components/map/map.vue\";\nimport { get, close } from \"#helpers/api/plan\";\nimport { hasPermission, get as getConfig } from \"#helpers/api/config\";\nimport PlanFunding from \"#app/components/form/input/planFunding/planFunding.vue\";\nimport Input from \"#app/components/form/input/input.vue\";\nimport { notify } from \"#helpers/notificationHelper\";\n\nexport default {\n components: {\n NavBar,\n SlideNote,\n Map,\n PlanFunding,\n Input\n },\n\n data() {\n const { etp_types: etpTypes } = getConfig();\n\n return {\n status: null,\n error: null,\n plan: null,\n etpTypes,\n currentFinanceIndex: 0,\n closingAlertStatus: \"hidden\",\n closingErrors: [],\n closingStatus: null,\n closingData: {\n closedAt: new Date(),\n finances: [],\n comment: \"\"\n },\n\n housingFields: [\n { name: \"siao\", label: \"Demandes SIAO\" },\n {\n name: \"logement_social\",\n label: \"Demandes de logement social\"\n },\n { name: \"dalo\", label: \"Demandes DALO\" },\n {\n name: \"accompagnes\",\n label: \"Accès à un logement accompagné / adapté\"\n },\n {\n name: \"non_accompagnes\",\n label: \"Accès à un logement sans accompagnement\"\n },\n { name: \"heberges\", label: \"Hébergements\" }\n ]\n };\n },\n\n created() {\n this.load();\n },\n\n computed: {\n closingCommentDescription() {\n if (!this.audience) {\n return \"\";\n }\n\n const remainingAudience = { ...this.audience.in };\n [\"out_positive\", \"out_abandoned\", \"out_excluded\"].forEach(key => {\n remainingAudience.total -= this.audience[key].total;\n remainingAudience.families -= this.audience[key].families;\n remainingAudience.women -= this.audience[key].women;\n remainingAudience.minors -= this.audience[key].minors;\n });\n\n if (\n remainingAudience.total === 0 &&\n remainingAudience.families === 0 &&\n remainingAudience.women === 0 &&\n remainingAudience.minors === 0\n ) {\n return \"Précisez les raisons de la fermeture du dispositif\";\n }\n\n return `À la fermeture du dispositif, ${\n remainingAudience.families\n } ménage${remainingAudience.families > 1 ? \"s\" : \"\"} (soit ${\n remainingAudience.total\n } personne${\n remainingAudience.total > 1 ? \"s\" : \"\"\n }) sont identifiés dans le dispositif. Merci de préciser les solutions mobilisées pour ces personnes et les raisons de la fermeture du dispositif.

Merci de respecter les règles de confidentialité.Ne pas citer l'identité des individus (Nom, âge, sexe, origine...)`;\n },\n reachedMaxFinanceIndex() {\n if (\n !this.plan ||\n !this.plan.finances ||\n this.plan.finances.length === 0\n ) {\n return true;\n }\n\n return this.currentFinanceIndex === 0;\n },\n reachedMinFinanceIndex() {\n if (\n !this.plan ||\n !this.plan.finances ||\n this.plan.finances.length === 0\n ) {\n return true;\n }\n\n return this.currentFinanceIndex >= this.plan.finances.length - 1;\n },\n minYear() {\n if (\n !this.plan ||\n !this.plan.finances ||\n this.plan.finances.length === 0\n ) {\n return null;\n }\n\n return this.plan.finances.reduce(\n (min, { year }) => (min !== null ? Math.min(min, year) : year),\n null\n );\n },\n availableEtpTypes() {\n return this.etpTypes.filter(({ uid }) =>\n this.plan.states.some(({ etp }) =>\n etp.some(({ type: { uid: u } }) => uid === u)\n )\n );\n },\n address() {\n if (!this.plan.location) {\n return null;\n }\n\n return {\n latitude: this.plan.location.latitude,\n longitude: this.plan.location.longitude,\n address: this.plan.location.label\n };\n },\n center() {\n if (!this.plan.location) {\n return null;\n }\n\n return {\n center: [\n this.plan.location.latitude,\n this.plan.location.longitude\n ],\n zoom: 15\n };\n },\n lastState() {\n if (!this.plan || this.plan.states.length === 0) {\n return null;\n }\n\n return this.plan.states.slice(-1)[0];\n },\n audience() {\n if (!this.plan || this.plan.states.length === 0) {\n return null;\n }\n\n function sum(originalObj, additionalObj) {\n return {\n total: originalObj.total + additionalObj.total,\n families: originalObj.families + additionalObj.families,\n women: originalObj.women + additionalObj.women,\n minors: originalObj.minors + additionalObj.minors\n };\n }\n\n return this.plan.states.reduce(\n (acc, { audience }) => {\n if (audience.in) {\n acc.in = sum(acc.in, audience.in);\n }\n\n if (audience.out_positive) {\n acc.out_positive = sum(\n acc.out_positive,\n audience.out_positive\n );\n }\n\n if (audience.out_abandoned) {\n acc.out_abandoned = sum(\n acc.out_abandoned,\n audience.out_abandoned\n );\n }\n\n if (audience.out_excluded) {\n acc.out_excluded = sum(\n acc.out_excluded,\n audience.out_excluded\n );\n }\n\n return acc;\n },\n {\n in: {\n total: 0,\n families: 0,\n women: 0,\n minors: 0\n },\n out_positive: {\n total: 0,\n families: 0,\n women: 0,\n minors: 0\n },\n out_abandoned: {\n total: 0,\n families: 0,\n women: 0,\n minors: 0\n },\n out_excluded: {\n total: 0,\n families: 0,\n women: 0,\n minors: 0\n }\n }\n );\n }\n },\n\n methods: {\n hasPermission,\n financeTotal() {\n if (!this.plan || !this.plan.finances) {\n return 0;\n }\n\n return this.plan.finances[this.currentFinanceIndex].data.reduce(\n (total, { amount }) => total + parseFloat(amount),\n 0\n );\n },\n load() {\n if ([\"loading\", \"loaded\"].indexOf(this.status) !== -1) {\n return;\n }\n\n this.status = \"loading\";\n this.error = null;\n\n get(this.$route.params.id)\n .then(data => {\n this.plan = data;\n this.closingData.finances = this.plan.finances.map(\n finance => ({\n ...finance,\n data: finance.data.map(row => ({\n ...row,\n type: row.type.uid\n }))\n })\n );\n this.status = \"loaded\";\n })\n .catch(({ user_message: message }) => {\n this.error = message;\n this.status = \"loadingError\";\n });\n },\n escapeHtml(...args) {\n return App.escapeHtml(...args);\n },\n dateDiff(...args) {\n return App.dateDiff(...args);\n },\n formatDate(...args) {\n return App.formatDate(...args);\n },\n\n showPreviousYear() {\n if (this.reachedMinFinanceIndex) {\n return;\n }\n\n this.currentFinanceIndex += 1;\n },\n\n showNextYear() {\n if (this.reachedMaxFinanceIndex) {\n return;\n }\n\n this.currentFinanceIndex -= 1;\n },\n\n setClosingAlertStatus(newStatus) {\n this.closingErrors = [];\n this.closingAlertStatus = newStatus;\n },\n\n checkClosing() {\n const yearsInError = [];\n for (\n let year = new Date().getFullYear();\n year >= Math.max(2019, this.minYear);\n year -= 1\n ) {\n const finance = this.closingData.finances.find(\n ({ year: y }) => y === year\n );\n if (\n !finance ||\n finance.data.length === 0 ||\n finance.data.some(\n ({ realAmount }) =>\n realAmount === undefined || realAmount === null\n )\n ) {\n yearsInError.push(year);\n }\n }\n\n if (yearsInError.length > 0) {\n this.closingErrors = yearsInError.map(\n year =>\n `Les dépenses exécutées pour l'année ${year} ne sont pas renseignées, il n'est pas possible de fermer le dispositif.`\n );\n } else {\n this.setClosingAlertStatus(\"step2\");\n }\n },\n\n close() {\n if (this.closingStatus === \"pending\") {\n return;\n }\n\n this.closingStatus = \"pending\";\n\n close(this.$route.params.id, this.closingData)\n .then(() => {\n this.closingStatus = \"success\";\n notify({\n group: \"notifications\",\n type: \"success\",\n title: \"Dispositif fermé\",\n text: \"Le dispositif a bien été fermé\"\n });\n this.$router.push(\"/liste-des-dispositifs\");\n })\n .catch(({ fields }) => {\n this.closingStatus = \"error\";\n this.closingErrors = Object.keys(fields).reduce(\n (acc, key) => [...acc, ...fields[key]],\n []\n );\n });\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./plans.details.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./plans.details.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./plans.details.vue?vue&type=template&id=23a8c2ae&scoped=true&lang=pug&\"\nimport script from \"./plans.details.vue?vue&type=script&lang=js&\"\nexport * from \"./plans.details.vue?vue&type=script&lang=js&\"\nimport style0 from \"./plans.details.vue?vue&type=style&index=0&id=23a8c2ae&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"23a8c2ae\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('NavBar'),_c('section',{staticClass:\"section-white\"},[(_vm.status !== 'loaded')?_c('div',{staticClass:\"container\"},[(!_vm.status || _vm.status === 'loading')?_c('div',[_vm._m(0)]):(_vm.status === 'loadingError')?_c('div',[_c('div',{staticClass:\"notification error full-width\"},[_c('span',[_vm._v(_vm._s(_vm.error)+\". \"),_c('span',{on:{\"click\":_vm.load}},[_vm._v(\"Réessayer ?\")])])])]):_vm._e()]):_vm._e(),(_vm.status === 'loaded')?_c('div',[_c('Form',_vm._b({ref:\"form\",on:{\"complete\":_vm.onComplete},model:{value:(_vm.formData),callback:function ($$v) {_vm.formData=$$v},expression:\"formData\"}},'Form',_vm.formDefinition,false))],1):_vm._e()])],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Chargement des données en cours...\")])])}]\n\nexport { render, staticRenderFns }","import NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport Form from \"#app/components/form/form.vue\";\nimport { get as getConfig } from \"#helpers/api/config\";\nimport { get, update } from \"#helpers/api/plan\";\nimport { getMembers, getMembersOfCategory } from \"#helpers/api/organization\";\nimport { notify } from \"#helpers/notificationHelper\";\n\nexport default {\n components: {\n NavBar,\n Form\n },\n\n data() {\n const { user: me, topics } = getConfig();\n const data = {\n status: null,\n error: null,\n formData: {\n association: []\n }\n };\n\n data.formDefinition = {\n title: \"Modifier un dispositif\",\n descriptionTitle: \"Pourquoi modifier la fiche du dispositif ?\",\n description: `Vous pouvez modifier ou mettre à jour les informations générales relatives au projet que vous pilotez.
\n
\n Deux informations pourront en particulier être mises à jour régulièrement :
\n - les financements
\n - les contacts référents
\n
\n A noter que les indicateurs de suivi du dispositif sont modifiés directement par la structure ou l’association en charge de l’intervention. Par exemple, le nombre de personnes dans le dispositif ou le nombre de ménages ayant accédé à un logement seront directement renseignés par ces derniers.`,\n steps: [\n {\n title: \"Dispositif\",\n wording: {\n error: \"La modification du dispositif a échoué\",\n submit: \"Modifier le dispositif\"\n },\n sections: [\n {\n title: \"Intervention\",\n icon: \"list\",\n inputs: {\n name: {\n type: \"text\",\n label: \"Nom du dispositif\",\n mandatory: true\n },\n departement: {\n type: \"text\",\n label: \"Département d'intervention\",\n mandatory: true,\n disabled: true\n },\n startedAt: {\n type: \"date\",\n label: \"Date de début\",\n mandatory: true\n },\n expectedToEndAt: {\n type: \"date\",\n label: \"Date de fin prévue (facultatif)\",\n mandatory: false\n },\n in_and_out: {\n type: \"radio\",\n label:\n \"Ce dispositif implique-t-il un système d'entrées et de sorties des personnes ?\",\n mandatory: true,\n disabled: true,\n options: [\n { value: 1, label: \"Oui\" },\n { value: 0, label: \"Non\" }\n ]\n },\n topics: {\n type: \"checkbox\",\n label: \"Champs d'intervention\",\n description:\n \"Les thématiques sélectionnées définissent l'action que vous menez et les indicateurs de suivi associés.\",\n mandatory: true,\n disabled: true,\n options: topics.map(({ uid, name }) => ({\n value: uid,\n label: name\n }))\n },\n goals: {\n type: \"textarea\",\n label: \"Objectifs\",\n mandatory: true,\n specificProps: {\n placeholder:\n \"Précisez les objectifs, les enjeux, le contexte du dispositif\\n\\nPar exemple : résorber le bidonville, scolariser 80% des enfants identités en bidonvilles...\"\n }\n }\n }\n },\n {\n title: \"Lieu\",\n icon: \"map-pin\",\n inputs: {\n locationType: {\n type: \"radio\",\n label:\n \"L'action se déroule dans le cadre suivant\",\n mandatory: true,\n disabled: true,\n options: [\n {\n value: \"shantytowns\",\n label:\n \"sur site(s) : bidonville ou squat\"\n },\n {\n value: \"location\",\n label: \"sur terrain d'insertion\"\n },\n {\n value: \"housing\",\n label: \"dans le logement\"\n },\n {\n value: \"other\",\n label:\n \"dans plusieurs lieux (hébergement, permanence, rue...)\"\n }\n ]\n },\n locationShantytowns: {\n type: \"townList\",\n label: \"Sites concernés\",\n mandatory: true,\n disabled: true,\n condition({ locationType }) {\n return locationType === \"shantytowns\";\n }\n },\n locationAddress: {\n type: \"addressWithLocation\",\n label: \"Adresse du terrain d'insertion\",\n mandatory: true,\n disabled: true,\n condition({ locationType }) {\n return locationType === \"location\";\n }\n },\n locationDetails: {\n type: \"text\",\n label: \"Préciser\",\n mandatory: true,\n disabled: true,\n condition({ locationType }) {\n return locationType === \"other\";\n }\n }\n }\n },\n {\n title: \"Contacts\",\n inputs: {\n government: {\n type: \"autocompleter\",\n label:\n \"Personne au service de l'état en charge du pilotage\",\n mandatory: true,\n specificProps: {\n autocompleter: d => {\n const p = getMembersOfCategory(\n \"public_establishment\"\n );\n const p2 = p.then(({ users }) =>\n users\n .filter(\n ({\n first_name: firstName,\n last_name: lastName\n }) =>\n [\n firstName,\n lastName\n ].some(value =>\n d\n .split(\" \")\n .every(\n part =>\n value\n .toLowerCase()\n .indexOf(\n part.toLowerCase()\n ) !==\n -1\n )\n )\n )\n .map(\n ({\n id,\n first_name: firstName,\n last_name: lastName\n }) => ({\n id,\n label: `${firstName} ${lastName.toUpperCase()}`\n })\n )\n );\n p2.abort = p.abort;\n\n return p2;\n },\n showCategory: false,\n allowMultiple: false,\n float: true\n }\n }\n }\n },\n {\n title: \"Financements\",\n inputs: {\n finances: {\n label: \"Financements\",\n type: \"planFunding\",\n mandatory: false\n }\n }\n }\n ],\n submit: d => update(this.$route.params.id, d)\n }\n ]\n };\n\n if (me.organization.category.uid === \"public_establishment\") {\n data.formData.state = [\n {\n id: me.id,\n label: `${me.first_name} ${me.last_name.toUpperCase()}`\n }\n ];\n }\n\n return data;\n },\n\n watch: {\n \"formData.association\": function organizationType() {\n if (!this.$refs.form) {\n return;\n }\n\n this.loadingAssociationContacts = true;\n this.$refs.form.getInputById(\"contact\").options = [];\n\n if (this.formData.association.length === 0) {\n return;\n }\n\n getMembers(this.formData.association[0].id).then(({ users }) => {\n this.$refs.form.getInputById(\"contact\").options = users.map(\n ({ id, first_name: firstName, last_name: lastName }) => ({\n value: id,\n label: `${firstName} ${lastName.toUpperCase()}`\n })\n );\n this.loadingAssociationContacts = false;\n });\n }\n },\n\n created() {\n this.load();\n },\n\n methods: {\n load() {\n if ([\"loading\", \"loaded\"].indexOf(this.status) !== -1) {\n return;\n }\n\n this.status = \"loading\";\n this.error = null;\n get(this.$route.params.id)\n .then(plan => {\n this.formDefinition.title = `Modifier un dispositif - ${plan.name}`;\n this.formData.name = plan.name;\n this.formData.departement = `${plan.departement.code} - ${plan.departement.name}`;\n this.formData.startedAt = plan.started_at;\n this.formData.expectedToEndAt = plan.expected_to_end_at;\n this.formData.in_and_out = plan.in_and_out ? 1 : 0;\n this.formData.topics = plan.topics.map(({ uid }) => uid);\n this.formData.goals = plan.goals;\n this.formData.locationType = plan.location_type.id;\n this.formData.locationShantytowns =\n plan.shantytowns && plan.shantytowns.length > 0\n ? plan.shantytowns.map(({ id }) => id)\n : undefined;\n this.formData.locationAddress = plan.location\n ? {\n address: {\n label: plan.location.address\n },\n location: {\n coordinates: [\n plan.location.latitude,\n plan.location.longitude\n ],\n zoom: 15\n }\n }\n : undefined;\n this.formData.locationDetails = plan.location_details;\n this.formData.government = [\n {\n id: plan.government_contacts[0].id,\n label: `${\n plan.government_contacts[0].first_name\n } ${plan.government_contacts[0].last_name.toUpperCase()}`\n }\n ];\n this.formData.association = [\n {\n id: plan.operator_contacts[0].organization.id,\n label: plan.operator_contacts[0].organization.name\n }\n ];\n this.formData.contact = plan.operator_contacts[0].id;\n this.formData.finances = plan.finances.map(\n ({ year, data }) => ({\n year,\n data: data.map(\n ({\n type: { uid },\n amount,\n details,\n realAmount\n }) => ({\n type: uid,\n amount,\n details,\n realAmount\n })\n )\n })\n );\n\n this.plan = plan;\n this.status = \"loaded\";\n })\n .catch(error => {\n this.error = error.user_message;\n this.status = \"loadingError\";\n });\n },\n onComplete() {\n notify({\n group: \"notifications\",\n type: \"success\",\n title: \"Dispositif modifié\",\n text: \"Le dispositif a bien été mis à jour\"\n });\n\n this.$router.push(`/dispositif/${this.$route.params.id}`);\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./plans.edit.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./plans.edit.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./plans.edit.vue?vue&type=template&id=965f0d94&lang=pug&\"\nimport script from \"./plans.edit.vue?vue&type=script&lang=js&\"\nexport * from \"./plans.edit.vue?vue&type=script&lang=js&\"\nimport style0 from \"./plans.edit.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('NavBar'),_c('section',{staticClass:\"section-white\"},[(_vm.status !== 'loaded')?_c('div',{staticClass:\"container\"},[(!_vm.status || _vm.status === 'loading')?_c('div',[_vm._m(0)]):(_vm.status === 'loadingError')?_c('div',[_c('div',{staticClass:\"notification error full-width\"},[_c('span',[_vm._v(_vm._s(_vm.error)+\". \"),_c('span',{on:{\"click\":_vm.load}},[_vm._v(\"Réessayer ?\")])])])]):_vm._e()]):_vm._e(),(_vm.status === 'loaded')?_c('div',[_c('Form',_vm._b({ref:\"form\",on:{\"complete\":_vm.onComplete},model:{value:(_vm.formData),callback:function ($$v) {_vm.formData=$$v},expression:\"formData\"}},'Form',_vm.formDefinition,false))],1):_vm._e()])],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Chargement des données en cours...\")])])}]\n\nexport { render, staticRenderFns }","import NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport Form from \"#app/components/form/form.vue\";\nimport { get, addState } from \"#helpers/api/plan\";\nimport { hasPermission } from \"#helpers/api/config\";\nimport { notify } from \"#helpers/notificationHelper\";\n\nexport default {\n components: {\n NavBar,\n Form\n },\n\n data() {\n const data = {\n status: null,\n error: null,\n formData: {}\n };\n\n data.formDefinition = {\n title: \"\",\n descriptionTitle: \"À quoi sert le suivi ?\",\n description:\n \"Les indicateurs de suivi permettent d’observer l'évolution de l'accès au droit commun et l'insertion du groupe de personnes accompagnées. Ces informations facilitent le pilotage local et national.\",\n steps: [\n {\n title: \"Dispositf\",\n wording: {\n error: \"La déclaration du dispositif a échoué\",\n submit: \"Valider\"\n },\n sections: [\n {\n inputs: {\n date: {\n type: \"date\",\n label: \"Date d'actualisation des données\",\n mandatory: true\n }\n }\n },\n {\n title: \"Public\",\n icon: \"arrow-right\",\n inputs: {\n audience: {\n type: \"audience\",\n label: \"Public\",\n mandatory: true,\n specificProps: {},\n condition({ date }) {\n return !!date;\n }\n }\n }\n },\n {\n title: \"Équipe\",\n icon: \"users\",\n inputs: {\n etp: {\n type: \"etp\",\n label: \"Nombre d’ETP dédiés par fonction\",\n mandatory: true,\n condition({ date }) {\n return !!date;\n }\n }\n }\n },\n {\n title: \"Droit commun et ressources\",\n description: \"Nombre de personnes avec...\",\n icon: \"id-card\",\n inputs: {\n domiciliation: {\n type: \"number\",\n label: \"une domiciliation\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n droits_caf: {\n type: \"number\",\n label: \"des droits CAF ouverts\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n emploi_stable: {\n type: \"number\",\n label:\n \"un emploi stable / ressources suffisantes\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n }\n }\n }\n ],\n submit: d => {\n const builtData = { ...d, ...d.housing };\n delete builtData.housing;\n return addState(this.$route.params.id, builtData);\n }\n }\n ]\n };\n\n data.varyingSections = {\n health: [\n {\n title: \"Santé\",\n description: \"Nombre de personnes avec...\",\n icon: \"user-md\",\n inputs: {\n ame_valide: {\n type: \"number\",\n label: \"une couverture AME valide\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n puma_valide: {\n type: \"number\",\n label: \"une couverture PUMA valide\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n ame_en_cours: {\n type: \"number\",\n label: \"une demande AME en cours\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n puma_en_cours: {\n type: \"number\",\n label: \"une demande PUMA en cours\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n }\n }\n },\n {\n title: \"\",\n description:\n \"Nombre de personnes ayant fait l'objet d'au moins\",\n icon: \"user-md\",\n inputs: {\n orientation: {\n type: \"number\",\n label:\n \"une orientation vers une structure de santé\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n accompagnement: {\n type: \"number\",\n label:\n \"un accompagnement physique vers une structure de santé\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n }\n }\n }\n ],\n school: [\n {\n title: \"Éducation et scolarisation\",\n icon: \"book-reader\",\n inputs: {\n scolarisables: {\n type: \"number\",\n label:\n \"Parmi les mineurs, combien sont en âge d'être scolarisés ?\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n en_mediation: {\n type: \"number\",\n label:\n \"Combien bénéficient d’une action de médiation (3 – 18 ans) ?\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n maternelles: {\n type: \"number\",\n label: \"Enfants inscrits en maternelle\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n elementaires: {\n type: \"number\",\n label: \"Enfants inscrits en élémentaire\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n colleges: {\n type: \"number\",\n label: \"Enfants inscrits au collège\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n lycees: {\n type: \"number\",\n label:\n \"Enfants inscrits au lycée - formation professionnelle\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n difficultes: {\n type: \"checkbox\",\n label: \"Difficultés éventuelles rencontrées :\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n },\n options: [\n { value: \"cantine\", label: \"Cantine\" },\n {\n value: \"place_up2a\",\n label: \"Manque de place en UP2A\"\n },\n { value: \"transport\", label: \"Transport\" }\n ]\n }\n }\n }\n ],\n work: [\n {\n title: \"Formation et emploi\",\n icon: \"briefcase\",\n description: \"Nombre de personnes inscrites ou suivies par\",\n inputs: {\n pole_emploi: {\n type: \"number\",\n label: \"Pôle emploi\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n pole_emploi_femmes: {\n type: \"number\",\n label: \"(dont femmes)\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n mission_locale: {\n type: \"number\",\n label: \"Mission locale\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n mission_locale_femmes: {\n type: \"number\",\n label: \"(dont femmes)\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n }\n }\n },\n {\n icon: \"briefcase\",\n description: \"Nombre de personnes ayant\",\n inputs: {\n contrats: {\n type: \"number\",\n label: \"un contrat\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n contrats_femmes: {\n type: \"number\",\n label: \"(dont femmes)\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n formations: {\n type: \"number\",\n label: \"une formation\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n formations_femmes: {\n type: \"number\",\n label: \"(dont femmes)\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n autoentrepreneurs: {\n type: \"number\",\n label: \"un statut autoentrepreneur\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n autoentrepreneurs_femmes: {\n type: \"number\",\n label: \"(dont femmes)\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n are: {\n type: \"number\",\n label: \"l'ARE\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n are_femmes: {\n type: \"number\",\n label: \"(dont femmes)\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n }\n }\n }\n ],\n housing: [\n {\n title: \"Logement\",\n icon: \"home\",\n inputs: {\n housing: {\n type: \"planHousing\",\n label: \"\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n }\n }\n }\n ],\n safety: [\n {\n title: \"Stabilisation et sécurisation du site\",\n icon: \"seedling\",\n inputs: {\n points_eau: {\n type: \"number\",\n label: \"Nombre d'accès réguliers à l'eau potable\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n wc: {\n type: \"number\",\n label: \"Nombre de sanitaires\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n electricite: {\n type: \"number\",\n label: \"Nombre d'accès réguliers à l'électricité\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n },\n nombre_bennes: {\n type: \"number\",\n label:\n \"Nombre de bennes disponibles pour le ramassage des déchets du site\",\n mandatory: false,\n condition({ date }) {\n return !!date;\n }\n }\n }\n }\n ]\n };\n\n return data;\n },\n\n created() {\n this.load();\n },\n\n methods: {\n hasPermission,\n load() {\n if ([\"loading\", \"loaded\"].indexOf(this.status) !== -1) {\n return;\n }\n\n this.status = \"loading\";\n this.error = null;\n\n get(this.$route.params.id)\n .then(plan => {\n plan.topics.forEach(({ uid }) => {\n if (!this.varyingSections[uid]) {\n return;\n }\n\n this.varyingSections[uid].forEach(section => {\n this.formDefinition.steps[0].sections.push(section);\n });\n });\n\n const audienceSection = this.formDefinition.steps[0].sections.find(\n ({ inputs }) => inputs.audience !== undefined\n );\n let lastState = null;\n\n if (plan.states.length === 0) {\n audienceSection.title =\n \"Qui sont les publics ayant intégré le dispositif ?\";\n audienceSection.description =\n \"Vous renseignez les indicateurs de suivi pour la première fois. Veuillez porter une attention particulière aux données que vous renseignez ci-dessous : les mises à jour ultérieures seront conditionnées par cette première déclaration.\";\n audienceSection.inputs.audience.specificProps.inOnly = true;\n } else {\n [lastState] = plan.states.slice(-1);\n const dateOfLastState = App.formatDate(\n lastState.date / 1000,\n \"d/m/y\"\n );\n\n if (plan.in_and_out !== true) {\n audienceSection.title = `Quelles ont été les sorties du dispositif depuis la date du ${dateOfLastState} ?`;\n audienceSection.description = `Seules les sorties du dispositif sont suivies, car le pilote de l’action au sein des services de l’Etat a renseigné qu’il n’existe pas de système d’entrées et de sorties du dispositif : le dispositif concerne un seul groupe de personne, ayant débuté le projet à la même période.
\n Attention : le remplissage de ce tableau a un impact sur le nombre de personnes identifiées dans ce dispositif. Merci de le renseigner avec attention`;\n audienceSection.inputs.audience.specificProps.outOnly = true;\n } else {\n audienceSection.title = `Quelles ont été les entrées et sorties du dispositif depuis la date du ${dateOfLastState} ?`;\n audienceSection.description = `Les entrées et sorties du dispositif sont suivies, car le pilote de l’action au sein des services de l’Etat a renseigné qu’il existe un système d’entrées et de sorties.
\n Attention : le remplissage de ce tableau a un impact sur le nombre de personnes identifiées dans ce dispositif. Merci de le renseigner avec attention`;\n }\n\n audienceSection.description += `

\n Au ${dateOfLastState}, date de la dernière mise à jour des informations, sont intégrés dans le dispositif :\n ${plan.audience.families} ménages, ${plan.audience.total} personnes dont ${plan.audience.women} femmes et ${plan.audience.minors} mineurs\n `;\n }\n\n if (lastState) {\n this.formData = {\n difficultes: [\n \"cantine\",\n \"place_up2a\",\n \"transport\"\n ].filter(\n d =>\n lastState.education &&\n (lastState.education[`difficulte_${d}`] ||\n lastState.education[`difficculte_${d}`])\n ),\n etp: lastState.etp.map(\n ({ total, type: { uid } }) => ({\n total,\n type: uid\n })\n )\n };\n }\n\n this.formDefinition.title = plan.name;\n this.plan = plan;\n this.status = \"loaded\";\n })\n .catch(error => {\n this.error = error.user_message;\n this.status = \"loadingError\";\n });\n },\n onComplete() {\n notify({\n group: \"notifications\",\n type: \"success\",\n title: \"Indicateurs correctement enregistrés\",\n text: \"Le dispositif a bien été mis à jour\"\n });\n\n this.$router.push(`/dispositif/${this.$route.params.id}`);\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./plans.marks.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./plans.marks.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./plans.marks.vue?vue&type=template&id=8f52fc1c&scoped=true&lang=pug&\"\nimport script from \"./plans.marks.vue?vue&type=script&lang=js&\"\nexport * from \"./plans.marks.vue?vue&type=script&lang=js&\"\nimport style0 from \"./plans.marks.vue?vue&type=style&index=0&id=8f52fc1c&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"8f52fc1c\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--withMargin\"},[_c('NavBar'),_c('section',{staticClass:\"section section--white\"},[_c('div',{staticClass:\"container\"},[(_vm.status === 'loaded')?_c('div',_vm._l((_vm.sections),function(section){return _c('section',{staticClass:\"formSection\"},[_c('header',{staticClass:\"formSection-header\"},[_c('h1',{staticClass:\"formSection-title\"},[_vm._v(_vm._s(section.title))]),_c('p',[_vm._v(\"Total : \"+_vm._s(_vm.computeTotal(section.id)))])]),_c('div',{staticClass:\"panel\"},[_c('table',{staticClass:\"table\"},[_c('thead',[_c('tr',[_c('th',[_vm._v(\"Département\")]),_c('th',[_vm._v(_vm._s(section.title))])])]),_c('tbody',_vm._l((_vm.stats.numberOfShantytownOperations[section.id]),function(item){return _c('tr',[_c('td',[_vm._v(\"(\"+_vm._s(item.code)+\") - \"+_vm._s(item.name))]),_c('td',[_vm._v(_vm._s(item.total))])])}),0)])])])}),0):_vm._e(),(_vm.status === 'loading')?_c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Chargement des données en cours...\")])]):_vm._e(),(_vm.status !== 'loading' && _vm.status !== 'loaded')?_c('div',{staticClass:\"notification full-width\"},[_c('span',[_vm._v(_vm._s(_vm.error)+\". \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.load}},[_vm._v(\"Réessayer ?\")])])]):_vm._e()])])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { getApi } from \"#helpers/api/main\";\n\n/**\n * Lists all statistics\n *\n * @returns {Promise}\n */\nexport function all() {\n return getApi(\"/stats\");\n}\n\nexport default all;\n","import { all } from \"#helpers/api/stats\";\nimport NavBar from \"#app/layouts/navbar/navbar.vue\";\n\nexport default {\n components: {\n NavBar\n },\n\n data() {\n return {\n status: null,\n error: null,\n stats: null,\n sections: [\n {\n id: \"creations\",\n title: \"Nombre de sites créés\"\n },\n {\n id: \"updates\",\n title: \"Nombre de sites modifiés\"\n },\n {\n id: \"closings\",\n title: \"Nombre de sites fermés\"\n }\n ]\n };\n },\n\n mounted() {\n this.load();\n },\n\n methods: {\n load() {\n if (this.status === \"loaded\" || this.status === \"loading\") {\n return;\n }\n\n this.status = \"loading\";\n this.error = null;\n\n all()\n .then(({ statistics: stats }) => {\n this.stats = stats;\n this.status = \"loaded\";\n })\n .catch(({ user_message: userMessage }) => {\n this.status = \"error\";\n this.error = userMessage;\n });\n },\n computeTotal(sectionId) {\n return this.stats.numberOfShantytownOperations[sectionId].reduce(\n (sum, { total }) => sum + parseInt(total, 10),\n 0\n );\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./stats.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./stats.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./stats.vue?vue&type=template&id=e649766e&lang=pug&\"\nimport script from \"./stats.vue?vue&type=script&lang=js&\"\nexport * from \"./stats.vue?vue&type=script&lang=js&\"\nimport style0 from \"./stats.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--withMargin\"},[_c('NavBar'),_c('section',{staticClass:\"section section-white\",attrs:{\"id\":\"form\"}},[_c('div',{staticClass:\"container\"},[_c('h1',[_vm._v(\"Mentions légales\")]),_c('h3',[_vm._v(\"Editeurs\")]),_c('p',[_c('router-link',{attrs:{\"to\":\"/\"}},[_vm._v(\"Résorption bidonvilles\")]),_vm._v(\" est édité par la Fabrique numérique du ministère de la transition écologique et solidaire et du ministère de la cohésion des territoires et des relations avec les collectivités territoriales, sise 1 place Carpeaux, 92800 Puteaux, avec l’appui de l’incubateur de services numériques (beta.gouv.fr) de la direction interministérielle du numérique et du système d’information et de communication de l’État (DINSIC).\")],1),_c('h3',[_vm._v(\"Nous joindre\")]),_vm._m(0),_c('h3',[_vm._v(\"Directeurs de la publication\")]),_vm._m(1),_c('h3',[_vm._v(\"Prestataire d’hébergement\")]),_c('p',[_vm._v(\"Le site \"),_c('router-link',{attrs:{\"to\":\"/\"}},[_vm._v(\"resorption-bidonvilles.beta.gouv.fr\")]),_vm._v(\" est hébergé par la société OVH\"),_c('br'),_vm._v(\"Code APE 6202A\"),_c('br'),_vm._v(\"N° TVA : FR 22 424 761 419\"),_c('br'),_vm._v(\"Inscrite au RCS Roubaix – Tourcoing 424 761 419 00045\")],1),_c('p',[_vm._v(\"Siège social : 2 rue Kellermann, 59100 Roubaix, France\")])])])],1)])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',[_c('ul',[_c('li',[_vm._v(\"Par téléphone : +33 (0) 1 40 81 33 60\")]),_c('li',[_vm._v(\"Par mail : \"),_c('a',{staticClass:\"mail\",attrs:{\"href\":\"#\",\"data-name\":\"contact\",\"data-domain\":\"resorption-bidonvilles.beta.gouv\",\"data-tld\":\"fr\",\"onclick\":\"window.location.href = 'mailto:' + this.dataset.name + '@' + this.dataset.domain + '.' + this.dataset.tld; return false;\"}})])])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',[_c('ul',[_c('li',[_vm._v(\"Délégué interministériel à l’hébergement et l’accès au logement\")]),_c('li',[_vm._v(\"La Grande Arche - 92055 La Défense Cedex\")])])])}]\n\nexport { render, staticRenderFns }","import NavBar from \"#app/layouts/navbar/navbar.vue\";\n\nexport default {\n components: {\n NavBar\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./legalMentions.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./legalMentions.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./legalMentions.vue?vue&type=template&id=ed8e96dc&scoped=true&lang=pug&\"\nimport script from \"./legalMentions.vue?vue&type=script&lang=js&\"\nexport * from \"./legalMentions.vue?vue&type=script&lang=js&\"\nimport style0 from \"./legalMentions.vue?vue&type=style&index=0&id=ed8e96dc&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"ed8e96dc\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('Skeleton',{attrs:{\"loader\":_vm.loader},on:{\"loaded\":_vm.onLoaded},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_c('h1',{staticClass:\"page-title\"},[_vm._v(\"Annuaire\")]),_c('p',{staticClass:\"page-subtitle\"},[_vm._v(\"Cette liste n’est pas exhaustive et regroupe à ce stade les utilisateurs de la plateforme à l’échelle nationale.\")])]},proxy:true},{key:\"content\",fn:function(){return [(_vm.focusedOrganization !== null)?_c('Organization',{attrs:{\"organization\":_vm.focusedOrganization},on:{\"close\":_vm.resetFocusedOrganization}}):_vm._e(),_c('div',{staticClass:\"directory-search\"},[_c('OrganizationInput',{attrs:{\"specificProps\":{ placeholder: 'Acteur, structure, ou territoire' }},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1),(!_vm.localIsNational)?_c('div',{staticClass:\"switch\"},[_c('button',{class:{ active: _vm.level === 'local' },on:{\"click\":function($event){return _vm.setLevel('local')}}},[_vm._v(\"Acteurs de mon territoire\")]),_c('button',{class:{ active: _vm.level !== 'local' },on:{\"click\":function($event){return _vm.setLevel('national')}}},[_vm._v(\"Tous les acteurs\")])]):_vm._e(),_c('Table',{staticClass:\"directory\",attrs:{\"columns\":_vm.columns,\"content\":_vm.pageContent,\"emptyLabel\":'Aucun contact répertorié pour les filtres sélectionnés'},on:{\"click\":_vm.focus}},[_c('template',{slot:\"aside\"},[_c('p',{staticClass:\"directory-figures\"},[_vm._v(_vm._s(_vm.filteredOrganizations.length)+\" structure\"+_vm._s(_vm.filteredOrganizations.length > 1 ? 's' : '')+\" - \"+_vm._s(_vm.usersTotal)+\" contact\"+_vm._s(_vm.usersTotal > 1 ? 's' : ''))])])],2),_c('div',{staticClass:\"directory-tableAside\"},[_c('p',[_vm._v(\"Vous recherchez un contact public ? \"),_c('a',{attrs:{\"href\":\"https://lannuaire.service-public.fr\"}},[_vm._v(\"https://lannuaire.service-public.fr\")])])])]},proxy:true}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"page page--withMargin\"},[_c('NavBar'),_c('section',{staticClass:\"section section-white\"},[_c('div',{staticClass:\"container\"},[_c('header',{staticClass:\"page-header\"},[_c('hgroup',{staticClass:\"page-titleContainer\"},[_vm._t(\"title\")],2),(_vm.loading.status === 'loaded')?_c('div',{staticClass:\"page-buttons\"},[_vm._t(\"buttons\")],2):_vm._e()]),(_vm.loading.status === 'loading' && _vm.loading.isSlow)?_c('div',{staticClass:\"notification notification--loading full-width\"},[_vm._m(0),_vm._m(1)]):_vm._e(),(_vm.loading.status === 'failed')?_c('div',{staticClass:\"notification notification--failure error full-width\"},[_c('p',{staticClass:\"notification-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"times\",\"size\":\"2x\"}})],1),_c('p',{staticClass:\"notification-content\"},[_c('span',{staticClass:\"notification-title\"},[_vm._v(\"Le chargement des données a échoué\")]),_c('br'),_c('span',{staticClass:\"notification-description\"},[_vm._v(_vm._s(_vm.loading.error))])])]):_vm._e(),(_vm.loading.status === 'loaded')?_vm._t(\"content\",null,{\"data\":_vm.data}):_vm._e()],2)])],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',{staticClass:\"notification-icon\"},[_c('img',{attrs:{\"src\":\"/img/spinner_dark.svg\"}})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',{staticClass:\"notification-content\"},[_c('span',{staticClass:\"notification-title\"},[_vm._v(\"Chargement des données en cours\")])])}]\n\nexport { render, staticRenderFns }","import NavBar from \"#app/layouts/navbar/navbar.vue\";\n\nconst SLOW_DELAY = 1500;\n\nexport default {\n components: {\n NavBar\n },\n\n props: {\n loader: {\n type: Function,\n required: false\n }\n },\n\n data() {\n return {\n data: null,\n loading: {\n status: null,\n error: null,\n isSlow: false,\n slowTimeout: null\n }\n };\n },\n\n mounted() {\n if (this.loader === undefined) {\n this.loading.status = \"loaded\";\n return;\n }\n\n this.load();\n },\n\n methods: {\n load() {\n // ensure we are not already loading or loaded\n if (\n this.loading.status === \"loading\" ||\n this.loading.status === \"loaded\"\n ) {\n return;\n }\n\n // reset loading status\n this.loading.isSlow = false;\n this.loading.status = \"loading\";\n this.loading.error = null;\n this.loading.slowTimeout = setTimeout(() => {\n this.loading.isSlow = true;\n }, SLOW_DELAY);\n\n // try loading\n this.loader()\n .then(data => {\n this.$emit(\"loaded\", data);\n this.data = data;\n this.loading.status = \"loaded\";\n })\n .catch(error => {\n this.loading.status = \"failed\";\n this.loading.error =\n (error && error.user_message) ||\n \"Une erreur inconnue est survenue\";\n })\n .then(() => {\n clearTimeout(this.loading.slowTimeout);\n this.loading.slowTimeout = null;\n });\n }\n }\n};\n","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./skeleton.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./skeleton.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./skeleton.vue?vue&type=template&id=2ca8a58e&lang=pug&\"\nimport script from \"./skeleton.vue?vue&type=script&lang=js&\"\nexport * from \"./skeleton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"popin\"},[_c('div',{ref:\"wrapper\",staticClass:\"popin-wrapper\"},[_c('div',[_c('p',{staticClass:\"popin-close\"},[_c('span',{staticClass:\"link\",on:{\"click\":_vm.close}},[_c('font-awesome-icon',{attrs:{\"icon\":\"times\",\"size\":\"2x\"}})],1)]),_c('section',{staticClass:\"organization-body\"},[_c('h1',{staticClass:\"primary\"},[_vm._v(\"Structure\")]),_c('p',[_vm._v(_vm._s(_vm.organization.name))]),_c('h1',{staticClass:\"primary\"},[_vm._v(\"Territoire\")]),_c('p',[_vm._v(_vm._s(_vm.organization.locationName))]),_c('h1',{staticClass:\"primary\"},[_vm._v(\"Rôle\")]),_c('p',{staticStyle:{\"margin\":\"5px 0 35px 0\"}},[_c('span',{staticClass:\"role\"},[_vm._v(_vm._s(_vm.organization.role))])]),_c('h1',[_vm._v(_vm._s(_vm.users.length)+\" contact\"+_vm._s(_vm.users.length > 1 ? 's' : ''))]),_c('div',{staticClass:\"organization-users\"},_vm._l((_vm.users),function(user){return _c('div',{staticClass:\"userCard\"},[_c('h1',[_vm._v(_vm._s(user.first_name)+\" \"+_vm._s(user.last_name.toUpperCase()))]),_c('h2',[_vm._v(\"Fonction\")]),_c('h3',{class:{ 'userCard-position--empty': !user.position }},[_vm._v(_vm._s(user.position || 'NC'))]),_c('ul',{staticClass:\"userCard-infoList\"},[_c('li',{staticClass:\"userCard-info--email\"},[_c('a',{attrs:{\"href\":(\"mailto:\" + (user.email))}},[_vm._v(_vm._s(user.email))])]),(user.phone)?_c('li',{staticClass:\"userCard-info--phone\"},[_vm._v(_vm._s(user.phone))]):_vm._e()])])}),0)])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default {\n props: {\n organization: {\n type: Object,\n required: true\n }\n },\n\n mounted() {\n setTimeout(() => {\n document.addEventListener(\"click\", this.checkOutsideClick);\n }, 500);\n },\n destroyed() {\n document.removeEventListener(\"click\", this.checkOutsideClick);\n },\n\n methods: {\n checkOutsideClick(event) {\n if (!this.$refs.wrapper.contains(event.target)) {\n this.close();\n }\n },\n close() {\n this.$emit(\"close\");\n }\n },\n computed: {\n users() {\n // Some users are hidden from the directory (PAF)\n const hiddenUserIds = [255, 475, 558, 576];\n\n return this.organization.users.filter(\n user => !hiddenUserIds.includes(user.id)\n );\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./organization.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./organization.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./organization.vue?vue&type=template&id=eb1c327e&scoped=true&lang=pug&\"\nimport script from \"./organization.vue?vue&type=script&lang=js&\"\nexport * from \"./organization.vue?vue&type=script&lang=js&\"\nimport style0 from \"./organization.vue?vue&type=style&index=0&id=eb1c327e&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"eb1c327e\",\n null\n \n)\n\nexport default component.exports","import { postApi } from \"#helpers/api/main\";\n\n/**\n * Registers a new directory-view event\n *\n * @param {Number} organization Id of the viewed organization\n *\n * @returns {Promise}\n */\nexport function directoryViews(organization) {\n return postApi(\"/statistics/directory-views\", {\n organization\n });\n}\n\nexport default directoryViews;\n","import Skeleton from \"#app/layouts/skeleton/skeleton.vue\";\nimport Table from \"#app/components/table/table.vue\";\nimport Organization from \"#app/components/organization/organization.vue\";\nimport OrganizationInput from \"#app/components/form/input/organization/organization.vue\";\nimport { getDirectory } from \"#helpers/api/user\";\nimport { directoryViews } from \"#helpers/api/statistics\";\nimport { get as getConfig } from \"#helpers/api/config\";\n\nexport default {\n components: {\n Skeleton,\n Table,\n Organization,\n OrganizationInput\n },\n\n data() {\n return {\n organizations: [],\n columns: [\n { id: \"organization\", label: \"Structure\" },\n { id: \"location\", label: \"Territoire\" },\n { id: \"role\", label: \"Rôle\" },\n { id: \"contacts\", label: \"\", icon: \"arrow-right\" }\n ],\n local: getConfig().user.organization.location,\n level: \"local\",\n search: null\n };\n },\n\n computed: {\n localIsNational() {\n return this.local.type === \"nation\";\n },\n\n parsedOrganizations() {\n let filtered = [];\n\n if (this.localIsNational || this.level === \"national\") {\n filtered = this.organizations;\n } else {\n filtered = this.organizations.filter(organization => {\n const a = this.local[this.local.type];\n const b = organization.location[this.local.type];\n return a && b && a.code === b.code;\n });\n }\n\n return filtered.map(organization => {\n // organization\n let organizationName;\n if (organization.type.abbreviation !== null) {\n organizationName = `${organization.type.abbreviation} (${organization.name})`;\n } else if (organization.abbreviation !== null) {\n organizationName = `${organization.abbreviation} (${organization.name})`;\n } else {\n organizationName = organization.name;\n }\n\n // location\n let locationName;\n if (organization.location.type === \"nation\") {\n locationName = \"National\";\n } else {\n const location =\n organization.location[organization.location.type];\n if (!location) {\n locationName = \"\";\n } else if (organization.location.type === \"departement\") {\n locationName = `${location.name} (${location.code})`;\n } else {\n locationName = location.name;\n }\n }\n\n return {\n id: organization.id,\n organization: organizationName,\n location: locationName,\n role: `${organization.role}`,\n contacts:\n organization.users.length > 0\n ? `${\n organization.users.length\n } contact${\n organization.users.length > 1 ? \"s\" : \"\"\n }`\n : \"\",\n raw: {\n id: organization.id,\n name: organizationName,\n location: organization.location,\n locationName,\n role: organization.role,\n users: organization.users\n }\n };\n });\n },\n\n filteredOrganizations() {\n if (this.search === null) {\n return this.parsedOrganizations;\n }\n\n let filter;\n switch (this.search.data.type.id) {\n case \"user\":\n filter = ({ id }) => id === this.search.data.organization;\n break;\n case \"location\":\n filter = ({ raw: { location } }) =>\n location[this.search.data.location_type] &&\n location[this.search.data.location_type].code ===\n this.search.data.id;\n break;\n case \"organization\":\n filter = ({ id }) => id === this.search.data.id;\n break;\n default:\n filter = () => false;\n }\n\n return this.parsedOrganizations.filter(filter);\n },\n\n focusedOrganization() {\n if (!this.$route.params.id) {\n return null;\n }\n\n const organization = this.parsedOrganizations.find(\n ({ id }) => id === parseInt(this.$route.params.id, 10)\n );\n if (organization === undefined) {\n return null;\n }\n\n return organization.raw;\n },\n\n pageContent() {\n return this.filteredOrganizations.slice(\n this.pageBeginning - 1,\n this.pageEnd\n );\n },\n\n usersTotal() {\n return this.filteredOrganizations.reduce(\n (total, org) => total + org.raw.users.length,\n 0\n );\n }\n },\n\n watch: {\n focusedOrganization() {\n if (this.focusedOrganization !== null) {\n directoryViews(this.focusedOrganization.id);\n }\n }\n },\n\n methods: {\n loader: getDirectory,\n\n onLoaded({ organizations }) {\n this.organizations = organizations;\n },\n\n setLevel(level) {\n if (this.level === level) {\n return;\n }\n\n this.level = level;\n },\n\n focus({ raw: organization }) {\n this.$router.push(`/annuaire/${organization.id}`);\n },\n\n resetFocusedOrganization() {\n this.$router.push(\"/annuaire\");\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./directory.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./directory.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./directory.vue?vue&type=template&id=16244342&lang=pug&\"\nimport script from \"./directory.vue?vue&type=script&lang=js&\"\nexport * from \"./directory.vue?vue&type=script&lang=js&\"\nimport style0 from \"./directory.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v1\"},[_c('div',{staticClass:\"page--withMargin\"},[_c('NavBar'),(_vm.state === 'loading')?_c('section',{staticClass:\"section section-white\"},[_vm._m(0)]):_vm._e(),(_vm.state === 'error')?_c('section',{staticClass:\"section section-white\"},[_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"notification error full-width\"},[_c('span',[_vm._v(_vm._s(_vm.error)+\". \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.retryLoading}},[_vm._v(\"Réessayer ?\")])])])])]):_vm._e(),(_vm.state === 'loaded')?_c('section',{staticClass:\"section section-white\"},[(_vm.toBeDeleted !== null)?_c('CommentDeletion',{attrs:{\"comment\":_vm.toBeDeleted},on:{\"close\":_vm.closePopin,\"deleted\":_vm.onCommentDeleted}}):_vm._e(),_c('div',{staticClass:\"container\"},[_c('header',[_vm._m(1),_c('SlideNote',{staticClass:\"userActivity-rule\",attrs:{\"title\":\"Règles de modération d'un commentaire\"}},[_c('template',{slot:\"content\"},[_c('h1',[_vm._v(\"En tant qu'administrateur, vous êtes en charge de la modération des commentaires.\")]),_c('p',[_vm._v(\"Vous pouvez supprimer un commentaire ou demander à son auteur de le modifier s'il ne respecte pas les règles suivantes : \"),_c('ul',[_c('li',[_vm._v(\"être neutre et factuel ;\")]),_c('li',[_vm._v(\"ne pas collecter des données personnelles (nom, condamnation judiciaire...) de personnes ou groupes, porter une attention particulière aux personnes habitant ou issues d'un bidonville ;\")]),_c('li',[_vm._v(\"ne doit pas être subjectif, insultant ou inapproprié.\")])])]),_c('p',[_vm._v(\"Pour plus d'informations :\"),_c('br'),_c('router-link',{staticClass:\"link\",attrs:{\"to\":\"/typologie-des-acces\"}},[_c('font-awesome-icon',{attrs:{\"icon\":\"file-pdf\"}}),_vm._v(\" Guide des accès et de l'administrateur\")],1),_c('br'),_c('router-link',{staticClass:\"link\",attrs:{\"to\":\"/charte-d-engagement\"}},[_c('font-awesome-icon',{attrs:{\"icon\":\"file-pdf\"}}),_vm._v(\" Charte d'engagement de l'utilisateur\")],1)],1)])],2),_c('div',{staticClass:\"switch\"},[_c('button',{class:{ active: _vm.filter === 'all' },on:{\"click\":function($event){return _vm.show('all')}}},[_vm._v(\"Tout\")]),_c('button',{class:{ active: _vm.filter === 'shantytown' },on:{\"click\":function($event){return _vm.show('shantytown')}}},[_vm._v(\"Modifications\")]),_c('button',{class:{ active: _vm.filter === 'comment' },on:{\"click\":function($event){return _vm.show('comment')}}},[_vm._v(\"Commentaires\")])])],1),_c('Table',{staticClass:\"userActivity\",attrs:{\"columns\":_vm.columns,\"content\":_vm.parsedActivities,\"emptyLabel\":'Aucune activité trouvée pour les filtres sélectionnés'},on:{\"click\":_vm.onRowClick},scopedSlots:_vm._u([{key:\"date\",fn:function(props){return [_c('strong',[_vm._v(_vm._s(props.row.date))]),_c('br'),_vm._v(\"à \"+_vm._s(props.row.time))]}},{key:\"author\",fn:function(props){return [_c('font-awesome-icon',{staticClass:\"link\",attrs:{\"icon\":\"user\"}}),_vm._v(\" \"),_c('router-link',{staticClass:\"link\",attrs:{\"data-group\":\"link\",\"to\":(\"/annuaire/\" + (props.row.author.organization))}},[_vm._v(_vm._s(props.row.author.name))])]}},{key:\"activity\",fn:function(props){return [_c('span',{staticClass:\"userActivity-action\"},[_c('font-awesome-icon',{attrs:{\"icon\":props.row.icon}}),_vm._v(\" \"+_vm._s(props.row.action)+\" site : \"+_vm._s(props.row.address)+\" \")],1),(props.row.content !== undefined)?_c('div',{staticClass:\"userActivity-content\",domProps:{\"innerHTML\":_vm._s(props.row.content)}}):_vm._e(),_vm._l((props.row.diff),function(diff){return (props.row.diff)?_c('p',{staticClass:\"changelog\"},[_c('span',{staticClass:\"changelog-name\"},[_vm._v(_vm._s(diff.field)+\" :\")]),_c('br'),_c('span',{staticClass:\"changelog-oldValue\",class:{ 'changelog-value--unknown': !diff.oldValue }},[_vm._v(_vm._s(diff.oldValue || 'non renseigné'))]),_vm._v(\", \"),_c('span',{staticClass:\"changelog-newValue\",class:{ 'changelog-value--unknown': !diff.newValue }},[_vm._v(_vm._s(diff.newValue || 'non renseigné'))])]):_vm._e()})]}}],null,false,989126845)})],1)],1):_vm._e()],1)])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"notification full-width\"},[_c('img',{staticClass:\"spinner\",attrs:{\"src\":\"/img/spinner_dark.svg\",\"width\":\"20\"}}),_c('span',[_vm._v(\"Chargement des données en cours...\")])])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('hgroup',[_c('h3',[_vm._v(\"Historique des activités\")])])])}]\n\nexport { render, staticRenderFns }","import { getApi } from \"#helpers/api/main\";\n\n/**\n * Lists all user activities\n *\n * @returns {Promise}\n */\nexport function list(filters = {}) {\n let query = \"\";\n if (Object.keys(filters).length > 0) {\n query = \"filters=\";\n query += Object.keys(filters)\n .map(key => `${key}:${encodeURIComponent(filters[key])}`)\n .join(\",\");\n }\n\n return getApi(`/user-activities?${query}`);\n}\n\nexport default list;\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"popin popin--commentDeletion\"},[_c('div',{ref:\"wrapper\",staticClass:\"popin-wrapper\"},[_c('div',[(_vm.status !== 'pending')?_c('p',{staticClass:\"popin-close\"},[_c('span',{staticClass:\"link\",on:{\"click\":_vm.close}},[_c('font-awesome-icon',{attrs:{\"icon\":\"times\",\"size\":\"2x\"}})],1)]):_vm._e(),_c('div',{staticClass:\"popin-header\"},[_c('span',{staticClass:\"popin-icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"trash-alt\",\"size\":\"lg\"}})],1),_c('h1',{staticClass:\"popin-title\"},[_vm._v(\"Confirmez-vous la suppression du commentaire ?\")])]),_c('div',{staticClass:\"popin-body\"},[_c('div',{staticClass:\"comment\"},[_c('header',{staticClass:\"comment-header\"},[_vm._v(_vm._s(_vm.date)+\" à \"+_vm._s(_vm.time))]),_c('ul',[_c('li',{staticClass:\"comment-author\"},[_c('span',[_c('font-awesome-icon',{attrs:{\"icon\":\"user\"}})],1),_vm._v(\" \"+_vm._s(_vm.comment.author.name))]),_c('li',{staticClass:\"comment-comment\"},[_c('span',[_c('font-awesome-icon',{attrs:{\"icon\":\"comment\"}})],1),_vm._v(\" Commentaire\")]),_c('li',{staticClass:\"comment-shantytown\"},[_c('span',[_c('font-awesome-icon',{attrs:{\"icon\":\"map-pin\"}})],1),_vm._v(\" Site : \"+_vm._s(_vm.address))])]),_c('div',{staticClass:\"comment-content\",domProps:{\"innerHTML\":_vm._s(_vm.comment.content)}})]),_c('h1',{staticClass:\"popin-h1\"},[_vm._v(\"Pourquoi souhaitez-vous supprimer ce commentaire ?\")]),(_vm.error !== null)?_c('p',{staticClass:\"error\"},[_vm._v(_vm._s(_vm.error))]):_vm._e(),_c('textarea',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.message),expression:\"message\"}],attrs:{\"placeholder\":\"Précisez la raison de la suppression à l'auteur, un mail lui sera envoyé\"},domProps:{\"value\":(_vm.message)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.message=$event.target.value}}}),_c('div',{staticClass:\"commentDeletionButtons\"},[(_vm.status !== 'pending')?_c('button',{staticClass:\"button secondary\",on:{\"click\":_vm.close}},[_vm._v(\"Annuler\")]):_vm._e(),_c('button',{staticClass:\"button primary\",attrs:{\"disabled\":_vm.status === 'pending'},on:{\"click\":_vm.deleteComment}},[(_vm.status !== 'pending')?_c('span',[_vm._v(\"Oui, confirmer\")]):_c('span',[_c('img',{attrs:{\"src\":\"/img/spinner_light.svg\",\"width\":\"20\"}})])])])])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { deleteComment } from \"#helpers/api/town\";\n\nexport default {\n props: {\n comment: {\n type: Object,\n required: true\n }\n },\n\n data() {\n return {\n status: null,\n error: null,\n message: \"\"\n };\n },\n\n computed: {\n date() {\n return App.formatDate(this.comment.date, \"d/m/y\");\n },\n time() {\n return App.formatDate(this.comment.date, \"h:i\");\n },\n address() {\n return `${this.comment.shantytown.usename}, ${this.comment.shantytown.city}`;\n }\n },\n\n mounted() {\n setTimeout(() => {\n document.addEventListener(\"click\", this.checkOutsideClick);\n }, 500);\n },\n\n destroyed() {\n document.removeEventListener(\"click\", this.checkOutsideClick);\n },\n\n methods: {\n checkOutsideClick(event) {\n if (!this.$refs.wrapper.contains(event.target)) {\n this.close();\n }\n },\n\n close() {\n if (this.status === \"pending\") {\n return;\n }\n\n this.$emit(\"close\");\n },\n\n deleteComment() {\n if (this.status === \"pending\") {\n return;\n }\n\n this.status = \"pending\";\n this.error = null;\n\n deleteComment(\n this.comment.shantytown.id,\n this.comment.id,\n this.message\n )\n .then(() => {\n this.status = null;\n this.message = \"\";\n this.$emit(\"deleted\");\n })\n .catch(({ user_message: error }) => {\n this.status = null;\n this.error = error;\n });\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./comment-deletion.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./comment-deletion.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./comment-deletion.vue?vue&type=template&id=38509d0a&scoped=true&lang=pug&\"\nimport script from \"./comment-deletion.vue?vue&type=script&lang=js&\"\nexport * from \"./comment-deletion.vue?vue&type=script&lang=js&\"\nimport style0 from \"./comment-deletion.vue?vue&type=style&index=0&id=38509d0a&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"38509d0a\",\n null\n \n)\n\nexport default component.exports","import { list } from \"#helpers/api/userActivity\";\nimport NavBar from \"#app/layouts/navbar/navbar.vue\";\nimport Table from \"#app/components/table/table.vue\";\nimport CommentDeletion from \"#app/components/comment-deletion/comment-deletion.vue\";\nimport SlideNote from \"#app/components/slide-note/slide-note.vue\";\nimport { notify } from \"#helpers/notificationHelper\";\n\nexport default {\n components: {\n NavBar,\n Table,\n CommentDeletion,\n SlideNote\n },\n\n data() {\n return {\n /**\n * List of activities\n *\n * @type {Array.}\n */\n activities: [],\n\n /**\n * The error's user message\n *\n * Obivously, null if there is no error\n *\n * @type {string|null}\n */\n error: null,\n\n /**\n * The current state of the page\n *\n * One out of: 'loading', 'error', or 'loaded'\n *\n * @type {string|null}\n */\n state: null,\n\n /**\n *\n */\n toBeDeleted: null,\n\n /**\n *\n */\n filter: \"all\"\n };\n },\n\n computed: {\n columns() {\n return [\n { id: \"date\", label: \"Date\" },\n { id: \"author\", label: \"Auteur\" },\n {\n id: \"activity\",\n label: \"Activités\",\n ...(this.filter === \"shantytown\"\n ? {\n filters: [\n { label: \"Déclaration\", value: \"creation\" },\n { label: \"Modification\", value: \"update\" },\n { label: \"Fermeture\", value: \"closing\" }\n ],\n filterFn: (row, checkedItems) =>\n checkedItems\n .map(({ value }) => value)\n .indexOf(row.rawAction) !== -1\n }\n : {})\n }\n ];\n },\n filteredActivities() {\n if (this.filter === \"all\") {\n return this.activities;\n }\n\n return this.activities.filter(\n ({ entity }) => entity === this.filter\n );\n },\n parsedActivities() {\n return this.filteredActivities.map((activity, index) => {\n const obj = {\n index,\n rawAction: activity.action,\n rawDate: activity.date,\n rawShantytown: activity.shantytown,\n date: App.formatDate(activity.date, \"d/m/y\"),\n time: App.formatDate(activity.date, \"h:i\"),\n author: activity.author,\n icon:\n activity.entity === \"comment\"\n ? \"comment\"\n : \"pencil-alt\",\n shantytown: activity.shantytown.id,\n address: `${activity.shantytown.usename}, ${activity.shantytown.city}`\n };\n\n const shantytownActions = {\n creation: \"Déclaration du\",\n update: \"Modification du\",\n closing: \"Fermeture du\"\n };\n\n if (activity.entity === \"comment\") {\n obj.action = \"Commentaire sur le\";\n obj.content = activity.content;\n obj.comment = activity.comment_id;\n } else {\n obj.action = shantytownActions[activity.action];\n obj.diff = activity.diff;\n }\n\n return obj;\n });\n }\n },\n\n created() {\n this.load();\n },\n\n methods: {\n /**\n * Tries fetching the data from the API\n *\n * Please note that this cannot be done if the data has already been loaded\n * before.\n */\n load() {\n // loading data is forbidden if the component is already loading or loaded\n if ([null, \"error\"].indexOf(this.state) === -1) {\n return;\n }\n\n this.state = \"loading\";\n this.error = null;\n\n list()\n .then(userActivities => {\n this.activities = userActivities;\n this.state = \"loaded\";\n })\n .catch(({ user_message: error }) => {\n this.error = error;\n this.state = \"error\";\n });\n },\n\n /**\n * Alias to load(), for better readibility in the view\n *\n * @see load()\n */\n retryLoading() {\n this.load();\n },\n\n /**\n * @see index.js\n */\n formatDate(...args) {\n return window.App.formatDate.apply(window, args);\n },\n\n /**\n *\n */\n onRowClick(row) {\n this.$router.push(`/site/${row.shantytown}`);\n },\n\n /**\n *\n */\n confirmCommentDeletion(row, event) {\n this.toBeDeleted = {\n index: row.index,\n id: row.comment,\n shantytown: row.rawShantytown,\n author: row.author,\n date: row.rawDate,\n content: row.content\n };\n event.stopPropagation();\n return false;\n },\n\n /**\n *\n */\n closePopin() {\n this.toBeDeleted = null;\n },\n\n /**\n *\n */\n onCommentDeleted() {\n this.activities.splice(this.toBeDeleted.index, 1);\n this.toBeDeleted = null;\n\n notify({\n group: \"notifications\",\n type: \"success\",\n title: \"Commentaire supprimé\",\n text: \"L'auteur du commentaire en a été notifié par email\"\n });\n },\n\n show(filter) {\n this.filter = filter;\n }\n }\n};\n","\n\n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./userActivity.list.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./userActivity.list.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./userActivity.list.vue?vue&type=template&id=70ed13a0&lang=pug&\"\nimport script from \"./userActivity.list.vue?vue&type=script&lang=js&\"\nexport * from \"./userActivity.list.vue?vue&type=script&lang=js&\"\nimport style0 from \"./userActivity.list.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('PublicLayout',{attrs:{\"stickyHeader\":false}},[_c('PublicContainer',{staticClass:\"py-16\"},[_c('div',[_c('h1',{staticClass:\"text-display-xl\"},[_vm._v(\"Statistiques\")]),_c('div',[_vm._v(\" Depuis l'ouverture nationale de la plateforme en juin 2019 \")])]),_c('StatsSection',{staticClass:\"mt-16\",attrs:{\"title\":\"Utilisateurs\"}},[_c('StatsBlock',{attrs:{\"title\":_vm.numberOfDepartements,\"icon\":\"flag\",\"subtitle\":\"départements de France métropolitaine\",\"info\":\"Soit tous les départements concernés par le phénomène de squats ou bidonvilles.\"}}),_c('StatsBlock',{attrs:{\"title\":_vm.numberOfCollaboratorAndAssociationUsers,\"icon\":\"users\",\"subtitle\":\"utilisateurs institutionnels et associatifs\",\"info\":_vm.numberOfPublicEstablishments +\n ' services de l\\'État, ' +\n _vm.numberOfTerritorialCollectivities +\n ' collectivités territoriales, ' +\n _vm.numberOfAssociations +\n ' associations'}}),_c('StatsBlock',{attrs:{\"title\":_vm.numberOfNewUsers.total,\"icon\":\"user-plus\",\"subtitle\":'nouveaux utilisateurs en ' +\n _vm.numberOfNewUsers.month.toLowerCase()}})],1),(_vm.numberOfNewUsersPerMonth !== null)?_c('div',[_c('h2',{staticClass:\"text-display-lg text-secondary mt-16\"},[_vm._v(\" Nombre d' utilisateurs depuis \"+_vm._s(_vm.numberOfNewUsersPerMonth[0].month.toLowerCase())+\" \")]),_c('TrendChart',{staticClass:\"stats-chart\",attrs:{\"datasets\":_vm.usersEvolutionDatasets,\"labels\":_vm.usersEvolutionLabels,\"grid\":{ verticalLines: true, horizontalLines: true },\"max\":_vm.usersEvolutionMax,\"min\":0}})],1):_vm._e(),_c('StatsSection',{staticClass:\"mt-16\",attrs:{\"title\":\"Usage\"}},[_c('StatsBlock',{attrs:{\"title\":_vm.numberOfExports,\"icon\":\"file-download\",\"subtitle\":\"extractions de données réalisées\",\"info\":\"Les exports Excel permettent aux acteurs locaux d'utiliser et d'analyser les données afin de suivre, communiquer et optimiser les actions de résorption depuis le 15/11/2019.\"}}),_c('StatsBlock',{attrs:{\"title\":_vm.numberOfComments,\"icon\":\"comment\",\"subtitle\":\"commentaires créés\",\"info\":\"Au delà du suivi des chiffrés, les commentaires permettent de suivre et de partager des informations qualitative utiles dans une action multi-partenariale.\"}}),_c('StatsBlock',{attrs:{\"title\":_vm.numberOfDirectoryViews,\"icon\":\"address-book\",\"subtitle\":\"fiches contact consultées\",\"info\":\"L'annuaire permet d'accéder aux coordonnées de tous les utilisateurs de la plateforme. Son utilisation participe à la mise en réseau partenaires locaux ou des pairs depuis le 15/11/2019\"}})],1),_c('StatsSection',{staticClass:\"mt-16\",attrs:{\"title\":\"Fréquence de mise à jour\"},scopedSlots:_vm._u([{key:\"info\",fn:function(){return [_c('span',{staticClass:\"text-secondary\"},[_c('font-awesome-icon',{attrs:{\"icon\":\"sync\"}})],1),_vm._v(\" La mise à jour régulière des données garantissent des informations justes à tous les acteurs.\")]},proxy:true},{key:\"default\",fn:function(){return [_c('StatsBlock',{attrs:{\"title\":_vm.meanTimeBeforeCreationDeclaration,\"subtitle\":\"jours entre l'installation d'un bidonville ou squat et sa déclaration\",\"info\":\"En moyenne, depuis le 01/09/2019.\"}}),_c('StatsBlock',{attrs:{\"title\":_vm.meanTimeBeforeClosingDeclaration,\"subtitle\":\"jours entre la fermeture du site et sa déclaration\",\"info\":\"En moyenne, depuis le 01/09/2019.\"}}),_c('StatsBlock',{attrs:{\"title\":_vm.numberOfShantytownOperations,\"subtitle\":\"bidonvilles ou squats mis à jour\",\"info\":\"Toutes opérations confondues : création, modification, fermeture\"}})]},proxy:true}])})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"text-display-lg\"},[_vm._v(\" \"+_vm._s(_vm.title)+\" \"),_c('span',{staticClass:\"text-secondary\"},[(_vm.icon)?_c('font-awesome-icon',{attrs:{\"icon\":_vm.icon}}):_vm._e()],1)]),_c('div',{staticClass:\"text-display-sm\"},[_vm._v(_vm._s(_vm.subtitle))]),_c('div',{staticClass:\"text-sm\"},[_vm._v(_vm._s(_vm.info))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatsBlock.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatsBlock.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./StatsBlock.vue?vue&type=template&id=1cbcce1c&\"\nimport script from \"./StatsBlock.vue?vue&type=script&lang=js&\"\nexport * from \"./StatsBlock.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('h2',{staticClass:\"text-display-lg text-secondary\"},[_vm._v(_vm._s(_vm.title))]),_vm._t(\"info\"),_c('div',{staticClass:\"grid grid-cols-1 md:grid-cols-3 gap-16 mt-8\"},[_vm._t(\"default\")],2)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatsSection.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatsSection.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./StatsSection.vue?vue&type=template&id=a6b2b2d2&\"\nimport script from \"./StatsSection.vue?vue&type=script&lang=js&\"\nexport * from \"./StatsSection.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","