From 9f7b440306566342f92f90d9af4950d1f1a8e350 Mon Sep 17 00:00:00 2001 From: gdestrem Date: Mon, 22 Feb 2021 10:06:04 +0100 Subject: [PATCH] =?UTF-8?q?=F0=9F=93=A6=20Release=20v0.11.9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dist/css/{index.836de53d.css => index.6c0d17b4.css} | 2 +- dist/index.html | 2 +- dist/js/{index.928b6db1.js => index.d9b1410a.js} | 4 ++-- dist/js/{index.928b6db1.js.map => index.d9b1410a.js.map} | 2 +- src/js/version.json | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) rename dist/css/{index.836de53d.css => index.6c0d17b4.css} (93%) rename dist/js/{index.928b6db1.js => index.d9b1410a.js} (99%) rename dist/js/{index.928b6db1.js.map => index.d9b1410a.js.map} (81%) diff --git a/dist/css/index.836de53d.css b/dist/css/index.6c0d17b4.css similarity index 93% rename from dist/css/index.836de53d.css rename to dist/css/index.6c0d17b4.css index 017aa2f6d5..4a913ea3f2 100644 --- a/dist/css/index.836de53d.css +++ b/dist/css/index.6c0d17b4.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-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-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-flex:1 1 0%;-ms-flex:1 1 0%;flex:1 1 0%}.flex-1,.flex-grow{-webkit-box-flex:1;-moz-box-flex:1}.flex-grow{-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.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-64{height:16rem}.h-96{height:24rem}.h-128{height:32rem}.h-px{height:1px}.h-full{height:100%}.leading-6{line-height:1.5rem}.leading-none{line-height:1}.list-disc{list-style-type:disc}.m-2{margin:.5rem}.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-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}.mt-16{margin-top: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}.ml-auto{margin-left:auto}.-mb-1{margin-bottom:-.25rem}.-ml-5{margin-left:-1.25rem}.-mb-6{margin-bottom:-1.5rem}.-mt-8{margin-top:-2rem}.max-w-md{max-width:28rem}.max-w-xl{max-width:36rem}.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-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}.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-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}}@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-e7203c44]{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;margin-bottom:.5rem}.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)}.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-ae0cb942]{grid-template-columns:160px 208px 164px auto}@media print{.cardGridTemplateColumns[data-v-ae0cb942]{grid-template-columns:160px 208px 164px 236px}}.customAlign[data-v-ae0cb942]{height:30px}@media print{.preventPrintBreak[data-v-ae0cb942]{-webkit-column-break-inside:avoid;break-inside:avoid;page-break-inside:avoid}}.searchbox[data-v-6ab96d95]{max-width:500px}.menuWidth[data-v-defa5cd8]{min-width:220px}.menuWidth[data-v-07337edc]{min-width:190px}.toggle-enter-active[data-v-8c5b0e4c],.toggle-leave-active[data-v-8c5b0e4c]{-webkit-transition:all .3s;-moz-transition:all .3s;transition:all .3s;max-height:500px}.toggle-enter[data-v-8c5b0e4c],.toggle-leave-to[data-v-8c5b0e4c]{opacity:0;max-height:0}.stickyColumn[data-v-baace2c2]{top:32px}.townPanelShadow[data-v-48f19640]{-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-48f19640]{min-width:300px;max-width:300px;padding-right:2.5rem}.stickyColumn[data-v-a83dcdd4]{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-fe9e5faa]{-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{height:500px;max-width:800px;overflow-y:auto}.leftColumnWidth[data-v-4a04efe8]{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}.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-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-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-flex:1 1 0%;-ms-flex:1 1 0%;flex:1 1 0%}.flex-1,.flex-grow{-webkit-box-flex:1;-moz-box-flex:1}.flex-grow{-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.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-64{height:16rem}.h-96{height:24rem}.h-128{height:32rem}.h-px{height:1px}.h-full{height:100%}.leading-6{line-height:1.5rem}.leading-none{line-height:1}.list-disc{list-style-type:disc}.m-2{margin:.5rem}.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-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}.mt-16{margin-top: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}.ml-auto{margin-left:auto}.-mb-1{margin-bottom:-.25rem}.-ml-5{margin-left:-1.25rem}.-mb-6{margin-bottom:-1.5rem}.-mt-8{margin-top:-2rem}.max-w-md{max-width:28rem}.max-w-xl{max-width:36rem}.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-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}.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-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}}@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-e7203c44]{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;margin-bottom:.5rem}.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)}.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-ae0cb942]{grid-template-columns:160px 208px 164px auto}@media print{.cardGridTemplateColumns[data-v-ae0cb942]{grid-template-columns:160px 208px 164px 236px}}.customAlign[data-v-ae0cb942]{height:30px}@media print{.preventPrintBreak[data-v-ae0cb942]{-webkit-column-break-inside:avoid;break-inside:avoid;page-break-inside:avoid}}.searchbox[data-v-6ab96d95]{max-width:500px}.menuWidth[data-v-defa5cd8]{min-width:220px}.menuWidth[data-v-07337edc]{min-width:190px}.toggle-enter-active[data-v-8c5b0e4c],.toggle-leave-active[data-v-8c5b0e4c]{-webkit-transition:all .3s;-moz-transition:all .3s;transition:all .3s;max-height:500px}.toggle-enter[data-v-8c5b0e4c],.toggle-leave-to[data-v-8c5b0e4c]{opacity:0;max-height:0}.stickyColumn[data-v-baace2c2]{top:32px}.townPanelShadow[data-v-48f19640]{-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-48f19640]{min-width:300px;max-width:300px;padding-right:2.5rem}.stickyColumn[data-v-a83dcdd4]{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-fe9e5faa]{-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}.leftColumnWidth[data-v-4a04efe8]{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}.description p{margin-top:1rem} \ No newline at end of file diff --git a/dist/index.html b/dist/index.html index 58035837d8..7d114cbc63 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.928b6db1.js b/dist/js/index.d9b1410a.js similarity index 99% rename from dist/js/index.928b6db1.js rename to dist/js/index.d9b1410a.js index 4b38a96bc6..4f77f7e1dc 100644 --- a/dist/js/index.928b6db1.js +++ b/dist/js/index.d9b1410a.js @@ -1,2 +1,2 @@ -(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",{staticClass:"mb-6 relative"},[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}}},me=pe,he=(i("bc14"),Object(u["a"])(me,ue,de,!1,null,null,null)),fe=he.exports,ve=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,ve,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=[],xe={props:{icon:{type:String},position:{type:String}},computed:{positionClasses(){return"after"===this.position?"right-0 pr-3 ":"left-0 pl-3 "}}},ke=xe,Se=Object(u["a"])(ke,we,Ce,!1,null,null,null),Pe=Se.exports;function $e(e,t){const{error:i,prefixIcon:a,suffixIcon:s}=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",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},width:{required:!1,type:String,default:void 0}},computed:{classes(){const e={error:this.error,prefixIcon:this.prefixIcon,suffixIcon:this.suffixIcon};return{state:[...$e("state",e)],default:$e("default",e)}[this.variant]}},components:{InputLabel:ce,InputWrapper:fe,InputError:ye,InputIcon:Pe}},Ie=Te,Oe=Object(u["a"])(Ie,te,ie,!1,null,null,null),Ae=Oe.exports,Ee=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},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),i("InputError",[e._v(e._s(a[0]))])]}}])})],1)},je=[],De={name:"InlineTextInput",mixins:[ae],props:{label:{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}},computed:{classes(){const e={error:this.error,prefixIcon:this.prefixIcon,suffixIcon:this.suffixIcon};return{state:[...$e("state",e)],default:$e("default",e),town:$e("town",e)}[this.variant]}},components:{InputError:ye,InputIcon:Pe}},qe=De,Me=Object(u["a"])(qe,Ee,je,!1,null,null,null),Le=Me.exports,Ne=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:[...$e("state",e)],default:$e("default",e)}[this.variant]}},components:{InputLabel:ce,InputWrapper:fe,InputError:ye,InputIcon:Pe}},Be=ze,Re=Object(u["a"])(Be,Ne,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]}}},Ye=Je,Qe=Object(u["a"])(Ye,Ge,We,!1,null,null,null),Ze=Qe.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:"radio"},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:"radio"},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)},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}},methods:{onChange(){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",...$e("state",e)],default:["appearance-none",...$e("default",e)]}[this.variant]}},components:{InputWrapper:fe,InputLabel:ce,InputError:ye,InputIcon:Pe}},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)},ft=[],vt={name:"SelectOption",props:{}},gt=vt,bt=Object(u["a"])(gt,ht,ft,!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}}},xt=Ct,kt=Object(u["a"])(xt,yt,wt,!1,null,null,null),St=kt.exports,Pt=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)},$t=[],Tt={props:{title:{type:String},info:{type:String}}},It=Tt,Ot=Object(u["a"])(It,Pt,$t,!1,null,null,null),At=Ot.exports,Et=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("span",{staticClass:"text-red text-md"},[e._v("*")])},jt=[],Dt={},qt=Object(u["a"])(Dt,Et,jt,!1,null,null,null),Mt=qt.exports,Lt=i("22df"),Nt=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,Nt,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,Yt=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)])},Qt=[],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,Yt,Qt,!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}}},fi=hi,vi=Object(u["a"])(fi,pi,mi,!1,null,null,null),gi=vi.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)),xi=Ci.exports,ki=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ésultats ")])],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=[],Pi={components:{InputLabel:ce,InputWrapper:fe,InputError:ye,InputIcon:Pe},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:[...$e("state",e)],default:$e("default",e)}[this.variant];return[...this.inputClasses,...t]}},data(){return{show:!0,focused:!1,value:this.defaultValue||{},searchInput:this.defaultValue?this.getResultValue(this.defaultValue):"",results:[]}},methods:{removeItem(){this.value="",this.searchInput="",this.$emit("submit",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.$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}}},$i=Pi,Ti=Object(u["a"])($i,ki,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=[],Ei={},ji=Object(u["a"])(Ei,Oi,Ai,!1,null,null,null),Di=ji.exports,qi=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,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)]),i("InputError",[e._v(e._s(a[0]))])],1)]}}],null,!0)})},Mi=[],Li={props:{label:{type:String},info:{type:String},error:{type:String},direction:{type:String,default:"vertical"},validationName:{type:String},rules:{type:String},id:{type:String},showMandatoryStar:{required:!1,type:Boolean,default:!1}},components:{InputError:ye,InputLabel:ce,InputWrapper:fe}},Ni=Li,Fi=(i("7a95"),i("8324"),Object(u["a"])(Ni,qi,Mi,!1,null,"e7203c44",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,Yi={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:fe,InputError:ye,InputInfo:Ji,InputIcon:Pe},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:[...$e("state",e)],default:$e("default",e),town:$e("town",e)}[this.variant]}},methods:{clear(){this.$refs.datepicker.clearDate()}}},Qi=Yi,Zi=Object(u["a"])(Qi,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"},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"},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),fa=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()},va=[],ga={data(){return{isVisible:!0}},methods:{hide(){this.isVisible=!1}}},ba=ga,_a=(i("8974"),Object(u["a"])(ba,fa,va,!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)}}},xa=Ca,ka=Object(u["a"])(xa,da,pa,!1,null,null,null),Sa=ka.exports,Pa=function(e){e.component("Button",ee),e.component("TextInput",Ae),e.component("InlineTextInput",Le),e.component("TextArea",Ve),e.component("Icon",Q),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",Mt),e.component("Dropdown",ei),e.component("Modal",di),e.component("SidePanel",xi),e.component("CheckableGroup",zi),e.component("InputGroup",At),e.component("FormParagraph",Lt["default"]),e.component("Callout",gi),e.component("Spinner",Di),e.component("AutocompleteV2",Ii),e.component("DatepickerV2",Ki),e.component("Tag",sa),e.component("Pagination",ua),e.component("MapV2",Sa),e.use(R.a),e.component("NotificationsGroup",ni),e.component("ValidationProvider",q["b"]),e.component("ValidationObserver",q["a"]),e.component("AutocompleteVue",D["a"]),Object(q["d"])({en:N,fr:L,bg:z,ro:F}),Object.keys(M).forEach(e=>{Object(q["c"])(e,{...M[e]})}),Object(q["d"])("fr")};const $a={debug:!1,enableLinkTracking:!0,requireConsent:!1,trackInitialView:!0,trackerFileName:"piwik"};function Ta(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 Ia(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 Oa(e,t={}){const i={...$a,...t},{host:a,trackerFileName:s}=i,n=`${a}/${s}.js`;Ta(n).then(()=>Ia(e,i))}var Aa=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)},Ea=[],ja=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)},Da=[],qa=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)},Ma=[],La=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)},Na=[],Fa=(i("4316"),{}),za=Object(u["a"])(Fa,La,Na,!1,null,"07ee7c4c",null),Ba=za.exports,Ra=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)},Va=[],Ua=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"}})])])},Ha=[],Ga={props:{onClick:{type:Function,required:!0}}},Wa=Ga,Ja=Object(u["a"])(Wa,Ua,Ha,!1,null,null,null),Ya=Ja.exports,Qa=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)},Za=[],Ka={},Xa=Object(u["a"])(Ka,Qa,Za,!1,null,null,null),es=Xa.exports,ts={props:{menuDisplayed:{type:Boolean,required:!0},toggleMenu:{type:Function,required:!0}},components:{NavBarLogo:Ba,Button:ee,NavBarMobileButton:Ya,PublicContainer:es}},is=ts,as=Object(u["a"])(is,Ra,Va,!1,null,null,null),ss=as.exports,ns=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)]}}])})},os=[],rs={methods:{pickLang(e){this.$i18n.locale=e,Object(q["d"])(e)}}},ls=rs,cs=Object(u["a"])(ls,ns,os,!1,null,null,null),us=cs.exports,ds=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)},ps=[],ms={props:{closeMenu:{required:!0,type:Function},displayLanguagePicker:{type:Boolean}},components:{LanguagePicker:us,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()}}},hs=ms,fs=Object(u["a"])(hs,ds,ps,!1,null,null,null),vs=fs.exports,gs={props:{stickyHeader:{type:Boolean},displayLanguagePicker:{type:Boolean,default:!1}},components:{NavBarLogo:Ba,NavBarSticky:ss,Button:ee,NavBarMobileMenu:vs,NavBarMobileButton:Ya,PublicContainer:es,LanguagePicker:us},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)}},bs=gs,_s=Object(u["a"])(bs,qa,Ma,!1,null,null,null),ys=_s.exports,ws=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)},Cs=[],xs={components:{PublicContainer:es}},ks=xs,Ss=Object(u["a"])(ks,ws,Cs,!1,null,null,null),Ps=Ss.exports,$s={props:{stickyHeader:{type:Boolean,default:!0},displayLanguagePicker:{type:Boolean,default:!1}},components:{NavBar:ys,PublicFooter:Ps}},Ts=$s,Is=Object(u["a"])(Ts,ja,Da,!1,null,null,null),Os=Is.exports,As=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)},Es=[],js=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)},Ds=[],qs={data(){return{email:""}},methods:{onSubmit(){this.$router.push("/contact"+(this.email?"?email="+encodeURIComponent(this.email):""))}}},Ms=qs,Ls=Object(u["a"])(Ms,js,Ds,!1,null,null,null),Ns=Ls.exports,Fs={components:{LandingPageContactForm:Ns}},zs=Fs,Bs=Object(u["a"])(zs,As,Es,!1,null,null,null),Rs=Bs.exports,Vs=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")}}),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)])},Us=[],Hs=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)},Gs=[],Ws={name:"LandingPageFeatureBlock",props:{icon:{type:String,required:!0}}},Js=Ws,Ys=Object(u["a"])(Js,Hs,Gs,!1,null,null,null),Qs=Ys.exports,Zs=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)},Ks=[],Xs={props:{label:{type:String,required:!0}}},en=Xs,tn=Object(u["a"])(en,Zs,Ks,!1,null,null,null),an=tn.exports,sn=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)])},nn=[],on=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}})},rn=[],ln={props:{active:{type:Boolean},onClick:{type:Function}}},cn=ln,un=Object(u["a"])(cn,on,rn,!1,null,null,null),dn=un.exports,pn=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))])])},mn=[],hn={props:{text:{type:String},author:{type:String},active:{type:Boolean}}},fn=hn,vn=(i("1210"),Object(u["a"])(fn,pn,mn,!1,null,"a695c1c4",null)),gn=vn.exports,bn={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:dn,LandingPageUserFeedbackSection:gn}},_n=bn,yn=Object(u["a"])(_n,sn,nn,!1,null,null,null),wn=yn.exports,Cn=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"wrapper",style:e.paddingStyle},[e._t("default")],2)},xn=[],kn={props:{videoRatio:{type:String,default:"56.25%"}},computed:{paddingStyle(){return"padding-bottom: "+this.videoRatio}}},Sn=kn,Pn=(i("379b"),Object(u["a"])(Sn,Cn,xn,!1,null,null,null)),$n=Pn.exports,Tn={components:{LandingPageContextImage:an,LandingPageFeatureBlock:Qs,LandingPageUserFeedback:wn,LandingPageResponsiveEmbed:$n}},In=Tn,On=Object(u["a"])(In,Vs,Us,!1,null,null,null),An=On.exports,En=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"))+" ")])])])},jn=[],Dn=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))])])},qn=[],Mn={name:"LandingPageDataBlock",props:{line1:{type:String,required:!0},line2:{type:String,required:!0},line3:{type:String,required:!0}}},Ln=Mn,Nn=Object(u["a"])(Ln,Dn,qn,!1,null,null,null),Fn=Nn.exports,zn={components:{LandingPageDataBlock:Fn,LandingPageResponsiveEmbed:$n}},Bn=zn,Rn=Object(u["a"])(Bn,En,jn,!1,null,null,null),Vn=Rn.exports,Un=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)])])])},Hn=[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")}})])])}],Gn=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))])])])},Wn=[],Jn={name:"LandingPageBilanBlock",props:{icon:{required:!0},text:{type:String,required:!0},info:{type:String}}},Yn=Jn,Qn=Object(u["a"])(Yn,Gn,Wn,!1,null,null,null),Zn=Qn.exports,Kn={components:{LandingPageBilanBlock:Zn,Button:ee}},Xn=Kn,eo=Object(u["a"])(Xn,Un,Hn,!1,null,null,null),to=eo.exports,io=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)},ao=[],so={components:{Button:ee,PublicContainer:es},props:{cta:{type:String,required:!0}}},no=so,oo=Object(u["a"])(no,io,ao,!1,null,null,null),ro=oo.exports,lo=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)},co=[],uo={props:{credit:{type:String}}},po=uo,mo=Object(u["a"])(po,lo,co,!1,null,null,null),ho=mo.exports,fo={components:{CreditWrapper:ho,PublicContainer:es,PublicLayout:Os,LandingPageHero:Rs,LandingPageFirstSection:An,LandingPageSecondSection:Vn,LandingPageThirdSection:to,LandingPageBanner:ro,LandingPageContactForm:Ns}},vo=fo,go=Object(u["a"])(vo,Aa,Ea,!1,null,null,null),bo=go.exports,_o=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)])},yo=[],wo=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)])])},Co=[];let xo=null;function ko(e){null===xo||xo.closed?xo=window.open(e,"_blank"):(xo.location=e,xo.location.reload(),xo.focus())}var So=i("227c");const Po={MISSING_TOKEN:1,EXPIRED_OR_INVALID_TOKEN:2};function $o(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 Po.MISSING_TOKEN:case Po.EXPIRED_OR_INVALID_TOKEN:Jo(a["default"].prototype.$piwik),Lk.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 To(e){e()}function Io(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=Zo();null!==e&&s.setRequestHeader("x-access-token",e)}s.setRequestHeader("x-app-version",So),s.onload=$o.bind(s,n,o),s.onerror=To.bind(s,o),s.ontimeout=To.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 Oo(e,t,i){return Io("GET",e,t,i)}function Ao(e,t,i){return Io("POST",e,t,i)}function Eo(e,t,i){return Io("DELETE",e,t,i)}function jo(e,t,i){return Io("PATCH",e,t,i)}function Do(e,t,i){return Io("PUT",e,t,i)}function qo(e){return ko(`${e}${-1===e.indexOf("?")?"?":"&"}accessToken=${encodeURIComponent(Zo())}`)}let Mo=null;function Lo(){return null!==Mo}function No(){return Oo("/config").then(e=>(Wo(),Mo=e,e))}function Fo(){Mo=null}function zo(){return Mo}function Bo(e,t){if(null===Mo)return;const i=e.split(".");let a=Mo;while(i.length>1){if(void 0===a)return;a=a[i.shift()]}a[i[0]]=t}function Ro(e){if(null===Mo||null===Mo.user)return null;const[t,i]=e.split(".");if(!Object.prototype.hasOwnProperty.call(Mo.user.permissions,t)||!Object.prototype.hasOwnProperty.call(Mo.user.permissions[t],i))return null;const a=Mo.user.permissions[t][i];return!0!==a.allowed?null:a}function Vo(e){const[t,i,a]=e.split("."),s=Ro(`${t}.${i}`);return null!==s&&(void 0===a||!0===s[a])}function Uo(e){return Ao("/changelog",{version:e})}function Ho(){return null!==Mo&&Mo.user.charte_engagement_a_jour}function Go(e,t){return Ao("/signin",{email:e,password:t}).then(e=>(localStorage.setItem("token",e.token),e))}function Wo(){return Oo("/refreshToken").then(e=>{localStorage.setItem("token",e.token)})}function Jo(e){Fo(),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 Yo(){return null!==localStorage.getItem("token")}function Qo(){return!0===localStorage.getItem("logged_once")}function Zo(){return localStorage.getItem("token")}function Ko(e){return Ao("/users",e)}function Xo(){return Oo("/me")}function er(e){return Ao("/me",e)}function tr(){return Oo("/users")}function ir(e){return Oo("/users/"+e)}function ar(e,t){return Ao(`/users/${e}/sendActivationLink`,t)}function sr(e){return Ao(`/users/${e}/denyAccess`)}function nr(e){return Oo(`/activation-tokens/${encodeURIComponent(e)}/check`)}function or(e){return Oo(`/password-tokens/${encodeURIComponent(e)}/check`)}function rr(e,t){return Ao(`/users/${e}/activate`,t)}function lr(e,t){return Ao(`/users/${e}/newPassword`,t)}function cr(e,t){return Ao(`/users/${e}/upgrade`,t)}function ur(e){return Eo("/users/"+e)}function dr(e){return Ao("/users/new-password",{email:e})}function pr(){return Oo("/directory")}function mr(e){return Oo("/organizations/search?query="+encodeURIComponent(e))}function hr(e,t){return Do(`/users/${e}/charte_engagement`,{version_de_charte:t})}var fr={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"}]}]},vr={data(){return{isSidebarOpened:!1}},computed:{items(){return!0!==Yo()?fr.anonymous:!0!==Lo()||!0!==Ho()?fr.loading:this.filterItems(fr.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=>Vo(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)}},gr=vr,br=gr,_r=(i("17d9"),Object(u["a"])(br,wo,Co,!1,null,"b24b83de",null)),yr=_r.exports,wr=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)])])])},Cr=[],xr=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)])},kr=[],Sr=i("fa33"),Pr=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()])},$r=[];const Tr=200;var Ir={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,Tr)},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"}}},Or=Ir,Ar=Or,Er=(i("4f16"),Object(u["a"])(Ar,Pr,$r,!1,null,null,null)),jr=Er.exports,Dr=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))},qr=[];function Mr(e){return`${e.geometry.coordinates[0]}-${e.geometry.coordinates[1]}`}function Lr(e){const t=[];return e.filter(e=>{const i=Mr(e);return-1===t.indexOf(i)&&(t.push(i),!0)})}function Nr(e,t){if(200===this.status)try{const{features:t}=JSON.parse(this.responseText);e(Lr(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 Fr(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=Nr.bind(i,a,s),i.onerror=s,i.ontimeout=s,i.send()});return a.abort=()=>{i.abort()},a}function zr(e){const t=Oo("/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 Br(){return Oo("/departements")}var Rr={components:{Autocompleter:jr},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:Fr}}},watch:{value(){this.data=null!==this.value?[this.value]:[]},data(){this.$emit("input",this.data.length>0?this.data[0]:null)}}},Vr=Rr,Ur=Vr,Hr=(i("f909"),Object(u["a"])(Ur,Dr,qr,!1,null,null,null)),Gr=Hr.exports,Wr=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()])},Jr=[];const Yr=6,Qr={coordinates:[46.7755829,2.0497727],zoom:Yr};var Zr={props:{value:{type:Object,required:!1,default(){return Qr}},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()||Yr}},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)}}},Kr=Zr,Xr=Kr,el=(i("8950"),Object(u["a"])(Xr,Wr,Jr,!1,null,null,null)),tl=el.exports,il=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)},al=[],sl={components:{Address:Gr,Location:tl},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)}}},nl=sl,ol=nl,rl=(i("c789"),Object(u["a"])(ol,il,al,!1,null,null,null)),ll=rl.exports,cl=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()])},ul=[];function dl(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(",")),Oo("/towns"+(i.length>0?"?"+i.join("&"):""))}function pl(e){return Oo("/towns/"+e)}function ml(e){return Ao("/towns",e)}function hl(e,t){return Ao("/towns/"+e,t)}function fl(e,t){return Ao(`/towns/${e}/close`,t)}function vl(e){return Eo("/towns/"+e)}function gl(e,t){return Ao(`/towns/${e}/comments`,t)}function bl(e,t){return Ao(`/towns/${e}/covidComments`,t)}function _l(e,t,i){return Eo(`/towns/${e}/comments/${t}`,{message:i})}var yl=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)])},wl=[],Cl=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")])])])},xl=[],kl={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)}}},Al=Ol,El=Al,jl=Object(u["a"])(El,yl,wl,!1,null,null,null),Dl=jl.exports,ql=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))},Ml=[],Ll={components:{Autocompleter:jr},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=zr(...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)}}},Nl=Ll,Fl=Nl,zl=(i("373f"),Object(u["a"])(Fl,ql,Ml,!1,null,null,null)),Bl=zl.exports,Rl={components:{Table:Dl,CollectivityInput:Bl},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}=zo(),i=Ro("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,dl({},["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)}}},Vl=Rl,Ul=Vl,Hl=(i("3b5a"),Object(u["a"])(Ul,cl,ul,!1,null,null,null)),Gl=Hl.exports,Wl=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)])])},Jl=[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")])])}],Yl=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}})])])},Ql=[],Zl={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:zo().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")}}},Kl=Zl,Xl=Kl,ec=(i("5449"),Object(u["a"])(Xl,Yl,Ql,!1,null,null,null)),tc=ec.exports,ic={components:{PlanFundingRow:tc},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)}}},ac=ic,sc=ac,nc=(i("30c2"),Object(u["a"])(sc,Wl,Jl,!1,null,null,null)),oc=nc.exports,rc=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)}}})])])])])])},lc=[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)")])])}],cc={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)}}},uc=cc,dc=(i("e1d3"),Object(u["a"])(uc,rc,lc,!1,null,"0c9f54ed",null)),pc=dc.exports,mc=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))},hc=[],fc={components:{Autocompleter:jr},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=mr(...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)}}},vc=fc,gc=vc,bc=Object(u["a"])(gc,mc,hc,!1,null,null,null),_c=bc.exports,yc=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)},wc=[],Cc={props:{value:{type:Array,required:!1,default(){return[]}},disabled:{type:Boolean,required:!1,default:!1}},data(){const{etp_types:e}=zo();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)}}},xc=Cc,kc=xc,Sc=(i("d416"),Object(u["a"])(kc,yc,wc,!1,null,null,null)),Pc=Sc.exports,$c=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)}}})])])])])])},Tc=[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")])])}],Ic={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)}}},Oc=Ic,Ac=Oc,Ec=(i("2283"),Object(u["a"])(Ac,$c,Tc,!1,null,null,null)),jc=Ec.exports;const Dc=["selectMultiple","checkbox","autocompleter","townList","planFunding","etp"];var qc={components:{Datepicker:Sr["default"],Autocompleter:jr,Address:Gr,Location:tl,AddressWithLocation:ll,TownList:Gl,PlanFunding:oc,Collectivity:Bl,Organization:_c,Etp:Pc,Audience:jc,PlanHousing:pc},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!==Dc.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)}}},Mc=qc,Lc=Mc,Nc=(i("8aa6"),Object(u["a"])(Lc,xr,kr,!1,null,null,null)),Fc=Nc.exports,zc=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)])},Bc=[],Rc={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"}}},Vc=Rc,Uc=Vc,Hc=(i("2d21"),Object(u["a"])(Uc,zc,Bc,!1,null,"569f8548",null)),Gc=Hc.exports;const Wc=6e3;function Jc(e){return a["default"].notify(Object.prototype.hasOwnProperty.call(e,"duration")?e:{...e,duration:Wc})}var Yc={components:{Input:Fc,SlideNote:Gc},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&&Jc({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}}},Qc=Yc,Zc=Qc,Kc=(i("f6ce"),Object(u["a"])(Zc,wr,Cr,!1,null,null,null)),Xc=Kc.exports,eu={components:{NavBar:yr,Form:Xc},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})=>Go(e,t)}]}}},methods:{onComplete(){window.localStorage.setItem("logged_once",!0),this.$router.push({path:"/"})}}},tu=eu,iu=tu,au=(i("f276"),Object(u["a"])(iu,_o,yo,!1,null,null,null)),su=au.exports,nu=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)},ou=[];function ru(e){return Ao("/contact",e)}var lu=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)},cu=[];function uu(){return Oo("/organization-categories")}function du(e){return Oo(`/organization-categories/${e}/organization-types`)}function pu(e,t=null){return Oo(`/organization-categories/${e}/organizations${null!==t?"?search="+t:""}`)}function mu(e){return Oo(`/organization-types/${e}/organizations`)}function hu(e){return Oo(`/organizations/${e}/users`)}function fu(e,t,i){let a="";return void 0!==i?a="departementId="+encodeURIComponent(i):void 0!==t&&(a="regionId="+encodeURIComponent(t)),Oo(`/organization-categories/${e}/users?${a}`)}var vu={props:{organizationType:{required:!0},organizationTerritory:{required:!0},organizationFunction:{required:!0}},data(){return{orgTypesOptions:[],orgTerritoryOptions:[]}},async mounted(){const{types:e}=await du("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 mu(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}})}}},gu=vu,bu=Object(u["a"])(gu,lu,cu,!1,null,null,null),_u=bu.exports,yu=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)},wu=[],Cu={components:{InputLabel:ce,Collectivity:Ll,InputWrapper:fe,InputError:ye},props:{collectivityName:{required:!0},collectivityFunction:{required:!0}}},xu=Cu,ku=Object(u["a"])(xu,yu,wu,!1,null,null,null),Su=ku.exports,Pu=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)},$u=[],Tu={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([pu("association"),Br()]),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}`}))}},Iu=Tu,Ou=Object(u["a"])(Iu,Pu,$u,!1,null,null,null),Au=Ou.exports,Eu=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)},ju=[],Du={props:{administrationName:{required:!0},administrationFunction:{required:!0}},data(){return{administrationNameOptions:[]}},async mounted(){const{organizations:e}=await pu("administration");this.administrationNameOptions=e.map(({id:e,name:t})=>({value:e,label:t}))}},qu=Du,Mu=Object(u["a"])(qu,Eu,ju,!1,null,null,null),Lu=Mu.exports,Nu=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)])},Fu=[],zu={computed:{url(){return encodeURIComponent("https://resorption-bidonvilles.beta.gouv.fr/#/contact")}}},Bu=zu,Ru=Object(u["a"])(Bu,Nu,Fu,!1,null,null,null),Vu=Ru.exports,Uu={components:{SocialShare:Vu,Checkbox:tt,CheckableGroup:zi,PublicContainer:es,PublicLayout:Os,PublicEstablishmentForm:_u,TerritorialCollectivityForm:Su,AdministrationForm:Lu,AssociationForm:Au},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 ru(e),this.loading=!1,this.$router.push("/"),Jc({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:""}}}},Hu=Uu,Gu=(i("65a2"),Object(u["a"])(Hu,nu,ou,!1,null,null,null)),Wu=Gu.exports,Ju=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)])},Yu=[],Qu=i("8d3b"),Zu=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)])},Ku=[],Xu={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"}}},ed=Xu,td=ed,id=(i("77c2"),Object(u["a"])(td,Zu,Ku,!1,null,null,null)),ad=id.exports,sd=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)},nd=[],od=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()])},rd=[];const ld=200,cd=3;var ud={props:{value:Object,autofocus:Boolean,placeholder:String,autocompleteFunction:{type:Function,default:Fr},showMagnifier:{type:Boolean,default:!0},typingMin:{type:Number,default:cd}},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,ld))},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}}},dd=ud,pd=dd,md=(i("e072"),Object(u["a"])(pd,od,rd,!1,null,"6b423108",null)),hd=md.exports,fd=(i("8243"),i("3ac1"),i("7319"),i("67e3")),vd=i.n(fd),gd=i("71ee"),bd=i.n(gd),_d=i("64e1"),yd=i.n(_d),wd=i("0eac"),Cd=i.n(wd);const xd=[46.7755829,2.0497727],kd=13;var Sd={components:{Address:hd},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:xd,zoom:6})}},data(){return{map:null,markersGroup:{towns:ha.a.markerClusterGroup(),search:ha.a.markerClusterGroup(),pois:ha.a.markerClusterGroup({disableClusteringAtZoom:kd})},searchMarker:this.createSearchMarker(),townSearchMarker:null,townMarkers:[],poiMarkers:[],poiMarkersVisible:!1,hashedTownMarkers:{},address:null,showAddresses:!1,fieldTypes:zo().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>kd&&(this.poiMarkersVisible=!0,this.pois.forEach(this.createPOIMarker)),this.poiMarkersVisible&&e<=kd&&(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?vd.a:!1===e.accessToWater?yd.a:Cd.a},createSearchMarker(){return ha.a.marker(xd,{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")}}},Pd=Sd,$d=Pd,Td=(i("6613"),Object(u["a"])($d,sd,nd,!1,null,"055bfb64",null)),Id=Td.exports,Od=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)},Ad=[],Ed={components:{simplebar:Qu["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:Vo,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);ko(e.href)}}},jd=Ed,Dd=jd,qd=(i("e119"),Object(u["a"])(Dd,Od,Ad,!1,null,"12c43bda",null)),Md=qd.exports,Ld=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)},Nd=[],Fd={components:{simplebar:Qu["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))}}},zd=Fd,Bd=(i("1c7c"),Object(u["a"])(zd,Ld,Nd,!1,null,"263a7bb8",null)),Rd=Bd.exports;function Vd(){return Oo("/pois")}var Ud=i("6ecd"),Hd=i.n(Ud),Gd=i("9934"),Wd=i.n(Gd),Jd=i("597c"),Yd=i.n(Jd),Qd=i("d89d"),Zd=i.n(Qd);function Kd(e){switch(e){case"nation":case"region":return 6;default:case"departement":case"epci":case"city":return 10}}var Xd={components:{NavBar:yr,FilterGroup:ad,Map:Id,Quickview:Md,POIView:Rd,simplebar:Qu["a"]},data(){const{user:e}=zo();return{error:void 0,loading:!1,defaultMapView:{center:[e.organization.location.latitude,e.organization.location.longitude],zoom:Kd(e.organization.location.type)},towns:[],pois:[],quickview:{town:null,originEvent:null},poiview:{poi:null,originEvent:null},permission:Ro("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:Hd.a,label:"Types de site",id:"fieldType",options:[],opened:!0},{icon:Wd.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:Yd.a,label:"Statut des sites",id:"status",options:[{value:"closed",label:"Disparus",checked:!1},{value:"opened",label:"Existants",checked:!0}]},{icon:Wd.a,label:"Type de propriétaire",id:"ownerType",options:zo().owner_types.map(e=>({value:e.id,label:e.label,checked:!0}))},{icon:Zd.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);ko(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([dl(),Vd()]).then(([e,t])=>{const{field_types:i}=zo();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}))}}},ep=Xd,tp=ep,ip=(i("669e"),Object(u["a"])(tp,Ju,Yu,!1,null,null,null)),ap=ip.exports,sp=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)},np=[],op={data(){return{error:null}},components:{NavBar:yr},mounted(){this.loadConfig()},methods:{loadConfig(){!0!==Lo()?(this.error=null,No().then(()=>{this.redirect()}).catch(e=>{this.error=e.user_message})):this.redirect()},redirect(){const{user:e}=zo();this.track(e),this.$router.push(Nk())},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))}}},rp=op,lp=rp,cp=Object(u["a"])(lp,sp,np,!1,null,null,null),up=cp.exports,dp=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:"Inconnue"}]},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:"accessToElectricity",label:"électricité"},{value:"accessToTrash",label:"évac. des déchets"},{value:"accessToSanitary",label:"toilettes"}]},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()],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-end mb-12 print:hidden"},[e.nbPages>1?i("Pagination",{staticClass:"mt-2 md:mt-0 ml-auto ",attrs:{currentPage:e.currentPage,nbPages:e.nbPages,onChangePage:e.onChangePage}}):e._e()],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)},pp=[],mp=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)},hp=[],fp={},vp=Object(u["a"])(fp,mp,hp,!1,null,null,null),gp=vp.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)},_p=[],yp={components:{NavBar:yr}},wp=yp,Cp=Object(u["a"])(wp,bp,_p,!1,null,null,null),xp=Cp.exports,kp=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 inconnue ")]):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 : inconnue ")])],2)]),i("div",[i("div",[i("TownCardIcon",{attrs:{value:e.shantytown.accessToWater}},[e._v("eau")]),i("TownCardIcon",{attrs:{value:e.shantytown.electricityType.value}},[e._v("électricité")]),i("TownCardIcon",{attrs:{value:e.shantytown.trashEvacuation}},[e._v("évac. des déchets")]),i("TownCardIcon",{attrs:{value:e.shantytown.accessToSanitary}},[e._v("toilettes")])],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 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"},[i("transition",{attrs:{name:"fade"}},[e.isHover?i("router-link",{attrs:{to:"site/"+e.shantytown.id}},[i("Button",{staticClass:"text-display-sm hover:underline -mb-1",attrs:{variant:"secondaryText",icon:"pen",iconPosition:"left"}},[e._v("Mettre à jour")])],1):e._e()],1),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)},Sp=[],Pp=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{class:["flex items-center",e.color]},[i("div",{staticClass:"mr-2 w-4"},[!0===e.value?i("Icon",{attrs:{icon:"check"}}):e._e(),!1===e.value?i("Icon",{attrs:{icon:"times"}}):e._e(),null===e.value?i("Icon",{attrs:{icon:"question"}}):e._e()],1),e._t("default")],2)},$p=[],Tp={props:{value:{validator:e=>"boolean"===typeof e||null===e}},computed:{color(){return!0===this.value?"text-green":"text-red"}}},Ip=Tp,Op=Object(u["a"])(Ip,Pp,$p,!1,null,null,null),Ap=Op.exports,Ep=i("2416"),jp=i.n(Ep),Dp=i("2b50"),qp=i.n(Dp),Mp=i("08c7"),Lp=i.n(Mp);function Np(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}}var Fp={props:{shantytown:{type:Object},hasJusticePermission:{type:Boolean}},data(){return{isHover:!1}},components:{TownCardIcon:Ap},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:qp.a}:2===e.id?{id:2,label:"Union européenne",img:jp.a}:3===e.id?{id:3,label:"Hors Union européenne",img:Lp.a}:e}},computed:{lastUpdate(){const{days:e,months:t,weeks:i}=Np(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"}}},zp=Fp,Bp=(i("faac"),Object(u["a"])(zp,kp,Sp,!1,null,"ae0cb942",null)),Rp=Bp.exports,Vp=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ésultats ")])],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)},Up=[],Hp={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 zr(e),this.loading=!1,this.results):[]}}},Gp=Hp,Wp=(i("c35a4"),Object(u["a"])(Gp,Vp,Up,!1,null,"6ab96d95",null)),Jp=Wp.exports,Yp=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)])},Qp=[],Zp={props:{search:{type:Object},showExport:{type:Function}}},Kp=Zp,Xp=Object(u["a"])(Kp,Yp,Qp,!1,null,null,null),em=Xp.exports,tm=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)},im=[],am={props:{active:{type:Boolean}}},sm=am,nm=Object(u["a"])(sm,tm,im,!1,null,null,null),om=nm.exports,rm=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)])},lm=[],cm={},um=Object(u["a"])(cm,rm,lm,!1,null,null,null),dm=um.exports,pm=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=[],hm={props:{title:{type:String},options:{type:Array},value:{type:Array}},computed:{titleWithActiveFilters(){return this.value.length?`${this.title} (${this.value.length})`:this.title}}},fm=hm,vm=(i("30a5"),Object(u["a"])(fm,pm,mm,!1,null,"defa5cd8",null)),gm=vm.exports;function bm(e,t){return e.filter(e=>("open"!==t.status||"open"===e.status)&&(("close"!==t.status||"open"!==e.status)&&(!(t.location&&!wm(e,t))&&(!(t.fieldType.length>0&&!Cm(e,t.fieldType))&&(!(t.population.length>0&&!xm(e,t.population))&&(!(t.justice.length>0&&!km(e,t.justice))&&(!(t.origin.length>0&&!ym(e,t.origin))&&!(t.conditions.length>0&&!_m(e,t.conditions)))))))))}function _m(e,t){return t.some(t=>"accessToSanitary"===t?!e.accessToSanitary:"accessToWater"===t?!e.accessToWater:"accessToTrash"===t?!e.trashEvacuation:"accessToElectricity"!==t||!e.electricityType.value)}function ym(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 wm(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 Cm(e,t){return-1!==t.indexOf(e.fieldType.id)}function xm(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)}var Sm=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(" 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:"primaryOutline"},on:{click:e.close}},[e._v(" Annuler")]),i("Button",{staticClass:"ml-6",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 : département, commune, adresse")]),i("li",[e._v(" - Site : type de site (terrain / bâti), date d’installation, date de signalement ")]),i("li",[e._v(" - Habitants : nombre de personnes, mineurs, ménages et origines ")]),e.closedTowns?i("li",[e._v(" - Orientations des ménages après la fermeture ")]):e._e(),i("li",[e._v("- Date de la dernière mise à jour")])])]),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}])})},Pm=[],$m={components:{Checkbox:tt},props:{location:Object,closedTowns:Boolean},data(){return{existingOptions:[{id:"priority",label:"Priorité",description:"(1, 2, 3)",closedTowns:!1},{id:"address_details",label:"Informations d'accès au site et coordonnées GPS",closedTowns:!1},{id:"owner",label:"Propriétaire",description:": type et identité"},{id:"life_conditions",label:"Conditions de vie",description:": accès à l'électricité, l'eau, toilettes, évacuation des déchets"},{id:"demographics",label:"Diagnostic",description:": statut, date, et service en charge"},{id:"justice",label:"Procédures judiciaires",description:": statut et date des étapes",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=Ro(`${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(","))),qo(i)},close(){this.$emit("close")}}},Tm=$m,Im=Object(u["a"])(Tm,Sm,Pm,!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("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-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.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)])},Em=[],jm={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}}},Dm=jm,qm=(i("69c8"),Object(u["a"])(Dm,Am,Em,!1,null,"07337edc",null)),Mm=qm.exports,Lm=i("2f62"),Nm=i("ccab"),Fm=i.n(Nm);function zm(e){const{days:t,years:i,months:a}=Np(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 Bm(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:Fm.a,label:"Concours de la force publique non demandé"});break;case"requested":s.push({img:Fm.a,label:"Concours de la force publique demandé",date:e.policeRequestedAt});break;case"granted":s.push({img:Fm.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?zm(o):"",l=e.closingSolutions.reduce((e,t)=>t.householdsAffected?(e||0)+t.householdsAffected:e,null);return{...e,statusName:n,statusDate:o,statusSince:r,statusDetails:Rm[e.status],fieldType:{...e.fieldType,color:i[e.fieldType.id]},electricityType:{...e.electricityType,value:a},justiceStatuses:s,totalSolutions:l}}const Rm={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(Lm["a"]);var Vm=new Lm["a"].Store({state:{towns:{data:[],loading:!0,error:null,sort:"updatedAt",filters:{population:[],fieldType:[],justice:[],origin:[],conditions:[],status:"open",location:null},currentPage:1}},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}},actions:{async fetchTowns({commit:e}){e("setLoading",!0);try{const{user:t,field_types:i}=zo();"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 dl(),s=a.map(e=>Bm(e,i));e("setTowns",s),e("setLoading",!1)}catch(t){e("setError",t),e("setLoading",!1)}}},getters:{towns:e=>e.towns.data,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 Um=20;var Hm={components:{TownsListSort:Mm,Spinner:Di,TownCard:Rp,PrivateContainer:gp,PrivateLayout:xp,TownsListSearchBar:Jp,TownsListHeader:em,TownsListHeaderTab:om,TownsListFilters:dm,TownsListFilter:gm,Export:Om},mounted(){window.onbeforeprint=()=>{this.printMode=!0},window.onafterprint=()=>{this.printMode=!1}},data(){const{field_types:e}=zo(),t=Ro("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){Vm.commit("setSort",e)},updateFilters(e,t){Vm.commit("setFilters",{...this.filters,[e]:t}),this.onChangePage(1)},onChangePage(e){Vm.commit("setCurrentPage",e)},hasPermission(...e){return Vo(...e)},load(){this.shantytowns.length||Vm.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(Lm["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 bm(this.shantytowns,this.filters).sort((e,t)=>t[this.sort]-e[this.sort])},filteredShantytownsByPage(){return this.filteredShantytowns.slice((this.currentPage-1)*Um,Um*this.currentPage)},title(){return this.currentLocation.label?""+this.currentLocation.label:"France métropolitaine"},nbPages(){return Math.ceil(this.filteredShantytowns.length/Um)}}},Gm=Hm,Wm=Object(u["a"])(Gm,dp,pp,!1,null,null,null),Jm=Wm.exports,Ym=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("PrivateLayout",[i("TownForm",{attrs:{mode:"create"}})],1)},Qm=[],Zm=function(){var e=this,t=e.$createElement,i=e._self._c||t;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:"bg-G100 py-8"},[i("PrivateContainer",{staticClass:"flex justify-between items-baseline"},[i("div",{staticClass:"text-display-lg"},[e._v(e._s(e.submitWording))]),i("div",[i("Button",{attrs:{variant:"primaryText"},on:{click:e.back}},[e._v("Annuler")]),i("Button",{staticClass:"ml-5",attrs:{loading:e.loading,"data-cy-button":"submit"}},[e._v("Valider")])],1)])],1),i("PrivateContainer",{staticClass:"flex pt-10"},[i("TownFormLeftColumn",{staticClass:"leftColumnWidth"}),i("div",{staticClass:"flex-1"},[e.showInfo?i("TownFormPanelInfo",{on:{close:function(t){return e.closeInfo()}}}):e._e(),i("TownFormErrorLog",{staticClass:"mt-8 mb-8",attrs:{id:"erreurs",errors:a}}),i("TownFormPanelLocation",{staticClass:"mt-10",model:{value:e.town.location,callback:function(t){e.$set(e.town,"location",t)},expression:"town.location"}}),i("TownFormPanelCharacteristics",{staticClass:"mt-10 townPanelShadow",attrs:{id:"characteristics"},model:{value:e.town.characteristics,callback:function(t){e.$set(e.town,"characteristics",t)},expression:"town.characteristics"}}),i("TownFormPanelPeople",{staticClass:"mt-10 townPanelShadow",attrs:{id:"people"},model:{value:e.town.people,callback:function(t){e.$set(e.town,"people",t)},expression:"town.people"}}),i("TownFormPanelLivingConditions",{staticClass:"mt-10 townPanelShadow",attrs:{id:"living_conditions"},model:{value:e.town.living_conditions,callback:function(t){e.$set(e.town,"living_conditions",t)},expression:"town.living_conditions"}}),i("TownFormPanelJudicial",{staticClass:"mt-10 townPanelShadow",attrs:{id:"judicial"},model:{value:e.town.judicial,callback:function(t){e.$set(e.town,"judicial",t)},expression:"town.judicial"}}),i("div",{staticClass:"mt-8 text-right italic text-red font-bold"},[e._v(" * : Réponses obligatoires ")])],1)],1),i("div",{staticClass:"pt-12 pb-16"},[i("PrivateContainer",{staticClass:"flex justify-end items-baseline"},[i("Button",{attrs:{variant:"primaryText"},on:{click:e.back}},[e._v("Annuler")]),i("Button",{staticClass:"ml-5",attrs:{loading:e.loading}},[e._v("Valider")])],1)],1)],1)]}}])})},Km=[],Xm=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[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:"flag"}})],1),i("span",{staticClass:"ml-2 font-bold"},[e._v("Qu'est-ce qu'un site ?")]),i("span",{staticClass:"ml-2",on:{click:e.toggle}},[i("Icon",{staticClass:"cursor-pointer",attrs:{icon:e.togglerIcon}})],1),i("transition",{attrs:{name:"toggle",mode:"out-in"}},[e.visible?i("div",{staticClass:"bg-yellow-200 text-sm p-6 mt-2 flex"},[e._v(" Un site est un bidonville, squat ou immeuble bâti occupé de manière informelle à des fins d'habitation par plusieurs familles ou personnes. Il se caractérise généralement par l'absence de services de base : eau, électricité, gestion des déchets. La plateforme permet de recenser tous les sites, quelque soit l'origine des personnes et leur nombre. ")]):e._e()])],1)},eh=[],th={data(){return{visible:!0}},computed:{togglerIcon(){return!0===this.visible?"chevron-up":"chevron-down"}},methods:{toggle(){this.visible=!this.visible}}},ih=th,ah=(i("9b19"),Object(u["a"])(ih,Xm,eh,!1,null,"8c5b0e4c",null)),sh=ah.exports,nh=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"bg-gray-200 flex"},[i("div",{staticClass:"p-5 flex-grow"},[i("FormParagraph",{attrs:{title:"Adresse",showMandatoryStar:!0}},[i("InputAddress",{on:{change:e.onAddressChange},model:{value:e.input.address,callback:function(t){e.$set(e.input,"address",t)},expression:"input.address"}})],1),i("FormParagraph",{attrs:{title:"Appellation du site"}},[i("InputName",{model:{value:e.input.name,callback:function(t){e.$set(e.input,"name",t)},expression:"input.name"}})],1)],1),e.input.address.label?i("div",{staticClass:"w-96 h-96"},[i("InputCoordinates",{model:{value:e.input.coordinates,callback:function(t){e.$set(e.input,"coordinates",t)},expression:"input.coordinates"}})],1):e._e()])},oh=[],rh=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("AutocompleteV2",{attrs:{id:"address",label:"",prefixIcon:"search",search:e.autocomplete,getResultValue:e.getResultValue,validationName:"Adresse","data-cy-field":"address",defaultValue:e.value},on:{submit:e.submit}})},lh=[],ch={props:{value:{value:Object,required:!1,default(){return{label:void 0,citycode:void 0}}}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}},methods:{autocomplete(e){return e?Fr(e):[]},getResultValue(e){return"string"===typeof e?e:e.label},submit(e){if(!e)return this.input={label:void 0,citycode:void 0},void this.$emit("change",void 0);const{label:t,citycode:i,coordinates:[a,s]}=e;this.input={label:t,citycode:i},this.$emit("change",[s,a])}}},uh=ch,dh=Object(u["a"])(uh,rh,lh,!1,null,null,null),ph=dh.exports,mh=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("TextInput",{attrs:{id:"name",label:"",info:"Exemples : Entrepôt de la Poste, Rond-point du centre...",cypressName:"name"},model:{value:e.input,callback:function(t){e.input=t},expression:"input"}})},hh=[],fh={props:{value:{type:String,required:!1,default:""}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},vh=fh,gh=Object(u["a"])(vh,mh,hh,!1,null,null,null),bh=gh.exports,_h=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("MapV2",{attrs:{zoom:e.zoom},model:{value:e.input,callback:function(t){e.input=t},expression:"input"}})},yh=[],wh={props:{value:{value:Array,required:!1}},data(){return{input:this.value}},computed:{zoom(){return this.input?15:void 0}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},Ch=wh,xh=Object(u["a"])(Ch,_h,yh,!1,null,null,null),kh=xh.exports,Sh={components:{InputAddress:ph,InputName:bh,InputCoordinates:kh},props:{value:{type:Object,required:!0}},data(){return{input:this.value}},methods:{onAddressChange(e){this.input.coordinates=e}}},Ph=Sh,$h=Object(u["a"])(Ph,nh,oh,!1,null,null,null),Th=$h.exports,Ih=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("FormGroup",{attrs:{title:"Caractéristiques du site"}},[i("FormParagraph",{staticClass:"w-128",attrs:{title:"Quelles sont les dates clés du site ?"}},[i("div",{staticClass:"w-64"},[i("InputBuiltAt",{model:{value:e.input.built_at,callback:function(t){e.$set(e.input,"built_at",t)},expression:"input.built_at"}}),i("InputDeclaredAt",{attrs:{disableBefore:e.input.built_at},model:{value:e.input.declared_at,callback:function(t){e.$set(e.input,"declared_at",t)},expression:"input.declared_at"}})],1),i("InputFieldType",{model:{value:e.input.field_type,callback:function(t){e.$set(e.input,"field_type",t)},expression:"input.field_type"}}),i("InputDetailedAddress",{model:{value:e.input.detailed_address,callback:function(t){e.$set(e.input,"detailed_address",t)},expression:"input.detailed_address"}})],1),i("FormParagraph",{staticClass:"w-128",attrs:{title:"Quel est le propriétaire ?",showMandatoryStar:!0}},[i("InputOwnerType",{ref:"ownerType",model:{value:e.input.owner_type,callback:function(t){e.$set(e.input,"owner_type",t)},expression:"input.owner_type"}}),e.ownerTypeIsUnknown?e._e():i("InputOwner",{model:{value:e.input.owner,callback:function(t){e.$set(e.input,"owner",t)},expression:"input.owner"}})],1)],1)},Oh=[],Ah=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("DatepickerV2",{attrs:{id:"built_at",label:"Date d'installation",rules:"required",showMandatoryStar:!0,"disabled-dates":{from:new Date},cypressName:"built_at"},model:{value:e.input,callback:function(t){e.input=t},expression:"input"}})},Eh=[],jh={props:{value:{type:Date,required:!1}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},Dh=jh,qh=Object(u["a"])(Dh,Ah,Eh,!1,null,null,null),Mh=qh.exports,Lh=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("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:e.input,callback:function(t){e.input=t},expression:"input"}})},Nh=[];Object(q["c"])("declaredAfterInstallation",{params:["target"],validate(e,{target:t}){return e>=t},message:"La date de signalement doit être ultérieure à la date d'installation"});var Fh={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)}}},zh=Fh,Bh=Object(u["a"])(zh,Lh,Nh,!1,null,null,null),Rh=Bh.exports,Vh=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)},Uh=[],Hh={props:{value:{type:Number,required:!1,default:void 0}},data(){const{field_types:e}=zo();return{values:e,checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},Gh=Hh,Wh=Object(u["a"])(Gh,Vh,Uh,!1,null,null,null),Jh=Wh.exports,Yh=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"}})},Qh=[],Zh={props:{value:{type:String,required:!1,default:""}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},Kh=Zh,Xh=Object(u["a"])(Kh,Yh,Qh,!1,null,null,null),ef=Xh.exports,tf=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)},af=[],sf={props:{value:{type:Number,required:!1,default:void 0}},data(){const{owner_types:e}=zo();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}}},nf=sf,of=Object(u["a"])(nf,tf,af,!1,null,null,null),rf=of.exports,lf=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"}})},cf=[],uf={props:{value:{type:String,required:!1,default:""}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},df=uf,pf=Object(u["a"])(df,lf,cf,!1,null,null,null),mf=pf.exports,hf={components:{InputBuiltAt:Mh,InputDeclaredAt:Rh,InputFieldType:Jh,InputDetailedAddress:ef,InputOwnerType:rf,InputOwner:mf},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)}}},ff=hf,vf=Object(u["a"])(ff,Ih,Oh,!1,null,null,null),gf=vf.exports,bf=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)},_f=[],yf=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)])},wf=[];Object(q["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(q["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 Cf={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)}}},xf=Cf,kf=Object(u["a"])(xf,yf,wf,!1,null,null,null),Sf=kf.exports,Pf=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)])},$f=[],Tf={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)}}},If=Tf,Of=Object(u["a"])(If,Pf,$f,!1,null,null,null),Af=Of.exports,Ef=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)},jf=[],Df={props:{value:{type:Array,required:!1,default:()=>[]}},data(){const{social_origins:e}=zo();return{values:e,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,Nf=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)},Ff=[],zf={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)}}},Bf=zf,Rf=Object(u["a"])(Bf,Nf,Ff,!1,null,null,null),Vf=Rf.exports,Uf=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)},Hf=[];Object(q["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)}}},Wf=Gf,Jf=Object(u["a"])(Wf,Uf,Hf,!1,null,null,null),Yf=Jf.exports,Qf=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"}})},Zf=[],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,ev=Object(u["a"])(Xf,Qf,Zf,!1,null,null,null),tv=ev.exports,iv={components:{InputPopulation:Sf,InputPopulationMinors:Af,InputSocialOrigins:Lf,InputCensusStatus:Vf,InputCensusConductedAt:Yf,InputCensusConductedBy:tv},props:{value:{type:Object,required:!0}},data(){return{input:this.value}},computed:{censusStatusIsUnknown(){const e=this.input.census_status;return"scheduled"!==e&&"done"!==e}}},av=iv,sv=Object(u["a"])(av,bf,_f,!1,null,null,null),nv=sv.exports,ov=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"}}),i("InputWaterComments",{model:{value:e.input.water_comments,callback:function(t){e.$set(e.input,"water_comments",t)},expression:"input.water_comments"}})],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("InputElectricityComments",{model:{value:e.input.electricity_comments,callback:function(t){e.$set(e.input,"electricity_comments",t)},expression:"input.electricity_comments"}})],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"}}),i("InputSanitaryComments",{model:{value:e.input.sanitary_comments,callback:function(t){e.$set(e.input,"sanitary_comments",t)},expression:"input.sanitary_comments"}})],1),i("FormParagraph",{attrs:{title:"L'évacuation des déchets est-elle organisée ?",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)],1)},rv=[],lv=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"}},[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)},cv=[],uv={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)}}},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("TextArea",{attrs:{id:"water_comments",label:"Modalités d'accès",info:"Exemples : Citerne de 100 litres remplie par les pompiers tous les jours, 3 robinets raccordés par la collectivité, borne incendie à 200 mètres...",cypressName:"water_comments"},model:{value:e.input,callback:function(t){e.input=t},expression:"input"}})},fv=[],vv={props:{value:{type:String,required:!1,default:""}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},gv=vv,bv=Object(u["a"])(gv,hv,fv,!1,null,null,null),_v=bv.exports,yv=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)},wv=[],Cv={props:{value:{type:Number,required:!1,default:void 0}},data(){const{electricity_types:e}=zo();return{values:e,checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},xv=Cv,kv=Object(u["a"])(xv,yv,wv,!1,null,null,null),Sv=kv.exports,Pv=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"},model:{value:e.input,callback:function(t){e.input=t},expression:"input"}})},$v=[],Tv={props:{value:{type:String,required:!1,default:""}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},Iv=Tv,Ov=Object(u["a"])(Iv,Pv,$v,!1,null,null,null),Av=Ov.exports,Ev=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"}},[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)},jv=[],Dv={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)}}},qv=Dv,Mv=Object(u["a"])(qv,Ev,jv,!1,null,null,null),Lv=Mv.exports,Nv=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 : 3 toilettes sèches, toilettes raccordées au réseau, un bloc sanitaire fourni par la ville...",cypressName:"sanitary_comments"},model:{value:e.input,callback:function(t){e.input=t},expression:"input"}})},Fv=[],zv={props:{value:{type:String,required:!1,default:""}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},Bv=zv,Rv=Object(u["a"])(Bv,Nv,Fv,!1,null,null,null),Vv=Rv.exports,Uv=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)},Hv=[],Gv={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)}}},Wv=Gv,Jv=Object(u["a"])(Wv,Uv,Hv,!1,null,null,null),Yv=Jv.exports,Qv={components:{InputAccessToWater:mv,InputWaterComments:_v,InputElectricityType:Sv,InputElectricityComments:Av,InputAccessToSanitary:Lv,InputSanitaryComments:Vv,InputTrashEvacuation:Yv},props:{value:{type:Object,required:!0}},data(){return{input:this.value}}},Zv=Qv,Kv=Object(u["a"])(Zv,ov,rv,!1,null,null,null),Xv=Kv.exports,eg=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)},tg=[],ig=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)},ag=[],sg={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)}}},ng=sg,og=Object(u["a"])(ng,ig,ag,!1,null,null,null),rg=og.exports,lg=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)},cg=[],ug={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)}}},dg=ug,pg=Object(u["a"])(dg,lg,cg,!1,null,null,null),mg=pg.exports,hg=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)},fg=[],vg={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)}}},gg=vg,bg=Object(u["a"])(gg,hg,fg,!1,null,null,null),_g=bg.exports,yg=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"}})},wg=[];Object(q["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 Cg={props:{value:{type:Date,required:!1}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},xg=Cg,kg=Object(u["a"])(xg,yg,wg,!1,null,null,null),Sg=kg.exports,Pg=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"}})},$g=[],Tg={props:{value:{type:String,required:!1,default:""}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},Ig=Tg,Og=Object(u["a"])(Ig,Pg,$g,!1,null,null,null),Ag=Og.exports,Eg=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)},jg=[],Dg={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,Ng=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)},Fg=[],zg={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)}}},Bg=zg,Rg=Object(u["a"])(Bg,Ng,Fg,!1,null,null,null),Vg=Rg.exports,Ug=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"}})},Hg=[];Object(q["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 Gg={props:{value:{type:Date,required:!1}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},Wg=Gg,Jg=Object(u["a"])(Wg,Ug,Hg,!1,null,null,null),Yg=Jg.exports,Qg=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"}})},Zg=[];Object(q["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(q["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 Kg={props:{value:{type:Date,required:!1}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},Xg=Kg,eb=Object(u["a"])(Xg,Qg,Zg,!1,null,null,null),tb=eb.exports,ib=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"}})},ab=[],sb={props:{value:{type:String,required:!1,default:""}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},nb=sb,ob=Object(u["a"])(nb,ib,ab,!1,null,null,null),rb=ob.exports,lb={components:{InputOwnerComplaint:rg,InputJusticeProcedure:mg,InputJusticeRendered:_g,InputJusticeRenderedAt:Sg,InputJusticeRenderedBy:Ag,InputJusticeChallenged:Lg,InputPoliceStatus:Vg,InputPoliceRequestedAt:Yg,InputPoliceGrantedAt:tb,InputBailiff:rb},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}}},cb=lb,ub=Object(u["a"])(cb,eg,tg,!1,null,null,null),db=ub.exports,pb=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)])},mb=[],hb=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)},fb=[],vb={props:{to:{type:String},activeSection:{type:Boolean}}},gb=vb,bb=Object(u["a"])(gb,hb,fb,!1,null,null,null),_b=bb.exports,yb={components:{LeftColumnNavLink:_b},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:.5});t.observe(document.querySelector("#judicial")),t.observe(document.querySelector("#living_conditions")),t.observe(document.querySelector("#people")),t.observe(document.querySelector("#characteristics"))}},wb=yb,Cb=(i("ea85"),Object(u["a"])(wb,pb,mb,!1,null,"baace2c2",null)),xb=Cb.exports,kb=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()},Sb=[],Pb={props:{errors:{type:Object,required:!1,default(){return{}}}}},$b=Pb,Tb=Object(u["a"])($b,kb,Sb,!1,null,null,null),Ib=Tb.exports,Ob={props:{mode:{type:String},data:{type:Object,default(){return{}}}},components:{PrivateContainer:gp,TownFormLeftColumn:xb,TownFormErrorLog:Ib,TownFormPanelInfo:sh,TownFormPanelLocation:Th,TownFormPanelCharacteristics:gf,TownFormPanelPeople:nv,TownFormPanelLivingConditions:Xv,TownFormPanelJudicial:db},data(){const{field_types:e,user:t}=zo();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)},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({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,access_to_water:this.town.living_conditions.access_to_water,water_comments:this.town.living_conditions.water_comments,electricity_type:this.town.living_conditions.electricity_type,electricity_comments:this.town.living_conditions.electricity_comments,access_to_sanitary:this.town.living_conditions.access_to_sanitary,sanitary_comments:this.town.living_conditions.sanitary_comments,trash_evacuation:this.town.living_conditions.trash_evacuation,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),Jc({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?ml(e):hl(this.data.id,e)}}},Ab=Ob,Eb=(i("04c8"),i("47eb"),Object(u["a"])(Ab,Zm,Km,!1,null,"48f19640",null)),jb=Eb.exports,Db={components:{TownForm:jb,PrivateLayout:xp}},qb=Db,Mb=Object(u["a"])(qb,Ym,Qm,!1,null,null,null),Lb=Mb.exports,Nb=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)},Fb=[],zb={components:{TownForm:jb,PrivateLayout:xp},data(){return{loading:!1,error:null,town:null}},mounted(){this.fetchData()},methods:{fetchData(){!0!==this.loading&&(this.loading=!0,this.error=null,pl(this.$route.params.id).then(e=>{this.town=e,this.loading=!1}).catch(e=>{this.error=e.user_message,this.loading=!1}))}}},Bb=zb,Rb=Object(u["a"])(Bb,Nb,Fb,!1,null,null,null),Vb=Rb.exports,Ub=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"},[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()],1)],1)],1):e._e(),e.hasPermission("shantytown_comment.create")?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._e(),e.hasPermission("shantytown_comment.list")&&e.town.comments.regular.length?i("div",{class:["bg-orange200",!e.hasPermission("shantytown_comment.create")&&"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}}})],1)},Hb=[],Gb=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)])},Wb=[],Jb={props:{town:{type:Object}},data(){const{user:e}=zo();return{user:e}},methods:{hasLocalizedPermission(e){const t=Ro(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`)}}},Yb=Jb,Qb=Object(u["a"])(Yb,Gb,Wb,!1,null,null,null),Zb=Qb.exports,Kb=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(),e.hasPermission("shantytown_comment.list")||e.hasPermission("shantytown_comment.create")?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)]):e._e(),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)])},Xb=[],e_=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)},t_=[],i_={props:{to:{type:String},activeSection:{type:Boolean}}},a_=i_,s_=Object(u["a"])(a_,e_,t_,!1,null,null,null),n_=s_.exports,o_={components:{LeftColumnNavLink:n_},props:{town:{type:Object},hasJusticePermission:{type:Boolean}},data(){return{activeSection:"characteristics"}},methods:{hasPermission:Vo,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});this.hasJusticePermission&&t.observe(document.querySelector("#judicial")),t.observe(document.querySelector("#living_conditions")),t.observe(document.querySelector("#people")),t.observe(document.querySelector("#characteristics"))}},r_=o_,l_=(i("2839"),Object(u["a"])(r_,Kb,Xb,!1,null,"a83dcdd4",null)),c_=l_.exports,u_=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_details"}},[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}])})},d_=[],p_=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)])},m_=[],h_=(i("6fc5"),{}),f_=Object(u["a"])(h_,p_,m_,!1,null,"1d97ba82",null),v_=f_.exports,g_=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)},b_=[],__={},y_=Object(u["a"])(__,g_,b_,!1,null,null,null),w_=y_.exports,C_={props:{town:{type:Object}},components:{TownDetailsPanel:v_,TownDetailsPanelSection:w_,Map:Id},methods:{formatDate(...e){return window.App.formatDate.apply(window,e)},formatDateSince:zm,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),Jc({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}}}},x_=C_,k_=Object(u["a"])(x_,u_,d_,!1,null,null,null),S_=k_.exports,P_=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(" inconnue ")])],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}])})},$_=[],T_={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:v_,TownDetailsPanelSection:w_},methods:{formatDate(...e){return window.App.formatDate.apply(window,e)},socialOrigin(e){return 1===e.id?{id:1,label:e.label,img:qp.a}:2===e.id?{id:2,label:e.label,img:jp.a}:3===e.id?{id:3,label:e.label,img:Lp.a}:e},intToStr(e,t="NC"){return void 0===e||null===e?t:e}},computed:{populationHistory(){const e={date:this.formatDate(this.town.updatedAt,"d B"),year:this.formatDate(this.town.updatedAt,"y"),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,"-")};let t={...e};const i=this.town.changelog.reduce((e,i,a)=>{const s=i.diff.filter(({fieldKey:e})=>e.startsWith("population"));if(0===s.length)return e;let n;return n=a{t[e]="non renseigné"===i?"-":i}),[...e,{...t}]},[]);return[e,...i]},socialDiagnostic(){return"done"===this.town.censusStatus?`Réalisé le ${this.formatDate(this.town.censusConductedAt,"d/m/y")} par ${this.town.censusConductedBy}`:"scheduled"===this.town.censusStatus?`Prévu le ${this.formatDate(this.town.censusConductedAt,"d/m/y")} par ${this.town.censusConductedBy}`:"none"===this.town.censusStatus?"Non réalisé":"Non communiqué"},populationMinors0To3(){return this.intToStr(this.town.populationMinors0To3)},populationMinors3To6(){return this.intToStr(this.town.populationMinors3To6)},populationMinors6To12(){return this.intToStr(this.town.populationMinors6To12)},populationMinors12To16(){return this.intToStr(this.town.populationMinors12To16)},populationMinors16To18(){return this.intToStr(this.town.populationMinors16To18)},minorsInSchool(){return this.intToStr(this.town.minorsInSchool)}}},I_=T_,O_=Object(u["a"])(I_,P_,$_,!1,null,null,null),A_=O_.exports,E_=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("Conditions de vie et environnement")]},proxy:!0},{key:"body",fn:function(){return[i("div",{staticClass:"grid grid-cols-2"},[i("TownDetailsPanelLivingConditionsSection",{attrs:{title:"Accès à l’eau",value:e.town.accessToWater,cypressName:"access_to_water"}},[e.town.waterComments?i("span",{attrs:{"data-cy-data":"water_comments"}},[e._v(e._s(e.town.waterComments))]):e._e()]),i("TownDetailsPanelLivingConditionsSection",{attrs:{title:"Accès aux toilettes",value:e.town.accessToSanitary,cypressName:"access_to_sanitary"}},[e.town.sanitaryComments?i("span",{attrs:{"data-cy-data":"sanitary_comments"}},[e._v(e._s(e.town.sanitaryComments))]):e._e()]),i("TownDetailsPanelLivingConditionsSection",{attrs:{title:"Accès à l’électricité",value:e.town.electricityType.value,cypressName:"electricity_type"}},[e.town.electricityComments?i("span",{attrs:{"data-cy-data":"electricity_comments"}},[e._v(e._s(e.town.electricityComments))]):e._e()]),i("TownDetailsPanelLivingConditionsSection",{attrs:{title:"Évacuation des déchets",value:e.town.trashEvacuation,cypressName:"trash_evacuation"}})],1)]},proxy:!0}])})},j_=[],D_=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("TownDetailsPanelSection",[i("div",{staticClass:"flex items-center"},[i("Icon",{class:[e.colorClass,"mr-1","font-bold"],attrs:{icon:e.icon}}),i("div",[i("div",{staticClass:"flex items-center"},[i("div",{class:[e.colorClass,"font-bold","mr-1"]},[e._v(" "+e._s(e.title)+" : ")]),i("div",{attrs:{"data-cy-data":e.cypressName}},[e._v(e._s(e.text))])]),e._t("default")],2)],1)])},q_=[],M_={components:{TownDetailsPanelSection:w_},props:{title:{type:String},value:{validator:e=>"boolean"===typeof e||null===e},cypressName:{type:String}},computed:{colorClass(){return!0===this.value?"text-green":"text-red"},icon(){return{null:"question",false:"times",true:"check"}[this.value]},text(){return{null:"inconnu",false:"non",true:"oui"}[this.value]}}},L_=M_,N_=Object(u["a"])(L_,D_,q_,!1,null,null,null),F_=N_.exports,z_={props:{town:{type:Object}},components:{TownDetailsPanelLivingConditionsSection:F_,TownDetailsPanel:v_}},B_=z_,R_=Object(u["a"])(B_,E_,j_,!1,null,null,null),V_=R_.exports,U_=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}])})},H_=[],G_={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:v_,TownDetailsPanelSection:w_},computed:{justiceRendered(){return null===this.town.justiceRendered?"NC":this.town.justiceRendered?"rendue le "+this.formatDate(this.town.justiceRenderedAt,"d/m/y"):"non"},policeSiren(){return Fm.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"}}},W_=G_,J_=Object(u["a"])(W_,U_,H_,!1,null,null,null),Y_=J_.exports,Q_=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(" "),i("div",{staticClass:"flex items-center justify-between"},[i("Button",{attrs:{variant:"primaryText"},on:{click:e.cancelComment}},[e._v("Annuler")]),i("Button",{attrs:{variant:"primary"},on:{click:e.addComment}},[e._v("Valider")])],1)],1)])},Z_=[],K_={data(){return{commentError:null,commentErrors:{},newComment:""}},props:{nbComments:{type:Number},user:{type:Object}},methods:{cancelComment(){this.newComment=""},addComment(){Vo("shantytown_comment.create")&&(this.commentError=null,this.commentErrors={},gl(this.$route.params.id,{description:this.newComment}).then(e=>{this.$emit("submit",e.comments),this.newComment=""}).catch(e=>{this.commentError=e.user_message,this.commentErrors=e.fields||{}}))}}},X_=K_,ey=(i("e04d"),Object(u["a"])(X_,Q_,Z_,!1,null,"fe9e5faa",null)),ty=ey.exports,iy=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)},ay=[],sy=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"))+" ")]),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))])])},ny=[],oy={props:{comment:{type:Object}},methods:{formatDate(...e){return window.App.formatDate.apply(window,e)}}},ry=oy,ly=Object(u["a"])(ry,sy,ny,!1,null,null,null),cy=ly.exports,uy={components:{CommentBlock:cy},props:{comments:{type:Array}},computed:{sortedComments(){const e=[...this.comments];return e.sort((e,t)=>t.createdAt-e.createdAt)}}},dy=uy,py=Object(u["a"])(dy,iy,ay,!1,null,null,null),my=py.exports,hy=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)])])},fy=[],vy={props:{town:{type:Object},isOpen:{type:Boolean},closePanel:{type:Function}},methods:{formatDate(...e){return window.App.formatDate.apply(window,e)}}},gy=vy,by=(i("fd66"),Object(u["a"])(gy,hy,fy,!1,null,null,null)),_y=by.exports,yy=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)])])},wy=[],Cy={components:{CommentBlock:cy,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,bl(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]],[])}))}}},xy=Cy,ky=Object(u["a"])(xy,yy,wy,!1,null,null,null),Sy=ky.exports,Py=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}])})},$y=[],Ty={components:{CheckableGroup:zi,InlineTextInput:Le},props:{isOpen:{type:Boolean},town:{type:Object}},methods:{closeModal(){this.$emit("closeModal")},async submitClose(){this.loading=!0,this.error=null;try{await fl(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)}Jc({group:"notifications",type:"success",title:"Site correctement fermé",text:"Le site a bien été marqué comme fermé"});const e=await pl(this.$route.params.id);this.$emit("updateTown",e),this.loading=!1,this.closeModal()},closePopin(){this.$emit("cancelCloseTown")}},data(){const{closing_solutions:e}=zo();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))})}}},Iy=Ty,Oy=(i("cee3"),Object(u["a"])(Iy,Py,$y,!1,null,null,null)),Ay=Oy.exports,Ey={components:{TownDetailsCloseModal:Ay,TownDetailsHistorySidePanel:_y,TownDetailsNewComment:ty,TownDetailsComments:my,PrivateLayout:xp,PrivateContainer:gp,TownDetailsHeader:Zb,TownDetailsLeftColumn:c_,TownDetailsPanelCharacteristics:S_,TownDetailsPanelPeople:A_,TownDetailsPanelLivingConditions:V_,TownDetailsPanelJudicial:Y_,TownDetailsCovidCommentsSidePanel:Sy},data(){const e=Ro("shantytown.list"),{field_types:t,user:i}=zo();return{historyOpen:!1,closeOpen:!1,covidOpen:!1,error:null,loading:!1,town:null,fieldTypes:t,user:i,hasJusticePermission:!0===e.data_justice}},created(){this.fetchData()},methods:{hasPermission:Vo,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.")&&vl(this.$route.params.id).then(()=>{Jc({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)})},fetchData(){!0!==this.loading&&(this.loading=!0,this.error=null,pl(this.$route.params.id).then(e=>{this.loading=!1,this.town=Bm(e,this.fieldTypes)}).catch(e=>{this.error=e&&e.user_message||"Une erreur inconnue est survenue",this.loading=!1}))}}},jy=Ey,Dy=(i("b756"),Object(u["a"])(jy,Ub,Hb,!1,null,"4a04efe8",null)),qy=Dy.exports,My=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)])},Ly=[],Ny={components:{NavBar:yr,Form:Xc},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:er}]};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 Xo().then(e=>{this.formData.first_name=e.first_name,this.formData.last_name=e.last_name,this.formData.password=""})},onComplete(){this.preload()}}},Fy=Ny,zy=Fy,By=(i("9985"),Object(u["a"])(zy,My,Ly,!1,null,"dd1c1884",null)),Ry=By.exports,Vy=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)])},Uy=[],Hy=i("f617"),Gy=(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)])}),Wy=[],Jy={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")}}},Yy=Jy,Qy=Yy,Zy=(i("aaf3"),Object(u["a"])(Qy,Gy,Wy,!1,null,"70f3cb96",null)),Ky=Zy.exports,Xy={components:{NavBar:yr,Table:Hy["a"],Modal:Ky},data(){const{token_expires_in:e}=zo();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,tr().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);ko(t.href)}}},ew=Xy,tw=ew,iw=(i("5e31"),Object(u["a"])(tw,Vy,Uy,!1,null,null,null)),aw=iw.exports,sw=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)])},nw=[],ow=(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=[],mu(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([uu(),du("public_establishment"),pu("administration"),pu("association"),Br()]).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 rw=ow({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éé"}},Ko);var lw={components:{NavBar:yr,Form:Xc},data(){const e=rw.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(rw.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(rw.methods,{retryLoading(){this.load()},onComplete(e){if(this.isPopup)return window.opener.postMessage(e,"*"),void window.close();this.$router.push("/nouvel-utilisateur/"+e.id)}})},cw=lw,uw=cw,dw=(i("3415"),Object(u["a"])(uw,sw,nw,!1,null,"17835908",null)),pw=dw.exports,mw=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)])},hw=[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...")])])])}],fw={components:{NavBar:yr,Form:Xc},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=>rr(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,nr(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("/")}}},vw=fw,gw=vw,bw=(i("771a"),Object(u["a"])(gw,mw,hw,!1,null,"043c7c3f",null)),_w=bw.exports,yw=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)])},ww=[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")])}],Cw=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)])},xw=[];const kw={view:"eye",edit:"pencil-alt",deny:"times"};var Sw={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:kw[e.type]}}}},Pw=Sw,$w=Pw,Tw=(i("18f7"),Object(u["a"])($w,Cw,xw,!1,null,null,null)),Iw=Tw.exports;let Ow;var Aw={components:{NavBar:yr,Table:Hy["a"],UserPermissions:Iw},data(){let e;return({permissions_description:Ow,activation_token_expires_in:e}=zo()),{user:null,error:null,state:null,loading:!1,validation:{state:null,error:null},checkedOptions:{},tokenExpiresIn:e/3600/24}},computed:{permission(){return this.user?Ow[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,ir(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,ar(this.$route.params.id,{options:this.checkedOptions}).then(()=>{this.validation.state=null,Jc({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,sr(this.$route.params.id).then(()=>{this.validation.state=null,Jc({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,ur(this.$route.params.id).then(()=>{this.validation.state=null,Jc({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}))}}},Ew=Aw,jw=Ew,Dw=(i("2207"),Object(u["a"])(jw,yw,ww,!1,null,null,null)),qw=Dw.exports,Mw=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)])},Lw=[],Nw={components:{NavBar:yr,Form:Xc},data(){const{user:{id:e,email:t}}=zo();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=>cr(e,t)}]}}},methods:{onComplete(){No().then(()=>{this.$router.push({path:"/"})}).catch(()=>{window.location.reload()})}}},Fw=Nw,zw=Fw,Bw=(i("e517"),Object(u["a"])(zw,Mw,Lw,!1,null,null,null)),Rw=Bw.exports,Vw=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)])},Uw=[],Hw={components:{NavBar:yr,Form:Xc},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})=>dr(e)}]}}},methods:{onComplete(){this.$router.push({path:"/"})}}},Gw=Hw,Ww=Gw,Jw=(i("0ff0"),Object(u["a"])(Ww,Vw,Uw,!1,null,null,null)),Yw=Jw.exports,Qw=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)])},Zw=[],Kw={components:{NavBar:yr,Form:Xc},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=>lr(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,or(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("/")}}},Xw=Kw,eC=Xw,tC=(i("f12c"),Object(u["a"])(eC,Qw,Zw,!1,null,null,null)),iC=tC.exports,aC=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)])},sC=[];function nC(){return Oo("/plans")}async function oC(e){return Oo("/plans/"+e)}async function rC(e){return Ao("/plans",e)}async function lC(e,t){return Ao("/plans/"+e,t)}async function cC(e,t){return Ao(`/plans/${e}/states`,t)}async function uC(e,t){return jo("/plans/"+e,{operation:"close",data:t})}var dC={components:{NavBar:yr,Table:Dl,CollectivityInput:Bl},data(){const{user:e}=zo(),t=Ro("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,nC().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);ko(t.href)},hasPermission(...e){return Vo(...e)}}},pC=dC,mC=pC,hC=(i("1a64"),Object(u["a"])(mC,aC,sC,!1,null,"ca8ce470",null)),fC=hC.exports,vC=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)},gC=[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 bC(e){return Oo(`/regions/${e}/departements`)}function _C(e){return Oo(`/epci/${e}/departements`)}var yC={components:{NavBar:yr,Form:Xc},data(){const{user:e,topics:t}=zo(),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=fu("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=pu("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:rC}]},Vo("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&&hu(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,Jc({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}=zo();return Promise.resolve(e)}case"region":return bC(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}]){Jc({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)}}},wC=yC,CC=wC,xC=(i("83c6"),Object(u["a"])(CC,vC,gC,!1,null,null,null)),kC=xC.exports,SC=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)])},PC=[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)")])])}],$C={components:{NavBar:yr,SlideNote:Gc,Map:Id,PlanFunding:oc,Input:Fc},data(){const{etp_types:e}=zo();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:Vo,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,oC(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",uC(this.$route.params.id,this.closingData).then(()=>{this.closingStatus="success",Jc({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]],[])}))}}},TC=$C,IC=TC,OC=(i("e438"),Object(u["a"])(IC,SC,PC,!1,null,"23a8c2ae",null)),AC=OC.exports,EC=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)},jC=[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...")])])}],DC={components:{NavBar:yr,Form:Xc},data(){const{user:e,topics:t}=zo(),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=fu("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=>lC(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&&hu(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,oC(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(){Jc({group:"notifications",type:"success",title:"Dispositif modifié",text:"Le dispositif a bien été mis à jour"}),this.$router.push("/dispositif/"+this.$route.params.id)}}},qC=DC,MC=qC,LC=(i("b82e"),Object(u["a"])(MC,EC,jC,!1,null,null,null)),NC=LC.exports,FC=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)},zC=[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...")])])}],BC={components:{NavBar:yr,Form:Xc},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,cC(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:Vo,load(){-1===["loading","loaded"].indexOf(this.status)&&(this.status="loading",this.error=null,oC(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(){Jc({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)}}},RC=BC,VC=RC,UC=(i("0045"),Object(u["a"])(VC,FC,zC,!1,null,"8f52fc1c",null)),HC=UC.exports,GC=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)])},WC=[];function JC(){return Oo("/stats")}var YC={components:{NavBar:yr},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,JC().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)}}},QC=YC,ZC=QC,KC=(i("12a5"),Object(u["a"])(ZC,GC,WC,!1,null,null,null)),XC=KC.exports,ex=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)])},tx=[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")])])])}],ix={components:{NavBar:yr}},ax=ix,sx=ax,nx=(i("30ce"),Object(u["a"])(sx,ex,tx,!1,null,"ed8e96dc",null)),ox=nx.exports,rx=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)},lx=[],cx=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)},ux=[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 dx=1500;var px={components:{NavBar:yr},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},dx),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}))}}},mx=px,hx=mx,fx=Object(u["a"])(hx,cx,ux,!1,null,null,null),vx=fx.exports,gx=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)])])])])},bx=[],_x={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))}}},yx=_x,wx=yx,Cx=(i("f090"),Object(u["a"])(wx,gx,bx,!1,null,"eb1c327e",null)),xx=Cx.exports;function kx(e){return Ao("/statistics/directory-views",{organization:e})}var Sx={components:{Skeleton:vx,Table:Dl,Organization:xx,OrganizationInput:_c},data(){return{organizations:[],columns:[{id:"organization",label:"Structure"},{id:"location",label:"Territoire"},{id:"role",label:"Rôle"},{id:"contacts",label:"",icon:"arrow-right"}],local:zo().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&&kx(this.focusedOrganization.id)}},methods:{loader:pr,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")}}},Px=Sx,$x=Px,Tx=(i("e744"),Object(u["a"])($x,rx,lx,!1,null,null,null)),Ix=Tx.exports,Ox=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)])},Ax=[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 Ex(e={}){let t="";return Object.keys(e).length>0&&(t="filters=",t+=Object.keys(e).map(t=>`${t}:${encodeURIComponent(e[t])}`).join(",")),Oo("/user-activities?"+t)}var jx=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"}})])])])])])])])},Dx=[],qx={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,_l(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}))}}},Mx=qx,Lx=Mx,Nx=(i("6501"),Object(u["a"])(Lx,jx,Dx,!1,null,"38509d0a",null)),Fx=Nx.exports,zx={components:{NavBar:yr,Table:Dl,CommentDeletion:Fx,SlideNote:Gc},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,Ex().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,Jc({group:"notifications",type:"success",title:"Commentaire supprimé",text:"L'auteur du commentaire en a été notifié par email"})},show(e){this.filter=e}}},Bx=zx,Rx=Bx,Vx=(i("3a02"),Object(u["a"])(Rx,Ox,Ax,!1,null,null,null)),Ux=Vx.exports,Hx=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)},Gx=[],Wx=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))])])},Jx=[],Yx={props:{title:{type:[String,Number],required:!0},subtitle:{type:String,required:!0},info:{type:String,required:!1},icon:{type:String,required:!1}}},Qx=Yx,Zx=Object(u["a"])(Qx,Wx,Jx,!1,null,null,null),Kx=Zx.exports,Xx=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)},ek=[],tk={props:{title:{required:!0,type:String}}},ik=tk,ak=Object(u["a"])(ik,Xx,ek,!1,null,null,null),sk=ak.exports,nk={components:{PublicLayout:Os,PublicContainer:es,StatsSection:sk,StatsBlock:Kx},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,JC().then(({statistics:e})=>{this.stats=e,this.state="loaded"}).catch(({user_message:e})=>{this.error=e,this.state="error"}))}}},ok=nk,rk=Object(u["a"])(ok,Hx,Gx,!1,null,null,null),lk=rk.exports,ck=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",[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)])},uk=[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 dk(e){return Ao("/high-covid-comments",e)}var pk={components:{NavBar:yr,Table:Dl,SlideNote:Gc},data(){const{user:e}=zo();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"!==Ro("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=bC(this.user.organization.location.region.code);break;case"epci":e=_C(this.user.organization.location.epci.code);break;case"departement":case"city":e=Promise.resolve({departements:[this.user.organization.location.departement]})}Promise.all([Ex({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,dk(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}}))}}},mk=pk,hk=mk,fk=(i("a897"),Object(u["a"])(hk,ck,uk,!1,null,null,null)),vk=fk.exports,gk=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{No().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"}))}}},yk=_k,wk=(i("f867"),Object(u["a"])(yk,gk,bk,!1,null,null,null)),Ck=wk.exports,xk=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"},[e._m(0),i("p",[i("strong",[e._v("Avant d'accéder à la plateforme, merci de lire et de valider la "),i("a",{attrs:{href:e.charte.fichier}},[e._v("charte d'engagement")])]),e._v(". Le respect des règles de confidentialité des informations est primordial vis à vis des habitants et de l'action publique.")]),e._m(1),e._m(2),i("p",[e._v("Le non respect de ces règles peut entraîner des avertissements ou la suppression de votre accès à la plateforme numérique.")]),i("p",[i("label",{attrs:{for:"charte"}},[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data,expression:"data"}],staticClass:"input input--checkbox",attrs:{type:"checkbox",id:"charte",value:"1",disabled:"pending"===e.form.status},domProps:{checked:Array.isArray(e.data)?e._i(e.data,"1")>-1:e.data},on:{change:function(t){var i=e.data,a=t.target,s=!!a.checked;if(Array.isArray(i)){var n="1",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}}}),e._v(" Je m’engage à respecter les règles et obligations de la "),i("a",{attrs:{href:e.charte.fichier}},[e._v("charte d’engagement")]),e._v(" auprès des services de l’État, dans le cadre de l’accès à la plateforme Résorption bidonvilles. ")])]),"error"===e.form.status?i("p",{staticClass:"error"},[i("span",{staticClass:"error"},[e._v("Une erreur est survenue :")]),i("br"),i("span",{staticClass:"error"},[e._v(e._s(e.form.error))])]):e._e(),i("p",[i("button",{staticClass:"button",attrs:{disabled:"pending"===e.form.status||!0!==e.data},on:{click:e.submit}},["pending"!==e.form.status?i("span",[e._v("Accéder à la plateforme")]):i("img",{attrs:{src:"/img/spinner_light.svg",width:"20"}})])])])])],1)])},kk=[function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("header",[i("h1",[e._v("Signature de la charte d'engagement")])])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("p",[i("strong",[e._v("Selon la charte d'engagement, l'utilisateur s'engage à :")]),i("ul",[i("li",[e._v("utiliser des paramètres de connexion (identifiants et mots de passe) personnels et confidentiels.")]),i("li",[e._v("exploiter les informations présentes sur la plateforme exclusivement à des fins professionnelles, pour les besoins propres et internes de son organisation.")])])])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("p",[i("strong",[e._v("Ainsi, l'utilisateur s'interdit de :")]),i("ul",[i("li",[e._v("transmettre les identifiants et mots de passe à un tiers.")]),i("li",[e._v("communiquer les informations présentes sur la plateforme sous aucune forme (orale, écrite, copie) à un tiers.")])])])}],Sk={components:{NavBar:yr},data(){const{user:{id:e},version_charte_engagement:t}=zo();return{user:e,charte:t,data:!1,form:{status:null,error:null}}},methods:{submit(){"pending"!==this.form.status&&(this.form.status="pending",this.form.error=null,hr(this.user,this.charte.version).then(()=>{Bo("user.charte_engagement_a_jour",!0),this.$router.push("/")}).catch(({user_message:e})=>{this.form.status="error",this.form.error=e}))}}},Pk=Sk,$k=Pk,Tk=(i("e451"),Object(u["a"])($k,xk,kk,!1,null,"62aa3c67",null)),Ik=Tk.exports;let Ok=null;function Ak(e,t,i,a){for(let s=0;sVo(e))}function jk(){const{user:{position:e}}=zo();return""!==e}function Dk(){const{changelog:e}=zo();return null===e}const qk={anonymous:Ak.bind(void 0,[{checker:()=>!Yo(),target:"/",saveEntryPoint:!1}]),loggedIn:Ak.bind(void 0,[{checker:Yo,target:"/connexion"}]),loaded:Ak.bind(void 0,[{checker:Yo,target:"/connexion"},{checker:Lo,target:"/launcher"},{checker:Ek,target:"/",saveEntrypoint:!1}]),loadedAndUpgraded:Ak.bind(void 0,[{checker:Yo,target:"/connexion"},{checker:Lo,target:"/launcher"},{checker:Ek,target:"/",saveEntrypoint:!1},{checker:Ho,target:"/signature-charte-engagement"},{checker:jk,target:"/mise-a-niveau"}]),loadedAndUpToDate:Ak.bind(void 0,[{checker:Yo,target:"/connexion"},{checker:Lo,target:"/launcher"},{checker:Ek,target:"/",saveEntrypoint:!1},{checker:Ho,target:"/signature-charte-engagement"},{checker:jk,target:"/mise-a-niveau"},{checker:Dk,target:"/nouvelle-version"}])};function Mk(){return!0!==Yo()?Qo()?"/connexion":"/landing":!0!==Lo()?"/launcher":"/cartographie"}const Lk=new n["a"]({scrollBehavior:(e,t,i)=>e.hash?{selector:e.hash}:i||{x:0,y:0},routes:[{path:"/",redirect:Mk,meta:{analyticsIgnore:!0}},{path:"/landing",component:bo,beforeEnter:qk.anonymous},{path:"/statistiques-publiques",component:lk,beforeEnter:qk.anonymous},{path:"/connexion",component:su,beforeEnter:qk.anonymous},{path:"/contact",component:Wu,beforeEnter:qk.anonymous},{path:"/launcher",component:up,beforeEnter:qk.loggedIn},{path:"/nouvelle-version",component:Ck,beforeEnter:qk.loadedAndUpgraded},{path:"/deconnexion",beforeEnter:(e,t,i)=>{Jo(a["default"].prototype.$piwik),i("/")},meta:{analyticsIgnore:!0}},{meta:{group:"townList"},path:"/cartographie",component:ap,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"townList"},path:"/liste-des-sites",component:Jm,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"townList"},path:"/liste-des-sites",component:Jm,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"townCreation",permissions:["shantytown.create"]},path:"/nouveau-site",component:Lb,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"townList"},path:"/site/:id",component:qy,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"townList"},path:"/site/:id/mise-a-jour",component:Vb,beforeEnter:qk.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}}=zo();window.open(a,"_blank"),i(!1)}},{path:"/mentions-legales",component:ox},{meta:{group:"account"},path:"/mon-compte",component:Ry,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"users",permissions:["user.list"]},path:"/liste-des-utilisateurs",component:aw,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"userCreation",permissions:["user.create"]},path:"/nouvel-utilisateur",component:pw,beforeEnter:qk.loadedAndUpToDate},{path:"/signature-charte-engagement",component:Ik,beforeEnter:Ak.bind(void 0,[{checker:Yo,target:"/connexion"},{checker:Lo,target:"/launcher"},{checker:Ek,target:"/",saveEntrypoint:!1},{checker(){return!Ho()},target:"/"}])},{meta:{group:"users",permissions:["user.activate"]},path:"/nouvel-utilisateur/:id",component:qw,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"users"},path:"/mise-a-niveau",component:Rw,beforeEnter:qk.loaded},{meta:{group:"users"},path:"/nouveau-mot-de-passe",component:Yw,beforeEnter:qk.anonymous},{meta:{group:"users"},path:"/renouveler-mot-de-passe/:token",component:iC,beforeEnter:qk.anonymous},{meta:{group:"account"},path:"/activer-mon-compte/:token",component:_w,beforeEnter:qk.anonymous},{meta:{group:"plans",permissions:["plan.list"]},path:"/liste-des-dispositifs",component:fC,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"plans",permissions:["plan.create"]},path:"/nouveau-dispositif",component:kC,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"plans",permissions:["plan.update"]},path:"/modifier-dispositif/:id",component:NC,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"plans",permissions:["plan.read"]},path:"/dispositif/:id",component:AC,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"plans",permissions:["plan.updateMarks"]},path:"/dispositif/:id/indicateurs",component:HC,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"admin",permissions:["stats.read"]},path:"/statistiques",component:XC,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"admin",permissions:["shantytown_comment.moderate"]},path:"/historique-des-activites",component:Ux,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"covid"},path:"/covid-19",component:vk,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"directory"},path:"/annuaire/:id?",component:Ix,beforeEnter:qk.loadedAndUpToDate}]});function Nk(){if(null===Ok)return"/";const e=Ok;return Ok=null,e}const Fk=[{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",Fk[i.getMonth()].long).replace("B",Fk[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(Oa,{host:"https://stats.data.gouv.fr",siteId:86,trackerFileName:"piwik",router:Lk,enableLinkTracking:!0,requireConsent:!1,trackInitialView:!0,debug:!0}),Pa(a["default"]);const zk=new s["a"]({locale:"fr",messages:j});a["default"].createElement=e=>new a["default"](e),a["default"].createElement({el:"#app",router:Lk,store:Vm,i18n:zk,render:e=>e(m)})},"7c9e":function(e,t,i){},"7d21":function(e,t,i){},"7e15":function(e,t,i){},"7fa8":function(e,t,i){},8072:function(e,t,i){},8251: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){},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"},9355:function(e,t,i){},"93aa":function(e,t,i){"use strict";var a=i("a67f"),s=i.n(a);s.a},"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"},"9b19":function(e,t,i){"use strict";var a=i("3c8d"),s=i.n(a);s.a},"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ă"}')},"9f1c":function(e,t,i){},"9f85":function(e,t,i){},"9fbe":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"},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){},b371:function(e,t,i){},b3ad:function(e,t,i){},b756:function(e,t,i){"use strict";var a=i("9f85"),s=i.n(a);s.a},b82e:function(e,t,i){"use strict";var a=i("e67e"),s=i.n(a);s.a},b9d6:function(e,t,i){},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){},c35a4:function(e,t,i){"use strict";var a=i("2935"),s=i.n(a);s.a},c368:function(e,t,i){},c4e0:function(e,t,i){},c68f: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},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},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},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){},e04d:function(e,t,i){"use strict";var a=i("7e15"),s=i.n(a);s.a},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},e451:function(e,t,i){"use strict";var a=i("b9d6"),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){},ea85:function(e,t,i){"use strict";var a=i("c4e0"),s=i.n(a);s.a},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){},fa8a:function(e,t,i){},faac:function(e,t,i){"use strict";var a=i("9fbe"),s=i.n(a);s.a},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.928b6db1.js.map \ No newline at end of file +(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",{staticClass:"mb-6 relative"},[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}}},me=pe,he=(i("bc14"),Object(u["a"])(me,ue,de,!1,null,null,null)),fe=he.exports,ve=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,ve,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=[],xe={props:{icon:{type:String},position:{type:String}},computed:{positionClasses(){return"after"===this.position?"right-0 pr-3 ":"left-0 pl-3 "}}},ke=xe,Se=Object(u["a"])(ke,we,Ce,!1,null,null,null),Pe=Se.exports;function $e(e,t){const{error:i,prefixIcon:a,suffixIcon:s}=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",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},width:{required:!1,type:String,default:void 0}},computed:{classes(){const e={error:this.error,prefixIcon:this.prefixIcon,suffixIcon:this.suffixIcon};return{state:[...$e("state",e)],default:$e("default",e)}[this.variant]}},components:{InputLabel:ce,InputWrapper:fe,InputError:ye,InputIcon:Pe}},Ie=Te,Oe=Object(u["a"])(Ie,te,ie,!1,null,null,null),Ae=Oe.exports,Ee=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},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),i("InputError",[e._v(e._s(a[0]))])]}}])})],1)},je=[],De={name:"InlineTextInput",mixins:[ae],props:{label:{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}},computed:{classes(){const e={error:this.error,prefixIcon:this.prefixIcon,suffixIcon:this.suffixIcon};return{state:[...$e("state",e)],default:$e("default",e),town:$e("town",e)}[this.variant]}},components:{InputError:ye,InputIcon:Pe}},qe=De,Me=Object(u["a"])(qe,Ee,je,!1,null,null,null),Le=Me.exports,Ne=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:[...$e("state",e)],default:$e("default",e)}[this.variant]}},components:{InputLabel:ce,InputWrapper:fe,InputError:ye,InputIcon:Pe}},Be=ze,Re=Object(u["a"])(Be,Ne,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]}}},Ye=Je,Qe=Object(u["a"])(Ye,Ge,We,!1,null,null,null),Ze=Qe.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:"radio"},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:"radio"},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)},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}},methods:{onChange(){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",...$e("state",e)],default:["appearance-none",...$e("default",e)]}[this.variant]}},components:{InputWrapper:fe,InputLabel:ce,InputError:ye,InputIcon:Pe}},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)},ft=[],vt={name:"SelectOption",props:{}},gt=vt,bt=Object(u["a"])(gt,ht,ft,!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}}},xt=Ct,kt=Object(u["a"])(xt,yt,wt,!1,null,null,null),St=kt.exports,Pt=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)},$t=[],Tt={props:{title:{type:String},info:{type:String}}},It=Tt,Ot=Object(u["a"])(It,Pt,$t,!1,null,null,null),At=Ot.exports,Et=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("span",{staticClass:"text-red text-md"},[e._v("*")])},jt=[],Dt={},qt=Object(u["a"])(Dt,Et,jt,!1,null,null,null),Mt=qt.exports,Lt=i("22df"),Nt=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,Nt,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,Yt=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)])},Qt=[],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,Yt,Qt,!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}}},fi=hi,vi=Object(u["a"])(fi,pi,mi,!1,null,null,null),gi=vi.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)),xi=Ci.exports,ki=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ésultats ")])],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=[],Pi={components:{InputLabel:ce,InputWrapper:fe,InputError:ye,InputIcon:Pe},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:[...$e("state",e)],default:$e("default",e)}[this.variant];return[...this.inputClasses,...t]}},data(){return{show:!0,focused:!1,value:this.defaultValue||{},searchInput:this.defaultValue?this.getResultValue(this.defaultValue):"",results:[]}},methods:{removeItem(){this.value="",this.searchInput="",this.$emit("submit",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.$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}}},$i=Pi,Ti=Object(u["a"])($i,ki,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=[],Ei={},ji=Object(u["a"])(Ei,Oi,Ai,!1,null,null,null),Di=ji.exports,qi=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,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)]),i("InputError",[e._v(e._s(a[0]))])],1)]}}],null,!0)})},Mi=[],Li={props:{label:{type:String},info:{type:String},error:{type:String},direction:{type:String,default:"vertical"},validationName:{type:String},rules:{type:String},id:{type:String},showMandatoryStar:{required:!1,type:Boolean,default:!1}},components:{InputError:ye,InputLabel:ce,InputWrapper:fe}},Ni=Li,Fi=(i("7a95"),i("8324"),Object(u["a"])(Ni,qi,Mi,!1,null,"e7203c44",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,Yi={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:fe,InputError:ye,InputInfo:Ji,InputIcon:Pe},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:[...$e("state",e)],default:$e("default",e),town:$e("town",e)}[this.variant]}},methods:{clear(){this.$refs.datepicker.clearDate()}}},Qi=Yi,Zi=Object(u["a"])(Qi,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"},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"},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),fa=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()},va=[],ga={data(){return{isVisible:!0}},methods:{hide(){this.isVisible=!1}}},ba=ga,_a=(i("8974"),Object(u["a"])(ba,fa,va,!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)}}},xa=Ca,ka=Object(u["a"])(xa,da,pa,!1,null,null,null),Sa=ka.exports,Pa=function(e){e.component("Button",ee),e.component("TextInput",Ae),e.component("InlineTextInput",Le),e.component("TextArea",Ve),e.component("Icon",Q),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",Mt),e.component("Dropdown",ei),e.component("Modal",di),e.component("SidePanel",xi),e.component("CheckableGroup",zi),e.component("InputGroup",At),e.component("FormParagraph",Lt["default"]),e.component("Callout",gi),e.component("Spinner",Di),e.component("AutocompleteV2",Ii),e.component("DatepickerV2",Ki),e.component("Tag",sa),e.component("Pagination",ua),e.component("MapV2",Sa),e.use(R.a),e.component("NotificationsGroup",ni),e.component("ValidationProvider",q["b"]),e.component("ValidationObserver",q["a"]),e.component("AutocompleteVue",D["a"]),Object(q["d"])({en:N,fr:L,bg:z,ro:F}),Object.keys(M).forEach(e=>{Object(q["c"])(e,{...M[e]})}),Object(q["d"])("fr")};const $a={debug:!1,enableLinkTracking:!0,requireConsent:!1,trackInitialView:!0,trackerFileName:"piwik"};function Ta(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 Ia(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 Oa(e,t={}){const i={...$a,...t},{host:a,trackerFileName:s}=i,n=`${a}/${s}.js`;Ta(n).then(()=>Ia(e,i))}var Aa=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)},Ea=[],ja=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)},Da=[],qa=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)},Ma=[],La=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)},Na=[],Fa=(i("4316"),{}),za=Object(u["a"])(Fa,La,Na,!1,null,"07ee7c4c",null),Ba=za.exports,Ra=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)},Va=[],Ua=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"}})])])},Ha=[],Ga={props:{onClick:{type:Function,required:!0}}},Wa=Ga,Ja=Object(u["a"])(Wa,Ua,Ha,!1,null,null,null),Ya=Ja.exports,Qa=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)},Za=[],Ka={},Xa=Object(u["a"])(Ka,Qa,Za,!1,null,null,null),es=Xa.exports,ts={props:{menuDisplayed:{type:Boolean,required:!0},toggleMenu:{type:Function,required:!0}},components:{NavBarLogo:Ba,Button:ee,NavBarMobileButton:Ya,PublicContainer:es}},is=ts,as=Object(u["a"])(is,Ra,Va,!1,null,null,null),ss=as.exports,ns=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)]}}])})},os=[],rs={methods:{pickLang(e){this.$i18n.locale=e,Object(q["d"])(e)}}},ls=rs,cs=Object(u["a"])(ls,ns,os,!1,null,null,null),us=cs.exports,ds=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)},ps=[],ms={props:{closeMenu:{required:!0,type:Function},displayLanguagePicker:{type:Boolean}},components:{LanguagePicker:us,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()}}},hs=ms,fs=Object(u["a"])(hs,ds,ps,!1,null,null,null),vs=fs.exports,gs={props:{stickyHeader:{type:Boolean},displayLanguagePicker:{type:Boolean,default:!1}},components:{NavBarLogo:Ba,NavBarSticky:ss,Button:ee,NavBarMobileMenu:vs,NavBarMobileButton:Ya,PublicContainer:es,LanguagePicker:us},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)}},bs=gs,_s=Object(u["a"])(bs,qa,Ma,!1,null,null,null),ys=_s.exports,ws=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)},Cs=[],xs={components:{PublicContainer:es}},ks=xs,Ss=Object(u["a"])(ks,ws,Cs,!1,null,null,null),Ps=Ss.exports,$s={props:{stickyHeader:{type:Boolean,default:!0},displayLanguagePicker:{type:Boolean,default:!1}},components:{NavBar:ys,PublicFooter:Ps}},Ts=$s,Is=Object(u["a"])(Ts,ja,Da,!1,null,null,null),Os=Is.exports,As=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)},Es=[],js=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)},Ds=[],qs={data(){return{email:""}},methods:{onSubmit(){this.$router.push("/contact"+(this.email?"?email="+encodeURIComponent(this.email):""))}}},Ms=qs,Ls=Object(u["a"])(Ms,js,Ds,!1,null,null,null),Ns=Ls.exports,Fs={components:{LandingPageContactForm:Ns}},zs=Fs,Bs=Object(u["a"])(zs,As,Es,!1,null,null,null),Rs=Bs.exports,Vs=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")}}),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)])},Us=[],Hs=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)},Gs=[],Ws={name:"LandingPageFeatureBlock",props:{icon:{type:String,required:!0}}},Js=Ws,Ys=Object(u["a"])(Js,Hs,Gs,!1,null,null,null),Qs=Ys.exports,Zs=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)},Ks=[],Xs={props:{label:{type:String,required:!0}}},en=Xs,tn=Object(u["a"])(en,Zs,Ks,!1,null,null,null),an=tn.exports,sn=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)])},nn=[],on=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}})},rn=[],ln={props:{active:{type:Boolean},onClick:{type:Function}}},cn=ln,un=Object(u["a"])(cn,on,rn,!1,null,null,null),dn=un.exports,pn=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))])])},mn=[],hn={props:{text:{type:String},author:{type:String},active:{type:Boolean}}},fn=hn,vn=(i("1210"),Object(u["a"])(fn,pn,mn,!1,null,"a695c1c4",null)),gn=vn.exports,bn={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:dn,LandingPageUserFeedbackSection:gn}},_n=bn,yn=Object(u["a"])(_n,sn,nn,!1,null,null,null),wn=yn.exports,Cn=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"wrapper",style:e.paddingStyle},[e._t("default")],2)},xn=[],kn={props:{videoRatio:{type:String,default:"56.25%"}},computed:{paddingStyle(){return"padding-bottom: "+this.videoRatio}}},Sn=kn,Pn=(i("379b"),Object(u["a"])(Sn,Cn,xn,!1,null,null,null)),$n=Pn.exports,Tn={components:{LandingPageContextImage:an,LandingPageFeatureBlock:Qs,LandingPageUserFeedback:wn,LandingPageResponsiveEmbed:$n}},In=Tn,On=Object(u["a"])(In,Vs,Us,!1,null,null,null),An=On.exports,En=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"))+" ")])])])},jn=[],Dn=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))])])},qn=[],Mn={name:"LandingPageDataBlock",props:{line1:{type:String,required:!0},line2:{type:String,required:!0},line3:{type:String,required:!0}}},Ln=Mn,Nn=Object(u["a"])(Ln,Dn,qn,!1,null,null,null),Fn=Nn.exports,zn={components:{LandingPageDataBlock:Fn,LandingPageResponsiveEmbed:$n}},Bn=zn,Rn=Object(u["a"])(Bn,En,jn,!1,null,null,null),Vn=Rn.exports,Un=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)])])])},Hn=[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")}})])])}],Gn=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))])])])},Wn=[],Jn={name:"LandingPageBilanBlock",props:{icon:{required:!0},text:{type:String,required:!0},info:{type:String}}},Yn=Jn,Qn=Object(u["a"])(Yn,Gn,Wn,!1,null,null,null),Zn=Qn.exports,Kn={components:{LandingPageBilanBlock:Zn,Button:ee}},Xn=Kn,eo=Object(u["a"])(Xn,Un,Hn,!1,null,null,null),to=eo.exports,io=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)},ao=[],so={components:{Button:ee,PublicContainer:es},props:{cta:{type:String,required:!0}}},no=so,oo=Object(u["a"])(no,io,ao,!1,null,null,null),ro=oo.exports,lo=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)},co=[],uo={props:{credit:{type:String}}},po=uo,mo=Object(u["a"])(po,lo,co,!1,null,null,null),ho=mo.exports,fo={components:{CreditWrapper:ho,PublicContainer:es,PublicLayout:Os,LandingPageHero:Rs,LandingPageFirstSection:An,LandingPageSecondSection:Vn,LandingPageThirdSection:to,LandingPageBanner:ro,LandingPageContactForm:Ns}},vo=fo,go=Object(u["a"])(vo,Aa,Ea,!1,null,null,null),bo=go.exports,_o=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)])},yo=[],wo=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)])])},Co=[];let xo=null;function ko(e){null===xo||xo.closed?xo=window.open(e,"_blank"):(xo.location=e,xo.location.reload(),xo.focus())}var So=i("227c");const Po={MISSING_TOKEN:1,EXPIRED_OR_INVALID_TOKEN:2};function $o(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 Po.MISSING_TOKEN:case Po.EXPIRED_OR_INVALID_TOKEN:Jo(a["default"].prototype.$piwik),Lk.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 To(e){e()}function Io(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=Zo();null!==e&&s.setRequestHeader("x-access-token",e)}s.setRequestHeader("x-app-version",So),s.onload=$o.bind(s,n,o),s.onerror=To.bind(s,o),s.ontimeout=To.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 Oo(e,t,i){return Io("GET",e,t,i)}function Ao(e,t,i){return Io("POST",e,t,i)}function Eo(e,t,i){return Io("DELETE",e,t,i)}function jo(e,t,i){return Io("PATCH",e,t,i)}function Do(e,t,i){return Io("PUT",e,t,i)}function qo(e){return ko(`${e}${-1===e.indexOf("?")?"?":"&"}accessToken=${encodeURIComponent(Zo())}`)}let Mo=null;function Lo(){return null!==Mo}function No(){return Oo("/config").then(e=>(Wo(),Mo=e,e))}function Fo(){Mo=null}function zo(){return Mo}function Bo(e,t){if(null===Mo)return;const i=e.split(".");let a=Mo;while(i.length>1){if(void 0===a)return;a=a[i.shift()]}a[i[0]]=t}function Ro(e){if(null===Mo||null===Mo.user)return null;const[t,i]=e.split(".");if(!Object.prototype.hasOwnProperty.call(Mo.user.permissions,t)||!Object.prototype.hasOwnProperty.call(Mo.user.permissions[t],i))return null;const a=Mo.user.permissions[t][i];return!0!==a.allowed?null:a}function Vo(e){const[t,i,a]=e.split("."),s=Ro(`${t}.${i}`);return null!==s&&(void 0===a||!0===s[a])}function Uo(e){return Ao("/changelog",{version:e})}function Ho(){return null!==Mo&&Mo.user.charte_engagement_a_jour}function Go(e,t){return Ao("/signin",{email:e,password:t}).then(e=>(localStorage.setItem("token",e.token),e))}function Wo(){return Oo("/refreshToken").then(e=>{localStorage.setItem("token",e.token)})}function Jo(e){Fo(),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 Yo(){return null!==localStorage.getItem("token")}function Qo(){return!0===localStorage.getItem("logged_once")}function Zo(){return localStorage.getItem("token")}function Ko(e){return Ao("/users",e)}function Xo(){return Oo("/me")}function er(e){return Ao("/me",e)}function tr(){return Oo("/users")}function ir(e){return Oo("/users/"+e)}function ar(e,t){return Ao(`/users/${e}/sendActivationLink`,t)}function sr(e){return Ao(`/users/${e}/denyAccess`)}function nr(e){return Oo(`/activation-tokens/${encodeURIComponent(e)}/check`)}function or(e){return Oo(`/password-tokens/${encodeURIComponent(e)}/check`)}function rr(e,t){return Ao(`/users/${e}/activate`,t)}function lr(e,t){return Ao(`/users/${e}/newPassword`,t)}function cr(e,t){return Ao(`/users/${e}/upgrade`,t)}function ur(e){return Eo("/users/"+e)}function dr(e){return Ao("/users/new-password",{email:e})}function pr(){return Oo("/directory")}function mr(e){return Oo("/organizations/search?query="+encodeURIComponent(e))}function hr(e,t){return Do(`/users/${e}/charte_engagement`,{version_de_charte:t})}var fr={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"}]}]},vr={data(){return{isSidebarOpened:!1}},computed:{items(){return!0!==Yo()?fr.anonymous:!0!==Lo()||!0!==Ho()?fr.loading:this.filterItems(fr.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=>Vo(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)}},gr=vr,br=gr,_r=(i("17d9"),Object(u["a"])(br,wo,Co,!1,null,"b24b83de",null)),yr=_r.exports,wr=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)])])])},Cr=[],xr=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)])},kr=[],Sr=i("fa33"),Pr=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()])},$r=[];const Tr=200;var Ir={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,Tr)},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"}}},Or=Ir,Ar=Or,Er=(i("4f16"),Object(u["a"])(Ar,Pr,$r,!1,null,null,null)),jr=Er.exports,Dr=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))},qr=[];function Mr(e){return`${e.geometry.coordinates[0]}-${e.geometry.coordinates[1]}`}function Lr(e){const t=[];return e.filter(e=>{const i=Mr(e);return-1===t.indexOf(i)&&(t.push(i),!0)})}function Nr(e,t){if(200===this.status)try{const{features:t}=JSON.parse(this.responseText);e(Lr(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 Fr(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=Nr.bind(i,a,s),i.onerror=s,i.ontimeout=s,i.send()});return a.abort=()=>{i.abort()},a}function zr(e){const t=Oo("/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 Br(){return Oo("/departements")}var Rr={components:{Autocompleter:jr},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:Fr}}},watch:{value(){this.data=null!==this.value?[this.value]:[]},data(){this.$emit("input",this.data.length>0?this.data[0]:null)}}},Vr=Rr,Ur=Vr,Hr=(i("f909"),Object(u["a"])(Ur,Dr,qr,!1,null,null,null)),Gr=Hr.exports,Wr=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()])},Jr=[];const Yr=6,Qr={coordinates:[46.7755829,2.0497727],zoom:Yr};var Zr={props:{value:{type:Object,required:!1,default(){return Qr}},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()||Yr}},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)}}},Kr=Zr,Xr=Kr,el=(i("8950"),Object(u["a"])(Xr,Wr,Jr,!1,null,null,null)),tl=el.exports,il=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)},al=[],sl={components:{Address:Gr,Location:tl},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)}}},nl=sl,ol=nl,rl=(i("c789"),Object(u["a"])(ol,il,al,!1,null,null,null)),ll=rl.exports,cl=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()])},ul=[];function dl(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(",")),Oo("/towns"+(i.length>0?"?"+i.join("&"):""))}function pl(e){return Oo("/towns/"+e)}function ml(e){return Ao("/towns",e)}function hl(e,t){return Ao("/towns/"+e,t)}function fl(e,t){return Ao(`/towns/${e}/close`,t)}function vl(e){return Eo("/towns/"+e)}function gl(e,t){return Ao(`/towns/${e}/comments`,t)}function bl(e,t){return Ao(`/towns/${e}/covidComments`,t)}function _l(e,t,i){return Eo(`/towns/${e}/comments/${t}`,{message:i})}var yl=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)])},wl=[],Cl=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")])])])},xl=[],kl={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)}}},Al=Ol,El=Al,jl=Object(u["a"])(El,yl,wl,!1,null,null,null),Dl=jl.exports,ql=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))},Ml=[],Ll={components:{Autocompleter:jr},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=zr(...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)}}},Nl=Ll,Fl=Nl,zl=(i("373f"),Object(u["a"])(Fl,ql,Ml,!1,null,null,null)),Bl=zl.exports,Rl={components:{Table:Dl,CollectivityInput:Bl},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}=zo(),i=Ro("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,dl({},["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)}}},Vl=Rl,Ul=Vl,Hl=(i("3b5a"),Object(u["a"])(Ul,cl,ul,!1,null,null,null)),Gl=Hl.exports,Wl=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)])])},Jl=[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")])])}],Yl=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}})])])},Ql=[],Zl={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:zo().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")}}},Kl=Zl,Xl=Kl,ec=(i("5449"),Object(u["a"])(Xl,Yl,Ql,!1,null,null,null)),tc=ec.exports,ic={components:{PlanFundingRow:tc},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)}}},ac=ic,sc=ac,nc=(i("30c2"),Object(u["a"])(sc,Wl,Jl,!1,null,null,null)),oc=nc.exports,rc=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)}}})])])])])])},lc=[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)")])])}],cc={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)}}},uc=cc,dc=(i("e1d3"),Object(u["a"])(uc,rc,lc,!1,null,"0c9f54ed",null)),pc=dc.exports,mc=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))},hc=[],fc={components:{Autocompleter:jr},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=mr(...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)}}},vc=fc,gc=vc,bc=Object(u["a"])(gc,mc,hc,!1,null,null,null),_c=bc.exports,yc=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)},wc=[],Cc={props:{value:{type:Array,required:!1,default(){return[]}},disabled:{type:Boolean,required:!1,default:!1}},data(){const{etp_types:e}=zo();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)}}},xc=Cc,kc=xc,Sc=(i("d416"),Object(u["a"])(kc,yc,wc,!1,null,null,null)),Pc=Sc.exports,$c=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)}}})])])])])])},Tc=[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")])])}],Ic={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)}}},Oc=Ic,Ac=Oc,Ec=(i("2283"),Object(u["a"])(Ac,$c,Tc,!1,null,null,null)),jc=Ec.exports;const Dc=["selectMultiple","checkbox","autocompleter","townList","planFunding","etp"];var qc={components:{Datepicker:Sr["default"],Autocompleter:jr,Address:Gr,Location:tl,AddressWithLocation:ll,TownList:Gl,PlanFunding:oc,Collectivity:Bl,Organization:_c,Etp:Pc,Audience:jc,PlanHousing:pc},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!==Dc.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)}}},Mc=qc,Lc=Mc,Nc=(i("8aa6"),Object(u["a"])(Lc,xr,kr,!1,null,null,null)),Fc=Nc.exports,zc=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)])},Bc=[],Rc={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"}}},Vc=Rc,Uc=Vc,Hc=(i("2d21"),Object(u["a"])(Uc,zc,Bc,!1,null,"569f8548",null)),Gc=Hc.exports;const Wc=6e3;function Jc(e){return a["default"].notify(Object.prototype.hasOwnProperty.call(e,"duration")?e:{...e,duration:Wc})}var Yc={components:{Input:Fc,SlideNote:Gc},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&&Jc({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}}},Qc=Yc,Zc=Qc,Kc=(i("f6ce"),Object(u["a"])(Zc,wr,Cr,!1,null,null,null)),Xc=Kc.exports,eu={components:{NavBar:yr,Form:Xc},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})=>Go(e,t)}]}}},methods:{onComplete(){window.localStorage.setItem("logged_once",!0),this.$router.push({path:"/"})}}},tu=eu,iu=tu,au=(i("f276"),Object(u["a"])(iu,_o,yo,!1,null,null,null)),su=au.exports,nu=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)},ou=[];function ru(e){return Ao("/contact",e)}var lu=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)},cu=[];function uu(){return Oo("/organization-categories")}function du(e){return Oo(`/organization-categories/${e}/organization-types`)}function pu(e,t=null){return Oo(`/organization-categories/${e}/organizations${null!==t?"?search="+t:""}`)}function mu(e){return Oo(`/organization-types/${e}/organizations`)}function hu(e){return Oo(`/organizations/${e}/users`)}function fu(e,t,i){let a="";return void 0!==i?a="departementId="+encodeURIComponent(i):void 0!==t&&(a="regionId="+encodeURIComponent(t)),Oo(`/organization-categories/${e}/users?${a}`)}var vu={props:{organizationType:{required:!0},organizationTerritory:{required:!0},organizationFunction:{required:!0}},data(){return{orgTypesOptions:[],orgTerritoryOptions:[]}},async mounted(){const{types:e}=await du("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 mu(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}})}}},gu=vu,bu=Object(u["a"])(gu,lu,cu,!1,null,null,null),_u=bu.exports,yu=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)},wu=[],Cu={components:{InputLabel:ce,Collectivity:Ll,InputWrapper:fe,InputError:ye},props:{collectivityName:{required:!0},collectivityFunction:{required:!0}}},xu=Cu,ku=Object(u["a"])(xu,yu,wu,!1,null,null,null),Su=ku.exports,Pu=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)},$u=[],Tu={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([pu("association"),Br()]),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}`}))}},Iu=Tu,Ou=Object(u["a"])(Iu,Pu,$u,!1,null,null,null),Au=Ou.exports,Eu=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)},ju=[],Du={props:{administrationName:{required:!0},administrationFunction:{required:!0}},data(){return{administrationNameOptions:[]}},async mounted(){const{organizations:e}=await pu("administration");this.administrationNameOptions=e.map(({id:e,name:t})=>({value:e,label:t}))}},qu=Du,Mu=Object(u["a"])(qu,Eu,ju,!1,null,null,null),Lu=Mu.exports,Nu=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)])},Fu=[],zu={computed:{url(){return encodeURIComponent("https://resorption-bidonvilles.beta.gouv.fr/#/contact")}}},Bu=zu,Ru=Object(u["a"])(Bu,Nu,Fu,!1,null,null,null),Vu=Ru.exports,Uu={components:{SocialShare:Vu,Checkbox:tt,CheckableGroup:zi,PublicContainer:es,PublicLayout:Os,PublicEstablishmentForm:_u,TerritorialCollectivityForm:Su,AdministrationForm:Lu,AssociationForm:Au},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 ru(e),this.loading=!1,this.$router.push("/"),Jc({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:""}}}},Hu=Uu,Gu=(i("65a2"),Object(u["a"])(Hu,nu,ou,!1,null,null,null)),Wu=Gu.exports,Ju=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)])},Yu=[],Qu=i("8d3b"),Zu=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)])},Ku=[],Xu={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"}}},ed=Xu,td=ed,id=(i("77c2"),Object(u["a"])(td,Zu,Ku,!1,null,null,null)),ad=id.exports,sd=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)},nd=[],od=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()])},rd=[];const ld=200,cd=3;var ud={props:{value:Object,autofocus:Boolean,placeholder:String,autocompleteFunction:{type:Function,default:Fr},showMagnifier:{type:Boolean,default:!0},typingMin:{type:Number,default:cd}},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,ld))},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}}},dd=ud,pd=dd,md=(i("e072"),Object(u["a"])(pd,od,rd,!1,null,"6b423108",null)),hd=md.exports,fd=(i("8243"),i("3ac1"),i("7319"),i("67e3")),vd=i.n(fd),gd=i("71ee"),bd=i.n(gd),_d=i("64e1"),yd=i.n(_d),wd=i("0eac"),Cd=i.n(wd);const xd=[46.7755829,2.0497727],kd=13;var Sd={components:{Address:hd},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:xd,zoom:6})}},data(){return{map:null,markersGroup:{towns:ha.a.markerClusterGroup(),search:ha.a.markerClusterGroup(),pois:ha.a.markerClusterGroup({disableClusteringAtZoom:kd})},searchMarker:this.createSearchMarker(),townSearchMarker:null,townMarkers:[],poiMarkers:[],poiMarkersVisible:!1,hashedTownMarkers:{},address:null,showAddresses:!1,fieldTypes:zo().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>kd&&(this.poiMarkersVisible=!0,this.pois.forEach(this.createPOIMarker)),this.poiMarkersVisible&&e<=kd&&(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?vd.a:!1===e.accessToWater?yd.a:Cd.a},createSearchMarker(){return ha.a.marker(xd,{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")}}},Pd=Sd,$d=Pd,Td=(i("6613"),Object(u["a"])($d,sd,nd,!1,null,"055bfb64",null)),Id=Td.exports,Od=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)},Ad=[],Ed={components:{simplebar:Qu["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:Vo,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);ko(e.href)}}},jd=Ed,Dd=jd,qd=(i("e119"),Object(u["a"])(Dd,Od,Ad,!1,null,"12c43bda",null)),Md=qd.exports,Ld=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)},Nd=[],Fd={components:{simplebar:Qu["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))}}},zd=Fd,Bd=(i("1c7c"),Object(u["a"])(zd,Ld,Nd,!1,null,"263a7bb8",null)),Rd=Bd.exports;function Vd(){return Oo("/pois")}var Ud=i("6ecd"),Hd=i.n(Ud),Gd=i("9934"),Wd=i.n(Gd),Jd=i("597c"),Yd=i.n(Jd),Qd=i("d89d"),Zd=i.n(Qd);function Kd(e){switch(e){case"nation":case"region":return 6;default:case"departement":case"epci":case"city":return 10}}var Xd={components:{NavBar:yr,FilterGroup:ad,Map:Id,Quickview:Md,POIView:Rd,simplebar:Qu["a"]},data(){const{user:e}=zo();return{error:void 0,loading:!1,defaultMapView:{center:[e.organization.location.latitude,e.organization.location.longitude],zoom:Kd(e.organization.location.type)},towns:[],pois:[],quickview:{town:null,originEvent:null},poiview:{poi:null,originEvent:null},permission:Ro("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:Hd.a,label:"Types de site",id:"fieldType",options:[],opened:!0},{icon:Wd.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:Yd.a,label:"Statut des sites",id:"status",options:[{value:"closed",label:"Disparus",checked:!1},{value:"opened",label:"Existants",checked:!0}]},{icon:Wd.a,label:"Type de propriétaire",id:"ownerType",options:zo().owner_types.map(e=>({value:e.id,label:e.label,checked:!0}))},{icon:Zd.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);ko(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([dl(),Vd()]).then(([e,t])=>{const{field_types:i}=zo();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}))}}},ep=Xd,tp=ep,ip=(i("669e"),Object(u["a"])(tp,Ju,Yu,!1,null,null,null)),ap=ip.exports,sp=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)},np=[],op={data(){return{error:null}},components:{NavBar:yr},mounted(){this.loadConfig()},methods:{loadConfig(){!0!==Lo()?(this.error=null,No().then(()=>{this.redirect()}).catch(e=>{this.error=e.user_message})):this.redirect()},redirect(){const{user:e}=zo();this.track(e),this.$router.push(Nk())},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))}}},rp=op,lp=rp,cp=Object(u["a"])(lp,sp,np,!1,null,null,null),up=cp.exports,dp=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:"Inconnue"}]},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:"accessToElectricity",label:"électricité"},{value:"accessToTrash",label:"évac. des déchets"},{value:"accessToSanitary",label:"toilettes"}]},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()],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-end mb-12 print:hidden"},[e.nbPages>1?i("Pagination",{staticClass:"mt-2 md:mt-0 ml-auto ",attrs:{currentPage:e.currentPage,nbPages:e.nbPages,onChangePage:e.onChangePage}}):e._e()],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)},pp=[],mp=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)},hp=[],fp={},vp=Object(u["a"])(fp,mp,hp,!1,null,null,null),gp=vp.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)},_p=[],yp={components:{NavBar:yr}},wp=yp,Cp=Object(u["a"])(wp,bp,_p,!1,null,null,null),xp=Cp.exports,kp=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 inconnue ")]):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 : inconnue ")])],2)]),i("div",[i("div",[i("TownCardIcon",{attrs:{value:e.shantytown.accessToWater}},[e._v("eau")]),i("TownCardIcon",{attrs:{value:e.shantytown.electricityType.value}},[e._v("électricité")]),i("TownCardIcon",{attrs:{value:e.shantytown.trashEvacuation}},[e._v("évac. des déchets")]),i("TownCardIcon",{attrs:{value:e.shantytown.accessToSanitary}},[e._v("toilettes")])],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 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"},[i("transition",{attrs:{name:"fade"}},[e.isHover?i("router-link",{attrs:{to:"site/"+e.shantytown.id}},[i("Button",{staticClass:"text-display-sm hover:underline -mb-1",attrs:{variant:"secondaryText",icon:"pen",iconPosition:"left"}},[e._v("Mettre à jour")])],1):e._e()],1),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)},Sp=[],Pp=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{class:["flex items-center",e.color]},[i("div",{staticClass:"mr-2 w-4"},[!0===e.value?i("Icon",{attrs:{icon:"check"}}):e._e(),!1===e.value?i("Icon",{attrs:{icon:"times"}}):e._e(),null===e.value?i("Icon",{attrs:{icon:"question"}}):e._e()],1),e._t("default")],2)},$p=[],Tp={props:{value:{validator:e=>"boolean"===typeof e||null===e}},computed:{color(){return!0===this.value?"text-green":"text-red"}}},Ip=Tp,Op=Object(u["a"])(Ip,Pp,$p,!1,null,null,null),Ap=Op.exports,Ep=i("2416"),jp=i.n(Ep),Dp=i("2b50"),qp=i.n(Dp),Mp=i("08c7"),Lp=i.n(Mp);function Np(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}}var Fp={props:{shantytown:{type:Object},hasJusticePermission:{type:Boolean}},data(){return{isHover:!1}},components:{TownCardIcon:Ap},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:qp.a}:2===e.id?{id:2,label:"Union européenne",img:jp.a}:3===e.id?{id:3,label:"Hors Union européenne",img:Lp.a}:e}},computed:{lastUpdate(){const{days:e,months:t,weeks:i}=Np(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"}}},zp=Fp,Bp=(i("faac"),Object(u["a"])(zp,kp,Sp,!1,null,"ae0cb942",null)),Rp=Bp.exports,Vp=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ésultats ")])],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)},Up=[],Hp={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 zr(e),this.loading=!1,this.results):[]}}},Gp=Hp,Wp=(i("c35a4"),Object(u["a"])(Gp,Vp,Up,!1,null,"6ab96d95",null)),Jp=Wp.exports,Yp=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)])},Qp=[],Zp={props:{search:{type:Object},showExport:{type:Function}}},Kp=Zp,Xp=Object(u["a"])(Kp,Yp,Qp,!1,null,null,null),em=Xp.exports,tm=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)},im=[],am={props:{active:{type:Boolean}}},sm=am,nm=Object(u["a"])(sm,tm,im,!1,null,null,null),om=nm.exports,rm=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)])},lm=[],cm={},um=Object(u["a"])(cm,rm,lm,!1,null,null,null),dm=um.exports,pm=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=[],hm={props:{title:{type:String},options:{type:Array},value:{type:Array}},computed:{titleWithActiveFilters(){return this.value.length?`${this.title} (${this.value.length})`:this.title}}},fm=hm,vm=(i("30a5"),Object(u["a"])(fm,pm,mm,!1,null,"defa5cd8",null)),gm=vm.exports;function bm(e,t){return e.filter(e=>("open"!==t.status||"open"===e.status)&&(("close"!==t.status||"open"!==e.status)&&(!(t.location&&!wm(e,t))&&(!(t.fieldType.length>0&&!Cm(e,t.fieldType))&&(!(t.population.length>0&&!xm(e,t.population))&&(!(t.justice.length>0&&!km(e,t.justice))&&(!(t.origin.length>0&&!ym(e,t.origin))&&!(t.conditions.length>0&&!_m(e,t.conditions)))))))))}function _m(e,t){return t.some(t=>"accessToSanitary"===t?!e.accessToSanitary:"accessToWater"===t?!e.accessToWater:"accessToTrash"===t?!e.trashEvacuation:"accessToElectricity"!==t||!e.electricityType.value)}function ym(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 wm(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 Cm(e,t){return-1!==t.indexOf(e.fieldType.id)}function xm(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)}var Sm=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(" 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:"primaryOutline"},on:{click:e.close}},[e._v(" Annuler")]),i("Button",{staticClass:"ml-6",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 : département, commune, adresse")]),i("li",[e._v(" - Site : type de site (terrain / bâti), date d’installation, date de signalement ")]),i("li",[e._v(" - Habitants : nombre de personnes, mineurs, ménages et origines ")]),e.closedTowns?i("li",[e._v(" - Orientations des ménages après la fermeture ")]):e._e(),i("li",[e._v("- Date de la dernière mise à jour")])])]),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}])})},Pm=[],$m={components:{Checkbox:tt},props:{location:Object,closedTowns:Boolean},data(){return{existingOptions:[{id:"priority",label:"Priorité",description:"(1, 2, 3)",closedTowns:!1},{id:"address_details",label:"Informations d'accès au site et coordonnées GPS",closedTowns:!1},{id:"owner",label:"Propriétaire",description:": type et identité"},{id:"life_conditions",label:"Conditions de vie",description:": accès à l'électricité, l'eau, toilettes, évacuation des déchets"},{id:"demographics",label:"Diagnostic",description:": statut, date, et service en charge"},{id:"justice",label:"Procédures judiciaires",description:": statut et date des étapes",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=Ro(`${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(","))),qo(i)},close(){this.$emit("close")}}},Tm=$m,Im=Object(u["a"])(Tm,Sm,Pm,!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("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-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.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)])},Em=[],jm={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}}},Dm=jm,qm=(i("69c8"),Object(u["a"])(Dm,Am,Em,!1,null,"07337edc",null)),Mm=qm.exports,Lm=i("2f62"),Nm=i("ccab"),Fm=i.n(Nm);function zm(e){const{days:t,years:i,months:a}=Np(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 Bm(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:Fm.a,label:"Concours de la force publique non demandé"});break;case"requested":s.push({img:Fm.a,label:"Concours de la force publique demandé",date:e.policeRequestedAt});break;case"granted":s.push({img:Fm.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?zm(o):"",l=e.closingSolutions.reduce((e,t)=>t.householdsAffected?(e||0)+t.householdsAffected:e,null);return{...e,statusName:n,statusDate:o,statusSince:r,statusDetails:Rm[e.status],fieldType:{...e.fieldType,color:i[e.fieldType.id]},electricityType:{...e.electricityType,value:a},justiceStatuses:s,totalSolutions:l}}const Rm={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(Lm["a"]);var Vm=new Lm["a"].Store({state:{towns:{data:[],loading:!0,error:null,sort:"updatedAt",filters:{population:[],fieldType:[],justice:[],origin:[],conditions:[],status:"open",location:null},currentPage:1}},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}},actions:{async fetchTowns({commit:e}){e("setLoading",!0);try{const{user:t,field_types:i}=zo();"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 dl(),s=a.map(e=>Bm(e,i));e("setTowns",s),e("setLoading",!1)}catch(t){e("setError",t),e("setLoading",!1)}}},getters:{towns:e=>e.towns.data,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 Um=20;var Hm={components:{TownsListSort:Mm,Spinner:Di,TownCard:Rp,PrivateContainer:gp,PrivateLayout:xp,TownsListSearchBar:Jp,TownsListHeader:em,TownsListHeaderTab:om,TownsListFilters:dm,TownsListFilter:gm,Export:Om},mounted(){window.onbeforeprint=()=>{this.printMode=!0},window.onafterprint=()=>{this.printMode=!1}},data(){const{field_types:e}=zo(),t=Ro("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){Vm.commit("setSort",e)},updateFilters(e,t){Vm.commit("setFilters",{...this.filters,[e]:t}),this.onChangePage(1)},onChangePage(e){Vm.commit("setCurrentPage",e)},hasPermission(...e){return Vo(...e)},load(){this.shantytowns.length||Vm.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(Lm["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 bm(this.shantytowns,this.filters).sort((e,t)=>t[this.sort]-e[this.sort])},filteredShantytownsByPage(){return this.filteredShantytowns.slice((this.currentPage-1)*Um,Um*this.currentPage)},title(){return this.currentLocation.label?""+this.currentLocation.label:"France métropolitaine"},nbPages(){return Math.ceil(this.filteredShantytowns.length/Um)}}},Gm=Hm,Wm=Object(u["a"])(Gm,dp,pp,!1,null,null,null),Jm=Wm.exports,Ym=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("PrivateLayout",[i("TownForm",{attrs:{mode:"create"}})],1)},Qm=[],Zm=function(){var e=this,t=e.$createElement,i=e._self._c||t;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:"bg-G100 py-8"},[i("PrivateContainer",{staticClass:"flex justify-between items-baseline"},[i("div",{staticClass:"text-display-lg"},[e._v(e._s(e.submitWording))]),i("div",[i("Button",{attrs:{variant:"primaryText"},on:{click:e.back}},[e._v("Annuler")]),i("Button",{staticClass:"ml-5",attrs:{loading:e.loading,"data-cy-button":"submit"}},[e._v("Valider")])],1)])],1),i("PrivateContainer",{staticClass:"flex pt-10"},[i("TownFormLeftColumn",{staticClass:"leftColumnWidth"}),i("div",{staticClass:"flex-1"},[e.showInfo?i("TownFormPanelInfo",{on:{close:function(t){return e.closeInfo()}}}):e._e(),i("TownFormErrorLog",{staticClass:"mt-8 mb-8",attrs:{id:"erreurs",errors:a}}),i("TownFormPanelLocation",{staticClass:"mt-10",model:{value:e.town.location,callback:function(t){e.$set(e.town,"location",t)},expression:"town.location"}}),i("TownFormPanelCharacteristics",{staticClass:"mt-10 townPanelShadow",attrs:{id:"characteristics"},model:{value:e.town.characteristics,callback:function(t){e.$set(e.town,"characteristics",t)},expression:"town.characteristics"}}),i("TownFormPanelPeople",{staticClass:"mt-10 townPanelShadow",attrs:{id:"people"},model:{value:e.town.people,callback:function(t){e.$set(e.town,"people",t)},expression:"town.people"}}),i("TownFormPanelLivingConditions",{staticClass:"mt-10 townPanelShadow",attrs:{id:"living_conditions"},model:{value:e.town.living_conditions,callback:function(t){e.$set(e.town,"living_conditions",t)},expression:"town.living_conditions"}}),i("TownFormPanelJudicial",{staticClass:"mt-10 townPanelShadow",attrs:{id:"judicial"},model:{value:e.town.judicial,callback:function(t){e.$set(e.town,"judicial",t)},expression:"town.judicial"}}),i("div",{staticClass:"mt-8 text-right italic text-red font-bold"},[e._v(" * : Réponses obligatoires ")])],1)],1),i("div",{staticClass:"pt-12 pb-16"},[i("PrivateContainer",{staticClass:"flex justify-end items-baseline"},[i("Button",{attrs:{variant:"primaryText"},on:{click:e.back}},[e._v("Annuler")]),i("Button",{staticClass:"ml-5",attrs:{loading:e.loading}},[e._v("Valider")])],1)],1)],1)]}}])})},Km=[],Xm=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[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:"flag"}})],1),i("span",{staticClass:"ml-2 font-bold"},[e._v("Qu'est-ce qu'un site ?")]),i("span",{staticClass:"ml-2",on:{click:e.toggle}},[i("Icon",{staticClass:"cursor-pointer",attrs:{icon:e.togglerIcon}})],1),i("transition",{attrs:{name:"toggle",mode:"out-in"}},[e.visible?i("div",{staticClass:"bg-yellow-200 text-sm p-6 mt-2 flex"},[e._v(" Un site est un bidonville, squat ou immeuble bâti occupé de manière informelle à des fins d'habitation par plusieurs familles ou personnes. Il se caractérise généralement par l'absence de services de base : eau, électricité, gestion des déchets. La plateforme permet de recenser tous les sites, quelque soit l'origine des personnes et leur nombre. ")]):e._e()])],1)},eh=[],th={data(){return{visible:!0}},computed:{togglerIcon(){return!0===this.visible?"chevron-up":"chevron-down"}},methods:{toggle(){this.visible=!this.visible}}},ih=th,ah=(i("9b19"),Object(u["a"])(ih,Xm,eh,!1,null,"8c5b0e4c",null)),sh=ah.exports,nh=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"bg-gray-200 flex"},[i("div",{staticClass:"p-5 flex-grow"},[i("FormParagraph",{attrs:{title:"Adresse",showMandatoryStar:!0}},[i("InputAddress",{on:{change:e.onAddressChange},model:{value:e.input.address,callback:function(t){e.$set(e.input,"address",t)},expression:"input.address"}})],1),i("FormParagraph",{attrs:{title:"Appellation du site"}},[i("InputName",{model:{value:e.input.name,callback:function(t){e.$set(e.input,"name",t)},expression:"input.name"}})],1)],1),e.input.address.label?i("div",{staticClass:"w-96 h-96"},[i("InputCoordinates",{model:{value:e.input.coordinates,callback:function(t){e.$set(e.input,"coordinates",t)},expression:"input.coordinates"}})],1):e._e()])},oh=[],rh=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("AutocompleteV2",{attrs:{id:"address",label:"",prefixIcon:"search",search:e.autocomplete,getResultValue:e.getResultValue,validationName:"Adresse","data-cy-field":"address",defaultValue:e.value},on:{submit:e.submit}})},lh=[],ch={props:{value:{value:Object,required:!1,default(){return{label:void 0,citycode:void 0}}}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}},methods:{autocomplete(e){return e?Fr(e):[]},getResultValue(e){return"string"===typeof e?e:e.label},submit(e){if(!e)return this.input={label:void 0,citycode:void 0},void this.$emit("change",void 0);const{label:t,citycode:i,coordinates:[a,s]}=e;this.input={label:t,citycode:i},this.$emit("change",[s,a])}}},uh=ch,dh=Object(u["a"])(uh,rh,lh,!1,null,null,null),ph=dh.exports,mh=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("TextInput",{attrs:{id:"name",label:"",info:"Exemples : Entrepôt de la Poste, Rond-point du centre...",cypressName:"name"},model:{value:e.input,callback:function(t){e.input=t},expression:"input"}})},hh=[],fh={props:{value:{type:String,required:!1,default:""}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},vh=fh,gh=Object(u["a"])(vh,mh,hh,!1,null,null,null),bh=gh.exports,_h=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("MapV2",{attrs:{zoom:e.zoom},model:{value:e.input,callback:function(t){e.input=t},expression:"input"}})},yh=[],wh={props:{value:{value:Array,required:!1}},data(){return{input:this.value}},computed:{zoom(){return this.input?15:void 0}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},Ch=wh,xh=Object(u["a"])(Ch,_h,yh,!1,null,null,null),kh=xh.exports,Sh={components:{InputAddress:ph,InputName:bh,InputCoordinates:kh},props:{value:{type:Object,required:!0}},data(){return{input:this.value}},methods:{onAddressChange(e){this.input.coordinates=e}}},Ph=Sh,$h=Object(u["a"])(Ph,nh,oh,!1,null,null,null),Th=$h.exports,Ih=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("FormGroup",{attrs:{title:"Caractéristiques du site"}},[i("FormParagraph",{staticClass:"w-128",attrs:{title:"Quelles sont les dates clés du site ?"}},[i("div",{staticClass:"w-64"},[i("InputBuiltAt",{model:{value:e.input.built_at,callback:function(t){e.$set(e.input,"built_at",t)},expression:"input.built_at"}}),i("InputDeclaredAt",{attrs:{disableBefore:e.input.built_at},model:{value:e.input.declared_at,callback:function(t){e.$set(e.input,"declared_at",t)},expression:"input.declared_at"}})],1),i("InputFieldType",{model:{value:e.input.field_type,callback:function(t){e.$set(e.input,"field_type",t)},expression:"input.field_type"}}),i("InputDetailedAddress",{model:{value:e.input.detailed_address,callback:function(t){e.$set(e.input,"detailed_address",t)},expression:"input.detailed_address"}})],1),i("FormParagraph",{staticClass:"w-128",attrs:{title:"Quel est le propriétaire ?",showMandatoryStar:!0}},[i("InputOwnerType",{ref:"ownerType",model:{value:e.input.owner_type,callback:function(t){e.$set(e.input,"owner_type",t)},expression:"input.owner_type"}}),e.ownerTypeIsUnknown?e._e():i("InputOwner",{model:{value:e.input.owner,callback:function(t){e.$set(e.input,"owner",t)},expression:"input.owner"}})],1)],1)},Oh=[],Ah=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("DatepickerV2",{attrs:{id:"built_at",label:"Date d'installation",rules:"required",showMandatoryStar:!0,"disabled-dates":{from:new Date},cypressName:"built_at"},model:{value:e.input,callback:function(t){e.input=t},expression:"input"}})},Eh=[],jh={props:{value:{type:Date,required:!1}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},Dh=jh,qh=Object(u["a"])(Dh,Ah,Eh,!1,null,null,null),Mh=qh.exports,Lh=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("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:e.input,callback:function(t){e.input=t},expression:"input"}})},Nh=[];Object(q["c"])("declaredAfterInstallation",{params:["target"],validate(e,{target:t}){return e>=t},message:"La date de signalement doit être ultérieure à la date d'installation"});var Fh={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)}}},zh=Fh,Bh=Object(u["a"])(zh,Lh,Nh,!1,null,null,null),Rh=Bh.exports,Vh=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)},Uh=[],Hh={props:{value:{type:Number,required:!1,default:void 0}},data(){const{field_types:e}=zo();return{values:e,checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},Gh=Hh,Wh=Object(u["a"])(Gh,Vh,Uh,!1,null,null,null),Jh=Wh.exports,Yh=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"}})},Qh=[],Zh={props:{value:{type:String,required:!1,default:""}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},Kh=Zh,Xh=Object(u["a"])(Kh,Yh,Qh,!1,null,null,null),ef=Xh.exports,tf=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)},af=[],sf={props:{value:{type:Number,required:!1,default:void 0}},data(){const{owner_types:e}=zo();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}}},nf=sf,of=Object(u["a"])(nf,tf,af,!1,null,null,null),rf=of.exports,lf=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"}})},cf=[],uf={props:{value:{type:String,required:!1,default:""}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},df=uf,pf=Object(u["a"])(df,lf,cf,!1,null,null,null),mf=pf.exports,hf={components:{InputBuiltAt:Mh,InputDeclaredAt:Rh,InputFieldType:Jh,InputDetailedAddress:ef,InputOwnerType:rf,InputOwner:mf},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)}}},ff=hf,vf=Object(u["a"])(ff,Ih,Oh,!1,null,null,null),gf=vf.exports,bf=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)},_f=[],yf=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)])},wf=[];Object(q["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(q["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 Cf={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)}}},xf=Cf,kf=Object(u["a"])(xf,yf,wf,!1,null,null,null),Sf=kf.exports,Pf=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)])},$f=[],Tf={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)}}},If=Tf,Of=Object(u["a"])(If,Pf,$f,!1,null,null,null),Af=Of.exports,Ef=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)},jf=[],Df={props:{value:{type:Array,required:!1,default:()=>[]}},data(){const{social_origins:e}=zo();return{values:e,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,Nf=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)},Ff=[],zf={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)}}},Bf=zf,Rf=Object(u["a"])(Bf,Nf,Ff,!1,null,null,null),Vf=Rf.exports,Uf=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)},Hf=[];Object(q["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)}}},Wf=Gf,Jf=Object(u["a"])(Wf,Uf,Hf,!1,null,null,null),Yf=Jf.exports,Qf=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"}})},Zf=[],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,ev=Object(u["a"])(Xf,Qf,Zf,!1,null,null,null),tv=ev.exports,iv={components:{InputPopulation:Sf,InputPopulationMinors:Af,InputSocialOrigins:Lf,InputCensusStatus:Vf,InputCensusConductedAt:Yf,InputCensusConductedBy:tv},props:{value:{type:Object,required:!0}},data(){return{input:this.value}},computed:{censusStatusIsUnknown(){const e=this.input.census_status;return"scheduled"!==e&&"done"!==e}}},av=iv,sv=Object(u["a"])(av,bf,_f,!1,null,null,null),nv=sv.exports,ov=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"}}),i("InputWaterComments",{model:{value:e.input.water_comments,callback:function(t){e.$set(e.input,"water_comments",t)},expression:"input.water_comments"}})],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("InputElectricityComments",{model:{value:e.input.electricity_comments,callback:function(t){e.$set(e.input,"electricity_comments",t)},expression:"input.electricity_comments"}})],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"}}),i("InputSanitaryComments",{model:{value:e.input.sanitary_comments,callback:function(t){e.$set(e.input,"sanitary_comments",t)},expression:"input.sanitary_comments"}})],1),i("FormParagraph",{attrs:{title:"L'évacuation des déchets est-elle organisée ?",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)],1)},rv=[],lv=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"}},[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)},cv=[],uv={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)}}},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("TextArea",{attrs:{id:"water_comments",label:"Modalités d'accès",info:"Exemples : Citerne de 100 litres remplie par les pompiers tous les jours, 3 robinets raccordés par la collectivité, borne incendie à 200 mètres...",cypressName:"water_comments"},model:{value:e.input,callback:function(t){e.input=t},expression:"input"}})},fv=[],vv={props:{value:{type:String,required:!1,default:""}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},gv=vv,bv=Object(u["a"])(gv,hv,fv,!1,null,null,null),_v=bv.exports,yv=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)},wv=[],Cv={props:{value:{type:Number,required:!1,default:void 0}},data(){const{electricity_types:e}=zo();return{values:e,checked:this.value}},watch:{value(){this.checked=this.value},checked(){this.$emit("input",this.checked)}}},xv=Cv,kv=Object(u["a"])(xv,yv,wv,!1,null,null,null),Sv=kv.exports,Pv=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"},model:{value:e.input,callback:function(t){e.input=t},expression:"input"}})},$v=[],Tv={props:{value:{type:String,required:!1,default:""}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},Iv=Tv,Ov=Object(u["a"])(Iv,Pv,$v,!1,null,null,null),Av=Ov.exports,Ev=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"}},[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)},jv=[],Dv={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)}}},qv=Dv,Mv=Object(u["a"])(qv,Ev,jv,!1,null,null,null),Lv=Mv.exports,Nv=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 : 3 toilettes sèches, toilettes raccordées au réseau, un bloc sanitaire fourni par la ville...",cypressName:"sanitary_comments"},model:{value:e.input,callback:function(t){e.input=t},expression:"input"}})},Fv=[],zv={props:{value:{type:String,required:!1,default:""}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},Bv=zv,Rv=Object(u["a"])(Bv,Nv,Fv,!1,null,null,null),Vv=Rv.exports,Uv=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)},Hv=[],Gv={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)}}},Wv=Gv,Jv=Object(u["a"])(Wv,Uv,Hv,!1,null,null,null),Yv=Jv.exports,Qv={components:{InputAccessToWater:mv,InputWaterComments:_v,InputElectricityType:Sv,InputElectricityComments:Av,InputAccessToSanitary:Lv,InputSanitaryComments:Vv,InputTrashEvacuation:Yv},props:{value:{type:Object,required:!0}},data(){return{input:this.value}}},Zv=Qv,Kv=Object(u["a"])(Zv,ov,rv,!1,null,null,null),Xv=Kv.exports,eg=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)},tg=[],ig=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)},ag=[],sg={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)}}},ng=sg,og=Object(u["a"])(ng,ig,ag,!1,null,null,null),rg=og.exports,lg=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)},cg=[],ug={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)}}},dg=ug,pg=Object(u["a"])(dg,lg,cg,!1,null,null,null),mg=pg.exports,hg=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)},fg=[],vg={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)}}},gg=vg,bg=Object(u["a"])(gg,hg,fg,!1,null,null,null),_g=bg.exports,yg=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"}})},wg=[];Object(q["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 Cg={props:{value:{type:Date,required:!1}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},xg=Cg,kg=Object(u["a"])(xg,yg,wg,!1,null,null,null),Sg=kg.exports,Pg=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"}})},$g=[],Tg={props:{value:{type:String,required:!1,default:""}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},Ig=Tg,Og=Object(u["a"])(Ig,Pg,$g,!1,null,null,null),Ag=Og.exports,Eg=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)},jg=[],Dg={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,Ng=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)},Fg=[],zg={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)}}},Bg=zg,Rg=Object(u["a"])(Bg,Ng,Fg,!1,null,null,null),Vg=Rg.exports,Ug=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"}})},Hg=[];Object(q["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 Gg={props:{value:{type:Date,required:!1}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},Wg=Gg,Jg=Object(u["a"])(Wg,Ug,Hg,!1,null,null,null),Yg=Jg.exports,Qg=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"}})},Zg=[];Object(q["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(q["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 Kg={props:{value:{type:Date,required:!1}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},Xg=Kg,eb=Object(u["a"])(Xg,Qg,Zg,!1,null,null,null),tb=eb.exports,ib=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"}})},ab=[],sb={props:{value:{type:String,required:!1,default:""}},data(){return{input:this.value}},watch:{value(){this.input=this.value},input(){this.$emit("input",this.input)}}},nb=sb,ob=Object(u["a"])(nb,ib,ab,!1,null,null,null),rb=ob.exports,lb={components:{InputOwnerComplaint:rg,InputJusticeProcedure:mg,InputJusticeRendered:_g,InputJusticeRenderedAt:Sg,InputJusticeRenderedBy:Ag,InputJusticeChallenged:Lg,InputPoliceStatus:Vg,InputPoliceRequestedAt:Yg,InputPoliceGrantedAt:tb,InputBailiff:rb},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}}},cb=lb,ub=Object(u["a"])(cb,eg,tg,!1,null,null,null),db=ub.exports,pb=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)])},mb=[],hb=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)},fb=[],vb={props:{to:{type:String},activeSection:{type:Boolean}}},gb=vb,bb=Object(u["a"])(gb,hb,fb,!1,null,null,null),_b=bb.exports,yb={components:{LeftColumnNavLink:_b},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:.5});t.observe(document.querySelector("#judicial")),t.observe(document.querySelector("#living_conditions")),t.observe(document.querySelector("#people")),t.observe(document.querySelector("#characteristics"))}},wb=yb,Cb=(i("ea85"),Object(u["a"])(wb,pb,mb,!1,null,"baace2c2",null)),xb=Cb.exports,kb=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()},Sb=[],Pb={props:{errors:{type:Object,required:!1,default(){return{}}}}},$b=Pb,Tb=Object(u["a"])($b,kb,Sb,!1,null,null,null),Ib=Tb.exports,Ob={props:{mode:{type:String},data:{type:Object,default(){return{}}}},components:{PrivateContainer:gp,TownFormLeftColumn:xb,TownFormErrorLog:Ib,TownFormPanelInfo:sh,TownFormPanelLocation:Th,TownFormPanelCharacteristics:gf,TownFormPanelPeople:nv,TownFormPanelLivingConditions:Xv,TownFormPanelJudicial:db},data(){const{field_types:e,user:t}=zo();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)},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({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,access_to_water:this.town.living_conditions.access_to_water,water_comments:this.town.living_conditions.water_comments,electricity_type:this.town.living_conditions.electricity_type,electricity_comments:this.town.living_conditions.electricity_comments,access_to_sanitary:this.town.living_conditions.access_to_sanitary,sanitary_comments:this.town.living_conditions.sanitary_comments,trash_evacuation:this.town.living_conditions.trash_evacuation,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),Jc({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?ml(e):hl(this.data.id,e)}}},Ab=Ob,Eb=(i("04c8"),i("47eb"),Object(u["a"])(Ab,Zm,Km,!1,null,"48f19640",null)),jb=Eb.exports,Db={components:{TownForm:jb,PrivateLayout:xp}},qb=Db,Mb=Object(u["a"])(qb,Ym,Qm,!1,null,null,null),Lb=Mb.exports,Nb=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)},Fb=[],zb={components:{TownForm:jb,PrivateLayout:xp},data(){return{loading:!1,error:null,town:null}},mounted(){this.fetchData()},methods:{fetchData(){!0!==this.loading&&(this.loading=!0,this.error=null,pl(this.$route.params.id).then(e=>{this.town=e,this.loading=!1}).catch(e=>{this.error=e.user_message,this.loading=!1}))}}},Bb=zb,Rb=Object(u["a"])(Bb,Nb,Fb,!1,null,null,null),Vb=Rb.exports,Ub=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"},[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()],1)],1)],1):e._e(),e.hasPermission("shantytown_comment.create")?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._e(),e.hasPermission("shantytown_comment.list")&&e.town.comments.regular.length?i("div",{class:["bg-orange200",!e.hasPermission("shantytown_comment.create")&&"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}}})],1)},Hb=[],Gb=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)])},Wb=[],Jb={props:{town:{type:Object}},data(){const{user:e}=zo();return{user:e}},methods:{hasLocalizedPermission(e){const t=Ro(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`)}}},Yb=Jb,Qb=Object(u["a"])(Yb,Gb,Wb,!1,null,null,null),Zb=Qb.exports,Kb=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(),e.hasPermission("shantytown_comment.list")||e.hasPermission("shantytown_comment.create")?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)]):e._e(),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)])},Xb=[],e_=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)},t_=[],i_={props:{to:{type:String},activeSection:{type:Boolean}}},a_=i_,s_=Object(u["a"])(a_,e_,t_,!1,null,null,null),n_=s_.exports,o_={components:{LeftColumnNavLink:n_},props:{town:{type:Object},hasJusticePermission:{type:Boolean}},data(){return{activeSection:"characteristics"}},methods:{hasPermission:Vo,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});this.hasJusticePermission&&t.observe(document.querySelector("#judicial")),t.observe(document.querySelector("#living_conditions")),t.observe(document.querySelector("#people")),t.observe(document.querySelector("#characteristics"))}},r_=o_,l_=(i("2839"),Object(u["a"])(r_,Kb,Xb,!1,null,"a83dcdd4",null)),c_=l_.exports,u_=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_details"}},[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}])})},d_=[],p_=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)])},m_=[],h_=(i("6fc5"),{}),f_=Object(u["a"])(h_,p_,m_,!1,null,"1d97ba82",null),v_=f_.exports,g_=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)},b_=[],__={},y_=Object(u["a"])(__,g_,b_,!1,null,null,null),w_=y_.exports,C_={props:{town:{type:Object}},components:{TownDetailsPanel:v_,TownDetailsPanelSection:w_,Map:Id},methods:{formatDate(...e){return window.App.formatDate.apply(window,e)},formatDateSince:zm,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),Jc({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}}}},x_=C_,k_=Object(u["a"])(x_,u_,d_,!1,null,null,null),S_=k_.exports,P_=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(" inconnue ")])],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}])})},$_=[],T_={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:v_,TownDetailsPanelSection:w_},methods:{formatDate(...e){return window.App.formatDate.apply(window,e)},socialOrigin(e){return 1===e.id?{id:1,label:e.label,img:qp.a}:2===e.id?{id:2,label:e.label,img:jp.a}:3===e.id?{id:3,label:e.label,img:Lp.a}:e},intToStr(e,t="NC"){return void 0===e||null===e?t:e}},computed:{populationHistory(){const e={date:this.formatDate(this.town.updatedAt,"d B"),year:this.formatDate(this.town.updatedAt,"y"),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,"-")};let t={...e};const i=this.town.changelog.reduce((e,i,a)=>{const s=i.diff.filter(({fieldKey:e})=>e.startsWith("population"));if(0===s.length)return e;let n;return n=a{t[e]="non renseigné"===i?"-":i}),[...e,{...t}]},[]);return[e,...i]},socialDiagnostic(){return"done"===this.town.censusStatus?`Réalisé le ${this.formatDate(this.town.censusConductedAt,"d/m/y")} par ${this.town.censusConductedBy}`:"scheduled"===this.town.censusStatus?`Prévu le ${this.formatDate(this.town.censusConductedAt,"d/m/y")} par ${this.town.censusConductedBy}`:"none"===this.town.censusStatus?"Non réalisé":"Non communiqué"},populationMinors0To3(){return this.intToStr(this.town.populationMinors0To3)},populationMinors3To6(){return this.intToStr(this.town.populationMinors3To6)},populationMinors6To12(){return this.intToStr(this.town.populationMinors6To12)},populationMinors12To16(){return this.intToStr(this.town.populationMinors12To16)},populationMinors16To18(){return this.intToStr(this.town.populationMinors16To18)},minorsInSchool(){return this.intToStr(this.town.minorsInSchool)}}},I_=T_,O_=Object(u["a"])(I_,P_,$_,!1,null,null,null),A_=O_.exports,E_=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("Conditions de vie et environnement")]},proxy:!0},{key:"body",fn:function(){return[i("div",{staticClass:"grid grid-cols-2"},[i("TownDetailsPanelLivingConditionsSection",{attrs:{title:"Accès à l’eau",value:e.town.accessToWater,cypressName:"access_to_water"}},[e.town.waterComments?i("span",{attrs:{"data-cy-data":"water_comments"}},[e._v(e._s(e.town.waterComments))]):e._e()]),i("TownDetailsPanelLivingConditionsSection",{attrs:{title:"Accès aux toilettes",value:e.town.accessToSanitary,cypressName:"access_to_sanitary"}},[e.town.sanitaryComments?i("span",{attrs:{"data-cy-data":"sanitary_comments"}},[e._v(e._s(e.town.sanitaryComments))]):e._e()]),i("TownDetailsPanelLivingConditionsSection",{attrs:{title:"Accès à l’électricité",value:e.town.electricityType.value,cypressName:"electricity_type"}},[e.town.electricityComments?i("span",{attrs:{"data-cy-data":"electricity_comments"}},[e._v(e._s(e.town.electricityComments))]):e._e()]),i("TownDetailsPanelLivingConditionsSection",{attrs:{title:"Évacuation des déchets",value:e.town.trashEvacuation,cypressName:"trash_evacuation"}})],1)]},proxy:!0}])})},j_=[],D_=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("TownDetailsPanelSection",[i("div",{staticClass:"flex items-center"},[i("Icon",{class:[e.colorClass,"mr-1","font-bold"],attrs:{icon:e.icon}}),i("div",[i("div",{staticClass:"flex items-center"},[i("div",{class:[e.colorClass,"font-bold","mr-1"]},[e._v(" "+e._s(e.title)+" : ")]),i("div",{attrs:{"data-cy-data":e.cypressName}},[e._v(e._s(e.text))])]),e._t("default")],2)],1)])},q_=[],M_={components:{TownDetailsPanelSection:w_},props:{title:{type:String},value:{validator:e=>"boolean"===typeof e||null===e},cypressName:{type:String}},computed:{colorClass(){return!0===this.value?"text-green":"text-red"},icon(){return{null:"question",false:"times",true:"check"}[this.value]},text(){return{null:"inconnu",false:"non",true:"oui"}[this.value]}}},L_=M_,N_=Object(u["a"])(L_,D_,q_,!1,null,null,null),F_=N_.exports,z_={props:{town:{type:Object}},components:{TownDetailsPanelLivingConditionsSection:F_,TownDetailsPanel:v_}},B_=z_,R_=Object(u["a"])(B_,E_,j_,!1,null,null,null),V_=R_.exports,U_=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}])})},H_=[],G_={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:v_,TownDetailsPanelSection:w_},computed:{justiceRendered(){return null===this.town.justiceRendered?"NC":this.town.justiceRendered?"rendue le "+this.formatDate(this.town.justiceRenderedAt,"d/m/y"):"non"},policeSiren(){return Fm.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"}}},W_=G_,J_=Object(u["a"])(W_,U_,H_,!1,null,null,null),Y_=J_.exports,Q_=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(" "),i("div",{staticClass:"flex items-center justify-between"},[i("Button",{attrs:{variant:"primaryText"},on:{click:e.cancelComment}},[e._v("Annuler")]),i("Button",{attrs:{variant:"primary"},on:{click:e.addComment}},[e._v("Valider")])],1)],1)])},Z_=[],K_={data(){return{commentError:null,commentErrors:{},newComment:""}},props:{nbComments:{type:Number},user:{type:Object}},methods:{cancelComment(){this.newComment=""},addComment(){Vo("shantytown_comment.create")&&(this.commentError=null,this.commentErrors={},gl(this.$route.params.id,{description:this.newComment}).then(e=>{this.$emit("submit",e.comments),this.newComment=""}).catch(e=>{this.commentError=e.user_message,this.commentErrors=e.fields||{}}))}}},X_=K_,ey=(i("e04d"),Object(u["a"])(X_,Q_,Z_,!1,null,"fe9e5faa",null)),ty=ey.exports,iy=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)},ay=[],sy=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"))+" ")]),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))])])},ny=[],oy={props:{comment:{type:Object}},methods:{formatDate(...e){return window.App.formatDate.apply(window,e)}}},ry=oy,ly=Object(u["a"])(ry,sy,ny,!1,null,null,null),cy=ly.exports,uy={components:{CommentBlock:cy},props:{comments:{type:Array}},computed:{sortedComments(){const e=[...this.comments];return e.sort((e,t)=>t.createdAt-e.createdAt)}}},dy=uy,py=Object(u["a"])(dy,iy,ay,!1,null,null,null),my=py.exports,hy=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)])])},fy=[],vy={props:{town:{type:Object},isOpen:{type:Boolean},closePanel:{type:Function}},methods:{formatDate(...e){return window.App.formatDate.apply(window,e)}}},gy=vy,by=(i("fd66"),Object(u["a"])(gy,hy,fy,!1,null,null,null)),_y=by.exports,yy=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)])])},wy=[],Cy={components:{CommentBlock:cy,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,bl(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]],[])}))}}},xy=Cy,ky=Object(u["a"])(xy,yy,wy,!1,null,null,null),Sy=ky.exports,Py=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}])})},$y=[],Ty={components:{CheckableGroup:zi,InlineTextInput:Le},props:{isOpen:{type:Boolean},town:{type:Object}},methods:{closeModal(){this.$emit("closeModal")},async submitClose(){this.loading=!0,this.error=null;try{await fl(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)}Jc({group:"notifications",type:"success",title:"Site correctement fermé",text:"Le site a bien été marqué comme fermé"});const e=await pl(this.$route.params.id);this.$emit("updateTown",e),this.loading=!1,this.closeModal()},closePopin(){this.$emit("cancelCloseTown")}},data(){const{closing_solutions:e}=zo();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))})}}},Iy=Ty,Oy=(i("cee3"),Object(u["a"])(Iy,Py,$y,!1,null,null,null)),Ay=Oy.exports,Ey={components:{TownDetailsCloseModal:Ay,TownDetailsHistorySidePanel:_y,TownDetailsNewComment:ty,TownDetailsComments:my,PrivateLayout:xp,PrivateContainer:gp,TownDetailsHeader:Zb,TownDetailsLeftColumn:c_,TownDetailsPanelCharacteristics:S_,TownDetailsPanelPeople:A_,TownDetailsPanelLivingConditions:V_,TownDetailsPanelJudicial:Y_,TownDetailsCovidCommentsSidePanel:Sy},data(){const e=Ro("shantytown.list"),{field_types:t,user:i}=zo();return{historyOpen:!1,closeOpen:!1,covidOpen:!1,error:null,loading:!1,town:null,fieldTypes:t,user:i,hasJusticePermission:!0===e.data_justice}},created(){this.fetchData()},methods:{hasPermission:Vo,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.")&&vl(this.$route.params.id).then(()=>{Jc({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)})},fetchData(){!0!==this.loading&&(this.loading=!0,this.error=null,pl(this.$route.params.id).then(e=>{this.loading=!1,this.town=Bm(e,this.fieldTypes)}).catch(e=>{this.error=e&&e.user_message||"Une erreur inconnue est survenue",this.loading=!1}))}}},jy=Ey,Dy=(i("b756"),Object(u["a"])(jy,Ub,Hb,!1,null,"4a04efe8",null)),qy=Dy.exports,My=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)])},Ly=[],Ny={components:{NavBar:yr,Form:Xc},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:er}]};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 Xo().then(e=>{this.formData.first_name=e.first_name,this.formData.last_name=e.last_name,this.formData.password=""})},onComplete(){this.preload()}}},Fy=Ny,zy=Fy,By=(i("9985"),Object(u["a"])(zy,My,Ly,!1,null,"dd1c1884",null)),Ry=By.exports,Vy=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)])},Uy=[],Hy=i("f617"),Gy=(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)])}),Wy=[],Jy={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")}}},Yy=Jy,Qy=Yy,Zy=(i("aaf3"),Object(u["a"])(Qy,Gy,Wy,!1,null,"70f3cb96",null)),Ky=Zy.exports,Xy={components:{NavBar:yr,Table:Hy["a"],Modal:Ky},data(){const{token_expires_in:e}=zo();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,tr().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);ko(t.href)}}},ew=Xy,tw=ew,iw=(i("5e31"),Object(u["a"])(tw,Vy,Uy,!1,null,null,null)),aw=iw.exports,sw=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)])},nw=[],ow=(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=[],mu(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([uu(),du("public_establishment"),pu("administration"),pu("association"),Br()]).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 rw=ow({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éé"}},Ko);var lw={components:{NavBar:yr,Form:Xc},data(){const e=rw.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(rw.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(rw.methods,{retryLoading(){this.load()},onComplete(e){if(this.isPopup)return window.opener.postMessage(e,"*"),void window.close();this.$router.push("/nouvel-utilisateur/"+e.id)}})},cw=lw,uw=cw,dw=(i("3415"),Object(u["a"])(uw,sw,nw,!1,null,"17835908",null)),pw=dw.exports,mw=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)])},hw=[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...")])])])}],fw={components:{NavBar:yr,Form:Xc},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=>rr(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,nr(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("/")}}},vw=fw,gw=vw,bw=(i("771a"),Object(u["a"])(gw,mw,hw,!1,null,"043c7c3f",null)),_w=bw.exports,yw=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)])},ww=[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")])}],Cw=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)])},xw=[];const kw={view:"eye",edit:"pencil-alt",deny:"times"};var Sw={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:kw[e.type]}}}},Pw=Sw,$w=Pw,Tw=(i("18f7"),Object(u["a"])($w,Cw,xw,!1,null,null,null)),Iw=Tw.exports;let Ow;var Aw={components:{NavBar:yr,Table:Hy["a"],UserPermissions:Iw},data(){let e;return({permissions_description:Ow,activation_token_expires_in:e}=zo()),{user:null,error:null,state:null,loading:!1,validation:{state:null,error:null},checkedOptions:{},tokenExpiresIn:e/3600/24}},computed:{permission(){return this.user?Ow[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,ir(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,ar(this.$route.params.id,{options:this.checkedOptions}).then(()=>{this.validation.state=null,Jc({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,sr(this.$route.params.id).then(()=>{this.validation.state=null,Jc({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,ur(this.$route.params.id).then(()=>{this.validation.state=null,Jc({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}))}}},Ew=Aw,jw=Ew,Dw=(i("2207"),Object(u["a"])(jw,yw,ww,!1,null,null,null)),qw=Dw.exports,Mw=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)])},Lw=[],Nw={components:{NavBar:yr,Form:Xc},data(){const{user:{id:e,email:t}}=zo();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=>cr(e,t)}]}}},methods:{onComplete(){No().then(()=>{this.$router.push({path:"/"})}).catch(()=>{window.location.reload()})}}},Fw=Nw,zw=Fw,Bw=(i("e517"),Object(u["a"])(zw,Mw,Lw,!1,null,null,null)),Rw=Bw.exports,Vw=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)])},Uw=[],Hw={components:{NavBar:yr,Form:Xc},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})=>dr(e)}]}}},methods:{onComplete(){this.$router.push({path:"/"})}}},Gw=Hw,Ww=Gw,Jw=(i("0ff0"),Object(u["a"])(Ww,Vw,Uw,!1,null,null,null)),Yw=Jw.exports,Qw=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)])},Zw=[],Kw={components:{NavBar:yr,Form:Xc},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=>lr(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,or(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("/")}}},Xw=Kw,eC=Xw,tC=(i("f12c"),Object(u["a"])(eC,Qw,Zw,!1,null,null,null)),iC=tC.exports,aC=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)])},sC=[];function nC(){return Oo("/plans")}async function oC(e){return Oo("/plans/"+e)}async function rC(e){return Ao("/plans",e)}async function lC(e,t){return Ao("/plans/"+e,t)}async function cC(e,t){return Ao(`/plans/${e}/states`,t)}async function uC(e,t){return jo("/plans/"+e,{operation:"close",data:t})}var dC={components:{NavBar:yr,Table:Dl,CollectivityInput:Bl},data(){const{user:e}=zo(),t=Ro("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,nC().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);ko(t.href)},hasPermission(...e){return Vo(...e)}}},pC=dC,mC=pC,hC=(i("1a64"),Object(u["a"])(mC,aC,sC,!1,null,"ca8ce470",null)),fC=hC.exports,vC=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)},gC=[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 bC(e){return Oo(`/regions/${e}/departements`)}function _C(e){return Oo(`/epci/${e}/departements`)}var yC={components:{NavBar:yr,Form:Xc},data(){const{user:e,topics:t}=zo(),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=fu("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=pu("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:rC}]},Vo("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&&hu(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,Jc({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}=zo();return Promise.resolve(e)}case"region":return bC(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}]){Jc({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)}}},wC=yC,CC=wC,xC=(i("83c6"),Object(u["a"])(CC,vC,gC,!1,null,null,null)),kC=xC.exports,SC=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)])},PC=[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)")])])}],$C={components:{NavBar:yr,SlideNote:Gc,Map:Id,PlanFunding:oc,Input:Fc},data(){const{etp_types:e}=zo();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:Vo,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,oC(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",uC(this.$route.params.id,this.closingData).then(()=>{this.closingStatus="success",Jc({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]],[])}))}}},TC=$C,IC=TC,OC=(i("e438"),Object(u["a"])(IC,SC,PC,!1,null,"23a8c2ae",null)),AC=OC.exports,EC=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)},jC=[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...")])])}],DC={components:{NavBar:yr,Form:Xc},data(){const{user:e,topics:t}=zo(),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=fu("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=>lC(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&&hu(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,oC(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(){Jc({group:"notifications",type:"success",title:"Dispositif modifié",text:"Le dispositif a bien été mis à jour"}),this.$router.push("/dispositif/"+this.$route.params.id)}}},qC=DC,MC=qC,LC=(i("b82e"),Object(u["a"])(MC,EC,jC,!1,null,null,null)),NC=LC.exports,FC=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)},zC=[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...")])])}],BC={components:{NavBar:yr,Form:Xc},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,cC(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:Vo,load(){-1===["loading","loaded"].indexOf(this.status)&&(this.status="loading",this.error=null,oC(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(){Jc({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)}}},RC=BC,VC=RC,UC=(i("0045"),Object(u["a"])(VC,FC,zC,!1,null,"8f52fc1c",null)),HC=UC.exports,GC=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)])},WC=[];function JC(){return Oo("/stats")}var YC={components:{NavBar:yr},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,JC().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)}}},QC=YC,ZC=QC,KC=(i("12a5"),Object(u["a"])(ZC,GC,WC,!1,null,null,null)),XC=KC.exports,ex=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)])},tx=[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")])])])}],ix={components:{NavBar:yr}},ax=ix,sx=ax,nx=(i("30ce"),Object(u["a"])(sx,ex,tx,!1,null,"ed8e96dc",null)),ox=nx.exports,rx=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)},lx=[],cx=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)},ux=[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 dx=1500;var px={components:{NavBar:yr},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},dx),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}))}}},mx=px,hx=mx,fx=Object(u["a"])(hx,cx,ux,!1,null,null,null),vx=fx.exports,gx=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)])])])])},bx=[],_x={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))}}},yx=_x,wx=yx,Cx=(i("f090"),Object(u["a"])(wx,gx,bx,!1,null,"eb1c327e",null)),xx=Cx.exports;function kx(e){return Ao("/statistics/directory-views",{organization:e})}var Sx={components:{Skeleton:vx,Table:Dl,Organization:xx,OrganizationInput:_c},data(){return{organizations:[],columns:[{id:"organization",label:"Structure"},{id:"location",label:"Territoire"},{id:"role",label:"Rôle"},{id:"contacts",label:"",icon:"arrow-right"}],local:zo().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&&kx(this.focusedOrganization.id)}},methods:{loader:pr,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")}}},Px=Sx,$x=Px,Tx=(i("e744"),Object(u["a"])($x,rx,lx,!1,null,null,null)),Ix=Tx.exports,Ox=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)])},Ax=[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 Ex(e={}){let t="";return Object.keys(e).length>0&&(t="filters=",t+=Object.keys(e).map(t=>`${t}:${encodeURIComponent(e[t])}`).join(",")),Oo("/user-activities?"+t)}var jx=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"}})])])])])])])])},Dx=[],qx={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,_l(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}))}}},Mx=qx,Lx=Mx,Nx=(i("6501"),Object(u["a"])(Lx,jx,Dx,!1,null,"38509d0a",null)),Fx=Nx.exports,zx={components:{NavBar:yr,Table:Dl,CommentDeletion:Fx,SlideNote:Gc},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,Ex().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,Jc({group:"notifications",type:"success",title:"Commentaire supprimé",text:"L'auteur du commentaire en a été notifié par email"})},show(e){this.filter=e}}},Bx=zx,Rx=Bx,Vx=(i("3a02"),Object(u["a"])(Rx,Ox,Ax,!1,null,null,null)),Ux=Vx.exports,Hx=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)},Gx=[],Wx=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))])])},Jx=[],Yx={props:{title:{type:[String,Number],required:!0},subtitle:{type:String,required:!0},info:{type:String,required:!1},icon:{type:String,required:!1}}},Qx=Yx,Zx=Object(u["a"])(Qx,Wx,Jx,!1,null,null,null),Kx=Zx.exports,Xx=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)},ek=[],tk={props:{title:{required:!0,type:String}}},ik=tk,ak=Object(u["a"])(ik,Xx,ek,!1,null,null,null),sk=ak.exports,nk={components:{PublicLayout:Os,PublicContainer:es,StatsSection:sk,StatsBlock:Kx},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,JC().then(({statistics:e})=>{this.stats=e,this.state="loaded"}).catch(({user_message:e})=>{this.error=e,this.state="error"}))}}},ok=nk,rk=Object(u["a"])(ok,Hx,Gx,!1,null,null,null),lk=rk.exports,ck=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",[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)])},uk=[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 dk(e){return Ao("/high-covid-comments",e)}var pk={components:{NavBar:yr,Table:Dl,SlideNote:Gc},data(){const{user:e}=zo();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"!==Ro("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=bC(this.user.organization.location.region.code);break;case"epci":e=_C(this.user.organization.location.epci.code);break;case"departement":case"city":e=Promise.resolve({departements:[this.user.organization.location.departement]})}Promise.all([Ex({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,dk(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}}))}}},mk=pk,hk=mk,fk=(i("a897"),Object(u["a"])(hk,ck,uk,!1,null,null,null)),vk=fk.exports,gk=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{No().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"}))}}},yk=_k,wk=(i("f867"),Object(u["a"])(yk,gk,bk,!1,null,null,null)),Ck=wk.exports,xk=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"},[e._m(0),i("p",[i("strong",[e._v("Avant d'accéder à la plateforme, merci de lire et de valider la "),i("a",{attrs:{href:e.charte.fichier}},[e._v("charte d'engagement")])]),e._v(". Le respect des règles de confidentialité des informations est primordial vis à vis des habitants et de l'action publique.")]),e._m(1),e._m(2),i("p",[e._v("Le non respect de ces règles peut entraîner des avertissements ou la suppression de votre accès à la plateforme numérique.")]),i("p",[i("label",{attrs:{for:"charte"}},[i("input",{directives:[{name:"model",rawName:"v-model",value:e.data,expression:"data"}],staticClass:"input input--checkbox",attrs:{type:"checkbox",id:"charte",value:"1",disabled:"pending"===e.form.status},domProps:{checked:Array.isArray(e.data)?e._i(e.data,"1")>-1:e.data},on:{change:function(t){var i=e.data,a=t.target,s=!!a.checked;if(Array.isArray(i)){var n="1",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}}}),e._v(" Je m’engage à respecter les règles et obligations de la "),i("a",{attrs:{href:e.charte.fichier}},[e._v("charte d’engagement")]),e._v(" auprès des services de l’État, dans le cadre de l’accès à la plateforme Résorption bidonvilles. ")])]),"error"===e.form.status?i("p",{staticClass:"error"},[i("span",{staticClass:"error"},[e._v("Une erreur est survenue :")]),i("br"),i("span",{staticClass:"error"},[e._v(e._s(e.form.error))])]):e._e(),i("p",[i("button",{staticClass:"button",attrs:{disabled:"pending"===e.form.status||!0!==e.data},on:{click:e.submit}},["pending"!==e.form.status?i("span",[e._v("Accéder à la plateforme")]):i("img",{attrs:{src:"/img/spinner_light.svg",width:"20"}})])])])])],1)])},kk=[function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("header",[i("h1",[e._v("Signature de la charte d'engagement")])])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("p",[i("strong",[e._v("Selon la charte d'engagement, l'utilisateur s'engage à :")]),i("ul",[i("li",[e._v("utiliser des paramètres de connexion (identifiants et mots de passe) personnels et confidentiels.")]),i("li",[e._v("exploiter les informations présentes sur la plateforme exclusivement à des fins professionnelles, pour les besoins propres et internes de son organisation.")])])])},function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("p",[i("strong",[e._v("Ainsi, l'utilisateur s'interdit de :")]),i("ul",[i("li",[e._v("transmettre les identifiants et mots de passe à un tiers.")]),i("li",[e._v("communiquer les informations présentes sur la plateforme sous aucune forme (orale, écrite, copie) à un tiers.")])])])}],Sk={components:{NavBar:yr},data(){const{user:{id:e},version_charte_engagement:t}=zo();return{user:e,charte:t,data:!1,form:{status:null,error:null}}},methods:{submit(){"pending"!==this.form.status&&(this.form.status="pending",this.form.error=null,hr(this.user,this.charte.version).then(()=>{Bo("user.charte_engagement_a_jour",!0),this.$router.push("/")}).catch(({user_message:e})=>{this.form.status="error",this.form.error=e}))}}},Pk=Sk,$k=Pk,Tk=(i("e451"),Object(u["a"])($k,xk,kk,!1,null,"62aa3c67",null)),Ik=Tk.exports;let Ok=null;function Ak(e,t,i,a){for(let s=0;sVo(e))}function jk(){const{user:{position:e}}=zo();return""!==e}function Dk(){const{changelog:e}=zo();return null===e}const qk={anonymous:Ak.bind(void 0,[{checker:()=>!Yo(),target:"/",saveEntryPoint:!1}]),loggedIn:Ak.bind(void 0,[{checker:Yo,target:"/connexion"}]),loaded:Ak.bind(void 0,[{checker:Yo,target:"/connexion"},{checker:Lo,target:"/launcher"},{checker:Ek,target:"/",saveEntrypoint:!1}]),loadedAndUpgraded:Ak.bind(void 0,[{checker:Yo,target:"/connexion"},{checker:Lo,target:"/launcher"},{checker:Ek,target:"/",saveEntrypoint:!1},{checker:Ho,target:"/signature-charte-engagement"},{checker:jk,target:"/mise-a-niveau"}]),loadedAndUpToDate:Ak.bind(void 0,[{checker:Yo,target:"/connexion"},{checker:Lo,target:"/launcher"},{checker:Ek,target:"/",saveEntrypoint:!1},{checker:Ho,target:"/signature-charte-engagement"},{checker:jk,target:"/mise-a-niveau"},{checker:Dk,target:"/nouvelle-version"}])};function Mk(){return!0!==Yo()?Qo()?"/connexion":"/landing":!0!==Lo()?"/launcher":"/cartographie"}const Lk=new n["a"]({scrollBehavior:(e,t,i)=>e.hash?{selector:e.hash}:i||{x:0,y:0},routes:[{path:"/",redirect:Mk,meta:{analyticsIgnore:!0}},{path:"/landing",component:bo,beforeEnter:qk.anonymous},{path:"/statistiques-publiques",component:lk,beforeEnter:qk.anonymous},{path:"/connexion",component:su,beforeEnter:qk.anonymous},{path:"/contact",component:Wu,beforeEnter:qk.anonymous},{path:"/launcher",component:up,beforeEnter:qk.loggedIn},{path:"/nouvelle-version",component:Ck,beforeEnter:qk.loadedAndUpgraded},{path:"/deconnexion",beforeEnter:(e,t,i)=>{Jo(a["default"].prototype.$piwik),i("/")},meta:{analyticsIgnore:!0}},{meta:{group:"townList"},path:"/cartographie",component:ap,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"townList"},path:"/liste-des-sites",component:Jm,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"townList"},path:"/liste-des-sites",component:Jm,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"townCreation",permissions:["shantytown.create"]},path:"/nouveau-site",component:Lb,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"townList"},path:"/site/:id",component:qy,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"townList"},path:"/site/:id/mise-a-jour",component:Vb,beforeEnter:qk.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}}=zo();window.open(a,"_blank"),i(!1)}},{path:"/mentions-legales",component:ox},{meta:{group:"account"},path:"/mon-compte",component:Ry,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"users",permissions:["user.list"]},path:"/liste-des-utilisateurs",component:aw,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"userCreation",permissions:["user.create"]},path:"/nouvel-utilisateur",component:pw,beforeEnter:qk.loadedAndUpToDate},{path:"/signature-charte-engagement",component:Ik,beforeEnter:Ak.bind(void 0,[{checker:Yo,target:"/connexion"},{checker:Lo,target:"/launcher"},{checker:Ek,target:"/",saveEntrypoint:!1},{checker(){return!Ho()},target:"/"}])},{meta:{group:"users",permissions:["user.activate"]},path:"/nouvel-utilisateur/:id",component:qw,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"users"},path:"/mise-a-niveau",component:Rw,beforeEnter:qk.loaded},{meta:{group:"users"},path:"/nouveau-mot-de-passe",component:Yw,beforeEnter:qk.anonymous},{meta:{group:"users"},path:"/renouveler-mot-de-passe/:token",component:iC,beforeEnter:qk.anonymous},{meta:{group:"account"},path:"/activer-mon-compte/:token",component:_w,beforeEnter:qk.anonymous},{meta:{group:"plans",permissions:["plan.list"]},path:"/liste-des-dispositifs",component:fC,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"plans",permissions:["plan.create"]},path:"/nouveau-dispositif",component:kC,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"plans",permissions:["plan.update"]},path:"/modifier-dispositif/:id",component:NC,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"plans",permissions:["plan.read"]},path:"/dispositif/:id",component:AC,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"plans",permissions:["plan.updateMarks"]},path:"/dispositif/:id/indicateurs",component:HC,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"admin",permissions:["stats.read"]},path:"/statistiques",component:XC,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"admin",permissions:["shantytown_comment.moderate"]},path:"/historique-des-activites",component:Ux,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"covid"},path:"/covid-19",component:vk,beforeEnter:qk.loadedAndUpToDate},{meta:{group:"directory"},path:"/annuaire/:id?",component:Ix,beforeEnter:qk.loadedAndUpToDate}]});function Nk(){if(null===Ok)return"/";const e=Ok;return Ok=null,e}const Fk=[{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",Fk[i.getMonth()].long).replace("B",Fk[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(Oa,{host:"https://stats.data.gouv.fr",siteId:86,trackerFileName:"piwik",router:Lk,enableLinkTracking:!0,requireConsent:!1,trackInitialView:!0,debug:!0}),Pa(a["default"]);const zk=new s["a"]({locale:"fr",messages:j});a["default"].createElement=e=>new a["default"](e),a["default"].createElement({el:"#app",router:Lk,store:Vm,i18n:zk,render:e=>e(m)})},"7c9e":function(e,t,i){},"7d21":function(e,t,i){},"7e15":function(e,t,i){},"7fa8":function(e,t,i){},8072:function(e,t,i){},8251: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){},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"},9355:function(e,t,i){},"93aa":function(e,t,i){"use strict";var a=i("a67f"),s=i.n(a);s.a},"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"},"9b19":function(e,t,i){"use strict";var a=i("3c8d"),s=i.n(a);s.a},"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ă"}')},"9f1c":function(e,t,i){},"9f85":function(e,t,i){},"9fbe":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"},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){},b371:function(e,t,i){},b3ad:function(e,t,i){},b756:function(e,t,i){"use strict";var a=i("9f85"),s=i.n(a);s.a},b82e:function(e,t,i){"use strict";var a=i("e67e"),s=i.n(a);s.a},b9d6:function(e,t,i){},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){},c35a4:function(e,t,i){"use strict";var a=i("2935"),s=i.n(a);s.a},c368:function(e,t,i){},c4e0:function(e,t,i){},c68f: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},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},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},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){},e04d:function(e,t,i){"use strict";var a=i("7e15"),s=i.n(a);s.a},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},e451:function(e,t,i){"use strict";var a=i("b9d6"),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){},ea85:function(e,t,i){"use strict";var a=i("c4e0"),s=i.n(a);s.a},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){},fa8a:function(e,t,i){},faac:function(e,t,i){"use strict";var a=i("9fbe"),s=i.n(a);s.a},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.d9b1410a.js.map \ No newline at end of file diff --git a/dist/js/index.928b6db1.js.map b/dist/js/index.d9b1410a.js.map similarity index 81% rename from dist/js/index.928b6db1.js.map rename to dist/js/index.d9b1410a.js.map index e3e6c70ed3..0dca2dda6e 100644 --- a/dist/js/index.928b6db1.js.map +++ b/dist/js/index.d9b1410a.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/js/app/pages/plans.marks/plans.marks.vue?1382","webpack:///./src/js/app/components/TownForm/TownForm.vue?7e7f","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/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/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/TownDetails/TownDetailsLeftColumn.vue?db0c","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/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/TownForm/TownForm.vue?14a7","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/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/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/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/TownsList/TownsListSort/TownsListSort.vue?0642","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:///./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/components/ui/Form/CheckableGroup.vue?2138","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?02d3","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?ac69","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?01d3","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?9c4c","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?73f3","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?45d1","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?fde7","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?372f","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?3957","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/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?5cdb","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/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?4991","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?b504","webpack:///./src/js/app/pages/TownsList/TownCardIcon.vue?9022","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/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?46e8","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?18f0","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?8543","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?80b1","webpack:///./src/js/app/components/TownForm/TownFormPanelInfo.vue?c440","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?763e","webpack:///./src/js/app/components/TownForm/inputs/InputAccessToWater.vue?e43e","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?1098","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?0d2e","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?3a75","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?30d1","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/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?6a15","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?d48f","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?bb48","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?e068","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?7764","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?aa84","webpack:///./src/js/app/pages/TownDetails/ui/TownDetailsPanelLivingConditionsSection.vue?383e","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/TownDetailsNewComment.vue?67b6","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?fdec","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/TownDetailsCloseModal.vue?d1b2","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/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/charte_engagement/charte_engagement.vue?f242","webpack:///./src/js/app/pages/charte_engagement/charte_engagement.js","webpack:///src/js/app/pages/charte_engagement/charte_engagement.vue","webpack:///./src/js/app/pages/charte_engagement/charte_engagement.vue?4562","webpack:///./src/js/app/pages/charte_engagement/charte_engagement.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/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/TownForm/TownFormPanelInfo.vue?5fa4","webpack:///src/js/app/components/ui/Form/FormParagraph.vue","webpack:///./src/js/app/components/PublicLayout/NavBar/assets/RO.svg","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/pages/TownDetails/TownDetails.vue?9085","webpack:///./src/js/app/pages/plans.edit/plans.edit.vue?a8cd","webpack:///./src/js/app/components/ui/Form/utils/InputWrapper.vue?7cea","webpack:///./src/js/app/pages/TownsList/TownsListSearchBar.vue?e569","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/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/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/pages/TownDetails/TownDetailsNewComment.vue?a473","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/charte_engagement/charte_engagement.vue?d275","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/TownForm/TownFormLeftColumn.vue?61f2","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/TownsList/TownCard.vue?e02f","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","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","hasErrors","positionClasses","position","getInputClasses","inputOptions","error","state","classic","mixins","placeholder","InputLabel","InputWrapper","InputError","InputIcon","town","rows","cols","concat","containerClasses","isChecked","domProps","onChange","labelClasses","checkboxClasses","card","CheckableCard","checkValue","Number","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","onPrevious","currentPage","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","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","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","LandingPageContextImage","LandingPageFeatureBlock","LandingPageUserFeedback","LandingPageResponsiveEmbed","line1","line2","line3","LandingPageDataBlock","_m","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","version_de_charte","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","previousPage","indexOfFirstRowInCurrentPage","indexOfLastRowInCurrentPage","filteredContent","indexOfLastPage","nextPage","column","_obj","isFilterable","currentFilter","hideFilter","parsedFilters","toggleFilter","checkedFilters","parsedColumns","emptyLabel","click","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","query","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","updateSort","printMode","filteredShantytownsByPage","isHover","addressSimple","statusName","statusSince","img","electricityType","trashEvacuation","accessToSanitary","justiceStatuses","date","lastUpdate","validator","prop","getSince","now","days","floor","abs","getTime","weeks","months","years","TownCardIcon","dateDiff","resultValue","getCategories","groupBy","categoryItems","titleWithActiveFilters","filterShantytowns","shantytowns","checkLocation","checkFieldType","checkPopulation","checkJustice","checkOrigin","checkConditions","origins","filteredArray","ownerComplaint","download","closedTowns","existingOptions","formatDateSince","yearsText","enrichShantytown","electricityValue","justiceChallenged","justiceRenderedAt","policeRequestedAt","policeGrantedAt","statusDate","declaredAt","totalSolutions","closingSolutions","solution","householdsAffected","statusDetails","closed_by_justice","closed_by_admin","other","unknown","Store","mutations","page","actions","commit","role_id","originalTowns","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","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","electricity_types","InputAccessToWater","InputWaterComments","InputElectricityType","InputElectricityComments","InputAccessToSanitary","InputSanitaryComments","InputTrashEvacuation","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","access_to_water","boolToInt","water_comments","waterComments","electricity_type","electricity_comments","electricityComments","access_to_sanitary","sanitary_comments","sanitaryComments","trash_evacuation","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","population_total","strToInt","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","comments","regular","historyOpen","covidOpen","closeOpen","covid","hasLocalizedPermission","routeToUpdate","scrollFix","getElementById","scrollTo","buildAt","copyCoordinates","TownDetailsPanel","TownDetailsPanelSection","select","execCommand","removeChild","toLocaleDateString","col","colIndex","css","populationHistory","socialDiagnostic","nullValue","present","past","changelog","diff","fieldKey","startsWith","createdAt","oldValue","colorClass","null","false","true","TownDetailsPanelLivingConditionsSection","boolToStr","policeSiren","policeStatusLabel","nbComments","newComment","cancelComment","commentError","commentErrors","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","TownDetailsCloseModal","TownDetailsHistorySidePanel","TownDetailsNewComment","TownDetailsComments","TownDetailsHeader","TownDetailsLeftColumn","TownDetailsPanelCharacteristics","TownDetailsPanelPeople","TownDetailsPanelLivingConditions","TownDetailsPanelJudicial","TownDetailsCovidCommentsSidePanel","confirm","alert","preloading","preloadError","preload","retryLoading","routeToUserValidation","formattedRow","tableProperties","wrapper","token_expires_in","tokenExpiresIn","users","toUpperCase","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","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","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.928b6db1.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!./TownForm.vue?vue&type=style&index=0&id=48f19640&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=48f19640&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--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--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\";","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=a83dcdd4&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=a83dcdd4&scoped=true&lang=css&\"","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--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--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=48f19640&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=48f19640&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&\"","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&\"","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--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\";","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=07337edc&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=07337edc&scoped=true&lang=css&\"","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&\"","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\";","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!./CheckableGroup.vue?vue&type=style&index=0&id=e7203c44&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!./CheckableGroup.vue?vue&type=style&index=0&id=e7203c44&scoped=true&lang=css&\"","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 faPaperPlane,\n faUnlink,\n faUser,\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(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);\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 ? 'a' : '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,\"href\":_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=529e1584&\"\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',{staticClass:\"mb-6 relative\"},[(_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=0db00f2c&\"\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 } = 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 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=09f6f593&\"\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},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 }","\n\n\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=216fbbc8&\"\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=8aba0b98&\"\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\":\"radio\"},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\":\"radio\"},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 }","\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=7d5348ae&\"\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ésultats \")])],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=15ac8000&\"\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:{\"hasErrors\":!!errors.length}},[_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)]),_c('InputError',[_vm._v(_vm._s(errors[0]))])],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=e7203c44&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=e7203c44&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 \"e7203c44\",\n null\n \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\"},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\"},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=279eeb68&\"\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","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\";\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\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\")}}),_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)])}\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","\n\n\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=39e1560c&\"\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(userId, charteVersion) {\n return putApi(`/users/${userId}/charte_engagement`, {\n version_de_charte: charteVersion\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, 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 * @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: 'Inconnue'\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: 'accessToElectricity',\n label: 'électricité'\n },\n {\n value: 'accessToTrash',\n label: 'évac. des déchets'\n },\n {\n value: 'accessToSanitary',\n label: 'toilettes'\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()],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-end mb-12 print:hidden\"},[(_vm.nbPages > 1)?_c('Pagination',{staticClass:\"mt-2 md:mt-0 ml-auto \",attrs:{\"currentPage\":_vm.currentPage,\"nbPages\":_vm.nbPages,\"onChangePage\":_vm.onChangePage}}):_vm._e()],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 inconnue \")]):_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 : inconnue \")]):_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}},[_vm._v(\"eau\")]),_c('TownCardIcon',{attrs:{\"value\":_vm.shantytown.electricityType.value}},[_vm._v(\"électricité\")]),_c('TownCardIcon',{attrs:{\"value\":_vm.shantytown.trashEvacuation}},[_vm._v(\"évac. des déchets\")]),_c('TownCardIcon',{attrs:{\"value\":_vm.shantytown.accessToSanitary}},[_vm._v(\"toilettes\")])],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 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('transition',{attrs:{\"name\":\"fade\"}},[(_vm.isHover)?_c('router-link',{attrs:{\"to\":(\"site/\" + (_vm.shantytown.id))}},[_c('Button',{staticClass:\"text-display-sm hover:underline -mb-1\",attrs:{\"variant\":\"secondaryText\",\"icon\":\"pen\",\"iconPosition\":\"left\"}},[_vm._v(\"Mettre à jour\")])],1):_vm._e()],1),_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.color]},[_c('div',{staticClass:\"mr-2 w-4\"},[(_vm.value === true)?_c('Icon',{attrs:{\"icon\":\"check\"}}):_vm._e(),(_vm.value === false)?_c('Icon',{attrs:{\"icon\":\"times\"}}):_vm._e(),(_vm.value === null)?_c('Icon',{attrs:{\"icon\":\"question\"}}):_vm._e()],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=d828fc2a&\"\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","\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=ae0cb942&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=ae0cb942&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 \"ae0cb942\",\n null\n \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ésultats \")])],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=6ab96d95&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=6ab96d95&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 \"6ab96d95\",\n null\n \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 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 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","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(\" 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\":\"primaryOutline\"},on:{\"click\":_vm.close}},[_vm._v(\" Annuler\")]),_c('Button',{staticClass:\"ml-6\",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 : département, commune, adresse\")]),_c('li',[_vm._v(\" - Site : type de site (terrain / bâti), date d’installation, date de signalement \")]),_c('li',[_vm._v(\" - Habitants : nombre de personnes, mineurs, ménages et origines \")]),(_vm.closedTowns)?_c('li',[_vm._v(\" - Orientations des ménages après la fermeture \")]):_vm._e(),_c('li',[_vm._v(\"- Date de la dernière mise à jour\")])])]),_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=f73c5020&\"\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-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.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=07337edc&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=07337edc&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 \"07337edc\",\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 { all as fetchAll } 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 },\n currentPage: 1\n }\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 },\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 getters: {\n towns: state => {\n return state.towns.data;\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=de506d32&\"\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:{\"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\"},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:{\"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 text-sm p-6 mt-2 flex\"},[_vm._v(\" Un site est un bidonville, squat ou immeuble bâti occupé de manière informelle à des fins d'habitation par plusieurs familles ou personnes. Il se caractérise généralement par l'absence de services de base : eau, électricité, gestion des déchets. La plateforme permet de recenser tous les sites, quelque soit l'origine des personnes et leur nombre. \")]):_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=8c5b0e4c&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=8c5b0e4c&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 \"8c5b0e4c\",\n null\n \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\"}}),_c('InputWaterComments',{model:{value:(_vm.input.water_comments),callback:function ($$v) {_vm.$set(_vm.input, \"water_comments\", $$v)},expression:\"input.water_comments\"}})],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('InputElectricityComments',{model:{value:(_vm.input.electricity_comments),callback:function ($$v) {_vm.$set(_vm.input, \"electricity_comments\", $$v)},expression:\"input.electricity_comments\"}})],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\"}}),_c('InputSanitaryComments',{model:{value:(_vm.input.sanitary_comments),callback:function ($$v) {_vm.$set(_vm.input, \"sanitary_comments\", $$v)},expression:\"input.sanitary_comments\"}})],1),_c('FormParagraph',{attrs:{\"title\":\"L'évacuation des déchets est-elle organisée ?\",\"showMandatoryStar\":true}},[_c('InputTrashEvacuation',{model:{value:(_vm.input.trash_evacuation),callback:function ($$v) {_vm.$set(_vm.input, \"trash_evacuation\", $$v)},expression:\"input.trash_evacuation\"}})],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\"}},[_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=8ebff31e&\"\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\",\"label\":\"Modalités d'accès\",\"info\":\"Exemples : Citerne de 100 litres remplie par les pompiers tous les jours, 3 robinets raccordés par la collectivité, borne incendie à 200 mètres...\",\"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=2c02c94c&\"\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\"},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=7f45c57c&\"\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\"}},[_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=196e48d6&\"\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 : 3 toilettes sèches, toilettes raccordées au réseau, un bloc sanitaire fourni par la ville...\",\"cypressName\":\"sanitary_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!./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=18326038&\"\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","\n\n\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=1311e417&\"\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=baace2c2&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=baace2c2&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 \"baace2c2\",\n null\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=48f19640&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=48f19640&scoped=true&lang=css&\"\nimport style1 from \"./TownForm.vue?vue&type=style&index=1&id=48f19640&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 \"48f19640\",\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.hasPermission('shantytown_comment.create'))?_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._e(),(\n _vm.hasPermission('shantytown_comment.list') &&\n _vm.town.comments.regular.length\n )?_c('div',{class:[\n 'bg-orange200',\n !_vm.hasPermission('shantytown_comment.create') && '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}}})],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(),(\n _vm.hasPermission('shantytown_comment.list') ||\n _vm.hasPermission('shantytown_comment.create')\n )?_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)]):_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 }","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=a83dcdd4&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=a83dcdd4&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 \"a83dcdd4\",\n null\n \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_details\"}},[_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=ef4963b6&\"\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(\" inconnue \")]):_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=64a3074d&\"\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',{staticClass:\"grid grid-cols-2\"},[_c('TownDetailsPanelLivingConditionsSection',{attrs:{\"title\":\"Accès à l’eau\",\"value\":_vm.town.accessToWater,\"cypressName\":\"access_to_water\"}},[(_vm.town.waterComments)?_c('span',{attrs:{\"data-cy-data\":\"water_comments\"}},[_vm._v(_vm._s(_vm.town.waterComments))]):_vm._e()]),_c('TownDetailsPanelLivingConditionsSection',{attrs:{\"title\":\"Accès aux toilettes\",\"value\":_vm.town.accessToSanitary,\"cypressName\":\"access_to_sanitary\"}},[(_vm.town.sanitaryComments)?_c('span',{attrs:{\"data-cy-data\":\"sanitary_comments\"}},[_vm._v(_vm._s(_vm.town.sanitaryComments))]):_vm._e()]),_c('TownDetailsPanelLivingConditionsSection',{attrs:{\"title\":\"Accès à l’électricité\",\"value\":_vm.town.electricityType.value,\"cypressName\":\"electricity_type\"}},[(_vm.town.electricityComments)?_c('span',{attrs:{\"data-cy-data\":\"electricity_comments\"}},[_vm._v(_vm._s(_vm.town.electricityComments))]):_vm._e()]),_c('TownDetailsPanelLivingConditionsSection',{attrs:{\"title\":\"Évacuation des déchets\",\"value\":_vm.town.trashEvacuation,\"cypressName\":\"trash_evacuation\"}})],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',{staticClass:\"flex items-center\"},[_c('Icon',{class:[_vm.colorClass, '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)])}\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!./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=6e3e897c&\"\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=159c4a1e&\"\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-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(\" \"),_c('div',{staticClass:\"flex items-center justify-between\"},[_c('Button',{attrs:{\"variant\":\"primaryText\"},on:{\"click\":_vm.cancelComment}},[_vm._v(\"Annuler\")]),_c('Button',{attrs:{\"variant\":\"primary\"},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=fe9e5faa&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=fe9e5faa&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 \"fe9e5faa\",\n null\n \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\"))+\" \")]),_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=29f88435&\"\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('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=43e60b1d&\"\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","\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=4a04efe8&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=4a04efe8&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 \"4a04efe8\",\n null\n \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=15ac8000&\"\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:{\"hasErrors\":!!errors.length}},[_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)]),_c('InputError',[_vm._v(_vm._s(errors[0]))])],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=e7203c44&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=e7203c44&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 \"e7203c44\",\n null\n \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\"},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\"},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=279eeb68&\"\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","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\";\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\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\")}}),_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)])}\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","\n\n\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=39e1560c&\"\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(userId, charteVersion) {\n return putApi(`/users/${userId}/charte_engagement`, {\n version_de_charte: charteVersion\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, 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 * @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: 'Inconnue'\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: 'accessToElectricity',\n label: 'électricité'\n },\n {\n value: 'accessToTrash',\n label: 'évac. des déchets'\n },\n {\n value: 'accessToSanitary',\n label: 'toilettes'\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()],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-end mb-12 print:hidden\"},[(_vm.nbPages > 1)?_c('Pagination',{staticClass:\"mt-2 md:mt-0 ml-auto \",attrs:{\"currentPage\":_vm.currentPage,\"nbPages\":_vm.nbPages,\"onChangePage\":_vm.onChangePage}}):_vm._e()],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 inconnue \")]):_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 : inconnue \")]):_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}},[_vm._v(\"eau\")]),_c('TownCardIcon',{attrs:{\"value\":_vm.shantytown.electricityType.value}},[_vm._v(\"électricité\")]),_c('TownCardIcon',{attrs:{\"value\":_vm.shantytown.trashEvacuation}},[_vm._v(\"évac. des déchets\")]),_c('TownCardIcon',{attrs:{\"value\":_vm.shantytown.accessToSanitary}},[_vm._v(\"toilettes\")])],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 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('transition',{attrs:{\"name\":\"fade\"}},[(_vm.isHover)?_c('router-link',{attrs:{\"to\":(\"site/\" + (_vm.shantytown.id))}},[_c('Button',{staticClass:\"text-display-sm hover:underline -mb-1\",attrs:{\"variant\":\"secondaryText\",\"icon\":\"pen\",\"iconPosition\":\"left\"}},[_vm._v(\"Mettre à jour\")])],1):_vm._e()],1),_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.color]},[_c('div',{staticClass:\"mr-2 w-4\"},[(_vm.value === true)?_c('Icon',{attrs:{\"icon\":\"check\"}}):_vm._e(),(_vm.value === false)?_c('Icon',{attrs:{\"icon\":\"times\"}}):_vm._e(),(_vm.value === null)?_c('Icon',{attrs:{\"icon\":\"question\"}}):_vm._e()],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=d828fc2a&\"\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","\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=ae0cb942&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=ae0cb942&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 \"ae0cb942\",\n null\n \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ésultats \")])],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=6ab96d95&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=6ab96d95&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 \"6ab96d95\",\n null\n \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 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 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","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(\" 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\":\"primaryOutline\"},on:{\"click\":_vm.close}},[_vm._v(\" Annuler\")]),_c('Button',{staticClass:\"ml-6\",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 : département, commune, adresse\")]),_c('li',[_vm._v(\" - Site : type de site (terrain / bâti), date d’installation, date de signalement \")]),_c('li',[_vm._v(\" - Habitants : nombre de personnes, mineurs, ménages et origines \")]),(_vm.closedTowns)?_c('li',[_vm._v(\" - Orientations des ménages après la fermeture \")]):_vm._e(),_c('li',[_vm._v(\"- Date de la dernière mise à jour\")])])]),_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=f73c5020&\"\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-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.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=07337edc&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=07337edc&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 \"07337edc\",\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 { all as fetchAll } 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 },\n currentPage: 1\n }\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 },\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 getters: {\n towns: state => {\n return state.towns.data;\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=de506d32&\"\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:{\"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\"},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:{\"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 text-sm p-6 mt-2 flex\"},[_vm._v(\" Un site est un bidonville, squat ou immeuble bâti occupé de manière informelle à des fins d'habitation par plusieurs familles ou personnes. Il se caractérise généralement par l'absence de services de base : eau, électricité, gestion des déchets. La plateforme permet de recenser tous les sites, quelque soit l'origine des personnes et leur nombre. \")]):_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=8c5b0e4c&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=8c5b0e4c&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 \"8c5b0e4c\",\n null\n \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\"}}),_c('InputWaterComments',{model:{value:(_vm.input.water_comments),callback:function ($$v) {_vm.$set(_vm.input, \"water_comments\", $$v)},expression:\"input.water_comments\"}})],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('InputElectricityComments',{model:{value:(_vm.input.electricity_comments),callback:function ($$v) {_vm.$set(_vm.input, \"electricity_comments\", $$v)},expression:\"input.electricity_comments\"}})],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\"}}),_c('InputSanitaryComments',{model:{value:(_vm.input.sanitary_comments),callback:function ($$v) {_vm.$set(_vm.input, \"sanitary_comments\", $$v)},expression:\"input.sanitary_comments\"}})],1),_c('FormParagraph',{attrs:{\"title\":\"L'évacuation des déchets est-elle organisée ?\",\"showMandatoryStar\":true}},[_c('InputTrashEvacuation',{model:{value:(_vm.input.trash_evacuation),callback:function ($$v) {_vm.$set(_vm.input, \"trash_evacuation\", $$v)},expression:\"input.trash_evacuation\"}})],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\"}},[_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=8ebff31e&\"\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\",\"label\":\"Modalités d'accès\",\"info\":\"Exemples : Citerne de 100 litres remplie par les pompiers tous les jours, 3 robinets raccordés par la collectivité, borne incendie à 200 mètres...\",\"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=2c02c94c&\"\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\"},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=7f45c57c&\"\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\"}},[_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=196e48d6&\"\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 : 3 toilettes sèches, toilettes raccordées au réseau, un bloc sanitaire fourni par la ville...\",\"cypressName\":\"sanitary_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!./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=18326038&\"\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","\n\n\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=1311e417&\"\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=baace2c2&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=baace2c2&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 \"baace2c2\",\n null\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=48f19640&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=48f19640&scoped=true&lang=css&\"\nimport style1 from \"./TownForm.vue?vue&type=style&index=1&id=48f19640&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 \"48f19640\",\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.hasPermission('shantytown_comment.create'))?_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._e(),(\n _vm.hasPermission('shantytown_comment.list') &&\n _vm.town.comments.regular.length\n )?_c('div',{class:[\n 'bg-orange200',\n !_vm.hasPermission('shantytown_comment.create') && '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}}})],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(),(\n _vm.hasPermission('shantytown_comment.list') ||\n _vm.hasPermission('shantytown_comment.create')\n )?_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)]):_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 }","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=a83dcdd4&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=a83dcdd4&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 \"a83dcdd4\",\n null\n \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_details\"}},[_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=ef4963b6&\"\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(\" inconnue \")]):_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=64a3074d&\"\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',{staticClass:\"grid grid-cols-2\"},[_c('TownDetailsPanelLivingConditionsSection',{attrs:{\"title\":\"Accès à l’eau\",\"value\":_vm.town.accessToWater,\"cypressName\":\"access_to_water\"}},[(_vm.town.waterComments)?_c('span',{attrs:{\"data-cy-data\":\"water_comments\"}},[_vm._v(_vm._s(_vm.town.waterComments))]):_vm._e()]),_c('TownDetailsPanelLivingConditionsSection',{attrs:{\"title\":\"Accès aux toilettes\",\"value\":_vm.town.accessToSanitary,\"cypressName\":\"access_to_sanitary\"}},[(_vm.town.sanitaryComments)?_c('span',{attrs:{\"data-cy-data\":\"sanitary_comments\"}},[_vm._v(_vm._s(_vm.town.sanitaryComments))]):_vm._e()]),_c('TownDetailsPanelLivingConditionsSection',{attrs:{\"title\":\"Accès à l’électricité\",\"value\":_vm.town.electricityType.value,\"cypressName\":\"electricity_type\"}},[(_vm.town.electricityComments)?_c('span',{attrs:{\"data-cy-data\":\"electricity_comments\"}},[_vm._v(_vm._s(_vm.town.electricityComments))]):_vm._e()]),_c('TownDetailsPanelLivingConditionsSection',{attrs:{\"title\":\"Évacuation des déchets\",\"value\":_vm.town.trashEvacuation,\"cypressName\":\"trash_evacuation\"}})],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',{staticClass:\"flex items-center\"},[_c('Icon',{class:[_vm.colorClass, '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)])}\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!./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=6e3e897c&\"\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=159c4a1e&\"\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-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(\" \"),_c('div',{staticClass:\"flex items-center justify-between\"},[_c('Button',{attrs:{\"variant\":\"primaryText\"},on:{\"click\":_vm.cancelComment}},[_vm._v(\"Annuler\")]),_c('Button',{attrs:{\"variant\":\"primary\"},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=fe9e5faa&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=fe9e5faa&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 \"fe9e5faa\",\n null\n \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\"))+\" \")]),_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=29f88435&\"\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('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","\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=4a04efe8&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=4a04efe8&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 \"4a04efe8\",\n null\n \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","