PageSourceSearch

https://web.suivo.com/app/6641.66beaba947b9e28a.js

js suivo.com collected 2026-10-02 14:41:27 UTC 36,280 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunksuivo_web=self.webpackChunksuivo_web||[]).push([[6641],{1863:(v,d,a)=>{a.d(d,{m:()=>c});var p=a(73664),t=a(87531);let c=(()=>{class u{set alignRight(f){this.classes+=f?" float-end":" float-start"}constructor(f,h){this.elementRef=f,this.translation=h,this.classes="",this.element=f.nativeElement,this.element.innerText="("+this.translation.get("allpages.optional")+")",this.element.style.marginLeft="5px",this.element.style.fontSize="11px",this.element.style.textTransform="lowercase",this.element.style.fontStyle="italic"}static{this.\u0275fac=function(h){return new(h||u)(p.rXU(p.aKT),p.rXU(t.L))}}static{this.\u0275dir=p.FsC({type:u,selectors:[["","field-optional",""]],hostVars:2,hostBindings:function(h,C){2&h&&p.HbH(C.classes)},inputs:{alignRight:"alignRight"},standalone:!1})}}return u})()},6641:(v,d,a)=>{a.r(d),a.d(d,{DashboardsSurveyModule:()=>St});var p=a(38132),t=a(73664),c=a(2615),u=a(17705),S=a(13693),f=a(21413),h=a(60516),C=a(29330);let _=(()=>{class n extends S.S{static{this.dashboardSurveyUrl="../protected/components/surveys/dashboard.json"}static{this.dashboardSurveySaveUrl="../protected/components/surveys/dashboard/save.json"}constructor(e){super(n),this.http=e,this.surveySource=new f.B,this.surveyUpdated$=this.surveySource.asObservable(),this.surveyResult={}}setSurveyResult(e,s){this.surveyResult[e]=s,this.surveySource.next(this.surveyResult)}getSurveyResult(){return this.surveyResult}getSurvey(){return this.http.get(n.dashboardSurveyUrl)}saveSurvey(e){return this.cleanupRequest(e),this.http.post(n.dashboardSurveySaveUrl,{steps:e})}cleanupRequest(e){for(let s in e)if((0,h.hX)(e[s]))delete e[s];else{let o=e[s].length;for(;o--;)(0,h.hX)(e[s][o])?e[s].splice(o,1):this.clean(e[s][o])}}clean(e){let s=e.length;for(;s--;)if((0,h.hX)(e[s]))e.splice(s,1);else for(let o in e[s])(0,h.hX)(e[s][o])?delete e[s][o]:Array.isArray(e[s][o])&&this.clean(e[s][o])}static{this.\u0275fac=function(s){return new(s||n)(c.KVO(C.Qq))}}static{this.\u0275prov=c.jDH({token:n,factory:n.\u0275fac,providedIn:"root"})}}return n})();var b=a(86907),g=a(72200),m=function(n){return n.SINGLE_SELECTION="SINGLE_SELECTION",n.SCORES="SCORES",n.CHECKLIST="CHECKLIST",n.TEXT="TEXT",n.CHECKBOX="CHECKBOX",n}(m||{}),i=a(89417),x=a(30054),M=a(81738),T=a(48926),E=a(34098),y=a(1863);function F(n,r){if(1&n&&(t.j41(0,"label"),t.EFF(1),t.nrm(2,"span",5),t.k0s()),2&n){const e=t.XpG(2).$implicit;t.R7$(),t.SpI(" ",e.commentLabel)}}function I(n,r){if(1&n&&(t.nrm(0,"br"),t.nVh(1,F,3,1,"label"),t.nrm(2,"textarea",4)),2&n){const e=t.XpG().$implicit;t.R7$(),t.vxM(e.commentLabel?1:-1)}}function R(n,r){if(1&n&&(t.j41(0,"li",2)(1,"label"),t.nrm(2,"input",3),t.EFF(3," \xa0"),t.j41(4,"b"),t.EFF(5),t.k0s()(),t.nVh(6,I,3,1),t.k0s()),2&n){const e=r.$implicit;t.Y8G("formGroupName",r.$index),t.R7$(5),t.JRh(e.label),t.R7$(),t.vxM(e.optionalComment?6:-1)}}let N=(()=>{class n{constructor(e){this.fb=e,this.onChange=()=>{},this.onTouched=()=>{},this.valuesForm=this.fb.group({selection:this.fb.array([])}),this.formSubscription=this.valuesForm.valueChanges.subscribe(s=>{if(this.valuesForm.valid){let o={name:this.item.name,items:s.selection.filter(l=>l.checked).map(l=>({name:l.itemValue,comment:l.comment}))};this.onChange(o)}else this.onChange(null)})}ngOnInit(){this.item.values&&this.item.values.forEach(e=>{let s=this.fb.group({checked:!1,itemValue:e.value});e.optionalComment&&s.addControl("comment",this.fb.control(null),{emitEvent:!1}),this.selection.push(s,{emitEvent:!1})})}ngOnDestroy(){this.formSubscription&&this.formSubscription.unsubscribe()}registerOnValidatorChange(e){}validate(e){return this.valuesForm.valid?null:this.valuesForm.errors}registerOnChange(e){this.onChange=e}registerOnTouched(e){this.onTouched=e}setDisabledState(e){}writeValue(e){e&&e.items&&this.selection.controls.forEach(s=>{e.items.forEach(o=>{s.get("itemValue").value===o.name&&(s.get("checked").setValue(!0,{emitEvent:!1}),o.comment&&s.get("comment").setValue(o.comment,{emitEvent:!1}))})})}get selection(){return this.valuesForm.get("selection")}static{this.\u0275fac=function(s){return new(s||n)(t.rXU(i.ze))}}static{this.\u0275cmp=t.VBU({type:n,selectors:[["survey-checklist"]],inputs:{item:"item"},standalone:!1,features:[t.Jv_([{provide:i.kq,useExisting:(0,c.Rfq)(()=>n),multi:!0},{provide:i.cz,useExisting:(0,c.Rfq)(()=>n),multi:!0}])],decls:5,vars:1,consts:[[3,"formGroup"],["formArrayName","selection"],[3,"formGroupName"],["type","checkbox","formControlName","checked"],["rows","3","formControlName","comment",1,"form-control"],["field-optional",""]],template:function(s,o){1&s&&(t.j41(0,"form",0)(1,"ul"),t.qex(2,1),t.Z7z(3,R,7,3,"li",2,t.fX1),t.bVm(),t.k0s()()),2&s&&(t.Y8G("formGroup",o.valuesForm),t.R7$(3),t.Dyx(o.item.values))},dependencies:[i.qT,i.me,i.Zm,i.BC,i.cb,i.j4,i.JD,i.$R,i.v8,y.m],styles:["li[_ngcontent-%COMP%]{margin-bottom:20px}br[_ngcontent-%COMP%] + label[_ngcontent-%COMP%], textarea[_ngcontent-%COMP%]{margin-left:22px}label[_ngcontent-%COMP%]{margin-bottom:10px}label[_ngcontent-%COMP%]   span[_ngcontent-%COMP%]{font-size:12px!important}"],changeDetection:0})}}return n})();const k=n=>({active:n});function V(n,r){1&n&&(t.EFF(0," : "),t.nrm(1,"input",3))}function G(n,r){if(1&n&&(t.j41(0,"div")(1,"label",1),t.nrm(2,"input",2),t.EFF(3),t.nVh(4,V,2,0),t.k0s()()),2&n){const e=r.$implicit,s=t.XpG();t.R7$(),t.Y8G("ngClass",t.eq3(4,k,e.value===s.activeValue)),t.R7$(),t.Y8G("value",e.value),t.R7$(),t.SpI(" \xa0",e.label),t.R7$(),t.vxM(e.optionalComment?4:-1)}}let $=(()=>{class n{constructor(e,s){this.fb=e,this.changeDetector=s,this.onChange=()=>{},this.onTouched=()=>{},this.selectionForm=this.fb.group({selection:[null,i.k0.required],comment:[null,i.k0.required]}),this.formSubscription=this.selectionForm.valueChanges.subscribe(o=>{this.activeValue=this.selection.value,this.valueWithComment&&(this.selection.value===this.valueWithComment.value?this.comment.enable({emitEvent:!1}):(this.comment.setValue(null,{emitEvent:!1}),this.comment.disable({emitEvent:!1}))),this.onChange(this.selectionForm.valid?{value:this.selection.value,comment:this.comment.value}:null)})}ngOnInit(){this.valueWithComment=this.item.values.find(e=>e.optionalComment),this.valueWithComment&&(this.selectionForm.addControl("comment",this.fb.control([null,i.k0.required]),{emitEvent:!1}),this.comment.disable({emitEvent:!1}))}ngOnDestroy(){this.formSubscription&&this.formSubscription.unsubscribe()}registerOnValidatorChange(e){this.onChange=e}validate(e){return this.selectionForm.valid?this.selection.valid?this.comment&&!this.comment.valid?this.comment.errors:null:this.selection.errors:this.selectionForm.errors}registerOnChange(e){this.onChange=e}registerOnTouched(e){this.onTouched=e}writeValue(e){e&&(this.selection.setValue(e.value,{emitEvent:!1}),this.comment.setValue(e.comment,{emitEvent:!1}))}get selection(){return this.selectionForm.get("selection")}get comment(){return this.selectionForm.get("comment")}static{this.\u0275fac=function(s){return new(s||n)(t.rXU(i.ze),t.rXU(u.gRc))}}static{this.\u0275cmp=t.VBU({type:n,selectors:[["survey-single-selection"]],inputs:{item:"item"},standalone:!1,features:[t.Jv_([{provide:i.kq,useExisting:(0,c.Rfq)(()=>n),multi:!0},{provide:i.cz,useExisting:(0,c.Rfq)(()=>n),multi:!0}])],decls:3,vars:1,consts:[[3,"formGroup"],[3,"ngClass"],["type","radio","formControlName","selection",3,"value"],["type","text","formControlName","comment",1,"form-control","input-md"]],template:function(s,o){1&s&&(t.j41(0,"form",0),t.Z7z(1,G,5,6,"div",null,t.fX1),t.k0s()),2&s&&(t.Y8G("formGroup",o.selectionForm),t.R7$(),t.Dyx(o.item.values))},dependencies:[i.qT,i.me,i.Fm,i.BC,i.cb,i.j4,i.JD,g.YU],styles:["[_nghost-%COMP%]   form[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]   label[_ngcontent-%COMP%]:hover{cursor:pointer;background-color:var(--colors-attention-light)}label[_ngcontent-%COMP%]{border:1px solid var(--colors-general-soft-grey);padding:18px 15px;width:100%;line-height:11px}label[_ngcontent-%COMP%]   input[type=radio][_ngcontent-%COMP%], label[_ngcontent-%COMP%]   span[_ngcontent-%COMP%]{vertical-align:middle}.active[_ngcontent-%COMP%]{border-color:var(--colors-attention-primary);background-color:var(--colors-attention-light)}input[type=text][_ngcontent-%COMP%]{margin-top:10px}input[type=radio][_ngcontent-%COMP%]{margin-top:-3px}"],changeDetection:0})}}return n})();const D=(n,r,e,s)=>({"--bar-width":n,"--current-bar-width":r,"--bar-left":e,"--number-of-steps":s}),X=(n,r)=>({left:n,opacity:r}),w=n=>({active:n});function A(n,r){if(1&n&&t.nrm(0,"input",3)(1,"label",4),2&n){const e=r.$implicit,s=t.XpG();t.Y8G("id",s.myCounter+"_"+e)("value",e),t.R7$(),t.Y8G("for",s.myCounter+"_"+e)("ngClass",t.eq3(5,w,s.sliderScore.value>=e&&null!==s.sliderScore.value)),t.BMQ("data-before-content",s.steps[e])}}let Y=(()=>{class n{static{this.counter=0}constructor(e,s){this.fb=e,this.changeDetector=s,this.currentIndicatorPosition=10,this.currentIndicatorOpacity=0,this.barWidth=0,this.objectKeys=Object.keys,this.onChange=()=>{},this.onTouched=()=>{},n.counter++,this.scoreForm=this.fb.group({sliderScore:[null,i.k0.required]})}ngOnInit(){this.myCounter=n.counter.toString();const e=Object.keys(this.steps).length;this.barWidth=(e-1)/e,this.left=50/e,this.scoreSubscription=this.sliderScore.valueChanges.subscribe(s=>{this.calculatePositions(+s),this.onChange(+s)})}ngOnDestroy(){this.scoreSubscription&&this.scoreSubscription.unsubscribe()}registerOnChange(e){this.onChange=e}registerOnTouched(e){this.onTouched=e}writeValue(e){(0,h.hX)(e)||(this.sliderScore.setValue(e.toString(),{emitEvent:!1}),this.calculatePositions(e))}calculatePositions(e){const s=Object.keys(this.steps).length;this.currentIndicatorOpacity=100,this.currentIndicatorPosition=(e+1)*(100/s)-this.left,this.currentBarWidth=e/s,this.changeDetector.markForCheck()}get sliderScore(){return this.scoreForm.get("sliderScore")}static{this.\u0275fac=function(s){return new(s||n)(t.rXU(i.ze),t.rXU(u.gRc))}}static{this.\u0275cmp=t.VBU({type:n,selectors:[["survey-range-slider"]],inputs:{steps:"steps"},standalone:!1,features:[t.Jv_([{provide:i.kq,useExisting:(0,c.Rfq)(()=>n),multi:!0}])],decls:5,vars:12,consts:[[1,"sliderFormWrapper"],[3,"formGroup"],[1,"currentIndicator",3,"ngStyle"],["type","radio","formControlName","sliderScore",3,"id","value"],[3,"for","ngClass"]],template:function(s,o){1&s&&(t.j41(0,"div",0)(1,"form",1),t.Z7z(2,A,2,7,null,
1null,t.fX1),t.nrm(4,"div",2),t.k0s()()),2&s&&(t.R7$(),t.Aen(t.ziG(4,D,o.barWidth,o.currentBarWidth,o.left+"%",o.objectKeys(o.steps).length)),t.Y8G("formGroup",o.scoreForm),t.R7$(),t.Dyx(o.objectKeys(o.steps)),t.R7$(2),t.Y8G("ngStyle",t.l_i(9,X,o.currentIndicatorPosition+"%",o.currentIndicatorOpacity+"%")))},dependencies:[i.qT,i.me,i.Fm,i.BC,i.cb,i.j4,i.JD,g.YU,g.B3],styles:['.sliderFormWrapper[_ngcontent-%COMP%]   form[_ngcontent-%COMP%]{display:flex;flex-direction:row;align-content:stretch;position:relative;width:100%;height:50px;margin-bottom:5px}.sliderFormWrapper[_ngcontent-%COMP%]   form[_ngcontent-%COMP%]:before{content:"";position:absolute;height:5px;width:100%;width:calc(100% * var(--bar-width));top:50%;left:50%;transform:translate(-50%,-50%);background-color:var(--colors-general-soft-grey)}.sliderFormWrapper[_ngcontent-%COMP%]   form[_ngcontent-%COMP%]:after{content:"";position:absolute;height:5px;width:100%;width:calc(100% * var(--current-bar-width));top:50%;left:var(--bar-left);transform:translateY(-50%);background-color:var(--colors-attention-primary);transition:all .2s ease-in-out}.sliderFormWrapper[_ngcontent-%COMP%]   form[_ngcontent-%COMP%]   input[_ngcontent-%COMP%], .sliderFormWrapper[_ngcontent-%COMP%]   form[_ngcontent-%COMP%]   label[_ngcontent-%COMP%]{box-sizing:border-box;flex:1;-webkit-user-select:none;user-select:none;cursor:pointer;z-index:1}.sliderFormWrapper[_ngcontent-%COMP%]   form[_ngcontent-%COMP%]   input[type=radio][_ngcontent-%COMP%]{display:none}.sliderFormWrapper[_ngcontent-%COMP%]   form[_ngcontent-%COMP%]   input[type=radio][_ngcontent-%COMP%]:checked + label[_ngcontent-%COMP%]:after{width:26px;height:26px;border:3px solid var(--colors-general-white);border-radius:50%}.sliderFormWrapper[_ngcontent-%COMP%]   form[_ngcontent-%COMP%]   input[type=radio][_ngcontent-%COMP%]:checked + label[_ngcontent-%COMP%]:before{opacity:1;font-size:13px;color:var(--colors-general-black);font-weight:700}.sliderFormWrapper[_ngcontent-%COMP%]   form[_ngcontent-%COMP%]   label[_ngcontent-%COMP%]{display:inline-block;position:relative;width:20%;height:100%;-webkit-user-select:none;user-select:none}.sliderFormWrapper[_ngcontent-%COMP%]   form[_ngcontent-%COMP%]   label.active[_ngcontent-%COMP%]:after{background-color:var(--colors-attention-primary)}.sliderFormWrapper[_ngcontent-%COMP%]   form[_ngcontent-%COMP%]   label[_ngcontent-%COMP%]:hover:before{opacity:1}.sliderFormWrapper[_ngcontent-%COMP%]   form[_ngcontent-%COMP%]   label[_ngcontent-%COMP%]:hover:after{width:18px;height:18px;border-radius:50%;border:2px solid var(--colors-general-white)}.sliderFormWrapper[_ngcontent-%COMP%]   form[_ngcontent-%COMP%]   label[_ngcontent-%COMP%]:before{content:attr(data-before-content);position:absolute;font-size:12px;left:50%;transform:translate(-50%,30px);padding-top:8px;color:var(--colors-general-hard-grey);white-space:nowrap;transition:all .2s ease-in-out;opacity:0}.sliderFormWrapper[_ngcontent-%COMP%]   form[_ngcontent-%COMP%]   label[_ngcontent-%COMP%]:first-of-type:before, .sliderFormWrapper[_ngcontent-%COMP%]   form[_ngcontent-%COMP%]   label[_ngcontent-%COMP%]:last-of-type:before{opacity:1}.sliderFormWrapper[_ngcontent-%COMP%]   form[_ngcontent-%COMP%]   label[_ngcontent-%COMP%]:after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:4px;height:12px;background-color:var(--colors-general-soft-grey);border-color:var(--colors-general-white);border-radius:5px;pointer-events:none;-webkit-user-select:none;user-select:none;z-index:1;cursor:pointer;transition:all .2s ease-in-out}.currentIndicator[_ngcontent-%COMP%]{display:block;position:absolute;top:50%;left:var(--bar-left);width:7px;height:7px;background-color:var(--colors-general-white);border-radius:50%;transition:all .2s ease-in-out;transform:translate(-50%,-50%);z-index:2}'],changeDetection:0})}}return n})();function L(n,r){if(1&n&&(t.j41(0,"div",1)(1,"b"),t.EFF(2),t.k0s(),t.nrm(3,"survey-range-slider",3),t.k0s()),2&n){const e=t.XpG();t.R7$(2),t.JRh(e.item.score2Label),t.R7$(),t.Y8G("steps",e.steps)}}function U(n,r){if(1&n&&(t.j41(0,"div",1),t.EFF(1),t.nrm(2,"span",4)(3,"textarea",5),t.k0s()),2&n){const e=t.XpG();t.R7$(),t.SpI(" ",e.item.commentLabel)}}let j=(()=>{class n{constructor(e){this.fb=e,this.onChange=()=>{},this.onTouched=()=>{},this.scoreForm=this.fb.group({score1:[null,i.k0.required]}),this.formSubscription=this.scoreForm.valueChanges.subscribe(s=>{this.onChange(this.scoreForm.valid?s:null)})}ngOnInit(){this.item.score2Label&&this.scoreForm.addControl("score2",this.fb.control(null,i.k0.required),{emitEvent:!1}),this.item.commentLabel&&this.scoreForm.addControl("comment",this.fb.control(null),{emitEvent:!1})}ngOnDestroy(){this.formSubscription&&this.formSubscription.unsubscribe()}registerOnValidatorChange(e){}validate(e){return this.scoreForm.valid?null:this.scoreForm.errors}registerOnChange(e){this.onChange=e}registerOnTouched(e){this.onTouched=e}setDisabledState(e){}writeValue(e){e&&(this.score1.setValue(e.score1),this.item.score2Label&&this.score2.setValue(e.score2),this.item.commentLabel&&this.comment.setValue(e.comment))}get score1(){return this.scoreForm.get("score1")}get score2(){return this.scoreForm.get("score2")}get comment(){return this.scoreForm.get("comment")}static{this.\u0275fac=function(s){return new(s||n)(t.rXU(i.ze))}}static{this.\u0275cmp=t.VBU({type:n,selectors:[["survey-score"]],inputs:{steps:"steps",item:"item"},standalone:!1,features:[t.Jv_([{provide:i.kq,useExisting:(0,c.Rfq)(()=>n),multi:!0},{provide:i.cz,useExisting:(0,c.Rfq)(()=>n),multi:!0}])],decls:7,vars:5,consts:[[3,"formGroup"],[1,"scoreItem"],["formControlName","score1",3,"steps"],["formControlName","score2",3,"steps"],["field-optional",""],["rows","4","formControlName","comment",1,"form-control"]],template:function(s,o){1&s&&(t.j41(0,"form",0)(1,"div",1)(2,"b"),t.EFF(3),t.k0s(),t.nrm(4,"survey-range-slider",2),t.k0s(),t.nVh(5,L,4,2,"div",1),t.nVh(6,U,4,1,"div",1),t.k0s()),2&s&&(t.Y8G("formGroup",o.scoreForm),t.R7$(3),t.JRh(o.item.score1Label),t.R7$(),t.Y8G("steps",o.steps),t.R7$(),t.vxM(o.item.score2Label?5:-1),t.R7$(),t.vxM(o.item.commentLabel?6:-1))},dependencies:[i.qT,i.me,i.BC,i.cb,i.j4,i.JD,y.m,Y],styles:[".scoreItem[_ngcontent-%COMP%]{margin-bottom:40px;margin-top:10px}.scoreItem[_ngcontent-%COMP%]:not(:first-child){margin-top:20px}.scoreItem[_ngcontent-%COMP%]:last-child{margin-bottom:20px}.scoreItem[_ngcontent-%COMP%]   textarea[_ngcontent-%COMP%]{margin-top:10px}.scoreItem[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{font-size:12px!important}"],changeDetection:0})}}return n})();const B=n=>({noPadding:n});function z(n,r){if(1&n&&(t.qex(0),t.EFF(1),t.bVm()),2&n){const e=t.XpG(2);t.R7$(),t.SpI("",e.index,".\xa0")}}function W(n,r){if(1&n&&(t.j41(0,"span"),t.EFF(1),t.k0s()),2&n){const e=t.XpG(2);t.R7$(),t.JRh(e.item.title)}}function K(n,r){if(1&n&&(t.j41(0,"h2"),t.DNE(1,z,2,1,"ng-container",0)(2,W,2,1,"span",0),t.k0s()),2&n){const e=t.XpG();t.R7$(),t.Y8G("ngIf",e.index),t.R7$(),t.Y8G("ngIf",e.item.type!==e.surveyType.TEXT)}}function J(n,r){if(1&n&&t.nrm(0,"survey-single-selection",10),2&n){const e=t.XpG(2);t.Y8G("item",e.item)}}function H(n,r){if(1&n&&t.nrm(0,"survey-score",11),2&n){const e=t.XpG(2);t.Y8G("steps",e.scoreValues)("item",e.item)}}function q(n,r){if(1&n&&t.nrm(0,"survey-checklist",10),2&n){const e=t.XpG(2);t.Y8G("item",e.item)}}function Z(n,r){1&n&&t.nrm(0,"span",14)}function Q(n,r){if(1&n&&(t.qex(0),t.j41(1,"label"),t.EFF(2),t.k0s(),t.DNE(3,Z,
11,0,"span",12),t.nrm(4,"input",13),t.bVm()),2&n){const e=t.XpG(2);t.R7$(2),t.JRh(e.item.title),t.R7$(),t.Y8G("ngIf",!e.item.optional)}}function tt(n,r){if(1&n&&(t.j41(0,"label",15),t.nrm(1,"input",16),t.EFF(2,"\xa0 "),t.j41(3,"span"),t.EFF(4),t.k0s()()),2&n){const e=t.XpG(2);t.R7$(4),t.JRh(e.item.title)}}function et(n,r){if(1&n&&(t.qex(0),t.j41(1,"div",3)(2,"div",4),t.DNE(3,J,1,1,"survey-single-selection",5)(4,H,1,2,"survey-score",6)(5,q,1,1,"survey-checklist",5)(6,Q,5,2,"ng-container",7)(7,tt,5,1,"label",8),t.nrm(8,"show-errors",9),t.k0s()(),t.bVm()),2&n){const e=t.XpG();t.R7$(2),t.Y8G("ngSwitch",e.item.type),t.R7$(),t.Y8G("ngSwitchCase",e.surveyType.SINGLE_SELECTION),t.R7$(),t.Y8G("ngSwitchCase",e.surveyType.SCORES),t.R7$(),t.Y8G("ngSwitchCase",e.surveyType.CHECKLIST),t.R7$(),t.Y8G("ngSwitchCase",e.surveyType.TEXT),t.R7$(),t.Y8G("ngSwitchCase",e.surveyType.CHECKBOX),t.R7$(),t.Y8G("control",e.result)}}function nt(n,r){if(1&n&&t.nrm(0,"survey-item",19),2&n){const e=r.index,s=t.XpG(2);t.Y8G("formControlName",e)("scoreValues",s.scoreValues)("item",s.item.items[e])("index",s.item.showIndex?s.index+"."+(e+1):"")}}function st(n,r){if(1&n&&(t.j41(0,"div",17),t.DNE(1,nt,1,4,"survey-item",18),t.k0s()),2&n){const e=t.XpG();t.R7$(),t.Y8G("ngForOf",e.subItems.controls)}}let ot=(()=>{class n{get item(){return this._item}set item(e){this._item=e,(this.item.type===m.SINGLE_SELECTION||this.item.type===m.TEXT||this.item.type===m.CHECKBOX)&&(this.noPadding=!0)}constructor(e,s){this.fb=e,this.changeDetector=s,this.surveyType=m,this.noPadding=!1,this.onChange=()=>{},this.onTouched=()=>{},this.itemForm=this.fb.group({result:null}),this.formSubscription=this.itemForm.valueChanges.subscribe(o=>{if(this.itemForm.valid){let l=o.result||{};(this.item.type===m.TEXT||this.item.type===m.CHECKBOX)&&(l={value:o.result}),l.name=this.item.name,this.item.items&&0!=this.item.items.length&&(l.items=o.subItems),this.onChange(l)}else this.onChange(null)})}ngOnInit(){if(!this.item.optional&&!this.item.items&&this.result.addValidators(i.k0.required),this.item.type===m.TEXT&&("TELEPHONE"===this.item.name?this.result.addValidators(x.U):"EMAIL"===this.item.name&&this.result.addValidators(M.B)),this.item.items&&0!=this.item.items.length){let e=[];this.item.items.forEach(s=>{e.push(this.fb.control(this.getDefaultValue(s)))}),this.itemForm.addControl("subItems",this.fb.array(e),{emitEvent:!1})}}ngOnDestroy(){this.formSubscription&&this.formSubscription.unsubscribe()}registerOnValidatorChange(e){this.onChange=e}validate(e){return this.result.valid?(this.subItems&&!this.subItems.valid&&this.subItems.controls.forEach(s=>{if(!s.valid)return s.errors}),this.itemForm.valid?null:this.itemForm.errors):this.result.errors}registerOnChange(e){this.onChange=e}registerOnTouched(e){this.onTouched=e}setDisabledState(e){}writeValue(e){(0,h.hX)(e)?this.result.setValue(this.getDefaultValue(this.item)):(this.result.setValue(this.item.type===m.CHECKBOX||this.item.type===m.TEXT?e.value:e),e.items&&this.item.items&&0!=this.item.items.length&&this.subItems.controls.forEach((s,o)=>{s.setValue(e.items[o])}))}getDefaultValue(e){let s=null;return e.type===m.SCORES&&(s={score1:2},e.score2Label&&(s.score2=2)),s}get result(){return this.itemForm.get("result")}get subItems(){return this.itemForm.get("subItems")}static{this.\u0275fac=function(s){return new(s||n)(t.rXU(i.ze),t.rXU(u.gRc))}}static{this.\u0275cmp=t.VBU({type:n,selectors:[["survey-item"]],inputs:{scoreValues:"scoreValues",index:"index",item:"item"},standalone:!1,features:[t.Jv_([{provide:i.kq,useExisting:(0,c.Rfq)(()=>n),multi:!0},{provide:i.cz,useExisting:(0,c.Rfq)(()=>n),multi:!0}])],decls:4,vars:7,consts:[[4,"ngIf"],[3,"formGroup","ngClass"],["class","subItems","formArrayName","subItems",4,"ngIf"],[1,"row"],[1,"col-12",3,"ngSwitch"],["formControlName","result",3,"item",4,"ngSwitchCase"],["formControlName","result",3,"steps","item",4,"ngSwitchCase"],[4,"ngSwitchCase"],["class","checkboxItem",4,"ngSwitchCase"],[3,"control"],["formControlName","result",3,"item"],["formControlName","result",3,"steps","item"],["field-required","",4,"ngIf"],["type","text","formControlName","result",1,"form-control","input-md"],["field-required",""],[1,"checkboxItem"],["type","checkbox","formControlName","result"],["formArrayName","subItems",1,"subItems"],[3,"formControlName","scoreValues","item","index",4,"ngFor","ngForOf"],[3,"formControlName","scoreValues","item","index"]],template:function(s,o){1&s&&(t.DNE(0,K,3,2,"h2",0),t.j41(1,"form",1),t.DNE(2,et,9,7,"ng-container",0)(3,st,2,1,"div",2),t.k0s()),2&s&&(t.Y8G("ngIf",o.item.title&&o.item.type!==o.surveyType.TEXT&&o.item.type!==o.surveyType.CHECKBOX),t.R7$(),t.Y8G("formGroup",o.itemForm)("ngClass",t.eq3(5,B,o.noPadding)),t.R7$(),t.Y8G("ngIf",o.item.type),t.R7$(),t.Y8G("ngIf",o.item.items))},dependencies:[i.qT,i.me,i.Zm,i.BC,i.cb,i.j4,i.JD,i.v8,T.w,E.T,g.YU,g.Sq,g.bT,g.ux,g.e1,n,N,$,j],styles:["[_nghost-%COMP%]   form[_ngcontent-%COMP%]{width:550px}[_nghost-%COMP%] > form[_ngcontent-%COMP%]{padding:0 30px}[_nghost-%COMP%]   form.noPadding[_ngcontent-%COMP%]{padding:0}.subItems[_ngcontent-%COMP%]{padding-left:30px}h2[_ngcontent-%COMP%]{font-size:16px;margin-bottom:10px}.checkboxItem[_ngcontent-%COMP%]{display:flex}"],changeDetection:0})}}return n})();var O=a(77120);function it(n,r){if(1&n&&t.nrm(0,"div",7),2&n){const e=t.XpG().$implicit;t.Y8G("innerHTML",e.description,t.npT)}}function rt(n,r){if(1&n&&t.nrm(0,"survey-item",9),2&n){const e=r.$index,s=t.XpG().$index,o=t.XpG(2);t.Y8G("formControlName",e)("scoreValues",o.scoreValues)("item",o.surveyStep.sections[s].items[e])("index",o.surveyStep.sections[s].showIndex?""+(e+1):null)}}function at(n,r){if(1&n&&(t.j41(0,"h1"),t.EFF(1),t.k0s(),t.nVh(2,it,1,1,"div",7),t.qex(3,8),t.Z7z(4,rt,1,4,"survey-item",9,t.fX1),t.bVm()),2&n){const e=r.$implicit,s=r.$index,o=t.XpG(2);t.R7$(),t.JRh(e.title),t.R7$(),t.vxM(e.description?2:-1),t.R7$(),t.Y8G("formArrayName",s),t.R7$(),t.Dyx(o.sections.controls[s].controls)}}function ct(n,r){if(1&n&&(t.j41(0,"form",1),t.qex(1,6),t.Z7z(2,at,6,3,null,null,t.fX1),t.bVm(),t.k0s()),2&n){const e=t.XpG();t.Y8G("formGroup",e.stepForm),t.R7$(2),t.Dyx(e.surveyStep.sections)}}function lt(n,r){if(1&n){const e=t.RV6();t.j41(0,"button",10),t.bIt("click",function(){c.eBV(e);const o=t.XpG();return c.Njj(o.previousStep())}),t.EFF(1),t.nI1(2,"translate"),t.k0s()}2&n&&(t.R7$(),t.SpI(" ",t.bMT(2,1,"allpages.button.back")," "))}let mt=(()=>{class n{set surveyStep(e){this._surveyStep=e,this.setupForm()}constructor(e,s,o){this.fb=e,this.changeDetector=s,this.surveyService=o,this.onPreviousStep=new t.bkB,this.onNextStep=new t.bkB,this.surveyType=m,this.formLoading=!0,this.stepForm=this.fb.group({sections:this.fb.array([])}),this.formSubscription=this.stepForm.valueChanges.subscribe(l=>{this.formResult=l.sections})}setupForm(){this.formLoading=!0,this.changeDetector.markForCheck();let e=this.sections.length;for(;e--;)this.sections.removeAt(e);this.stepForm.reset({sections:this.fb.array([])},{emitEvent:!1}),this.surveyStep.sections.forEach((s,o)=>{let l=[];
1s.items&&0!=s.items.length&&s.items.forEach((Pt,xt)=>{l.push(this.fb.control(this.surveyStep.result&&this.surveyStep.result[o]?this.surveyStep.result[o][xt]:this.getDefaultValue(Pt)))}),this.sections.push(this.fb.array(l),{emitEvent:!1})}),this.formLoading=!1,this.changeDetector.markForCheck(),setTimeout(()=>{this.changeDetector.markForCheck()})}previousStep(){this.surveyService.setSurveyResult(this.surveyStep.index,this.formResult),setTimeout(()=>{this.onPreviousStep.emit()})}nextStep(){this.stepForm.valid&&(this.surveyService.setSurveyResult(this.surveyStep.index,this.formResult),setTimeout(()=>{this.onNextStep.emit()}))}getDefaultValue(e){let s=null;return e.type===m.SCORES&&(s={score1:2},e.score2Label&&(s.score2=2)),s}get sections(){return this.stepForm.get("sections")}get surveyStep(){return this._surveyStep}static{this.\u0275fac=function(s){return new(s||n)(t.rXU(i.ze),t.rXU(u.gRc),t.rXU(_))}}static{this.\u0275cmp=t.VBU({type:n,selectors:[["survey-step"]],inputs:{scoreValues:"scoreValues",result:"result",surveyStep:"surveyStep",canSubmit:"canSubmit"},outputs:{onPreviousStep:"onPreviousStep",onNextStep:"onNextStep"},standalone:!1,decls:8,vars:9,consts:[[3,"loading","size","center"],[3,"formGroup"],[1,"row"],[1,"col-12"],["type","button",1,"btn","btn-lg","float-start"],["type","button",1,"btn","btn-lg","submit","float-start",3,"click","disabled"],["formArrayName","sections"],[1,"bulletedList",3,"innerHTML"],[3,"formArrayName"],[3,"formControlName","scoreValues","item","index"],["type","button",1,"btn","btn-lg","float-start",3,"click"]],template:function(s,o){1&s&&(t.nrm(0,"progress-indicator",0),t.nVh(1,ct,4,1,"form",1),t.j41(2,"div",2)(3,"div",3),t.nVh(4,lt,3,3,"button",4),t.j41(5,"button",5),t.bIt("click",function(){return o.nextStep()}),t.EFF(6),t.nI1(7,"translate"),t.k0s()()()),2&s&&(t.Y8G("loading",o.formLoading)("size",30)("center",!0),t.R7$(),t.vxM(o.stepForm&&!o.formLoading?1:-1),t.R7$(3),t.vxM(0!=o.surveyStep.index?4:-1),t.R7$(),t.Y8G("disabled",!o.stepForm.valid),t.R7$(),t.SpI(" ",t.bMT(7,7,o.canSubmit?"allpages.button.submit":"allpages.next")," "))},dependencies:[i.qT,i.BC,i.cb,i.j4,i.JD,i.v8,b.E,ot,O.D],styles:["h1[_ngcontent-%COMP%]{margin-bottom:30px;line-height:1.35}h1[_ngcontent-%COMP%]:not(:first-of-type){margin-top:60px}form[_ngcontent-%COMP%]{max-width:670px}form[_ngcontent-%COMP%] > survey-item[_ngcontent-%COMP%]{display:block;margin-top:40px;margin-bottom:30px}"],changeDetection:0})}}return n})();const ut=(n,r)=>({active:n,completed:r});function ht(n,r){if(1&n&&(t.j41(0,"div",8)(1,"div"),t.EFF(2),t.k0s(),t.j41(3,"div",9),t.EFF(4),t.k0s()()),2&n){const e=r.$implicit,s=t.XpG(2);t.Y8G("ngClass",t.l_i(3,ut,s.activeStep===e.index,s.activeStep>e.index||s.surveyFinished)),t.R7$(2),t.JRh(e.title),t.R7$(2),t.JRh(e.sections.length)}}function pt(n,r){if(1&n&&t.Z7z(0,ht,5,6,"div",8,t.fX1),2&n){const e=t.XpG();t.Dyx(e.survey.steps)}}function gt(n,r){if(1&n&&(t.j41(0,"span"),t.EFF(1),t.k0s()),2&n){const e=t.XpG(2);t.R7$(),t.JRh(e.survey.steps[e.activeStep].title)}}function dt(n,r){1&n&&(t.j41(0,"span"),t.EFF(1),t.nI1(2,"translate"),t.k0s()),2&n&&(t.R7$(),t.JRh(t.bMT(2,1,"dashboards.survey.thanks.header")))}function ft(n,r){if(1&n){const e=t.RV6();t.j41(0,"survey-step",14),t.bIt("onPreviousStep",function(){c.eBV(e);const o=t.XpG(2);return c.Njj(o.previousStep())})("onNextStep",function(){c.eBV(e);const o=t.XpG(2);return c.Njj(o.nextStep())}),t.k0s()}if(2&n){const e=t.XpG(2);t.Y8G("scoreValues",e.survey.scoreValues)("surveyStep",e.survey.steps[e.activeStep])("canSubmit",e.activeStep===e.survey.steps.length-1)}}function vt(n,r){1&n&&(t.j41(0,"div",13)(1,"span",15),t.nrm(2,"i",16)(3,"i",17),t.k0s(),t.j41(4,"h1")(5,"b"),t.EFF(6),t.nI1(7,"translate"),t.k0s()(),t.j41(8,"p"),t.EFF(9),t.nI1(10,"translate"),t.k0s(),t.j41(11,"a",18)(12,"button",19),t.EFF(13),t.nI1(14,"translate"),t.k0s()()()),2&n&&(t.R7$(6),t.JRh(t.bMT(7,3,"dashboards.survey.thanks.title")),t.R7$(3),t.JRh(t.bMT(10,5,"dashboards.survey.thanks.text")),t.R7$(4),t.SpI(" ",t.bMT(14,7,"allpages.button.backTo")," "))}function Ct(n,r){if(1&n&&(t.j41(0,"div",10)(1,"h2"),t.nVh(2,gt,2,1,"span"),t.nVh(3,dt,3,3,"span"),t.k0s()(),t.j41(4,"div",11),t.nVh(5,ft,1,3,"survey-step",12),t.nVh(6,vt,15,9,"div",13),t.k0s()),2&n){const e=t.XpG();t.R7$(2),t.vxM(e.surveyFinished?-1:2),t.R7$(),t.vxM(e.surveyFinished?3:-1),t.R7$(2),t.vxM(e.surveyFinished?-1:5),t.R7$(),t.vxM(e.surveyFinished?6:-1)}}let _t=(()=>{class n{constructor(e,s){this.surveyService=e,this.changeDetector=s,this.surveyFinished=!1,this.surveyService.getSurvey().subscribe(o=>{this.survey=o,this.activeStep=0,this.changeDetector.markForCheck()}),this.surveySubscription=this.surveyService.surveyUpdated$.subscribe(o=>{this.survey.steps.forEach(l=>
1{o[l.index]&&(l.result=o[l.index])})})}ngOnDestroy(){this.surveySubscription&&this.surveySubscription.unsubscribe()}previousStep(){this.activeStep-=1,this.scrollToTop()}nextStep(){this.activeStep===this.survey.steps.length-1?this.submitSurvey():(this.activeStep+=1,this.scrollToTop())}scrollToTop(){document.getElementById("dashboardsSurveyContainer").scrollIntoView()}submitSurvey(){this.surveyService.saveSurvey(this.surveyService.getSurveyResult()).subscribe(e=>{this.surveyFinished=!0,this.activeStep=null,this.changeDetector.markForCheck()})}static{this.\u0275fac=function(s){return new(s||n)(t.rXU(_),t.rXU(u.gRc))}}static{this.\u0275cmp=t.VBU({type:n,selectors:[["dashboards-survey"]],standalone:!1,decls:13,vars:9,consts:[["id","dashboardsSurveyContainer",1,"container-fluid"],[1,"content-container"],[1,"container-fluid"],[1,"pageNavigation"],["href","../protected/redirect.do",1,"logo"],[3,"src"],[1,"settingsContentContainer"],[3,"loading","size","center"],[1,"pageNavigationItem",3,"ngClass"],[1,"numberOfQuestions"],[1,"surveySectionTitle","generalContent"],[1,"surveySectionContent","generalContent"],[3,"scoreValues","surveyStep","canSubmit"],[1,"surveyCompletedContainer"],[3,"onPreviousStep","onNextStep","scoreValues","surveyStep","canSubmit"],[1,"fa-stack","fa-3x"],[1,"far","fa-clipboard"],[1,"fas","fa-check","fa-stack-lg"],["href","../protected/redirect.do"],[1,"btn","btn-md","submit"]],template:function(s,o){1&s&&(t.j41(0,"div",0)(1,"div",1)(2,"div",2)(3,"div",3)(4,"a",4),t.nrm(5,"img",5),t.k0s(),t.j41(6,"h2"),t.EFF(7),t.nI1(8,"translate"),t.k0s(),t.nVh(9,pt,2,0),t.k0s(),t.j41(10,"div",6),t.nrm(11,"progress-indicator",7),t.nVh(12,Ct,7,4),t.k0s()()()()),2&s&&(t.R7$(5),t.Y8G("src","./img/suivo/suivo_logo.png",t.B4B),t.R7$(2),t.JRh(t.bMT(8,7,"dashboards.survey.title")),t.R7$(2),t.vxM(o.survey?9:-1),t.R7$(2),t.Y8G("loading",!o.survey)("size",30)("center",!0),t.R7$(),t.vxM(o.survey?12:-1))},dependencies:[b.E,g.YU,mt,O.D],styles:['[_nghost-%COMP%]{font-size:14px}[_nghost-%COMP%]   progress-indicator[_ngcontent-%COMP%]{position:absolute;top:50%;transform:translate(-50%,-50%);left:50%}[_nghost-%COMP%]   .content-container[_ngcontent-%COMP%], [_nghost-%COMP%]   .container-fluid[_ngcontent-%COMP%]{height:100%}[_nghost-%COMP%]   .pageNavigation[_ngcontent-%COMP%]{top:0;display:flex;flex-direction:column;align-items:center;padding:30px 1px;width:330px}[_nghost-%COMP%]   .pageNavigation[_ngcontent-%COMP%]   h2[_ngcontent-%COMP%]{margin-bottom:15%;font-size:15px}[_nghost-%COMP%]   .pageNavigation[_ngcontent-%COMP%]   .pageNavigationItem[_ngcontent-%COMP%]{width:100%;display:flex;align-items:center;justify-content:space-between;margin-bottom:5px;cursor:default;font-size:14px}[_nghost-%COMP%]   .pageNavigation[_ngcontent-%COMP%]   .pageNavigationItem[_ngcontent-%COMP%]:hover:not(.active){background-color:unset}[_nghost-%COMP%]   .pageNavigation[_ngcontent-%COMP%]   .pageNavigationItem[_ngcontent-%COMP%]   .numberOfQuestions[_ngcontent-%COMP%]{background-color:var(--colors-general-soft-grey);color:var(--colors-general-hard-grey);border-radius:10px;padding:2px 10px;font-size:12px}[_nghost-%COMP%]   .pageNavigation[_ngcontent-%COMP%]   .pageNavigationItem.active[_ngcontent-%COMP%]   .numberOfQuestions[_ngcontent-%COMP%], [_nghost-%COMP%]   .pageNavigation[_ngcontent-%COMP%]   .pageNavigationItem.completed[_ngcontent-%COMP%]   .numberOfQuestions[_ngcontent-%COMP%]{color:var(--colors-general-white)}[_nghost-%COMP%]   .pageNavigation[_ngcontent-%COMP%]   .pageNavigationItem.active[_ngcontent-%COMP%]   .numberOfQuestions[_ngcontent-%COMP%]{background-color:var(--colors-attention-primary)}[_nghost-%COMP%]   .pageNavigation[_ngcontent-%COMP%]   .pageNavigationItem.completed[_ngcontent-%COMP%]   .numberOfQuestions[_ngcontent-%COMP%]{background-color:var(--colors-success-general)}[_nghost-%COMP%]   .pageNavigation[_ngcontent-%COMP%]   .pageNavigationItem.completed[_ngcontent-%COMP%]   div[_ngcontent-%COMP%]:first-child:before{content:"\\f00c";color:var(--colors-success-general);font-family:"Font Awesome 6 Free";font-weight:900;margin-right:10px}[_nghost-%COMP%]   .logo[_ngcontent-%COMP%]{width:55%}[_nghost-%COMP%]   .logo[_ngcontent-%COMP%]   img[_ngcontent-%COMP%]{width:100%}[_nghost-%COMP%]   .settingsContentContainer[_ngcontent-%COMP%]{margin-left:330px;padding:35px 18px;display:flex;min-height:100%;flex-direction:column}[_nghost-%COMP%]   .surveySectionContent[_ngcontent-%COMP%]{flex:1}[_nghost-%COMP%]   .surveySectionContent[_ngcontent-%COMP%], [_nghost-%COMP%]   .surveySectionTitle[_ngcontent-%COMP%]   h2[_ngcontent-%COMP%]{padding:25px 45px}[_nghost-%COMP%]   .surveySectionTitle[_ngcontent-%COMP%]{position:relative;margin-bottom:10px}[_nghost-%COMP%]   .surveySectionTitle[_ngcontent-%COMP%]   h2[_ngcontent-%COMP%]{margin-bottom:5px}[_nghost-%COMP%]   .surveySectionTitle[_ngcontent-%COMP%]:before{content:"";position:absolute;width:100%;height:5px;background-color:var(--colors-attention-primary)}[_nghost-%COMP%]   .surveyCompletedContainer[_ngcontent-%COMP%]{margin-top:50px}[_nghost-%COMP%]   .surveyCompletedContainer[_ngcontent-%COMP%]   h1[_ngcontent-%COMP%]{margin-top:5px}[_nghost-%COMP%]   .surveyCompletedContainer[_ngcontent-%COMP%]   .fa-stack[_ngcontent-%COMP%]{position:relative}[_nghost-%COMP%]   .surveyCompletedContainer[_ngcontent-%COMP%]   .fa-stack[_ngcontent-%COMP%]   i[_ngcontent-%COMP%]{color:var(--colors-success-general)}[_nghost-%COMP%]   .surveyCompletedContainer[_ngcontent-%COMP%]   .fa-stack[_ngcontent-%COMP%]   i[_ngcontent-%COMP%]:last-of-type{position:absolute;top:45%;transform:translateY(-50%);left:5%;text-stroke:2px var(--colors-general-white);-webkit-text-stroke:2px var(--colors-general-white)}[_nghost-%COMP%]   .surveyCompletedContainer[_ngcontent-%COMP%]   button[_ngcontent-%COMP%]{margin-top:20px}'],changeDetection:0})}}return n})();var bt=a(72872),yt=a(13711);const Ot=[{path:"",component:_t}];let St=(()=>{class n{static{this.\u0275fac=function(s){return new(s||n)}}static{this.\u0275mod=t.$C({type:n})}static{this.\u0275inj=c.G2t({imports:[i.X1,p.iI.forChild(Ot),bt.u,yt.K,g.MD,i.YN]})}}return n})()},30054:(v,d,a)=>{function p(t){return t&&t.value?new RegExp(/^\+(?:[0-9]\u25cf?){6,14}[0-9]$/).test(t.value)?null:{phoneNumber:{message:"allpages.error.telephone.invalid"}}:null}a.d(d,{U:()=>p})},81738:(v,d,a)=>{function p(t){return t&&t.value?new RegExp(/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/).test(t.value)?null:{email:{message:"allpages.error.email.invalid"}}:null}a.d(d,{B:()=>p})}}]);

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