@visitscotland/component-library 5.15.0 → 5.15.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -147,7 +147,7 @@
147
147
  pointer-events: none;
148
148
  opacity: 0.3;
149
149
  }
150
- `;styleInject(css_248z);script$4.render=render$4;script$4.__scopeId="data-v-43da20c6";script$4.__file="src/components/Tooltip/index.vue";var script$3=vue.defineComponent({props:{stacked:{type:Boolean,default:!1},maxWidth:{type:Number,default:-1}},setup(e){vue.provide("layerProps",e)}});function render$3(e,n,t,a,r,o){return vue.openBlock(),vue.createElementBlock("div",null,[vue.renderSlot(e.$slots,"default")])}script$3.render=render$3;script$3.__file="src/components/Group/index.vue";var script$2=vue.defineComponent({name:"Grid",props:{value:{type:Number},label:{type:String,default:""},color:{type:String,default:"red"},strokeDasharray:{type:String,default:()=>"3"},strokeWidth:{type:Number,default:1},strokeOpacity:{type:Number,default:.5}},setup(e){const n=useChart(),t=vue.ref(0),a=vue.ref("horizontal"),r=vue.ref({});return vue.watch(n.updates,()=>{e.value!==void 0&&(t.value=n.scales.secondary.scale(e.value)),r.value=n.canvas,a.value=n.config.direction},{immediate:!0}),vue.watch(()=>e.value,()=>{t.value=n.scales.secondary.scale(e.value)},{immediate:!0}),{y:t,canvas:r,direction:a}}});const _hoisted_1$2$1={key:0,class:"layer-marker"},_hoisted_2$2$1=["x","y","fill"],_hoisted_3$1$1=["x1","y1","x2","y2","stroke","stroke-opacity","stroke-width","stroke-dasharray"],_hoisted_4$1$1={key:1,class:"layer-marker"},_hoisted_5$1$1=["x","y","fill"],_hoisted_6$1$1=["x1","y1","x2","y2","stroke","stroke-opacity","stroke-width","stroke-dasharray"];function render$2(e,n,t,a,r,o){return e.direction==="horizontal"?(vue.openBlock(),vue.createElementBlock("g",_hoisted_1$2$1,[vue.createElementVNode("text",{x:e.canvas.x+5,y:e.y-5,"text-anchor":"start",fill:e.color},vue.toDisplayString(e.label),9,_hoisted_2$2$1),vue.createElementVNode("line",{x1:e.canvas.x,y1:e.y,x2:e.canvas.width,y2:e.y,stroke:e.color,"stroke-opacity":e.strokeOpacity,"stroke-width":e.strokeWidth,"stroke-dasharray":e.strokeDasharray},null,8,_hoisted_3$1$1)])):(vue.openBlock(),vue.createElementBlock("g",_hoisted_4$1$1,[vue.createElementVNode("text",{x:e.y+10,y:e.canvas.y+5,"text-anchor":"start",fill:e.color,style:{"writing-mode":"tb"}},vue.toDisplayString(e.label),9,_hoisted_5$1$1),vue.createElementVNode("line",{x1:e.y,y1:e.canvas.y,x2:e.y,y2:e.canvas.height,stroke:e.color,"stroke-opacity":e.strokeOpacity,"stroke-width":e.strokeWidth,"stroke-dasharray":e.strokeDasharray},null,8,_hoisted_6$1$1)]))}script$2.render=render$2;script$2.__file="src/components/Marker/index.vue";function count(e){var n=0,t=e.children,a=t&&t.length;if(!a)n=1;else for(;--a>=0;)n+=t[a].value;e.value=n}function node_count(){return this.eachAfter(count)}function node_each(e,n){let t=-1;for(const a of this)e.call(n,a,++t,this);return this}function node_eachBefore(e,n){for(var t=this,a=[t],r,o,s=-1;t=a.pop();)if(e.call(n,t,++s,this),r=t.children)for(o=r.length-1;o>=0;--o)a.push(r[o]);return this}function node_eachAfter(e,n){for(var t=this,a=[t],r=[],o,s,i,l=-1;t=a.pop();)if(r.push(t),o=t.children)for(s=0,i=o.length;s<i;++s)a.push(o[s]);for(;t=r.pop();)e.call(n,t,++l,this);return this}function node_find(e,n){let t=-1;for(const a of this)if(e.call(n,a,++t,this))return a}function node_sum(e){return this.eachAfter(function(n){for(var t=+e(n.data)||0,a=n.children,r=a&&a.length;--r>=0;)t+=a[r].value;n.value=t})}function node_sort(e){return this.eachBefore(function(n){n.children&&n.children.sort(e)})}function node_path(e){for(var n=this,t=leastCommonAncestor(n,e),a=[n];n!==t;)n=n.parent,a.push(n);for(var r=a.length;e!==t;)a.splice(r,0,e),e=e.parent;return a}function leastCommonAncestor(e,n){if(e===n)return e;var t=e.ancestors(),a=n.ancestors(),r=null;for(e=t.pop(),n=a.pop();e===n;)r=e,e=t.pop(),n=a.pop();return r}function node_ancestors(){for(var e=this,n=[e];e=e.parent;)n.push(e);return n}function node_descendants(){return Array.from(this)}function node_leaves(){var e=[];return this.eachBefore(function(n){n.children||e.push(n)}),e}function node_links(){var e=this,n=[];return e.each(function(t){t!==e&&n.push({source:t.parent,target:t})}),n}function*node_iterator(){var e=this,n,t=[e],a,r,o;do for(n=t.reverse(),t=[];e=n.pop();)if(yield e,a=e.children)for(r=0,o=a.length;r<o;++r)t.push(a[r]);while(t.length)}function hierarchy(e,n){e instanceof Map?(e=[void 0,e],n===void 0&&(n=mapChildren)):n===void 0&&(n=objectChildren);for(var t=new Node$2(e),a,r=[t],o,s,i,l;a=r.pop();)if((s=n(a.data))&&(l=(s=Array.from(s)).length))for(a.children=s,i=l-1;i>=0;--i)r.push(o=s[i]=new Node$2(s[i])),o.parent=a,o.depth=a.depth+1;return t.eachBefore(computeHeight)}function node_copy(){return hierarchy(this).eachBefore(copyData)}function objectChildren(e){return e.children}function mapChildren(e){return Array.isArray(e)?e[1]:null}function copyData(e){e.data.value!==void 0&&(e.value=e.data.value),e.data=e.data.data}function computeHeight(e){var n=0;do e.height=n;while((e=e.parent)&&e.height<++n)}function Node$2(e){this.data=e,this.depth=this.height=0,this.parent=null}Node$2.prototype=hierarchy.prototype={constructor:Node$2,count:node_count,each:node_each,eachAfter:node_eachAfter,eachBefore:node_eachBefore,find:node_find,sum:node_sum,sort:node_sort,path:node_path,ancestors:node_ancestors,descendants:node_descendants,leaves:node_leaves,links:node_links,copy:node_copy,[Symbol.iterator]:node_iterator};function optional(e){return e==null?null:required$2(e)}function required$2(e){if(typeof e!="function")throw new Error;return e}function constantZero(){return 0}function constant(e){return function(){return e}}function roundNode(e){e.x0=Math.round(e.x0),e.y0=Math.round(e.y0),e.x1=Math.round(e.x1),e.y1=Math.round(e.y1)}function treemapDice(e,n,t,a,r){for(var o=e.children,s,i=-1,l=o.length,u=e.value&&(a-n)/e.value;++i<l;)s=o[i],s.y0=t,s.y1=r,s.x0=n,s.x1=n+=s.value*u}var preroot={depth:-1},ambiguous={},imputed={};function defaultId(e){return e.id}function defaultParentId(e){return e.parentId}function stratify(){var e=defaultId,n=defaultParentId,t;function a(r){var o=Array.from(r),s=e,i=n,l,u,c,d,v,f,h,p,m=new Map;if(t!=null){const g=o.map((S,k)=>normalize(t(S,k,r))),_=g.map(parentof),b=new Set(g).add("");for(const S of _)b.has(S)||(b.add(S),g.push(S),_.push(parentof(S)),o.push(imputed));s=(S,k)=>g[k],i=(S,k)=>_[k]}for(c=0,l=o.length;c<l;++c)u=o[c],f=o[c]=new Node$2(u),(h=s(u,c,r))!=null&&(h+="")&&(p=f.id=h,m.set(p,m.has(p)?ambiguous:f)),(h=i(u,c,r))!=null&&(h+="")&&(f.parent=h);for(c=0;c<l;++c)if(f=o[c],h=f.parent){if(v=m.get(h),!v)throw new Error("missing: "+h);if(v===ambiguous)throw new Error("ambiguous: "+h);v.children?v.children.push(f):v.children=[f],f.parent=v}else{if(d)throw new Error("multiple roots");d=f}if(!d)throw new Error("no root");if(t!=null){for(;d.data===imputed&&d.children.length===1;)d=d.children[0],--l;for(let g=o.length-1;g>=0&&(f=o[g],f.data===imputed);--g)f.data=null}if(d.parent=preroot,d.eachBefore(function(g){g.depth=g.parent.depth+1,--l}).eachBefore(computeHeight),d.parent=null,l>0)throw new Error("cycle");return d}return a.id=function(r){return arguments.length?(e=optional(r),a):e},a.parentId=function(r){return arguments.length?(n=optional(r),a):n},a.path=function(r){return arguments.length?(t=optional(r),a):t},a}function normalize(e){e=`${e}`;let n=e.length;return slash(e,n-1)&&!slash(e,n-2)&&(e=e.slice(0,-1)),e[0]==="/"?e:`/${e}`}function parentof(e){let n=e.length;if(n<2)return"";for(;--n>1&&!slash(e,n););return e.slice(0,n)}function slash(e,n){if(e[n]==="/"){let t=0;for(;n>0&&e[--n]==="\\";)++t;if(!(t&1))return!0}return!1}function treemapSlice(e,n,t,a,r){for(var o=e.children,s,i=-1,l=o.length,u=e.value&&(r-t)/e.value;++i<l;)s=o[i],s.x0=n,s.x1=a,s.y0=t,s.y1=t+=s.value*u}var phi=(1+Math.sqrt(5))/2;function squarifyRatio(e,n,t,a,r,o){for(var s=[],i=n.children,l,u,c=0,d=0,v=i.length,f,h,p=n.value,m,g,_,b,S,k,C;c<v;){f=r-t,h=o-a;do m=i[d++].value;while(!m&&d<v);for(g=_=m,k=Math.max(h/f,f/h)/(p*e),C=m*m*k,S=Math.max(_/C,C/g);d<v;++d){if(m+=u=i[d].value,u<g&&(g=u),u>_&&(_=u),C=m*m*k,b=Math.max(_/C,C/g),b>S){m-=u;break}S=b}s.push(l={value:m,dice:f<h,children:i.slice(c,d)}),l.dice?treemapDice(l,t,a,r,p?a+=h*m/p:o):treemapSlice(l,t,a,p?t+=f*m/p:r,o),p-=m,c=d}return s}var squarify=function e(n){function t(a,r,o,s,i){squarifyRatio(n,a,r,o,s,i)}return t.ratio=function(a){return e((a=+a)>1?a:1)},t}(phi);function treemap(){var e=squarify,n=!1,t=1,a=1,r=[0],o=constantZero,s=constantZero,i=constantZero,l=constantZero,u=constantZero;function c(v){return v.x0=v.y0=0,v.x1=t,v.y1=a,v.eachBefore(d),r=[0],n&&v.eachBefore(roundNode),v}function d(v){var f=r[v.depth],h=v.x0+f,p=v.y0+f,m=v.x1-f,g=v.y1-f;m<h&&(h=m=(h+m)/2),g<p&&(p=g=(p+g)/2),v.x0=h,v.y0=p,v.x1=m,v.y1=g,v.children&&(f=r[v.depth+1]=o(v)/2,h+=u(v)-f,p+=s(v)-f,m-=i(v)-f,g-=l(v)-f,m<h&&(h=m=(h+m)/2),g<p&&(p=g=(p+g)/2),e(v,h,p,m,g))}return c.round=function(v){return arguments.length?(n=!!v,c):n},c.size=function(v){return arguments.length?(t=+v[0],a=+v[1],c):[t,a]},c.tile=function(v){return arguments.length?(e=required$2(v),c):e},c.padding=function(v){return arguments.length?c.paddingInner(v).paddingOuter(v):c.paddingInner()},c.paddingInner=function(v){return arguments.length?(o=typeof v=="function"?v:constant(+v),c):o},c.paddingOuter=function(v){return arguments.length?c.paddingTop(v).paddingRight(v).paddingBottom(v).paddingLeft(v):c.paddingTop()},c.paddingTop=function(v){return arguments.length?(s=typeof v=="function"?v:constant(+v),c):s},c.paddingRight=function(v){return arguments.length?(i=typeof v=="function"?v:constant(+v),c):i},c.paddingBottom=function(v){return arguments.length?(l=typeof v=="function"?v:constant(+v),c):l},c.paddingLeft=function(v){return arguments.length?(u=typeof v=="function"?v:constant(+v),c):u},c}var script$1=vue.defineComponent({name:"Treemap",props:{size:{type:Object,default:()=>({width:500,height:400}),required:!1},margin:{type:Object,default:()=>({top:0,right:0,bottom:0,left:0})},padding:{type:Number,default:8},data:{type:Array,default:()=>[]},dataKeys:{type:Object,required:!0},colorFn:{type:Function,default:()=>interpolateHcl("#60c96e","#6b46c1")},rcStyle:{type:Function,required:!1}},setup(e){const n=vue.ref(null),t=vue.ref(e.data),a=vue.ref(null),r=vue.ref({x:e.margin.left,y:e.margin.top,width:e.size.width-e.margin.right,height:e.size.height-e.margin.bottom}),o=vue.ref([]);function s(){const f=extent(t.value.map(m=>m[e.dataKeys[1]])),h=linear().domain(f).range([0,100]).nice(),p=sequential().domain(f).interpolator(e.colorFn());return{x:h,y:p}}function i(){const{y:f}=s();return l(t.value).leaves().map((p,m)=>({idx:m,x0:r.value.x+p.x0,x1:r.value.x+p.x1,y0:r.value.y+p.y0,y1:r.value.y+p.y1,width:p.x1-p.x0,height:p.y1-p.y0,data:p.data,color:f(p.value)}))}function l(f){const{x:h}=s(),p=treemap().size([r.value.width-r.value.x,r.value.height-r.value.y]).padding(e.padding),g=stratify().id(_=>_.name).parentId(_=>_.parent)([{name:"root"}].concat(f.map(_=>({name:_[e.dataKeys[0]],value:_[e.dataKeys[1]],parent:"root"}))));return g.sum(_=>h(_.value)),p(g),g}const u=f=>mapKeys(kebabize,f),c=f=>{const h={stroke:f.color,strokeWidth:5,fill:f.color,fillOpacity:.9};return e.rcStyle&&typeof e.rcStyle=="function"?Object.assign(Object.assign({},h),e.rcStyle(f)):h};function d(f){a.value=f}function v(){a.value=null}return vue.watch(e,()=>{t.value=e.data,r.value={x:e.margin.left,y:e.margin.top,width:e.size.width-e.margin.right,height:e.size.height-e.margin.bottom},o.value=i()},{immediate:!0}),{el:n,rectangles:o,selected:a,getStyle:c,toKebabCase:u,onMouseOver:d,onMouseOut:v}}});const _hoisted_1$1$1={class:"treemap",style:{display:"flex",position:"relative"}},_hoisted_2$1$1=["width","height","viewBox"],_hoisted_3$T={class:"layer-rectangles"},_hoisted_4$G=["transform","onMouseover"],_hoisted_5$s=["width","height"],_hoisted_6$j={x:10,y:20,"font-size":"15px",fill:"white","font-weight":"bold"};function render$1(e,n,t,a,r,o){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1$1,[(vue.openBlock(),vue.createElementBlock("svg",{width:e.size.width,height:e.size.height,viewBox:`0 0 ${e.size.width} ${e.size.height}`,ref:"el"},[vue.createElementVNode("g",_hoisted_3$T,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.rectangles,(s,i)=>(vue.openBlock(),vue.createElementBlock("g",{class:vue.normalizeClass(["rectangle",{selected:e.selected===i}]),key:i,transform:`translate(${s.x0}, ${s.y0})`,onMouseover:()=>e.onMouseOver(i),onMouseleave:n[0]||(n[0]=(...l)=>e.onMouseOut&&e.onMouseOut(...l))},[vue.renderSlot(e.$slots,"default",{r:s,selected:e.selected===i},()=>[vue.createElementVNode("rect",vue.mergeProps(e.toKebabCase(e.getStyle(s)),{x:0,y:0,width:s.width,height:s.height}),null,16,_hoisted_5$s),vue.renderSlot(e.$slots,"text",{r:s,selected:e.selected===i},()=>[vue.createElementVNode("text",_hoisted_6$j,vue.toDisplayString(s.data.name),1)])])],42,_hoisted_4$G))),128))])],8,_hoisted_2$1$1)),vue.renderSlot(e.$slots,"widgets")])}script$1.render=render$1;script$1.__file="src/components/Treemap/index.vue";var script=vue.defineComponent({name:"HoverBar",props:{barStyle:{type:Object,default:()=>({"fill-opacity":.05})}},setup(){const e=useChart(),n=useMouse(),t=vue.ref({x:0,y:0,width:0,height:0}),a=vue.ref("horizontal"),r=vue.ref({x:0,y:0,width:0,height:0});return vue.watch(e.updates,()=>{r.value=e.canvas,a.value=e.config.direction},{immediate:!0}),vue.watch(n,()=>{if(e.bandScale){const o=e.getData(e.getKeys(0)),[s]=e.bandScale.map([o[n.index]]),i=e.bandScale.bandwidth();s&&(e.config.direction==="horizontal"?t.value={x:s-i/2,y:0,width:i,height:r.value.height}:t.value={x:40,y:s-i/2,width:r.value.width-40,height:i})}}),{bar:t,canvas:r,direction:a,mouse:n}}});const _hoisted_1$1t={key:0,class:"layer-hover-bar"},_hoisted_2$14=["x","y","width","height"];function render(e,n,t,a,r,o){return e.mouse.hover?(vue.openBlock(),vue.createElementBlock("g",_hoisted_1$1t,[vue.createElementVNode("rect",vue.mergeProps({class:"hover-bar"},e.barStyle,{x:e.bar.x,y:e.bar.y,width:e.bar.width>0?e.bar.width:0,height:e.bar.height>0?e.bar.height:0}),null,16,_hoisted_2$14)])):vue.createCommentVNode("v-if",!0)}script.render=render;script.__file="src/components/HoverBar/index.vue";const _sfc_main$1T={name:"VsCarbonCalculatorResults",status:"prototype",release:"0.0.1",components:{VsCol:LoadingSpinner.VsCol,VsRow:LoadingSpinner.VsRow,VsHeading:LoadingSpinner.VsHeading,VsIcon:LoadingSpinner.VsIcon,Chart:script$c,Grid:script$5,Bar:script$8,Responsive:script$6},mixins:[LoadingSpinner.dataLayerMixin],inject:["labelsMap"],props:{totalKilos:{type:Number,default:0},foodKilos:{type:Number,default:0},transportKilos:{type:Number,default:0},accommodationKilos:{type:Number,default:0},stayDuration:{type:Number,default:1},comparisonReplacements:{type:Array,default:()=>[]},language:{type:String,default:"en-gb"}},data(){return{chartDirection:vue.ref("horizontal"),chartAxis:vue.ref({primary:{type:"band"}}),cssProps:`--chart-label: '${this.labelsMap.kgsOf}'`,tokens:LoadingSpinner.designTokens}},computed:{chartData(){return[{name:this.labelsMap.transport,emissions:this.transportKilos},{name:this.labelsMap.accommodation,emissions:this.accommodationKilos},{name:this.labelsMap.food,emissions:this.foodKilos}]},interpolComparison(){let e=this.labelsMap.comparison;for(let n=0;n<this.comparisonReplacements.length;n++)e=e.replace(this.comparisonReplacements[n].repl,(this.totalKilos/this.comparisonReplacements[n].divisor).toLocaleString(this.language,{minimumFractionDigits:3}));return e},interpolKGsPerDay(){return this.labelsMap.kgsPerDay.replace("xxx",this.totalPerDay)},interpolPerDaySuccess(){return this.labelsMap.perDaySuccess.replace("xxx",this.labelsMap.perDayTarget)},transportPercent(){return this.transportKilos/this.totalKilos*100},accommodationPercent(){return this.accommodationKilos/this.totalKilos*100},foodPercent(){return this.foodKilos/this.totalKilos*100},totalPerDay(){return this.totalKilos/Math.max(this.stayDuration,1)}},mounted(){this.createDataLayerObject("carbonCompleteEvent",{totalEmissions:this.totalKilos,totalPerDay:this.totalPerDay,travelPercent:this.transportPercent.toFixed(3)||0,accommodationPercent:this.accommodationPercent.toFixed(3)||0,foodPercent:this.foodPercent.toFixed(3)||0})},methods:{responsiveMargin(e){return e>300?{left:20,top:20,right:20,bottom:20}:{left:5,top:5,right:5,bottom:5}}}},_hoisted_1$1s={class:"vs-carbon-calculator-results__headline"},_hoisted_2$13={class:"mb-050"},_hoisted_3$S={class:"vs-carbon-calculator-results__total"},_hoisted_4$F=["innerHTML"],_hoisted_5$r={class:"vs-carbon-calculator-results__unicorn-icon-container"},_hoisted_6$i={class:"vs-carbon-calculator-results__unicorn-content"};function _sfc_render$1C(e,n,t,a,r,o){const s=vue.resolveComponent("VsHeading"),i=vue.resolveComponent("VsCol"),l=vue.resolveComponent("VsRow"),u=vue.resolveComponent("VsIcon"),c=vue.resolveComponent("Grid"),d=vue.resolveComponent("Bar"),v=vue.resolveComponent("Chart"),f=vue.resolveComponent("Responsive");return vue.openBlock(),vue.createBlock(l,{"data-test":"vs-carbon-calculator-results",style:vue.normalizeStyle(r.cssProps)},{default:vue.withCtx(()=>[vue.createVNode(i,{cols:"12"},{default:vue.withCtx(()=>[vue.createVNode(s,{level:"2","heading-style":"heading-m"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(o.labelsMap.results),1)]),_:1})]),_:1}),vue.createVNode(i,{cols:"12"},{default:vue.withCtx(()=>[vue.createVNode(l,{class:"vs-carbon-calculator-results__summary"},{default:vue.withCtx(()=>[vue.createVNode(i,{cols:"12",md:"6"},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$1s,[vue.createElementVNode("p",_hoisted_2$13,vue.toDisplayString(o.labelsMap.resultsIntro),1),vue.createElementVNode("p",null,[vue.createElementVNode("span",_hoisted_3$S,vue.toDisplayString(t.totalKilos.toLocaleString(t.language,{minimumFractionDigits:3})),1),vue.createTextVNode(" "+vue.toDisplayString(o.labelsMap.kgsOf),1)])])]),_:1}),vue.createVNode(i,{cols:"12",md:"6",class:"vs-carbon-calculator-results__comparison"},{default:vue.withCtx(()=>[vue.createElementVNode("p",{innerHTML:o.interpolComparison},null,8,_hoisted_4$F)]),_:1})]),_:1})]),_:1}),o.totalPerDay<=o.labelsMap.perDayTarget?(vue.openBlock(),vue.createBlock(i,{key:0,cols:"12",class:"vs-carbon-calculator-results__unicorn"},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_5$r,[vue.createVNode(u,{icon:"fa-kit fa-vs-unicorn",size:"lg",variant:"highlight",class:"vs-carbon-calculator-results__unicorn-icon"})]),vue.createElementVNode("div",_hoisted_6$i,[vue.createVNode(s,{level:"3","heading-style":"heading-xs"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(o.labelsMap.perDayCongratulations),1)]),_:1}),vue.createElementVNode("p",null,vue.toDisplayString(o.interpolPerDaySuccess),1)])]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(i,null,{default:vue.withCtx(()=>[vue.createVNode(s,{level:"3","heading-style":"heading-xs"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(o.labelsMap.chartTitle),1)]),_:1})]),_:1}),vue.createVNode(i,{class:"vs-carbon-calculator-results__chart-wrapper",cols:"12"},{default:vue.withCtx(()=>[vue.createVNode(f,null,{main:vue.withCtx(({width:h})=>[vue.createVNode(v,{class:"vs-carbon-calculator-results__chart",size:{width:h,height:420},data:o.chartData,margin:o.responsiveMargin(h),direction:r.chartDirection,axis:r.chartAxis},{layers:vue.withCtx(()=>[vue.createVNode(c,{"stroke-dasharray":"2,2"}),vue.createVNode(d,{"data-keys":["name","emissions"],"bar-style":{fill:r.tokens["vs-color-background-highlight"]},gap:20},null,8,["bar-style"])]),_:2},1032,["size","data","margin","direction","axis"])]),_:1})]),_:1})]),_:1},8,["style"])}const VsCarbonCalculatorResults=LoadingSpinner._export_sfc(_sfc_main$1T,[["render",_sfc_render$1C]]),_sfc_main$1S={name:"VsCarbonCalculatorRunningTotal",status:"prototype",release:"0.0.1",components:{VsIcon:LoadingSpinner.VsIcon},inject:["labelsMap"],props:{totalKilos:{type:Number,default:0},language:{type:String,default:"en-gb"}}},_hoisted_1$1r={class:"vs-carbon-calculator-running-total","data-test":"vs-carbon-calculator-running-total"},_hoisted_2$12={class:"vs-carbon-calculator-running-total__icon"},_hoisted_3$R={class:"vs-carbon-calculator-running-total__content"},_hoisted_4$E={class:"vs-carbon-calculator-running-total__value"};function _sfc_render$1B(e,n,t,a,r,o){const s=vue.resolveComponent("VsIcon");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1r,[vue.createElementVNode("div",_hoisted_2$12,[vue.createVNode(s,{icon:"fa-regular fa-pen-field",size:"md"})]),vue.createElementVNode("div",_hoisted_3$R,[vue.createElementVNode("p",null,vue.toDisplayString(o.labelsMap.soFar),1),vue.createElementVNode("p",null,[vue.createElementVNode("span",_hoisted_4$E,vue.toDisplayString(t.totalKilos.toLocaleString(t.language,{minimumFractionDigits:3})),1),vue.createTextVNode(" "+vue.toDisplayString(o.labelsMap.kgsOf),1)])])])}const VsCarbonCalculatorRunningTotal=LoadingSpinner._export_sfc(_sfc_main$1S,[["render",_sfc_render$1B]]),_sfc_main$1R={name:"VsCarbonCalculatorIntro",status:"prototype",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading},inject:["labelsMap"]},_hoisted_1$1q={class:"vs-carbon-calculator-intro","data-test":"vs-carbon-calculator-intro"};function _sfc_render$1A(e,n,t,a,r,o){const s=vue.resolveComponent("VsHeading");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1q,[vue.createVNode(s,{level:"2","heading-style":"heading-l"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(o.labelsMap.introHeading),1)]),_:1}),vue.createElementVNode("p",null,vue.toDisplayString(o.labelsMap.introContent),1)])}const VsCarbonCalculatorIntro=LoadingSpinner._export_sfc(_sfc_main$1R,[["render",_sfc_render$1A]]);function ownKeys$1(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);n&&(a=a.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),t.push.apply(t,a)}return t}function _objectSpread2$1(e){for(var n=1;n<arguments.length;n++){var t=arguments[n]!=null?arguments[n]:{};n%2?ownKeys$1(Object(t),!0).forEach(function(a){_defineProperty$2(e,a,t[a])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys$1(Object(t)).forEach(function(a){Object.defineProperty(e,a,Object.getOwnPropertyDescriptor(t,a))})}return e}function _defineProperty$2(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function unwrapObj(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return Object.keys(e).reduce((t,a)=>(n.includes(a)||(t[a]=vue.unref(e[a])),t),{})}function isFunction$2(e){return typeof e=="function"}function isProxy(e){return vue.isReactive(e)||vue.isReadonly(e)}function get(e,n,t){let a=e;const r=n.split(".");for(let o=0;o<r.length;o++){if(!a[r[o]])return t;a=a[r[o]]}return a}function gatherBooleanGroupProperties(e,n,t){return vue.computed(()=>e.some(a=>get(n,a,{[t]:!1})[t]))}function gatherArrayGroupProperties(e,n,t){return vue.computed(()=>e.reduce((a,r)=>{const o=get(n,r,{[t]:!1})[t]||[];return a.concat(o)},[]))}function callRule(e,n,t,a){return e.call(a,vue.unref(n),vue.unref(t),a)}function normalizeValidatorResponse(e){return e.$valid!==void 0?!e.$valid:!e}function createAsyncResult(e,n,t,a,r,o,s){let{$lazy:i,$rewardEarly:l}=r,u=arguments.length>7&&arguments[7]!==void 0?arguments[7]:[],c=arguments.length>8?arguments[8]:void 0,d=arguments.length>9?arguments[9]:void 0,v=arguments.length>10?arguments[10]:void 0;const f=vue.ref(!!a.value),h=vue.ref(0);t.value=!1;const p=vue.watch([n,a].concat(u,v),()=>{if(i&&!a.value||l&&!d.value&&!t.value)return;let m;try{m=callRule(e,n,c,s)}catch(g){m=Promise.reject(g)}h.value++,t.value=!!h.value,f.value=!1,Promise.resolve(m).then(g=>{h.value--,t.value=!!h.value,o.value=g,f.value=normalizeValidatorResponse(g)}).catch(g=>{h.value--,t.value=!!h.value,o.value=g,f.value=!0})},{immediate:!0,deep:typeof n=="object"});return{$invalid:f,$unwatch:p}}function createSyncResult(e,n,t,a,r,o,s,i){let{$lazy:l,$rewardEarly:u}=a;const c=()=>({}),d=vue.computed(()=>{if(l&&!t.value||u&&!i.value)return!1;let v=!0;try{const f=callRule(e,n,s,o);r.value=f,v=normalizeValidatorResponse(f)}catch(f){r.value=f}return v});return{$unwatch:c,$invalid:d}}function createValidatorResult(e,n,t,a,r,o,s,i,l,u,c){const d=vue.ref(!1),v=e.$params||{},f=vue.ref(null);let h,p;e.$async?{$invalid:h,$unwatch:p}=createAsyncResult(e.$validator,n,d,t,a,f,r,e.$watchTargets,l,u,c):{$invalid:h,$unwatch:p}=createSyncResult(e.$validator,n,t,a,f,r,l,u);const m=e.$message;return{$message:isFunction$2(m)?vue.computed(()=>m(unwrapObj({$pending:d,$invalid:h,$params:unwrapObj(v),$model:n,$response:f,$validator:o,$propertyPath:i,$property:s}))):m||"",$params:v,$pending:d,$invalid:h,$response:f,$unwatch:p}}function sortValidations(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};const n=vue.unref(e),t=Object.keys(n),a={},r={},o={};let s=null;return t.forEach(i=>{const l=n[i];switch(!0){case isFunction$2(l.$validator):a[i]=l;break;case isFunction$2(l):a[i]={$validator:l};break;case i==="$validationGroups":s=l;break;case i.startsWith("$"):o[i]=l;break;default:r[i]=l}}),{rules:a,nestedValidators:r,config:o,validationGroups:s}}const ROOT_PATH="__root";function createValidationResults(e,n,t,a,r,o,s,i,l){const u=Object.keys(e),c=a.get(r,e),d=vue.ref(!1),v=vue.ref(!1),f=vue.ref(0);if(c){if(!c.$partial)return c;c.$unwatch(),d.value=c.$dirty.value}const h={$dirty:d,$path:r,$touch:()=>{d.value||(d.value=!0)},$reset:()=>{d.value&&(d.value=!1)},$commit:()=>{}};return u.length?(u.forEach(p=>{h[p]=createValidatorResult(e[p],n,h.$dirty,o,s,p,t,r,l,v,f)}),h.$externalResults=vue.computed(()=>i.value?[].concat(i.value).map((p,m)=>({$propertyPath:r,$property:t,$validator:"$externalResults",$uid:`${r}-externalResult-${m}`,$message:p,$params:{},$response:null,$pending:!1})):[]),h.$invalid=vue.computed(()=>{const p=u.some(m=>vue.unref(h[m].$invalid));return v.value=p,!!h.$externalResults.value.length||p}),h.$pending=vue.computed(()=>u.some(p=>vue.unref(h[p].$pending))),h.$error=vue.computed(()=>h.$dirty.value?h.$pending.value||h.$invalid.value:!1),h.$silentErrors=vue.computed(()=>u.filter(p=>vue.unref(h[p].$invalid)).map(p=>{const m=h[p];return vue.reactive({$propertyPath:r,$property:t,$validator:p,$uid:`${r}-${p}`,$message:m.$message,$params:m.$params,$response:m.$response,$pending:m.$pending})}).concat(h.$externalResults.value)),h.$errors=vue.computed(()=>h.$dirty.value?h.$silentErrors.value:[]),h.$unwatch=()=>u.forEach(p=>{h[p].$unwatch()}),h.$commit=()=>{v.value=!0,f.value=Date.now()},a.set(r,e,h),h):(c&&a.set(r,e,h),h)}function collectNestedValidationResults(e,n,t,a,r,o,s){const i=Object.keys(e);return i.length?i.reduce((l,u)=>(l[u]=setValidations({validations:e[u],state:n,key:u,parentKey:t,resultsCache:a,globalConfig:r,instance:o,externalResults:s}),l),{}):{}}function createMetaFields(e,n,t){const a=vue.computed(()=>[n,t].filter(h=>h).reduce((h,p)=>h.concat(Object.values(vue.unref(p))),[])),r=vue.computed({get(){return e.$dirty.value||(a.value.length?a.value.every(h=>h.$dirty):!1)},set(h){e.$dirty.value=h}}),o=vue.computed(()=>{const h=vue.unref(e.$silentErrors)||[],p=a.value.filter(m=>(vue.unref(m).$silentErrors||[]).length).reduce((m,g)=>m.concat(...g.$silentErrors),[]);return h.concat(p)}),s=vue.computed(()=>{const h=vue.unref(e.$errors)||[],p=a.value.filter(m=>(vue.unref(m).$errors||[]).length).reduce((m,g)=>m.concat(...g.$errors),[]);return h.concat(p)}),i=vue.computed(()=>a.value.some(h=>h.$invalid)||vue.unref(e.$invalid)||!1),l=vue.computed(()=>a.value.some(h=>vue.unref(h.$pending))||vue.unref(e.$pending)||!1),u=vue.computed(()=>a.value.some(h=>h.$dirty)||a.value.some(h=>h.$anyDirty)||r.value),c=vue.computed(()=>r.value?l.value||i.value:!1),d=()=>{e.$touch(),a.value.forEach(h=>{h.$touch()})},v=()=>{e.$commit(),a.value.forEach(h=>{h.$commit()})},f=()=>{e.$reset(),a.value.forEach(h=>{h.$reset()})};return a.value.length&&a.value.every(h=>h.$dirty)&&d(),{$dirty:r,$errors:s,$invalid:i,$anyDirty:u,$error:c,$pending:l,$touch:d,$reset:f,$silentErrors:o,$commit:v}}function setValidations(e){let{validations:n,state:t,key:a,parentKey:r,childResults:o,resultsCache:s,globalConfig:i={},instance:l,externalResults:u}=e;const c=r?`${r}.${a}`:a,{rules:d,nestedValidators:v,config:f,validationGroups:h}=sortValidations(n),p=_objectSpread2$1(_objectSpread2$1({},i),f),m=a?vue.computed(()=>{const T=vue.unref(t);return T?vue.unref(T[a]):void 0}):t,g=_objectSpread2$1({},vue.unref(u)||{}),_=vue.computed(()=>{const T=vue.unref(u);return a?T?vue.unref(T[a]):void 0:T}),b=createValidationResults(d,m,a,s,c,p,l,_,t),S=collectNestedValidationResults(v,m,c,s,p,l,_),k={};h&&Object.entries(h).forEach(T=>{let[F,Y]=T;k[F]={$invalid:gatherBooleanGroupProperties(Y,S,"$invalid"),$error:gatherBooleanGroupProperties(Y,S,"$error"),$pending:gatherBooleanGroupProperties(Y,S,"$pending"),$errors:gatherArrayGroupProperties(Y,S,"$errors"),$silentErrors:gatherArrayGroupProperties(Y,S,"$silentErrors")}});const{$dirty:C,$errors:B,$invalid:$,$anyDirty:P,$error:A,$pending:M,$touch:j,$reset:O,$silentErrors:q,$commit:Q}=createMetaFields(b,S,o),G=a?vue.computed({get:()=>vue.unref(m),set:T=>{C.value=!0;const F=vue.unref(t),Y=vue.unref(u);Y&&(Y[a]=g[a]),vue.isRef(F[a])?F[a].value=T:F[a]=T}}):null;a&&p.$autoDirty&&vue.watch(m,()=>{C.value||j();const T=vue.unref(u);T&&(T[a]=g[a])},{flush:"sync"});async function W(){return j(),p.$rewardEarly&&(Q(),await vue.nextTick()),await vue.nextTick(),new Promise(T=>{if(!M.value)return T(!$.value);const F=vue.watch(M,()=>{T(!$.value),F()})})}function V(T){return(o.value||{})[T]}function L(){vue.isRef(u)?u.value=g:Object.keys(g).length===0?Object.keys(u).forEach(T=>{delete u[T]}):Object.assign(u,g)}return vue.reactive(_objectSpread2$1(_objectSpread2$1(_objectSpread2$1({},b),{},{$model:G,$dirty:C,$error:A,$errors:B,$invalid:$,$anyDirty:P,$pending:M,$touch:j,$reset:O,$path:c||ROOT_PATH,$silentErrors:q,$validate:W,$commit:Q},o&&{$getResultsForChild:V,$clearExternalResults:L,$validationGroups:k}),S))}class ResultsStorage{constructor(){this.storage=new Map}set(n,t,a){this.storage.set(n,{rules:t,result:a})}checkRulesValidity(n,t,a){const r=Object.keys(a),o=Object.keys(t);return o.length!==r.length||!o.every(i=>r.includes(i))?!1:o.every(i=>t[i].$params?Object.keys(t[i].$params).every(l=>vue.unref(a[i].$params[l])===vue.unref(t[i].$params[l])):!0)}get(n,t){const a=this.storage.get(n);if(!a)return;const{rules:r,result:o}=a,s=this.checkRulesValidity(n,t,r),i=o.$unwatch?o.$unwatch:()=>({});return s?o:{$dirty:o.$dirty,$partial:!0,$unwatch:i}}}const CollectFlag={COLLECT_ALL:!0,COLLECT_NONE:!1},VuelidateInjectChildResults=Symbol("vuelidate#injectChildResults"),VuelidateRemoveChildResults=Symbol("vuelidate#removeChildResults");function nestedValidations(e){let{$scope:n,instance:t}=e;const a={},r=vue.ref([]),o=vue.computed(()=>r.value.reduce((c,d)=>(c[d]=vue.unref(a[d]),c),{}));function s(c,d){let{$registerAs:v,$scope:f,$stopPropagation:h}=d;h||n===CollectFlag.COLLECT_NONE||f===CollectFlag.COLLECT_NONE||n!==CollectFlag.COLLECT_ALL&&n!==f||(a[v]=c,r.value.push(v))}t.__vuelidateInjectInstances=[].concat(t.__vuelidateInjectInstances||[],s);function i(c){r.value=r.value.filter(d=>d!==c),delete a[c]}t.__vuelidateRemoveInstances=[].concat(t.__vuelidateRemoveInstances||[],i);const l=vue.inject(VuelidateInjectChildResults,[]);vue.provide(VuelidateInjectChildResults,t.__vuelidateInjectInstances);const u=vue.inject(VuelidateRemoveChildResults,[]);return vue.provide(VuelidateRemoveChildResults,t.__vuelidateRemoveInstances),{childResults:o,sendValidationResultsToParent:l,removeValidationResultsFromParent:u}}function ComputedProxyFactory(e){return new Proxy(e,{get(n,t){return typeof n[t]=="object"?ComputedProxyFactory(n[t]):vue.computed(()=>n[t])}})}let uid=0;function useVuelidate(e,n){var t;let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};arguments.length===1&&(a=e,e=void 0,n=void 0);let{$registerAs:r,$scope:o=CollectFlag.COLLECT_ALL,$stopPropagation:s,$externalResults:i,currentVueInstance:l}=a;const u=l||((t=vue.getCurrentInstance())===null||t===void 0?void 0:t.proxy),c=u?u.$options:{};r||(uid+=1,r=`_vuelidate_${uid}`);const d=vue.ref({}),v=new ResultsStorage,{childResults:f,sendValidationResultsToParent:h,removeValidationResultsFromParent:p}=u?nestedValidations({$scope:o,instance:u}):{childResults:vue.ref({})};if(!e&&c.validations){const m=c.validations;n=vue.ref({}),vue.onBeforeMount(()=>{n.value=u,vue.watch(()=>isFunction$2(m)?m.call(n.value,new ComputedProxyFactory(n.value)):m,g=>{d.value=setValidations({validations:g,state:n,childResults:f,resultsCache:v,globalConfig:a,instance:u,externalResults:i||u.vuelidateExternalResults})},{immediate:!0})}),a=c.validationsConfig||a}else{const m=vue.isRef(e)||isProxy(e)?e:vue.reactive(e||{});vue.watch(m,g=>{d.value=setValidations({validations:g,state:n,childResults:f,resultsCache:v,globalConfig:a,instance:u??{},externalResults:i})},{immediate:!0})}return u&&(h.forEach(m=>m(d,{$registerAs:r,$scope:o,$stopPropagation:s})),vue.onBeforeUnmount(()=>p.forEach(m=>m(r)))),vue.computed(()=>_objectSpread2$1(_objectSpread2$1({},vue.unref(d.value)),f.value))}function ownKeys(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);n&&(a=a.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),t.push.apply(t,a)}return t}function _objectSpread2(e){for(var n=1;n<arguments.length;n++){var t=arguments[n]!=null?arguments[n]:{};n%2?ownKeys(Object(t),!0).forEach(function(a){_defineProperty$1(e,a,t[a])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(a){Object.defineProperty(e,a,Object.getOwnPropertyDescriptor(t,a))})}return e}function _defineProperty$1(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function isFunction$1(e){return typeof e=="function"}function isObject$1(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function normalizeValidatorObject(e){return isFunction$1(e.$validator)?_objectSpread2({},e):{$validator:e}}function unwrapValidatorResponse(e){return typeof e=="object"?e.$valid:e}function unwrapNormalizedValidator(e){return e.$validator||e}function withParams(e,n){if(!isObject$1(e))throw new Error(`[@vuelidate/validators]: First parameter to "withParams" should be an object, provided ${typeof e}`);if(!isObject$1(n)&&!isFunction$1(n))throw new Error("[@vuelidate/validators]: Validator must be a function or object with $validator parameter");const t=normalizeValidatorObject(n);return t.$params=_objectSpread2(_objectSpread2({},t.$params||{}),e),t}function withMessage(e,n){if(!isFunction$1(e)&&typeof vue.unref(e)!="string")throw new Error(`[@vuelidate/validators]: First parameter to "withMessage" should be string or a function returning a string, provided ${typeof e}`);if(!isObject$1(n)&&!isFunction$1(n))throw new Error("[@vuelidate/validators]: Validator must be a function or object with $validator parameter");const t=normalizeValidatorObject(n);return t.$message=e,t}function withAsync(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];const t=normalizeValidatorObject(e);return _objectSpread2(_objectSpread2({},t),{},{$async:!0,$watchTargets:n})}function forEach(e){return{$validator(n){for(var t=arguments.length,a=new Array(t>1?t-1:0),r=1;r<t;r++)a[r-1]=arguments[r];return vue.unref(n).reduce((o,s,i)=>{const l=Object.entries(s).reduce((u,c)=>{let[d,v]=c;const f=e[d]||{},h=Object.entries(f).reduce((p,m)=>{let[g,_]=m;const S=unwrapNormalizedValidator(_).call(this,v,s,i,...a),k=unwrapValidatorResponse(S);if(p.$data[g]=S,p.$data.$invalid=!k||!!p.$data.$invalid,p.$data.$error=p.$data.$invalid,!k){let C=_.$message||"";const B=_.$params||{};typeof C=="function"&&(C=C({$pending:!1,$invalid:!k,$params:B,$model:v,$response:S})),p.$errors.push({$property:d,$message:C,$params:B,$response:S,$model:v,$pending:!1,$validator:g})}return{$valid:p.$valid&&k,$data:p.$data,$errors:p.$errors}},{$valid:!0,$data:{},$errors:[]});return u.$data[d]=h.$data,u.$errors[d]=h.$errors,{$valid:u.$valid&&h.$valid,$data:u.$data,$errors:u.$errors}},{$valid:!0,$data:{},$errors:{}});return{$valid:o.$valid&&l.$valid,$data:o.$data.concat(l.$data),$errors:o.$errors.concat(l.$errors)}},{$valid:!0,$data:[],$errors:[]})},$message:n=>{let{$response:t}=n;return t?t.$errors.map(a=>Object.values(a).map(r=>r.map(o=>o.$message)).reduce((r,o)=>r.concat(o),[])):[]}}}const req=e=>{if(e=vue.unref(e),Array.isArray(e))return!!e.length;if(e==null)return!1;if(e===!1)return!0;if(e instanceof Date)return!isNaN(e.getTime());if(typeof e=="object"){for(let n in e)return!0;return!1}return!!String(e).length},len=e=>(e=vue.unref(e),Array.isArray(e)?e.length:typeof e=="object"?Object.keys(e).length:String(e).length);function regex(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++)n[t]=arguments[t];return a=>(a=vue.unref(a),!req(a)||n.every(r=>(r.lastIndex=0,r.test(a))))}var common$1=Object.freeze({__proto__:null,forEach,len,normalizeValidatorObject,regex,req,unwrap:vue.unref,unwrapNormalizedValidator,unwrapValidatorResponse,withAsync,withMessage,withParams});regex(/^[a-zA-Z]*$/);regex(/^[a-zA-Z0-9]*$/);regex(/^\d*(\.\d+)?$/);const emailRegex=/^(?:[A-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[A-z0-9!#$%&'*+/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9]{2,}(?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)\])$/i;var email$1=regex(emailRegex),email={$validator:email$1,$message:"Value is not a valid email address",$params:{type:"email"}};function maxLength$1(e){return n=>!req(n)||len(n)<=vue.unref(e)}function maxLength(e){return{$validator:maxLength$1(e),$message:n=>{let{$params:t}=n;return`The maximum length allowed is ${t.max}`},$params:{max:e,type:"maxLength"}}}function minLength$1(e){return n=>!req(n)||len(n)>=vue.unref(e)}function minLength(e){return{$validator:minLength$1(e),$message:n=>{let{$params:t}=n;return`This field should be at least ${t.min} characters long`},$params:{min:e,type:"minLength"}}}function required$1(e){return typeof e=="string"&&(e=e.trim()),req(e)}var required={$validator:required$1,$message:"Value is required",$params:{type:"required"}};const urlRegex=/^(?:(?:(?:https?|ftp):)?\/\/)(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u00a1-\uffff][a-z0-9\u00a1-\uffff_-]{0,62})?[a-z0-9\u00a1-\uffff]\.)+(?:[a-z\u00a1-\uffff]{2,}\.?))(?::\d{2,5})?(?:[/?#]\S*)?$/i;regex(urlRegex);regex(/(^[0-9]*$)|(^-[0-9]+$)/);regex(/^[-]?\d*(\.\d+)?$/);const postcode=common$1.regex(/^([A-Za-z][A-HJ-Ya-hj-y]?\d[A-Za-z\d]? ?\d[A-Za-z]{2}|GIR ?0A{2})$/),validateFormElementMixin={emits:["status-update"],data(){return{inputVal:this.value,isInvalid:this.invalid}},computed:{isRequired(){return typeof required<"u"&&"required"in this.validationRules},rules(){let e={};for(const[n,t]of Object.entries(this.validationRules))n==="required"?e={...e,required}:n==="email"?e={...e,email}:n==="minLength"?e={...e,minLength:minLength(t)}:n==="maxLength"?e={...e,maxLength:maxLength(t)}:n==="invalidVal"?e={...e,noInvalid:()=>this.inputVal.indexOf(this.validationRules.invalidVal)===-1}:n==="postcode"&&(e={...e,postcode});return typeof e<"u"?(e={...e},{inputVal:e}):{}},errorsList(){const e=[];return Object.keys(this.rules.inputVal).forEach(t=>{this.v$.$errors&&this.v$.$errors.forEach(a=>{a.$validator===t&&e.push(t)})}),e}},watch:{errorsList(e){e.length?this.isInvalid=!0:this.isInvalid=!1}},methods:{manualValidate(){if(this.isInvalid=!1,"required"in this.rules.inputVal){let e=!1;typeof this.inputVal=="string"?/\S/.test(this.inputVal)||(e=!0):this.inputVal||(e=!0),e&&this.errorsList.indexOf("required")===-1&&this.errorsList.push("required")}else this.errorsList.forEach((e,n)=>{e==="required"&&this.errorsList.splice(n,1)});this.errorsList.length&&(this.isInvalid=!0),this.touched=!0,this.$emit("status-update",{field:this.fieldName,value:this.inputVal,errors:this.errorsList})},emitStatus(){setTimeout(()=>{this.manualValidate(),this.touched=!0,this.v$.$touch()},50)}}},ariaDescriptionMixin={computed:{ariaDescription(){return this.v$.inputVal&&this.v$.inputVal.$anyError||this.invalid?`error-${this.fieldName}`:this.hintText?`hint-${this.fieldName}`:null}}},_sfc_main$1Q={name:"VsRadioButton",status:"prototype",release:"0.0.1",components:{BFormRadioGroup:LoadingSpinner.Ou,BFormRadio:LoadingSpinner.pn},mixins:[validateFormElementMixin,ariaDescriptionMixin],props:{value:{type:String,default:""},fieldName:{type:String,required:!0},validationRules:{type:Object,default(){return{}}},invalid:{type:Boolean,default:!1},triggerValidate:{type:Boolean,default:!1},validationMessages:{type:Object,default(){return{}}},genericValidation:{type:Object,default(){return{}}},reAlertErrors:{type:Boolean,default:!1},options:{type:Array,required:!0},hintText:{type:String,default:""}},emits:["updated","updateFieldData"],setup:()=>({v$:useVuelidate()}),data(){return{inputVal:this.value,clearErrorsOnFocus:!1,checkedValue:this.value}},computed:{elementClass(){const e=this.v$.inputVal&&this.v$.inputVal.$anyError||this.invalid?"vs-input--error":"",n=`vs-input--${this.fieldName}`;return`${e} ${n}`},showClearButton(){return!!(this.inputVal.length&&this.clearButtonText!=="")},errorClass(){return this.v$.inputVal&&this.v$.inputVal.$anyError||this.invalid?"vs-input--error":""}},watch:{triggerValidate(){this.manualValidate()},inputVal(e){this.$emit("updated",{field:this.fieldName,value:e})},value(e){this.inputVal=e}},methods:{clearInput(){this.inputVal=""},focusOnInput(){this.$nextTick(()=>{this.$refs.input.$el.focus()})},validateErrors(){this.clearErrorsOnFocus=!1,this.emitStatus()},resetErrors(){this.clearErrorsOnFocus=!0},valueChanged(e){this.checkedValue=e.value,this.$emit("updateFieldData",e)}},validations(){return this.rules}},_hoisted_1$1p={class:"vs-radio-button","data-test":"vs-radio-button"},_hoisted_2$11=["id"],_hoisted_3$Q={class:"visually-hidden"},_hoisted_4$D=["id"];function _sfc_render$1z(e,n,t,a,r,o){const s=vue.resolveComponent("BFormRadio"),i=vue.resolveComponent("BFormRadioGroup");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1p,[e.errorsList.length||t.invalid?(vue.openBlock(),vue.createElementBlock("div",{key:0,role:"alert","aria-live":"assertive",id:`error-${t.fieldName}`},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.errorsList,l=>vue.withDirectives((vue.openBlock(),vue.createElementBlock("p",{key:l,class:"error mb-0"},[vue.createElementVNode("span",_hoisted_3$Q,vue.toDisplayString(t.fieldName),1),vue.createTextVNode(" "+vue.toDisplayString(t.validationMessages[l]||t.genericValidation[l]),1)])),[[vue.vShow,!t.reAlertErrors&&!r.clearErrorsOnFocus]])),128))],8,_hoisted_2$11)):vue.createCommentVNode("",!0),vue.createVNode(i,{id:t.fieldName,"aria-invalid":e.v$.inputVal&&e.v$.inputVal.$anyError||t.invalid,"aria-describedby":e.ariaDescription,onBlur:o.validateErrors,onChange:o.validateErrors,onFocus:o.resetErrors},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(t.options,(l,u)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-radio-button__option",[r.checkedValue===l.value?"vs-radio-button__option--checked":"",{"vs-radio-button__option--disabled":l.disabled}]]),key:u},[vue.createVNode(s,{value:l.value,name:t.fieldName,id:t.fieldName+l.value,onChange:c=>o.valueChanged({field:t.fieldName,value:l.value}),disabled:l.disabled},{default:vue.withCtx(()=>[vue.createElementVNode("span",null,vue.toDisplayString(l.text),1)]),_:2},1032,["value","name","id","onChange","disabled"])],2))),128))]),_:1},8,["id","aria-invalid","aria-describedby","onBlur","onChange","onFocus"]),t.hintText?(vue.openBlock(),vue.createElementBlock("p",{key:1,class:"hint-text",id:`hint-${t.fieldName}`},vue.toDisplayString(t.hintText),9,_hoisted_4$D)):vue.createCommentVNode("",!0)])}const VsRadioButton=LoadingSpinner._export_sfc(_sfc_main$1Q,[["render",_sfc_render$1z]]),_sfc_main$1P={name:"VsInput",status:"prototype",release:"0.0.1",components:{BFormInput:LoadingSpinner.Tu,VsButton:LoadingSpinner.VsButton},mixins:[validateFormElementMixin,ariaDescriptionMixin],props:{value:{type:Number,default:0},fieldName:{type:String,required:!0},minimumNumber:{type:Number,default:0},maximumNumber:{type:Number,default:10},autoComplete:{type:Boolean,default:!0},validationRules:{type:Object,default(){return{}}},invalid:{type:Boolean,default:!1},triggerValidate:{type:Boolean,default:!1},validationMessages:{type:Object,default(){return{}}},genericValidation:{type:Object,default(){return{}}},hintText:{type:String,default:""},clearButtonText:{type:String,default:""},reAlertErrors:{type:Boolean,default:!1}},emits:["updated"],setup:()=>({v$:useVuelidate()}),data(){return{inputVal:this.value,clearErrorsOnFocus:!1}},computed:{elementClass(){const e=this.v$.inputVal&&this.v$.inputVal.$anyError||this.invalid?"vs-input--error":"",n=`vs-input--${this.fieldName}`;return`${e} ${n}`},showClearButton(){return!!(this.inputVal.length&&this.clearButtonText!=="")},errorClass(){return this.v$.inputVal&&this.v$.inputVal.$anyError||this.invalid?"vs-input--error":""}},watch:{triggerValidate(){this.manualValidate()},inputVal(e){this.$emit("updated",{field:this.fieldName,value:e})},value(e){this.inputVal=e}},methods:{clearInput(){this.inputVal=0},focusOnInput(){this.$nextTick(()=>{this.$refs.input.$el.focus()})},clearInputAndFocus(){this.clearInput(),this.focusOnInput()},controlBlurred(){this.inputVal<this.minimumNumber&&(this.inputVal=this.minimumNumber),this.inputVal>this.maximumNumber&&(this.inputVal=this.maximumNumber),this.validateErrors()},validateErrors(){this.clearErrorsOnFocus=!1,this.emitStatus()},resetErrors(){this.clearErrorsOnFocus=!0},decrementValue(e){e&&e.preventDefault(),this.inputVal=Math.max(this.inputVal-1,this.minimumNumber)},incrementValue(e){e&&e.preventDefault(),this.inputVal=Math.min(this.inputVal+1,this.maximumNumber)}},validations(){return this.rules}},_hoisted_1$1o={"data-test":"vs-number-input"},_hoisted_2$10=["id"],_hoisted_3$P=["id"],_hoisted_4$C={class:"visually-hidden"},_hoisted_5$q={class:"visually-hidden"};function _sfc_render$1y(e,n,t,a,r,o){const s=vue.resolveComponent("VsButton"),i=vue.resolveComponent("BFormInput");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1o,[t.hintText?(vue.openBlock(),vue.createElementBlock("p",{key:0,class:"hint-text",id:`hint-${t.fieldName}`},vue.toDisplayString(t.hintText),9,_hoisted_2$10)):vue.createCommentVNode("",!0),e.errorsList.length||t.invalid?(vue.openBlock(),vue.createElementBlock("div",{key:1,role:"alert","aria-live":"assertive",id:`error-${t.fieldName}`},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.errorsList,l=>vue.withDirectives((vue.openBlock(),vue.createElementBlock("p",{key:l,class:"error mb-0"},[vue.createElementVNode("span",_hoisted_4$C,vue.toDisplayString(t.fieldName),1),vue.createTextVNode(" "+vue.toDisplayString(t.validationMessages[l]||t.genericValidation[l]),1)])),[[vue.vShow,!t.reAlertErrors&&!r.clearErrorsOnFocus]])),128))],8,_hoisted_3$P)):vue.createCommentVNode("",!0),vue.createVNode(s,{class:"vs-number-input__increment","icon-only":!0,size:"sm",icon:"fa-regular fa-minus",disabled:r.inputVal<=t.minimumNumber?!0:null,onClick:o.decrementValue},{default:vue.withCtx(()=>n[2]||(n[2]=[vue.createTextVNode(" Remove 1 ")])),_:1,__:[2]},8,["disabled","onClick"]),vue.createVNode(i,{ref:"input",type:"Number",class:vue.normalizeClass(["vs-number-input",o.elementClass]),modelValue:r.inputVal,"onUpdate:modelValue":n[0]||(n[0]=l=>r.inputVal=l),id:t.fieldName,name:t.fieldName,required:e.isRequired,v:r.inputVal,"aria-invalid":e.v$.inputVal&&e.v$.inputVal.$anyError||t.invalid,"aria-describedby":e.ariaDescription,maxlength:t.validationRules.maxLength?t.validationRules.maxLength:null,minlength:t.validationRules.minLength?t.validationRules.minLength:null,min:t.minimumNumber||null,max:t.maximumNumber||null,onBlur:o.controlBlurred,onChange:o.validateErrors,onFocus:o.resetErrors},null,8,["modelValue","class","id","name","required","v","aria-invalid","aria-describedby","maxlength","minlength","min","max","onBlur","onChange","onFocus"]),vue.createVNode(s,{class:"vs-number-input__increment","icon-only":!0,size:"sm",icon:"fa-regular fa-plus",disabled:r.inputVal>=t.maximumNumber?!0:null,onClick:o.incrementValue},{default:vue.withCtx(()=>n[3]||(n[3]=[vue.createTextVNode(" Add 1 ")])),_:1,__:[3]},8,["disabled","onClick"]),o.showClearButton?(vue.openBlock(),vue.createBlock(s,{key:2,class:"vs-number-input__clear-button d-none d-lg-block","data-test":"input-clear-button",variant:"subtle",icon:"vs-icon-control-dismiss",size:"md","icon-only":"",onClick:n[1]||(n[1]=vue.withModifiers(l=>o.clearInputAndFocus(),["prevent"]))},{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_5$q,vue.toDisplayString(t.clearButtonText),1)]),_:1})):vue.createCommentVNode("",!0)])}const VsNumberInput=LoadingSpinner._export_sfc(_sfc_main$1P,[["render",_sfc_render$1y]]),_sfc_main$1O={name:"VsCarbonCalculatorQuestion",status:"prototype",release:"0.0.1",components:{BFormGroup:LoadingSpinner.ku,VsRadioButton,VsNumberInput},props:{label:{type:String,required:!0},labelFor:{type:String,required:!0},hint:{type:String,default:""},fieldClass:{type:String,required:!0},fieldType:{type:String,default:"radio",validator:e=>e.match(/(radio|number)/)},fieldName:{type:String,required:!0},options:{type:Array,required:!0},minimum:{type:Number,default:0},maximum:{type:Number,default:0}},emits:["updateFieldData"],methods:{valueChanged(e){this.$emit("updateFieldData",e)}}},_hoisted_1$1n=["for"];function _sfc_render$1x(e,n,t,a,r,o){const s=vue.resolveComponent("VsRadioButton"),i=vue.resolveComponent("VsNumberInput"),l=vue.resolveComponent("BFormGroup");return vue.openBlock(),vue.createBlock(l,{class:vue.normalizeClass([t.fieldClass,"vs-carbon-calculator-question"]),"data-test":"vs-carbon-calculator-question"},{default:vue.withCtx(()=>[vue.createElementVNode("div",{class:vue.normalizeClass(t.fieldClass)},[vue.createElementVNode("label",{class:"vs-carbon-calculator-question__label mb-200",for:t.fieldName},vue.toDisplayString(t.label),9,_hoisted_1$1n),t.fieldType==="radio"?(vue.openBlock(),vue.createBlock(s,{key:0,"field-name":t.fieldName,options:t.options,required:!0,"hint-text":t.hint,onUpdateFieldData:o.valueChanged},null,8,["field-name","options","hint-text","onUpdateFieldData"])):vue.createCommentVNode("",!0),t.fieldType==="number"?(vue.openBlock(),vue.createBlock(i,{key:1,"field-name":t.fieldName,"increment-controls":!0,value:0,"minimum-number":t.minimum,"maximum-number":t.maximum,"hint-text":t.hint,onUpdated:o.valueChanged},null,8,["field-name","minimum-number","maximum-number","hint-text","onUpdated"])):vue.createCommentVNode("",!0)],2)]),_:1},8,["class"])}const VsCarbonCalculatorQuestion=LoadingSpinner._export_sfc(_sfc_main$1O,[["render",_sfc_render$1x]]),_sfc_main$1N={name:"VsCarbonCalculator",status:"prototype",release:"0.0.1",components:{VsButton:LoadingSpinner.VsButton,VsContainer:LoadingSpinner.VsContainer,VsCol:LoadingSpinner.VsCol,VsRow:LoadingSpinner.VsRow,VsWarning:LoadingSpinner.VsWarning,VsProgressBar,VsHeading:LoadingSpinner.VsHeading,VsCarbonCalculatorResults,VsCarbonCalculatorTip,VsCarbonCalculatorRunningTotal,VsCarbonCalculatorIntro,VsCarbonCalculatorQuestion},mixins:[LoadingSpinner.dataLayerMixin],provide(){return{labelsMap:this.labelsMap}},props:{labelsMap:{type:Object,required:!0},language:{type:String,default:"en-gb"}},data(){return this.initialState()},computed:{currentQuestion(){return!this.formData||!this.activeStage?null:this.formData.fields[this.activeStage-1]},currentTip(){return this.activeStage&&this.labelsMap[`stage-${this.activeStage}.tip`]?this.labelsMap[`stage-${this.activeStage}.tip`]:""},stayDuration(){return this.form.howLongStay?parseInt(this.form.howLongStay,10):0},currentCategory(){return this.labelsMap[`stage-${this.activeStage}.title`]?this.labelsMap[`stage-${this.activeStage}.title`]:""},activeStageRepeatable(){return this.labelsMap[`stage-${this.activeStage}.repeat`]?this.labelsMap[`stage-${this.activeStage}.repeat`]:""}},mounted(){this.getFormData()},methods:{initialState(){return{formData:{},messagingData:{},form:{},formIsInvalid:!1,showErrorMessage:!1,errorFields:[],triggerValidate:!1,conditionalFields:{},reAlertErrors:!1,totalKilos:0,transportKilos:0,accommodationKilos:0,foodKilos:0,transportTip:null,foodTip:null,accommodationTip:null,transportInternalTip:null,activeStage:0,answerSet:!1,repeatableStages:{}}},restart(){const{formData:e,repeatableStages:n}=this;Object.assign(this.$data,this.initialState()),this.$data.formData=e,this.$data.repeatableStages=n,this.cleanFields()},cleanFields(){for(let e=this.formData.fields.length-1;e>=0;e--)this.formData.fields[e].isClone&&this.formData.fields.splice(e,1);for(let e=0;e<Object.keys(this.repeatableStages).length;e++)this.repeatableStages[Object.keys(this.repeatableStages)[e]].generations=0},getFormData(){LoadingSpinner.axios.get(this.labelsMap.formUrl).then(e=>{if(this.formData=e.data,e.data.fields.forEach(n=>{this.form[n.name]="",n.conditional&&(this.conditionalFields[n.name]=!1)}),this.repeatableStages={},e.data.repeatableStages)for(let n=0;n<e.data.repeatableStages.length;n++)this.repeatableStages[e.data.repeatableStages[n]]={generations:0}})},getMessagingData(e,n){return Object.keys(this.messagingData).length>0?this.messagingData[n][e]:e==="validation"?{}:""},getQuestionLabel(e,n){if(e.isClone){if(this.labelsMap[`question-${e.originalNumber+1}.clone-question`])return this.labelsMap[`question-${e.originalNumber+1}.clone-question`];if(this.labelsMap[`question-${e.originalNumber+1}.question`])return this.labelsMap[`question-${e.originalNumber+1}.question`]}return this.labelsMap[`question-${n+1}.question`]?this.labelsMap[`question-${n+1}.question`]:""},getQuestionHint(e,n){if(e.isClone){if(this.labelsMap[`question-${e.originalNumber+1}.clone-hint`])return this.labelsMap[`question-${e.originalNumber+1}.clone-hint`];if(this.labelsMap[`question-${e.originalNumber+1}.hint`])return this.labelsMap[`question-${e.originalNumber+1}.hint`]}return this.labelsMap[`question-${n+1}.hint`]?this.labelsMap[`question-${n+1}.hint`]:""},getQuestionOptions(e,n){let t;if(e.isClone?t=e.originalNumber:t=n,e.element==="radio"){const{options:a}=e;for(let r=0;r<a.length;r++)a[r].text=this.labelsMap[`question-${t+1}.option-${r+1}`];return a}return[]},updateFieldData(e){this.form[e.field]=e.value||"",e.value?this.answerSet=!0:this.answerSet=!1,this.manageErrorStatus(e.field,e.errors),this.checkConditionalFields(),this.calculateEmissions()},manageErrorStatus(e,n){const t=this.errorFields.indexOf(e);t!==-1?(!n||n.length<1)&&this.errorFields.splice(t,1):n&&n.length>0&&this.errorFields.push(e)},getRadioValue(e,n){if(!n)return 0;let t;for(let r=0;r<this.formData.fields.length;r++)this.formData.fields[r].name===e&&(t=this.formData.fields[r]);const a=t.values[n];if(t.multiplyByNumber)return a*t.multiplyByNumber;if(t.multiplyByAnswer){let r=this.form[t.multiplyByAnswer.question]||0;return r=Math.max(r,t.multiplyByAnswer.minimum),a*r}if(t.multiplyByValue&&e!==t.multiplyByValue){let r=this.getNumberValue(t.multiplyByValue.question,this.form[t.multiplyByValue.question])||0;return r=Math.max(r,t.multiplyByValue.minimum),a*r}return a},getNumberValue(e,n){if(!n)return 0;let t;for(let a=0;a<this.formData.fields.length;a++)this.formData.fields[a].name===e&&(t=this.formData.fields[a]);if(t.multiplyByNumber)return parseInt(n,10)*t.multiplyByNumber;if(t.multiplyByAnswer){const a=this.form[t.multiplyByAnswer.question]||0;return parseInt(n,10)*a}if(t.multiplyByValue&&e!==t.multiplyByValue){const a=this.getNumberValue(t.multiplyByValue.question,this.form[t.multiplyByValue.question]);return parseInt(n,10)*a}return 0},getFieldValue(e){return e.element==="radio"?this.getRadioValue(e.name,this.form[e.name]):e.element==="number"?this.getNumberValue(e.name,this.form[e.name]):0},calculateEmissions(){this.transportKilos=0,this.accommodationKilos=0,this.foodKilos=0;for(let e=0;e<this.formData.fields.length;e++){const n=this.formData.fields[e];switch(n.stage){case 1:case 3:this.transportKilos+=this.getFieldValue(n);break;case 2:this.accommodationKilos+=this.getFieldValue(n);break;case 4:this.foodKilos+=this.getFieldValue(n);break}}this.totalKilos=this.transportKilos+this.accommodationKilos+this.foodKilos},checkConditionalFields(){Object.keys(this.conditionalFields).forEach(e=>{const n=this.formData.fields.find(a=>a.name===e);let t=!0;Object.keys(n.conditional).forEach(a=>{const r=n.conditional[a];Array.isArray(r)?r.indexOf(this.form[a])===-1&&(t=!1):this.form[a]!==r&&(t=!1),t?this.conditionalFields[e]=!0:(this.conditionalFields[e]=!1,this.manageErrorStatus(e,[]))})})},forwardPage(e){e&&e.preventDefault(),this.activeStage&&this.createDataLayerObject("carbonQuestionEvent",{questionNumber:this.activeStage,answer:this.form[this.currentQuestion.name]}),this.activeStage+=1,this.checkNewAnswerSet(),this.resetFocus()},backwardPage(e){e&&e.preventDefault(),this.activeStage-=1,this.checkNewAnswerSet(),this.resetFocus()},checkNewAnswerSet(){if(this.activeStage>this.formData.stages){this.answerSet=!0;return}this.answerSet=!0;for(let e=0;e<this.formData.fields.length;e++)if(this.formData.fields[e].stage===this.activeStage){const n=this.formData.fields[e];n.element==="radio"&&!this.form[n.name]?this.answerSet=!1:n.element==="number"&&!this.form[n.name]&&(this.form[n.name]=n.validation.min)}},isRepeatable(e){return!!(this.repeatableStages[e]&&this.repeatableStages[e].generations<3)},conditionalElementClass(e){return this.conditionalFields[e]===!0||typeof this.conditionalFields[e]>"u"?"":"d-none"},resetFocus(){this.$nextTick(()=>{this.$nextTick(()=>{try{this.$refs.questions[this.activeStage-1].$el.focus(),this.$refs.progress.$el.scrollIntoView()}catch{}})})},duplicateCurrentStage(e){e&&e.preventDefault();const n=this.repeatableStages[this.activeStage].generations+1;for(let t=0;t<this.formData.fields.length;t++){const a=this.formData.fields[t];if(a.stage===this.activeStage&&!a.isClone){const r=JSON.parse(JSON.stringify(a));r.isClone=!0;const o=`${a.name}${n}`;r.name=o,r.originalNumber=t,this.form[o]="",this.formData.fields.push(r)}}this.repeatableStages[this.activeStage].generations=n}}},_hoisted_1$1m={class:"vs-carbon-calculator__wrapper"},_hoisted_2$$={key:1};function _sfc_render$1w(e,n,t,a,r,o){const s=vue.resolveComponent("VsCarbonCalculatorIntro"),i=vue.resolveComponent("VsProgressBar"),l=vue.resolveComponent("VsHeading"),u=vue.resolveComponent("VsCarbonCalculatorQuestion"),c=vue.resolveComponent("VsButton"),d=vue.resolveComponent("VsCarbonCalculatorTip"),v=vue.resolveComponent("VsCol"),f=vue.resolveComponent("VsCarbonCalculatorRunningTotal"),h=vue.resolveComponent("VsCarbonCalculatorResults"),p=vue.resolveComponent("VsRow"),m=vue.resolveComponent("VsContainer"),g=vue.resolveComponent("VsWarning");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1m,[vue.createVNode(m,{class:"vs-carbon-calculator","data-test":"vs-carbon-calculator"},{default:vue.withCtx(()=>[e.formData&&e.formData.fields?(vue.openBlock(),vue.createBlock(p,{key:0,class:"vs-carbon-calculator__survey"},{default:vue.withCtx(()=>[vue.createVNode(v,null,{default:vue.withCtx(()=>[e.activeStage?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createBlock(s,{key:0})),e.activeStage?(vue.openBlock(),vue.createElementBlock("form",_hoisted_2$$,[vue.createElementVNode("fieldset",null,[vue.createVNode(i,{max:e.formData.stages,"current-step":e.activeStage<=e.formData.stages?e.activeStage:e.formData.stages,"is-stepped":!0,"is-full":e.activeStage>e.formData.stages,"progress-label":t.labelsMap.progress,ref:"progress"},null,8,["max","current-step","is-full","progress-label"]),vue.withDirectives(vue.createElementVNode("div",null,[o.currentCategory?(vue.openBlock(),vue.createBlock(l,{key:0,level:"2","heading-style":"heading-m",class:"vs-carbon-calculator__category-heading"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(o.currentCategory),1)]),_:1})):vue.createCommentVNode("",!0),(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.formData.fields,(_,b)=>vue.withDirectives((vue.openBlock(),vue.createBlock(u,{ref_for:!0,ref:"questions",tabindex:"0",key:_.name,label:o.getQuestionLabel(_,b),"label-for":_.name,hint:o.getQuestionHint(_,b),"field-class":o.conditionalElementClass(_.name),"field-type":_.element,"field-name":_.name,options:o.getQuestionOptions(_,b),minimum:_.element==="number"?_.validation.min:0,maximum:_.element==="number"?_.validation.max:0,onUpdateFieldData:o.updateFieldData},null,8,["label","label-for","hint","field-class","field-type","field-name","options","minimum","maximum","onUpdateFieldData"])),[[vue.vShow,_.stage===e.activeStage]])),128))],512),[[vue.vShow,e.activeStage<=e.formData.fields.length]])])])):vue.createCommentVNode("",!0),o.isRepeatable(e.activeStage)?(vue.openBlock(),vue.createBlock(c,{key:2,class:"my-100",variant:"secondary",icon:"fa-regular fa-plus",onClick:n[0]||(n[0]=_=>o.duplicateCurrentStage())},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(o.activeStageRepeatable),1)]),_:1})):vue.createCommentVNode("",!0),o.currentTip?(vue.openBlock(),vue.createBlock(d,{key:3,tip:o.currentTip},null,8,["tip"])):vue.createCommentVNode("",!0)]),_:1}),vue.createVNode(v,{cols:"12"},{default:vue.withCtx(()=>[e.activeStage>0&&e.activeStage<=e.formData.stages?(vue.openBlock(),vue.createBlock(f,{key:0,"total-kilos":e.totalKilos,language:t.language},null,8,["total-kilos","language"])):vue.createCommentVNode("",!0),e.activeStage>e.formData.stages?(vue.openBlock(),vue.createBlock(h,{key:1,"total-kilos":e.totalKilos,"transport-kilos":e.transportKilos,"food-kilos":e.foodKilos,"accommodation-kilos":e.accommodationKilos,"stay-duration":o.stayDuration,"comparison-replacements":e.formData.comparisonReplacements,language:t.language},null,8,["total-kilos","transport-kilos","food-kilos","accommodation-kilos","stay-duration","comparison-replacements","language"])):vue.createCommentVNode("",!0)]),_:1}),e.activeStage===0?(vue.openBlock(),vue.createBlock(v,{key:0,class:"text-center",cols:"12"},{default:vue.withCtx(()=>[vue.createVNode(c,{variant:"primary",type:"submit",class:"vs-form__submit mt-300",onClick:n[1]||(n[1]=_=>o.forwardPage())},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.labelsMap.begin),1)]),_:1})]),_:1})):vue.createCommentVNode("",!0),e.activeStage>0?(vue.openBlock(),vue.createBlock(v,{key:1,cols:"12"},{default:vue.withCtx(()=>[e.activeStage>1?(vue.openBlock(),vue.createBlock(c,{key:0,variant:"secondary",type:"submit",class:"vs-form__submit mt-300 float-start",ref:"backPage",onClick:n[2]||(n[2]=_=>o.backwardPage())},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.labelsMap.previous),1)]),_:1},512)):vue.createCommentVNode("",!0),e.activeStage<e.formData.stages?(vue.openBlock(),vue.createBlock(c,{key:1,variant:"primary",type:"submit",class:"vs-form__submit mt-300 float-end",ref:"forwardPage",disabled:e.activeStage>0&&!e.answerSet,onClick:n[3]||(n[3]=_=>o.forwardPage())},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.labelsMap.next),1)]),_:1},8,["disabled"])):vue.createCommentVNode("",!0),e.activeStage===e.formData.stages?(vue.openBlock(),vue.createBlock(c,{key:2,variant:"primary",type:"submit",class:"vs-form__submit mt-300 float-end",disabled:!e.answerSet,onClick:n[4]||(n[4]=_=>o.forwardPage())},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.labelsMap.results),1)]),_:1},8,["disabled"])):vue.createCommentVNode("",!0),e.activeStage>e.formData.stages?(vue.openBlock(),vue.createBlock(c,{key:3,variant:"primary",type:"submit",class:"vs-form__submit mt-300 float-end",onClick:n[5]||(n[5]=_=>o.restart())},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.labelsMap.restart),1)]),_:1})):vue.createCommentVNode("",!0)]),_:1})):vue.createCommentVNode("",!0)]),_:1})):vue.createCommentVNode("",!0)]),_:1}),vue.createVNode(g,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.labelsMap.noJsMessage),1)]),_:1})])}const CarbonCalculator=LoadingSpinner._export_sfc(_sfc_main$1N,[["render",_sfc_render$1w]]),_sfc_main$1M={name:"VsCard",status:"prototype",release:"0.1.0",props:{cardStyle:{type:String,default:null,validator:e=>e.match(/(elevated|outlined|overlay)/)},fillColor:{type:String,default:"vs-color-interaction-cta-subtle"},accentBar:{type:Boolean,default:!1},horizontal:{type:Boolean,default:!1}},data(){return{tokens:LoadingSpinner.designTokens}},computed:{cardClasses(){return[{"vs-card--horizontal":this.horizontal,"vs-card--accent-bar":this.accentBar},this.cardStyle?`vs-card--${this.cardStyle}`:null]},cardStyles(){return this.fillColor?{"background-color":this.tokens[this.fillColor]||this.fillColor}:null}}},_hoisted_1$1l={key:0,class:"vs-card__header"},_hoisted_2$_={class:"vs-card__body"},_hoisted_3$O={key:1,class:"vs-card__footer"},_hoisted_4$B={key:2,class:"vs-card__image"};function _sfc_render$1v(e,n,t,a,r,o){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-card",o.cardClasses]),"data-test":"vs-card",style:vue.normalizeStyle(o.cardStyles)},[e.$slots["vs-card-header"]&&e.$slots["vs-card-header"]()?(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1l,[vue.renderSlot(e.$slots,"vs-card-header")])):vue.createCommentVNode("",!0),vue.createElementVNode("div",_hoisted_2$_,[vue.renderSlot(e.$slots,"vs-card-body")]),e.$slots["vs-card-footer"]&&e.$slots["vs-card-footer"]()?(vue.openBlock(),vue.createElementBlock("div",_hoisted_3$O,[vue.renderSlot(e.$slots,"vs-card-footer")])):vue.createCommentVNode("",!0),t.cardStyle==="overlay"&&e.$slots["vs-card-image"]&&e.$slots["vs-card-image"]()?(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$B,[vue.renderSlot(e.$slots,"vs-card-image")])):vue.createCommentVNode("",!0)],6)}const VsCard=LoadingSpinner._export_sfc(_sfc_main$1M,[["render",_sfc_render$1v]]),_sfc_main$1L={name:"VsCardGroup",status:"prototype",release:"0.1.0",props:{variant:{type:String,default:"grid",validator:e=>e.match(/(grid)/)},cardsPerRow:{type:Number,default:3,validator:e=>[3,4].includes(e)},scrollSnap:{type:[Boolean,String],default:!1,validator:e=>[!1,!0,"always"].includes(e)}},computed:{cardGroupClasses(){return["vs-card-group",{"is-scroll-snap-responsive":this.scrollSnap===!0,"is-scroll-snap-always":this.scrollSnap==="always","is-grid":this.variant==="grid"}]}}};function _sfc_render$1u(e,n,t,a,r,o){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(o.cardGroupClasses),style:vue.normalizeStyle({"--cards-in-row":t.cardsPerRow}),"data-test":"vs-card-group"},[vue.renderSlot(e.$slots,"default")],6)}const VsCardGroup=LoadingSpinner._export_sfc(_sfc_main$1L,[["render",_sfc_render$1u]]),noJsClass="no-js",jsIsDisabled=()=>document.getElementsByClassName(noJsClass).length>0,useVideoStore=pinia.defineStore("video",{state:()=>({videos:{}}),actions:{addVideo(e){this.videos[e.videoId]={...e}}}}),cookieCheckerMixin={data(){return{requiredCookies:[],requiredCookiesAllowed:!1,cookieManagerLoaded:!1}},methods:{managerLoaded(){this.cookieManagerLoaded=!0},cookiesUpdated(){let e=!1;typeof CookieControl<"u"&&(e=this.requiredCookies.every(n=>CookieControl&&CookieControl.getCategoryConsent(n)!==!1)),this.requiredCookiesAllowed=e,typeof this.callbackOnUpdated<"u"&&this.callbackOnUpdated()}},computed:{cookiesAllowed(){return typeof window<"u"&&window.bypassCookiesRequired?!0:this.requiredCookiesAllowed},cookiesLoaded(){return typeof window<"u"&&window.bypassCookiesLoaded?!0:this.cookieManagerLoaded}},mounted(){window.addEventListener("cookieManagerLoaded",()=>{this.managerLoaded()}),window.addEventListener("cookiesUpdated",()=>{this.cookiesUpdated()})}},cookieCategories=Object.freeze({analytical:0,marketing:1}),cookieValues$5={youtube:[cookieCategories.marketing],embed:[cookieCategories.analytical,cookieCategories.marketing]},cookieValues$4=cookieValues$5.youtube,_sfc_main$1K={name:"VsStretchedLinkCard",status:"prototype",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading,VsLink,VsImg:LoadingSpinner.VsImg,VsButton:LoadingSpinner.VsButton,VsWarning:LoadingSpinner.VsWarning},mixins:[cookieCheckerMixin],inject:{noJsMessage:{default:null},theme:{default:null},noCookiesMessage:{default:null},cookieLinkText:{default:null}},props:{link:{type:String,required:!0,default:"#"},headingLevel:{type:[String,Number],default:"3",validator:e=>e.match(/(1|2|3|4|5|6)/)},headingStyle:{type:[String,Number],default:"heading-xs",validator:e=>e.match(/(display-m|display-s|heading-xl|heading-l|heading-m|heading-s|heading-xs|heading-xxs)/)},type:{type:String,required:!0,validator:e=>e.match(/(default|external|internal|download|video)/)},imgSrc:{type:String,default:void 0},imgAlt:{type:String,default:""},disabled:{type:Boolean,default:!1},videoId:{type:String,default:""},videoBtnText:{type:String,default:""},errorMessage:{type:String,default:""},errorType:{type:String,default:"image",validator:e=>e.match(/(image|full)/)},warningSize:{type:String,default:"small",validator:e=>e.match(/(normal|small)/)},businessSupport:{type:Boolean,default:!1},isHomePage:{type:Boolean,default:!1}},setup(){return{videoStore:useVideoStore()}},data(){return{jsDisabled:!0,requiredCookies:cookieValues$4}},computed:{formattedVideoBtnText(){return`${this.videoBtnText} | `},formattedVideoDuration(){let e=`${this.videoDetails.videoFullDuration.seconds}`;return e.length===1&&(e=`0${e}`),`${this.videoDetails.videoFullDuration.minutes}:${e}`},stretchedLinkCardClasses(){let e="";return this.disabled&&(e+="vs-stretched-link-card--disabled"),this.type==="video"&&(e+=" vs-stretched-link-card--video"),this.showWarning&&this.type==="video"&&(e+=" vs-stretched-link-card--warning"),e},videoDetails(){return this.videoStore?this.videoStore.videos[this.videoId]:null},videoLoaded(){return typeof this.videoDetails<"u"&&this.videoDetails.videoDuration>0},warningClass(){let e="";return this.videoId&&(this.jsDisabled||!this.cookiesAllowed)&&(e="vs-stretched-link-card__img-container--warning ",this.errorType==="full"&&(this.cookiesLoaded||this.jsDisabled)&&(e+="vs-stretched-link-card__img-container--warning-full")),e},showCookieWarning(){return!!(this.videoId&&!this.jsDisabled&&!this.cookiesAllowed&&this.cookiesLoaded)},showError(){return!!(this.videoId&&this.errorMessage!==""&&!this.cookiesLoaded)},showWarning(){return this.showError||this.showCookieWarning?this.errorType:!!this.jsDisabled},warningMessage(){let e="";return this.showCookieWarning?e=this.noCookiesMessage:e=this.errorMessage,e},warningAttrs(){const e={};return this.type==="cookie"&&(e.class="vs-warning__cookie-trigger"),this.size==="small"&&(e.size="sm"),e},isSvg(){return!!(this.imgSrc&&this.imgSrc.includes(".svg"))}},mounted(){this.jsDisabled=jsIsDisabled()},methods:{emitShowModal(){!this.videoId||!this.cookiesAllowed||this.emitter&&this.emitter.emit("showModal",this.videoId,"#videoShow")}}},_hoisted_1$1k={key:0,class:"vs-stretched-link-card__video-btn-text"},_hoisted_2$Z={key:4,class:"card-body"},_hoisted_3$N={key:0,class:"vs-stretched-link-card__category","data-test":"vs-stretched-link-card__category"},_hoisted_4$A={class:"vs-stretched-link-card__content","data-test":"vs-stretched-link-card__content"},_hoisted_5$p={key:2,class:"vs-stretched-link-card__badges","data-test":"vs-stretched-link-card__badges"};function _sfc_render$1t(e,n,t,a,r,o){const s=vue.resolveComponent("VsWarning"),i=vue.resolveComponent("VsImg"),l=vue.resolveComponent("VsButton"),u=vue.resolveComponent("VsLink"),c=vue.resolveComponent("VsHeading");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["card vs-stretched-link-card",o.stretchedLinkCardClasses]),"data-test":"vs-stretched-link-card",onClick:n[0]||(n[0]=(...d)=>o.emitShowModal&&o.emitShowModal(...d)),onKeypress:n[1]||(n[1]=(...d)=>o.emitShowModal&&o.emitShowModal(...d))},[o.showWarning==="full"?(vue.openBlock(),vue.createBlock(s,{key:0,size:t.warningSize,type:o.showCookieWarning?"cookie":"normal","data-test":"vs-stretched-link-card__full-warning",class:"vs-stretched-link-card__full-warning"},vue.createSlots({default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(o.warningMessage)+" ",1)]),_:2},[o.cookieLinkText!==""&&o.showCookieWarning?{name:"button-text",fn:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(o.cookieLinkText),1)]),key:"0"}:void 0]),1032,["size","type"])):vue.createCommentVNode("",!0),t.errorType==="full"&&t.videoId!==""?(vue.openBlock(),vue.createBlock(s,{key:1,size:t.warningSize,"data-test":"vs-stretched-link-card__full-warning",class:"vs-stretched-link-card__full-warning vs-stretched-link-card__full-warning--no-js"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(o.noJsMessage),1)]),_:1},8,["size"])):vue.createCommentVNode("",!0),t.imgSrc?(vue.openBlock(),vue.createElementBlock("div",{key:2,class:vue.normalizeClass(["vs-stretched-link-card__img-container",o.warningClass])},[t.imgSrc?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createVNode(i,{src:t.imgSrc,alt:t.imgAlt,class:vue.normalizeClass(["vs-stretched-link-card__img",o.isSvg?"vs-stretched-link-card__img--svg":""]),"data-test":"vs-stretched-link-card__img","data-chromatic":"ignore"},null,8,["src","alt","class"]),t.videoId&&o.videoLoaded&&e.cookiesAllowed?(vue.openBlock(),vue.createBlock(l,{key:0,class:"vs-stretched-link-card__video-button","data-test":"vs-stretched-link-card__video-button",icon:"fa-regular fa-play","icon-position":"left",size:"md",ref:"videoShow",rounded:!1,onClick:o.emitShowModal},{default:vue.withCtx(()=>[t.videoBtnText?(vue.openBlock(),vue.createElementBlock("span",_hoisted_1$1k,vue.toDisplayString(o.formattedVideoBtnText),1)):vue.createCommentVNode("",!0),vue.createTextVNode(" "+vue.toDisplayString(o.formattedVideoDuration),1)]),_:1},8,["onClick"])):vue.createCommentVNode("",!0)],64)):vue.createCommentVNode("",!0),o.showWarning==="image"?(vue.openBlock(),vue.createBlock(s,{key:1,size:t.warningSize,type:o.showCookieWarning?"cookie":"normal","data-test":"vs-stretched-link-card__image-warning",class:"vs-stretched-link-card__image-warning"},vue.createSlots({default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(o.warningMessage)+" ",1)]),_:2},[o.cookieLinkText!==""&&o.showCookieWarning?{name:"button-text",fn:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(o.cookieLinkText),1)]),key:"0"}:void 0]),1032,["size","type"])):vue.createCommentVNode("",!0),t.videoId!==""&&t.errorType==="image"?(vue.openBlock(),vue.createBlock(s,{key:2,size:t.warningSize,"data-test":"vs-stretched-link-card__warning",class:"vs-stretched-link-card__image-warning vs-stretched-link-card__image-warning--no-js"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(o.noJsMessage),1)]),_:1},8,["size"])):vue.createCommentVNode("",!0)],2)):vue.createCommentVNode("",!0),e.$slots["stretched-card-panels"]&&e.$slots["stretched-card-panels"]()?vue.renderSlot(e.$slots,"stretched-card-panels",{key:3}):vue.createCommentVNode("",!0),o.showWarning!=="full"?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$Z,[e.$slots["stretched-card-category"]&&e.$slots["stretched-card-category"]()?(vue.openBlock(),vue.createElementBlock("span",_hoisted_3$N,[vue.renderSlot(e.$slots,"stretched-card-category")])):vue.createCommentVNode("",!0),e.$slots["stretched-card-header"]&&e.$slots["stretched-card-header"]()?(vue.openBlock(),vue.createBlock(c,{key:1,level:t.headingLevel,"heading-style":t.headingStyle,class:"card-title vs-stretched-link-card__title","data-test":"vs-stretched-link-card__title"},{default:vue.withCtx(()=>[e.$slots["stretched-card-link"]&&e.$slots["stretched-card-link"]()?vue.renderSlot(e.$slots,"stretched-card-header",{key:0}):!t.businessSupport&&t.type==="video"?vue.renderSlot(e.$slots,"stretched-card-header",{key:1}):(vue.openBlock(),vue.createBlock(u,{key:2,href:t.link,type:t.type,class:vue.normalizeClass(["stretched-link",t.disabled?"stretched-link--disabled":""]),variant:o.theme==="dark"?"on-dark":"primary","data-test":"vs-stretched-link",disabled:t.disabled,tabindex:(t.videoId||t.disabled)&&!t.businessSupport?"-1":"0"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"stretched-card-header")]),_:3},8,["href","type","class","variant","disabled","tabindex"]))]),_:3},8,["level","heading-style"])):vue.createCommentVNode("",!0),vue.createElementVNode("div",_hoisted_4$A,[vue.renderSlot(e.$slots,"stretched-card-content")]),e.$slots["stretched-card-badges"]&&e.$slots["stretched-card-badges"]()?(vue.openBlock(),vue.createElementBlock("div",_hoisted_5$p,[vue.renderSlot(e.$slots,"stretched-card-badges")])):vue.createCommentVNode("",!0),e.$slots["stretched-card-link"]&&e.$slots["stretched-card-link"]()?(vue.openBlock(),vue.createBlock(u,{key:3,href:t.link,class:"vs-stretched-link-card__link stretched-link","data-test":"vs-stretched-link-card__link"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"stretched-card-link")]),_:3},8,["href"])):vue.createCommentVNode("",!0)])):vue.createCommentVNode("",!0)],34)}const VsStretchedLinkCard=LoadingSpinner._export_sfc(_sfc_main$1K,[["render",_sfc_render$1t]]),_sfc_main$1J={name:"VsStretchedLinkPanels",status:"prototype",release:"0.0.1",components:{VsIcon:LoadingSpinner.VsIcon},props:{days:{type:String,default:""},transport:{type:String,default:""},daysLabel:{type:String,default:"days"},transportName:{type:String,default:""}}},_hoisted_1$1j={class:"vs-stretched-link-panels"},_hoisted_2$Y={class:"vs-stretched-link-panels__panel vs-stretched-link-panels__panel--days","data-test":"vs-stretched-link-panel--days"},_hoisted_3$M={"data-test":""},_hoisted_4$z={class:"vs-stretched-link-panels__days"},_hoisted_5$o={class:"vs-stretched-link-panels__panel","data-test":"vs-stretched-link-panel"},_hoisted_6$h={"data-test":"vs-stretched-link-panel__icon"};function _sfc_render$1s(e,n,t,a,r,o){const s=vue.resolveComponent("VsIcon");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1j,[vue.createElementVNode("div",_hoisted_2$Y,[vue.createElementVNode("p",_hoisted_3$M,[vue.createElementVNode("span",_hoisted_4$z,vue.toDisplayString(t.days),1),vue.createTextVNode(vue.toDisplayString(t.daysLabel),1)])]),vue.createElementVNode("div",_hoisted_5$o,[vue.createVNode(s,{icon:t.transport,variant:"inverse",size:"sm",class:"vs-stretched-link-panels__icon"},null,8,["icon"]),vue.createElementVNode("p",_hoisted_6$h,vue.toDisplayString(t.transportName),1)])])}const VsStretchedLinkPanels=LoadingSpinner._export_sfc(_sfc_main$1J,[["render",_sfc_render$1s]]),_sfc_main$1I={name:"VsCarouselSlide",status:"prototype",release:"0.0.1",components:{VsStretchedLinkCard,VsStretchedLinkPanels,VsCol:LoadingSpinner.VsCol},inject:["slideCols","visibleSlides"],props:{imgSrc:{required:!0,type:String},imgAlt:{type:String,default:""},linkType:{type:String,required:!0,validator:e=>e.match(/(default|external|internal|download)/)},linkUrl:{type:String,required:!0},categoryLabel:{type:String,default:null},category:{type:String,default:null},days:{type:String,default:""},daysLabel:{type:String,default:"days"},transport:{type:String,default:""},transportName:{type:String,default:""},slideIndex:{type:String,required:!0}},methods:{isVisible(e){const n=parseInt(e,10);return this.visibleSlides.indexOf(n)>=0}}},_hoisted_1$1i={class:"vs-carousel-slide"},_hoisted_2$X={class:"visually-hidden"},_hoisted_3$L={class:"vs-carousel-slide__title","data-test":"vs-carousel-slide__title"};function _sfc_render$1r(e,n,t,a,r,o){const s=vue.resolveComponent("VsStretchedLinkPanels"),i=vue.resolveComponent("VsStretchedLinkCard"),l=vue.resolveComponent("VsCol");return vue.openBlock(),vue.createBlock(l,{cols:o.slideCols.xs,sm:o.slideCols.sm,lg:o.slideCols.md,xl:o.slideCols.lg,"data-test":"vs-carousel-slide","aria-disabled":!o.isVisible(t.slideIndex)},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$1i,[vue.createVNode(i,{link:t.linkUrl,type:t.linkType,"img-src":t.imgSrc,"img-alt":t.imgAlt,class:vue.normalizeClass([o.isVisible(t.slideIndex)?"vs-carousel-slide__card--active":"vs-carousel-slide__card--disabled","vs-carousel-slide__card"]),disabled:!o.isVisible(t.slideIndex),"data-test":"vs-carousel-card"},vue.createSlots({"stretched-card-category":vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_2$X,vue.toDisplayString(t.categoryLabel)+": ",1),vue.createTextVNode(vue.toDisplayString(t.category),1)]),"stretched-card-header":vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_3$L,[vue.renderSlot(e.$slots,"vs-carousel-slide-heading")])]),_:2},[t.days&&t.transport?{name:"stretched-card-panels",fn:vue.withCtx(()=>[vue.createVNode(s,{days:t.days,transport:t.transport,"transport-name":t.transportName,"days-label":t.daysLabel},null,8,["days","transport","transport-name","days-label"])]),key:"0"}:void 0]),1032,["link","type","img-src","img-alt","class","disabled"])])]),_:3},8,["cols","sm","lg","xl","aria-disabled"])}const CarouselSlide=LoadingSpinner._export_sfc(_sfc_main$1I,[["render",_sfc_render$1r]]),_sfc_main$1H={name:"VsCheckbox",status:"prototype",release:"0.0.1",components:{BFormCheckbox:LoadingSpinner.fn},mixins:[validateFormElementMixin,ariaDescriptionMixin],props:{fieldName:{type:String,required:!0},value:{type:String,default:""},label:{type:String,required:!0},validationRules:{type:Object,default(){return{}}},triggerValidate:{type:Boolean,default:!1},validationMessages:{type:Object,default(){return{}}},invalid:{type:Boolean,default:!1},genericValidation:{type:Object,default(){return{}}},hintText:{type:String,default:""},infoText:{type:String,default:""},reAlertErrors:{type:Boolean,default:!1},size:{type:String,default:void 0,validator:e=>e.match(/(sm|md|lg)/)}},setup:()=>({v$:useVuelidate()}),data(){return{inputVal:"",errors:[]}},computed:{checkBoxClasses(){return{"vs-checkbox":!0,"vs-checkbox--error":this.isInvalid,"vs-checkbox--small":this.size==="sm"}}},watch:{value(e){this.inputVal=e},triggerValidate(){this.manualValidate()}},validations(){return this.rules}},_hoisted_1$1h=["id"],_hoisted_2$W=["innerHTML"],_hoisted_3$K=["id"],_hoisted_4$y={class:"visually-hidden"},_hoisted_5$n={class:"vs-checkbox__label"};function _sfc_render$1q(e,n,t,a,r,o){const s=vue.resolveComponent("BFormCheckbox");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(o.checkBoxClasses)},[vue.createElementVNode("p",{class:"hint-text",id:`hint-${t.fieldName}`},vue.toDisplayString(t.hintText),9,_hoisted_1$1h),t.infoText!==""?(vue.openBlock(),vue.createElementBlock("div",{key:0,innerHTML:t.infoText},null,8,_hoisted_2$W)):vue.createCommentVNode("",!0),e.errorsList.length||t.invalid?(vue.openBlock(),vue.createElementBlock("div",{key:1,role:"alert","aria-live":"assertive",id:`error-${t.fieldName}`},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.errorsList,i=>vue.withDirectives((vue.openBlock(),vue.createElementBlock("p",{key:i,class:"error mb-0"},[vue.createElementVNode("span",_hoisted_4$y,vue.toDisplayString(t.fieldName),1),vue.createTextVNode(" "+vue.toDisplayString(t.validationMessages[i]||t.genericValidation[i]),1)])),[[vue.vShow,!t.reAlertErrors]])),128))],8,_hoisted_3$K)):vue.createCommentVNode("",!0),t.fieldName?(vue.openBlock(),vue.createBlock(s,vue.mergeProps({key:2,modelValue:r.inputVal,"onUpdate:modelValue":n[0]||(n[0]=i=>r.inputVal=i),class:"me-100",name:t.fieldName,id:t.fieldName,value:t.value,unchecked_value:`not_${t.value}`},e.$attrs,{"data-test":"vs-checkbox",onBlur:e.emitStatus,onChange:e.emitStatus,required:e.isRequired,"aria-invalid":e.v$.inputVal&&e.v$.inputVal.$anyError||t.invalid,"aria-describedby":e.ariaDescription}),{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_5$n,vue.toDisplayString(t.label),1)]),_:1},16,["modelValue","name","id","value","unchecked_value","onBlur","onChange","required","aria-invalid","aria-describedby"])):vue.createCommentVNode("",!0)],2)}const VsCheckbox=LoadingSpinner._export_sfc(_sfc_main$1H,[["render",_sfc_render$1q]]),_sfc_main$1G={name:"VsDescriptionList",status:"prototype",release:"0.0.1",provide(){return{inline:vue.computed(()=>this.inline)}},props:{inline:{type:Boolean,default:!1}}};function _sfc_render$1p(e,n,t,a,r,o){return vue.openBlock(),vue.createElementBlock("dl",{class:vue.normalizeClass(["vs-description-list",{"list-inline":t.inline}])},[vue.renderSlot(e.$slots,"default")],2)}const DescriptionList=LoadingSpinner._export_sfc(_sfc_main$1G,[["render",_sfc_render$1p]]),_sfc_main$1F={name:"VsDescriptionListItem",status:"prototype",release:"0.0.1",components:{VsCol:LoadingSpinner.VsCol},inject:["inline"],props:{title:{type:Boolean,default:!1}}};function _sfc_render$1o(e,n,t,a,r,o){const s=vue.resolveComponent("VsCol");return vue.openBlock(),vue.createBlock(s,{tag:t.title?"dt":"dd",class:vue.normalizeClass({"list-inline-item":o.inline,"vs-description-list__detail":!t.title,"vs-description-list__detail--styled":!o.inline&&!t.title,"vs-description-list__term":t.title,"vs-description-list__term--styled":!o.inline&&t.title})},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default",{},void 0,!0)]),_:3},8,["tag","class"])}const DescriptionListItem=LoadingSpinner._export_sfc(_sfc_main$1F,[["render",_sfc_render$1o],["__scopeId","data-v-46cd5138"]]),_sfc_main$1E={name:"VsDetail",status:"prototype",release:"0.0.1",props:{size:{type:String,default:"medium",validator:e=>e.match(/(small|medium|large)/)},color:{type:String,default:"primary",validator:e=>e.match(/(primary|secondary|tertiary)/)},noMargins:{type:Boolean,default:!1}},computed:{detailClasses(){return["vs-detail",`vs-detail--${this.size}`,`vs-detail--${this.color}`,...this.noMargins?[]:["vs-detail--with-margins"]]}}};function _sfc_render$1n(e,n,t,a,r,o){return vue.openBlock(),vue.createElementBlock("p",{class:vue.normalizeClass(o.detailClasses)},[vue.renderSlot(e.$slots,"default")],2)}const VsDetail=LoadingSpinner._export_sfc(_sfc_main$1E,[["render",_sfc_render$1n]]),_sfc_main$1D={name:"VsDropdown",status:"prototype",release:"0.0.1",components:{BDropdown:LoadingSpinner.un},props:{text:{type:String,default:""},variant:{type:String,default:"primary",validator:e=>e.match(/(primary|secondary)/)}},computed:{nonButtonContentSlots(){return LoadingSpinner.lodashExports.reject(this.$slots,{name:"button-content"})}}},_hoisted_1$1g={class:"dropdown-menu overflow-auto",role:"menu"};function _sfc_render$1m(e,n,t,a,r,o){const s=vue.resolveComponent("BDropdown");return vue.openBlock(),vue.createElementBlock(vue.Fragment,null,[vue.createVNode(s,vue.mergeProps(e.$attrs,{variant:t.variant,class:"vs-dropdown"}),vue.createSlots({"button-content":vue.withCtx(()=>[vue.renderSlot(e.$slots,"button-content",{},()=>[vue.createTextVNode(vue.toDisplayString(t.text),1)])]),default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:2},[vue.renderList(o.nonButtonContentSlots,(i,l)=>({name:l,fn:vue.withCtx(()=>[vue.renderSlot(e.$slots,l)])}))]),1040,["variant"]),vue.createElementVNode("div",{class:vue.normalizeClass([e.$attrs.class,"dropdown vs-dropdown vs-dropdown--fallback"])},[vue.createElementVNode("ul",_hoisted_1$1g,[vue.renderSlot(e.$slots,"default")])],2)],64)}const VsDropdown=LoadingSpinner._export_sfc(_sfc_main$1D,[["render",_sfc_render$1m]]),_sfc_main$1C={name:"VsDropdownItem",status:"prototype",release:"0.0.1",components:{BDropdownItem:LoadingSpinner.Xi}};function _sfc_render$1l(e,n,t,a,r,o){const s=vue.resolveComponent("BDropdownItem");return vue.openBlock(),vue.createBlock(s,vue.mergeProps(e.$attrs,{role:"menuitem"}),{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},16)}const VsDropdownItem=LoadingSpinner._export_sfc(_sfc_main$1C,[["render",_sfc_render$1l]]),cookieValues$3=cookieValues$5.embed,_sfc_main$1B={name:"VsEmbedWrapper",status:"prototype",release:"0.0.1",components:{VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,VsBody:LoadingSpinner.VsBody,VsWarning:LoadingSpinner.VsWarning},mixins:[cookieCheckerMixin],props:{noCookiesRequired:{type:Boolean,default:!1},noCookieText:{type:String,required:!0},errorText:{type:String,required:!0},noJsText:{type:String,required:!0},extraContent:{type:String,default:""},embeddedScript:{type:String,default:""}},data(){return{requiredCookies:this.noCookiesRequired?null:cookieValues$3}},computed:{showError(){return this.noCookiesRequired?!1:!this.cookiesAllowed&&this.cookiesLoaded===!0||!this.cookiesLoaded},warningText(){let e="";return this.cookiesLoaded||(e=this.errorText),!this.cookiesAllowed&&this.cookiesLoaded===!0&&(e=this.noCookieText),e}},methods:{callbackOnUpdated(){if(this.embeddedScript&&this.cookiesLoaded&&this.requiredCookiesAllowed){const e=document.createElement("script");e.src=this.embeddedScript,document.head.appendChild(e)}}}},_hoisted_1$1f={"data-test":"vs-embed-wrapper",class:"vs-embed-wrapper"},_hoisted_2$V={class:"vs-embed-wrapper__container",key:"embeddedContent"},_hoisted_3$J={key:"fallback"},_hoisted_4$x=["innerHTML"];function _sfc_render$1k(e,n,t,a,r,o){const s=vue.resolveComponent("VsBody"),i=vue.resolveComponent("VsCol"),l=vue.resolveComponent("VsWarning"),u=vue.resolveComponent("VsRow"),c=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1f,[vue.createVNode(c,null,{default:vue.withCtx(()=>[vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(i,{cols:"12",sm:"10","offset-sm":"1",md:"6","offset-md":"3"},{default:vue.withCtx(()=>[e.$slots["embed-intro-copy"]&&e.$slots["embed-intro-copy"]()&&!o.showError?(vue.openBlock(),vue.createBlock(s,{key:0,class:"vs-module-wrapper__intro vs-embed-wrapper__intro","data-test":"vs-module-wrapper__intro"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"embed-intro-copy")]),_:3})):vue.createCommentVNode("",!0)]),_:3}),vue.createVNode(i,{cols:"12"},{default:vue.withCtx(()=>[e.cookiesAllowed||t.noCookiesRequired?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$V,[vue.renderSlot(e.$slots,"embed-widget")])):vue.createCommentVNode("",!0),o.showError?(vue.openBlock(),vue.createElementBlock("div",_hoisted_3$J,[vue.createVNode(l,{type:e.cookiesLoaded===!0?"cookie":"normal",class:"vs-embed-wrapper__error","data-test":"vs-embed-wrapper__error"},vue.createSlots({default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(o.warningText)+" ",1)]),_:2},[t.extraContent?{name:"extra-content",fn:vue.withCtx(()=>[vue.createElementVNode("div",{innerHTML:t.extraContent},null,8,_hoisted_4$x)]),key:"0"}:void 0,!e.cookiesAllowed&&e.cookiesLoaded===!0?{name:"button-text",fn:vue.withCtx(()=>[vue.renderSlot(e.$slots,"embed-button-text")]),key:"1"}:void 0]),1032,["type"])])):vue.createCommentVNode("",!0),vue.createVNode(l,{type:"normal","data-test":"vs-embed-wrapper__error--no-js",class:"vs-embed-wrapper__error vs-embed-wrapper__error--no-js"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.noJsText),1)]),_:1})]),_:3})]),_:3})]),_:3})])}const EmbedWrapper=LoadingSpinner._export_sfc(_sfc_main$1B,[["render",_sfc_render$1k]]),_sfc_main$1A={name:"VsEventCard",status:"prototype",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading,VsButton:LoadingSpinner.VsButton,VsCol:LoadingSpinner.VsCol,VsRow:LoadingSpinner.VsRow},props:{ctaHref:{type:String,default:"#"},ctaLabel:{type:String,default:""},ctaIcon:{type:String,default:""}}},_hoisted_1$1e={class:"card vs-event-card","data-test":"vs-event-card"},_hoisted_2$U={class:"card-body"},_hoisted_3$I={class:"vs-event-card__date"},_hoisted_4$w={key:0,class:"vs-event-card__content","data-test":"vs-event-card__content"},_hoisted_5$m={key:1,class:"vs-event-card__cta","data-test":"vs-event-card__cta"};function _sfc_render$1j(e,n,t,a,r,o){const s=vue.resolveComponent("VsHeading"),i=vue.resolveComponent("VsCol"),l=vue.resolveComponent("VsRow"),u=vue.resolveComponent("VsButton");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1e,[vue.createElementVNode("div",_hoisted_2$U,[vue.createVNode(l,{class:"vs-event-card__header"},{default:vue.withCtx(()=>[vue.createVNode(i,{sm:"12",md:"9",class:"p-0"},{default:vue.withCtx(()=>[vue.createVNode(s,{class:"vs-event-card__heading","heading-style":"heading-xs",level:"3","data-test":"vs-event-card__heading"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"event-card-header")]),_:3})]),_:3}),e.$slots["event-card-date"]?(vue.openBlock(),vue.createBlock(i,{key:0,sm:"12",md:"3",class:"my-auto p-0","data-test":"vs-event-card__date"},{default:vue.withCtx(()=>[vue.createElementVNode("p",_hoisted_3$I,[vue.renderSlot(e.$slots,"event-card-date")])]),_:3})):vue.createCommentVNode("",!0)]),_:3}),e.$slots["event-card-content"]?(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$w,[vue.renderSlot(e.$slots,"event-card-content")])):vue.createCommentVNode("",!0),t.ctaHref&&t.ctaLabel?(vue.openBlock(),vue.createElementBlock("div",_hoisted_5$m,[vue.createVNode(u,{href:t.ctaHref,icon:t.ctaIcon,"icon-position":"right","data-test":"vs-event-card__cta"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.ctaLabel),1)]),_:1},8,["href","icon"])])):vue.createCommentVNode("",!0)])])}const EventCard=LoadingSpinner._export_sfc(_sfc_main$1A,[["render",_sfc_render$1j]]),_hoisted_1$1d=["id"],_hoisted_2$T={class:"vs-filter__panel-wrapper"},_hoisted_3$H={class:"vs-filter__legend"},_sfc_main$1z={__name:"VsFilter",props:{filterId:{type:String,required:!0},filterLabel:{type:String,required:!0}},emits:["filter-updated"],setup(e,{expose:n}){const t=e,a=vue.ref(),r=i=>{const l=i;l.type==="checkbox"?l.checked=!1:l.type==="date"&&(l.value="")};return n({clearFilter:r,resetAll:()=>{a.value.querySelectorAll('input[type="checkbox"], input[type="date"]').forEach(l=>{r(l)})},resetOne:i=>{const l=a.value.querySelector(`#${i}`);r(l)}}),(i,l)=>(vue.openBlock(),vue.createElementBlock(vue.Fragment,null,[vue.createElementVNode("div",{class:"vs-filter","data-test":"vs-filter",id:t.filterId,ref_key:"filter",ref:a},[vue.createElementVNode("div",_hoisted_2$T,[vue.createElementVNode("fieldset",{class:"vs-filter__panel","data-test":"vs-filter__panel",onChange:l[0]||(l[0]=u=>i.$emit("filter-updated",u))},[vue.createElementVNode("legend",_hoisted_3$H,[vue.createVNode(LoadingSpinner.VsIcon,{icon:"vs-icon-control-filters",size:"sm"}),vue.createTextVNode(" "+vue.toDisplayString(t.filterLabel),1)]),vue.renderSlot(i.$slots,"default")],32)])],8,_hoisted_1$1d),i.$slots["no-js"]?(vue.openBlock(),vue.createBlock(LoadingSpinner.VsWarning,{key:0,class:"vs-filter__warning"},{default:vue.withCtx(()=>[vue.renderSlot(i.$slots,"no-js")]),_:3})):vue.createCommentVNode("",!0)],64))}},_hoisted_1$1c={key:0,class:"vs-filter-section__details"},_hoisted_2$S={class:"vs-filter-section__summary"},_hoisted_3$G={key:1,class:"vs-filter-section__section"},_sfc_main$1y={__name:"VsFilterSection",props:{sectionTitle:{type:String,default:void 0},type:{type:String,default:"list",validator:e=>e.match(/(inline|group|list)/)}},setup(e){const n=e,t=vue.computed(()=>({"vs-filter-section":!0,"vs-filter-section--inline":n.type==="inline"}));return(a,r)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(t.value),"data-test":"vs-filter-section"},[n.type==="group"?(vue.openBlock(),vue.createElementBlock("details",_hoisted_1$1c,[vue.createElementVNode("summary",_hoisted_2$S,[vue.createTextVNode(vue.toDisplayString(n.sectionTitle)+" ",1),vue.createVNode(LoadingSpinner.VsIcon,{icon:"vs-icon-control-expand",variant:"highlight"})]),vue.renderSlot(a.$slots,"default")])):(vue.openBlock(),vue.createElementBlock("div",_hoisted_3$G,[vue.renderSlot(a.$slots,"default")]))],2))}};function createHydrationCleanup(){let e=[];return{cleanup:()=>{e=e.filter(a=>(a(),!1))},onCleanup:a=>{e.push(a)}}}function createHydrationPromise(e){let n=()=>{};const t=new Promise(r=>{n=()=>{e(),r()}});return{promise:t,resolvePromise:n,onResolvedPromise:r=>{t.then(r)}}}function trackDepsOnRender(e){const n=e.effect.fn,t=e.render;e.render=(...a)=>{e.effect.fn=()=>t(...a);const r=e.effect.run();return e.effect.fn=n,e.render=t,r}}const isFunction=e=>typeof e=="function",isObject=e=>e!==null&&typeof e=="object";function traverseChildren(e,n){if(vue.isVNode(e)&&(n(e),e.children!==null)){if(Array.isArray(e.children)){e.children.forEach(t=>traverseChildren(t,n));return}isObject(e.children)&&Object.keys(e.children).forEach(t=>{if(!isFunction(e.children[t]))return;const a=e.children[t]();if(Array.isArray(a)){a.forEach(r=>traverseChildren(r,n));return}traverseChildren(a,n)})}}function isAsyncWrapper(e){var n,t;return((n=e.type)==null?void 0:n.__asyncLoader)&&((t=e.type)==null?void 0:t.name)==="AsyncComponentWrapper"}function waitForAsyncComponents({subTree:e},n){const t=[];if(traverseChildren(e,a=>{isAsyncWrapper(a)&&t.push(a.type.__asyncLoader())}),t.length>0){Promise.all(t).then(n);return}n()}function ensureParentHasSubTreeEl(e){if(!e||!e.subTree)return;const n=e.subTree.el,t=e.u;e.u===null&&(e.u=[]),e.u.push(()=>{e.subTree.el===null&&(e.subTree.el=n),e.u=t})}function useLazyHydration(){const e=vue.getCurrentInstance();if(!e||e.isMounted)throw new Error("useLazyHydration must be called from the setup method.");const n=e.vnode.el!==null;if(e.vnode.type.__isLazilyHydrated=!0,!n)return{willPerformHydration:n,onHydrated:()=>{}};const{cleanup:t,onCleanup:a}=createHydrationCleanup(),{promise:r,resolvePromise:o,onResolvedPromise:s}=createHydrationPromise(t),i=l=>s(()=>vue.nextTick(()=>waitForAsyncComponents(e,l)));return e.type.__asyncLoader=()=>r,ensureParentHasSubTreeEl(e.parent),vue.onBeforeMount(()=>{e.asyncDep=new Promise(l=>{l(!0)})}),s(()=>{trackDepsOnRender(e),e.asyncDep=null}),vue.onUnmounted(t),{willPerformHydration:n,hydrate:o,onHydrated:i,onCleanup:a}}function useHydrateWhenIdle({willPerformHydration:e,hydrate:n,onCleanup:t},a=2e3){if(!e)return;if(!vue.getCurrentInstance())throw new Error("useHydrateWhenIdle must be called from the setup or lifecycle hook methods.");if(!("requestIdleCallback"in window)){n();return}const r=requestIdleCallback(()=>{n()},{timeout:a});t(()=>{cancelIdleCallback(r)})}const DOMNodeTypes={ELEMENT:1,COMMENT:8},isElement=e=>e&&e.nodeType===DOMNodeTypes.ELEMENT,isComment=e=>e&&e.nodeType===DOMNodeTypes.COMMENT,isFragmentStart=e=>isComment(e)&&(e==null?void 0:e.data)==="[",isFragmentEnd=e=>isComment(e)&&(e==null?void 0:e.data)==="]";function getRootElements({vnode:e,subTree:n}){if(!e||e.el===null)return[];if(isElement(e.el))return[e.el];const t=[];if(n&&isFragmentStart(n.el)&&isFragmentEnd(n.anchor)){let a=e.el.nextSibling;for(;a;){if(a&&isElement(a)&&t.push(a),a===n.anchor)return t;a=a.nextSibling}}return t}function useHydrateOnInteraction({willPerformHydration:e,hydrate:n,onCleanup:t},a=["focus"]){if(!e)return;const r=vue.getCurrentInstance();if(!r||r.isMounted)throw new Error("useHydrateOnInteraction must be called from the setup method.");const o=vue.unref(a);vue.onMounted(()=>{const s=getRootElements(r),i=s.length>1?s[0].parentElement||document:s[0],l={capture:!0,once:!1,passive:!0},u=c=>{c.stopPropagation();const d=c.composedPath&&c.composedPath()||c.path;if(!d){let v=c.target;for(;v;){if(s.includes(v)){n();return}if(v===i)return;v=v.parentElement}return}s.forEach(v=>{d.includes(v)&&n()})};o.forEach(c=>{i.addEventListener(c,u,l)}),t(()=>{o.forEach(c=>{i.removeEventListener(c,u,l)})})})}function useHydrateWhenTriggered({willPerformHydration:e,hydrate:n,onCleanup:t},a){if(!e)return;if(!vue.getCurrentInstance())throw new Error("useHydrateWhenTriggered must be called from the setup or lifecycle hook methods.");const r=vue.watch(vue.isRef(a)?a:()=>a,o=>{o&&n()},{immediate:!0});t(r)}const observers=new Map;function createHydrationObserver(e){const n=typeof IntersectionObserver<"u";if(!n)return{supported:n};const t=JSON.stringify(e);if(observers.has(t))return{supported:n,observer:observers.get(t)};const a=new IntersectionObserver(r=>{r.forEach(o=>{!(o.isIntersecting||o.intersectionRatio>0)||!o.target.hydrate||o.target.hydrate()})},e);return observers.set(t,a),{supported:n,observer:a}}function useHydrateWhenVisible({willPerformHydration:e,hydrate:n,onCleanup:t},a){if(!e)return;const r=vue.getCurrentInstance();if(!r||r.isMounted)throw new Error("useHydrateWhenVisible must be called from the setup method.");const{supported:o,observer:s}=createHydrationObserver(a);if(!o){n();return}vue.onMounted(()=>{const i=getRootElements(r);i.forEach(l=>{l.hydrate=n,s.observe(l)}),t(()=>{i.forEach(l=>{delete l.hydrate,s.unobserve(l)})})})}const normalizeSlot=e=>e.length===1?e[0]:e,LazyHydrationWrapper=vue.defineComponent({name:"LazyHydrationWrapper",inheritAttrs:!1,suspensible:!1,props:{whenIdle:{default:!1,type:[Boolean,Number]},whenVisible:{default:!1,type:[Boolean,Object]},onInteraction:{default:!1,type:[Array,Boolean,String]},whenTriggered:{default:void 0,type:[Boolean,Object]}},emits:["hydrated"],setup(e,{slots:n,emit:t}){const a=useLazyHydration();if(!a.willPerformHydration)return()=>normalizeSlot(n.default());if(a.onHydrated(()=>t("hydrated")),e.whenIdle&&useHydrateWhenIdle(a,e.whenIdle!==!0?e.whenIdle:void 0),e.whenVisible&&useHydrateWhenVisible(a,e.whenVisible!==!0?e.whenVisible:void 0),e.onInteraction){let r;e.onInteraction!==!0&&(r=vue.computed(()=>Array.isArray(e.onInteraction)?e.onInteraction:[e.onInteraction]).value),useHydrateOnInteraction(a,r)}return e.whenTriggered!==void 0&&useHydrateWhenTriggered(a,vue.toRef(e,"whenTriggered")),()=>normalizeSlot(n.default())}}),LazyHydrationWrapper$1=vue.markRaw(LazyHydrationWrapper),_sfc_main$1x={name:"VsFooterNavList",status:"prototype",release:"0.0.1",components:{VsAccordion,VsRow:LoadingSpinner.VsRow,VsContainer:LoadingSpinner.VsContainer,LazyHydrationWrapper:LazyHydrationWrapper$1},props:{breakPoint:{type:String,default:null,validator:e=>e.match(/(xs|sm|md|lg|xl|xxl)/)}}},_hoisted_1$1b={class:"vs-footer-nav-list"};function _sfc_render$1i(e,n,t,a,r,o){const s=vue.resolveComponent("VsRow"),i=vue.resolveComponent("VsAccordion"),l=vue.resolveComponent("LazyHydrationWrapper"),u=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createBlock(u,{class:"vs-footer-nav-list","data-test":"vs-footer-nav-list"},{default:vue.withCtx(()=>[vue.createVNode(l,{"on-interaction":["focus","click"]},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$1b,[vue.createVNode(i,{"break-point":t.breakPoint},{default:vue.withCtx(()=>[vue.createVNode(s,null,{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3})]),_:3},8,["break-point"])])]),_:3})]),_:3})}const VsFooterNavList=LoadingSpinner._export_sfc(_sfc_main$1x,[["render",_sfc_render$1i]]),_sfc_main$1w={name:"VsFooter",status:"prototype",release:"0.1.0",components:{VsFooterNavList,VsCol:LoadingSpinner.VsCol,VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow}},_hoisted_1$1a={class:"vs-footer pt-150 pt-md-300","data-unique-id":"vs-footer",id:"site-footer"},_hoisted_2$R={class:"vs-footer__social-menu-wrapper"};function _sfc_render$1h(e,n,t,a,r,o){const s=vue.resolveComponent("VsCol"),i=vue.resolveComponent("VsFooterNavList"),l=vue.resolveComponent("VsRow"),u=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("footer",_hoisted_1$1a,[vue.createVNode(i,{"break-point":"md"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"accordion-items"),vue.createVNode(s,{cols:"12",lg:"3",xl:"2",class:"d-none d-lg-block","data-unique-id":"vs-footer-social_links"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"social-menu")]),_:3})]),_:3}),vue.createElementVNode("div",_hoisted_2$R,[vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.createVNode(s,{cols:"12",class:"d-block d-lg-none","data-unique-id":"vs-footer-mobile_social_links"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"social-menu")]),_:3})]),_:3})]),_:3})]),vue.renderSlot(e.$slots,"default")])}const Footer=LoadingSpinner._export_sfc(_sfc_main$1w,[["render",_sfc_render$1h]]),_sfc_main$1v={name:"VsFooterAccordionItem",status:"prototype",release:"0.0.1",components:{VsAccordionItem},props:{controlId:{type:String,required:!0},itemBreakPoint:{type:String,default:e=>e.breakPoint,validator:e=>e.match(/(xs|sm|md|lg|xl|xxl)/)},openByDefault:{type:Boolean,default:!1},title:{type:String,required:!0},variant:{type:String,default:"primary"}},computed:{getUniqueId(){let e=this.title.toLowerCase();return e=e.replace(/\s+/g,"-"),`vs-footer-${e}`}}};function _sfc_render$1g(e,n,t,a,r,o){const s=vue.resolveComponent("VsAccordionItem");return vue.openBlock(),vue.createBlock(s,{class:"vs-footer-accordion-item mb-md-150","data-test":"vs-footer-accordion-item","data-unique-id":o.getUniqueId,"control-id":t.controlId,"item-break-point":t.itemBreakPoint,"open-by-default":t.openByDefault,variant:t.variant},{title:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.title),1)]),"icon-open":vue.withCtx(()=>[vue.renderSlot(e.$slots,"icon-open")]),"icon-closed":vue.withCtx(()=>[vue.renderSlot(e.$slots,"icon-closed")]),default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},8,["data-unique-id","control-id","item-break-point","open-by-default","variant"])}const FooterAccordionItem=LoadingSpinner._export_sfc(_sfc_main$1v,[["render",_sfc_render$1g]]),_sfc_main$1u={name:"VsFooterNavListItem",status:"prototype",release:"0.0.1",components:{VsLink},props:{href:{type:String,default:null},type:{type:String,default:"default",validator:e=>e.match(/(default|external|internal|download)/)},linkText:{type:String,default:""}}},_hoisted_1$19={class:"vs-footer-nav-list-item","data-test":"vs-footer-nav-list-item",role:"menuitem"};function _sfc_render$1f(e,n,t,a,r,o){const s=vue.resolveComponent("VsLink");return vue.openBlock(),vue.createElementBlock("li",_hoisted_1$19,[vue.createVNode(s,{href:t.href,type:t.type,variant:"on-dark","data-test":"vs-footer-nav-list-item__link"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.linkText),1)]),_:1},8,["href","type"])])}const FooterNavListItem=LoadingSpinner._export_sfc(_sfc_main$1u,[["render",_sfc_render$1f]]),_sfc_main$1t={name:"VsList",status:"prototype",release:"0.0.1",props:{ordered:{type:Boolean,default:!1},unstyled:{type:Boolean,default:!1},inline:{type:Boolean,default:!1}}};function _sfc_render$1e(e,n,t,a,r,o){return vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(t.ordered?"ol":"ul"),vue.mergeProps({class:["vs-list",{"vs-list--unstyled":t.unstyled,"vs-list--inline":t.inline,"vs-list--ordered":t.ordered}]},e.$attrs),{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},16,["class"])}const VsList=LoadingSpinner._export_sfc(_sfc_main$1t,[["render",_sfc_render$1e]]),_sfc_main$1s={name:"VsFooterSocialMenu",status:"prototype",release:"0.0.1",components:{VsList,VsHeading:LoadingSpinner.VsHeading}},_hoisted_1$18={class:"vs-footer-social-menu px-0 py-150 py-md-200 py-lg-0 px-lg-075","data-test":"vs-footer-social-menu"};function _sfc_render$1d(e,n,t,a,r,o){const s=vue.resolveComponent("VsHeading"),i=vue.resolveComponent("VsList");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$18,[vue.createVNode(s,{level:"2","heading-style":"heading-xxs",class:"vs-footer-social-menu__title"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"title")]),_:3}),vue.createVNode(i,{unstyled:"",class:"mt-125 mt-md-0 mt-lg-125 pe-lg-400 pe-xl-300"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3})])}const FooterSocialMenu=LoadingSpinner._export_sfc(_sfc_main$1s,[["render",_sfc_render$1d]]),_sfc_main$1r={name:"VsFooterSocialItem",status:"prototype",release:"0.0.1",components:{VsLink,VsIcon:LoadingSpinner.VsIcon},mixins:[LoadingSpinner.dataLayerMixin],props:{href:{type:String,required:!0},icon:{type:String,required:!0},ariaLabelOverride:{type:String,default:""}}},_hoisted_1$17={class:"vs-footer-social-item","data-test":"vs-footer-social-item"};function _sfc_render$1c(e,n,t,a,r,o){const s=vue.resolveComponent("VsIcon"),i=vue.resolveComponent("VsLink");return vue.openBlock(),vue.createElementBlock("li",_hoisted_1$17,[vue.createVNode(i,{"data-test":"vs-footer-social-item__link",href:t.href,type:"external","aria-label":t.ariaLabelOverride?t.ariaLabelOverride:t.icon,"data-layer-value":"socialMediaExternalLinkDataEvent"},{default:vue.withCtx(()=>[vue.createVNode(s,{icon:t.icon,variant:"inverse",size:"sm"},null,8,["icon"])]),_:1},8,["href","aria-label"])])}const FooterSocialItem=LoadingSpinner._export_sfc(_sfc_main$1r,[["render",_sfc_render$1c]]),_sfc_main$1q={name:"VsFooterUtilityList",status:"prototype",release:"0.0.1",components:{VsList,VsRow:LoadingSpinner.VsRow,VsContainer:LoadingSpinner.VsContainer,VsCol:LoadingSpinner.VsCol}},_hoisted_1$16={class:"vs-footer-utility-list","data-test":"vs-footer-utility-list","data-unique-id":"vs-footer-utility_links"};function _sfc_render$1b(e,n,t,a,r,o){const s=vue.resolveComponent("VsList"),i=vue.resolveComponent("VsCol"),l=vue.resolveComponent("VsRow"),u=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$16,[vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.createVNode(i,{cols:"12",sm:"7",md:"12"},{default:vue.withCtx(()=>[vue.createVNode(s,{unstyled:"",role:"menu"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3})]),_:3})]),_:3})]),_:3})])}const FooterUtilityList=LoadingSpinner._export_sfc(_sfc_main$1q,[["render",_sfc_render$1b]]);function commonjsRequire(e){throw new Error('Could not dynamically require "'+e+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var dist$3={exports:{}},interopRequireDefault={exports:{}};(function(e){function n(t){return t&&t.__esModule?t:{default:t}}e.exports=n,e.exports.__esModule=!0,e.exports.default=e.exports})(interopRequireDefault);var interopRequireDefaultExports=interopRequireDefault.exports,_extends$1={exports:{}},hasRequired_extends;function require_extends(){return hasRequired_extends||(hasRequired_extends=1,function(e){function n(){return e.exports=n=Object.assign?Object.assign.bind():function(t){for(var a=1;a<arguments.length;a++){var r=arguments[a];for(var o in r)({}).hasOwnProperty.call(r,o)&&(t[o]=r[o])}return t},e.exports.__esModule=!0,e.exports.default=e.exports,n.apply(null,arguments)}e.exports=n,e.exports.__esModule=!0,e.exports.default=e.exports}(_extends$1)),_extends$1.exports}var objectWithoutPropertiesLoose={exports:{}},hasRequiredObjectWithoutPropertiesLoose;function requireObjectWithoutPropertiesLoose(){return hasRequiredObjectWithoutPropertiesLoose||(hasRequiredObjectWithoutPropertiesLoose=1,function(e){function n(t,a){if(t==null)return{};var r={};for(var o in t)if({}.hasOwnProperty.call(t,o)){if(a.indexOf(o)!==-1)continue;r[o]=t[o]}return r}e.exports=n,e.exports.__esModule=!0,e.exports.default=e.exports}(objectWithoutPropertiesLoose)),objectWithoutPropertiesLoose.exports}var path$2={exports:{}},util$3={},isBufferBrowser$1,hasRequiredIsBufferBrowser$1;function requireIsBufferBrowser$1(){return hasRequiredIsBufferBrowser$1||(hasRequiredIsBufferBrowser$1=1,isBufferBrowser$1=function(n){return n&&typeof n=="object"&&typeof n.copy=="function"&&typeof n.fill=="function"&&typeof n.readUInt8=="function"}),isBufferBrowser$1}var inherits_browser$1={exports:{}},hasRequiredInherits_browser$1;function requireInherits_browser$1(){return hasRequiredInherits_browser$1||(hasRequiredInherits_browser$1=1,typeof Object.create=="function"?inherits_browser$1.exports=function(n,t){n.super_=t,n.prototype=Object.create(t.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}})}:inherits_browser$1.exports=function(n,t){n.super_=t;var a=function(){};a.prototype=t.prototype,n.prototype=new a,n.prototype.constructor=n}),inherits_browser$1.exports}var hasRequiredUtil$1;function requireUtil$1(){return hasRequiredUtil$1||(hasRequiredUtil$1=1,function(e){var n={},t=/%[sdj%]/g;e.format=function(V){if(!S(V)){for(var L=[],T=0;T<arguments.length;T++)L.push(o(arguments[T]));return L.join(" ")}for(var T=1,F=arguments,Y=F.length,w=String(V).replace(t,function(E){if(E==="%%")return"%";if(T>=Y)return E;switch(E){case"%s":return String(F[T++]);case"%d":return Number(F[T++]);case"%j":try{return JSON.stringify(F[T++])}catch{return"[Circular]"}default:return E}}),N=F[T];T<Y;N=F[++T])g(N)||!$(N)?w+=" "+N:w+=" "+o(N);return w},e.deprecate=function(V,L){if(C(LoadingSpinner.commonjsGlobal.process))return function(){return e.deprecate(V,L).apply(this,arguments)};if(process.noDeprecation===!0)return V;var T=!1;function F(){if(!T){if(process.throwDeprecation)throw new Error(L);process.traceDeprecation?console.trace(L):console.error(L),T=!0}return V.apply(this,arguments)}return F};var a={},r;e.debuglog=function(V){if(C(r)&&(r=n.NODE_DEBUG||""),V=V.toUpperCase(),!a[V])if(new RegExp("\\b"+V+"\\b","i").test(r)){var L=process.pid;a[V]=function(){var T=e.format.apply(e,arguments);console.error("%s %d: %s",V,L,T)}}else a[V]=function(){};return a[V]};function o(V,L){var T={seen:[],stylize:i};return arguments.length>=3&&(T.depth=arguments[2]),arguments.length>=4&&(T.colors=arguments[3]),m(L)?T.showHidden=L:L&&e._extend(T,L),C(T.showHidden)&&(T.showHidden=!1),C(T.depth)&&(T.depth=2),C(T.colors)&&(T.colors=!1),C(T.customInspect)&&(T.customInspect=!0),T.colors&&(T.stylize=s),u(T,V,T.depth)}e.inspect=o,o.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},o.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function s(V,L){var T=o.styles[L];return T?"\x1B["+o.colors[T][0]+"m"+V+"\x1B["+o.colors[T][1]+"m":V}function i(V,L){return V}function l(V){var L={};return V.forEach(function(T,F){L[T]=!0}),L}function u(V,L,T){if(V.customInspect&&L&&M(L.inspect)&&L.inspect!==e.inspect&&!(L.constructor&&L.constructor.prototype===L)){var F=L.inspect(T,V);return S(F)||(F=u(V,F,T)),F}var Y=c(V,L);if(Y)return Y;var w=Object.keys(L),N=l(w);if(V.showHidden&&(w=Object.getOwnPropertyNames(L)),A(L)&&(w.indexOf("message")>=0||w.indexOf("description")>=0))return d(L);if(w.length===0){if(M(L)){var E=L.name?": "+L.name:"";return V.stylize("[Function"+E+"]","special")}if(B(L))return V.stylize(RegExp.prototype.toString.call(L),"regexp");if(P(L))return V.stylize(Date.prototype.toString.call(L),"date");if(A(L))return d(L)}var R="",D=!1,z=["{","}"];if(p(L)&&(D=!0,z=["[","]"]),M(L)){var U=L.name?": "+L.name:"";R=" [Function"+U+"]"}if(B(L)&&(R=" "+RegExp.prototype.toString.call(L)),P(L)&&(R=" "+Date.prototype.toUTCString.call(L)),A(L)&&(R=" "+d(L)),w.length===0&&(!D||L.length==0))return z[0]+R+z[1];if(T<0)return B(L)?V.stylize(RegExp.prototype.toString.call(L),"regexp"):V.stylize("[Object]","special");V.seen.push(L);var H;return D?H=v(V,L,T,N,w):H=w.map(function(J){return f(V,L,T,N,J,D)}),V.seen.pop(),h(H,R,z)}function c(V,L){if(C(L))return V.stylize("undefined","undefined");if(S(L)){var T="'"+JSON.stringify(L).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return V.stylize(T,"string")}if(b(L))return V.stylize(""+L,"number");if(m(L))return V.stylize(""+L,"boolean");if(g(L))return V.stylize("null","null")}function d(V){return"["+Error.prototype.toString.call(V)+"]"}function v(V,L,T,F,Y){for(var w=[],N=0,E=L.length;N<E;++N)W(L,String(N))?w.push(f(V,L,T,F,String(N),!0)):w.push("");return Y.forEach(function(R){R.match(/^\d+$/)||w.push(f(V,L,T,F,R,!0))}),w}function f(V,L,T,F,Y,w){var N,E,R;if(R=Object.getOwnPropertyDescriptor(L,Y)||{value:L[Y]},R.get?R.set?E=V.stylize("[Getter/Setter]","special"):E=V.stylize("[Getter]","special"):R.set&&(E=V.stylize("[Setter]","special")),W(F,Y)||(N="["+Y+"]"),E||(V.seen.indexOf(R.value)<0?(g(T)?E=u(V,R.value,null):E=u(V,R.value,T-1),E.indexOf(`
150
+ `;styleInject(css_248z);script$4.render=render$4;script$4.__scopeId="data-v-43da20c6";script$4.__file="src/components/Tooltip/index.vue";var script$3=vue.defineComponent({props:{stacked:{type:Boolean,default:!1},maxWidth:{type:Number,default:-1}},setup(e){vue.provide("layerProps",e)}});function render$3(e,n,t,a,r,o){return vue.openBlock(),vue.createElementBlock("div",null,[vue.renderSlot(e.$slots,"default")])}script$3.render=render$3;script$3.__file="src/components/Group/index.vue";var script$2=vue.defineComponent({name:"Grid",props:{value:{type:Number},label:{type:String,default:""},color:{type:String,default:"red"},strokeDasharray:{type:String,default:()=>"3"},strokeWidth:{type:Number,default:1},strokeOpacity:{type:Number,default:.5}},setup(e){const n=useChart(),t=vue.ref(0),a=vue.ref("horizontal"),r=vue.ref({});return vue.watch(n.updates,()=>{e.value!==void 0&&(t.value=n.scales.secondary.scale(e.value)),r.value=n.canvas,a.value=n.config.direction},{immediate:!0}),vue.watch(()=>e.value,()=>{t.value=n.scales.secondary.scale(e.value)},{immediate:!0}),{y:t,canvas:r,direction:a}}});const _hoisted_1$2$1={key:0,class:"layer-marker"},_hoisted_2$2$1=["x","y","fill"],_hoisted_3$1$1=["x1","y1","x2","y2","stroke","stroke-opacity","stroke-width","stroke-dasharray"],_hoisted_4$1$1={key:1,class:"layer-marker"},_hoisted_5$1$1=["x","y","fill"],_hoisted_6$1$1=["x1","y1","x2","y2","stroke","stroke-opacity","stroke-width","stroke-dasharray"];function render$2(e,n,t,a,r,o){return e.direction==="horizontal"?(vue.openBlock(),vue.createElementBlock("g",_hoisted_1$2$1,[vue.createElementVNode("text",{x:e.canvas.x+5,y:e.y-5,"text-anchor":"start",fill:e.color},vue.toDisplayString(e.label),9,_hoisted_2$2$1),vue.createElementVNode("line",{x1:e.canvas.x,y1:e.y,x2:e.canvas.width,y2:e.y,stroke:e.color,"stroke-opacity":e.strokeOpacity,"stroke-width":e.strokeWidth,"stroke-dasharray":e.strokeDasharray},null,8,_hoisted_3$1$1)])):(vue.openBlock(),vue.createElementBlock("g",_hoisted_4$1$1,[vue.createElementVNode("text",{x:e.y+10,y:e.canvas.y+5,"text-anchor":"start",fill:e.color,style:{"writing-mode":"tb"}},vue.toDisplayString(e.label),9,_hoisted_5$1$1),vue.createElementVNode("line",{x1:e.y,y1:e.canvas.y,x2:e.y,y2:e.canvas.height,stroke:e.color,"stroke-opacity":e.strokeOpacity,"stroke-width":e.strokeWidth,"stroke-dasharray":e.strokeDasharray},null,8,_hoisted_6$1$1)]))}script$2.render=render$2;script$2.__file="src/components/Marker/index.vue";function count(e){var n=0,t=e.children,a=t&&t.length;if(!a)n=1;else for(;--a>=0;)n+=t[a].value;e.value=n}function node_count(){return this.eachAfter(count)}function node_each(e,n){let t=-1;for(const a of this)e.call(n,a,++t,this);return this}function node_eachBefore(e,n){for(var t=this,a=[t],r,o,s=-1;t=a.pop();)if(e.call(n,t,++s,this),r=t.children)for(o=r.length-1;o>=0;--o)a.push(r[o]);return this}function node_eachAfter(e,n){for(var t=this,a=[t],r=[],o,s,i,l=-1;t=a.pop();)if(r.push(t),o=t.children)for(s=0,i=o.length;s<i;++s)a.push(o[s]);for(;t=r.pop();)e.call(n,t,++l,this);return this}function node_find(e,n){let t=-1;for(const a of this)if(e.call(n,a,++t,this))return a}function node_sum(e){return this.eachAfter(function(n){for(var t=+e(n.data)||0,a=n.children,r=a&&a.length;--r>=0;)t+=a[r].value;n.value=t})}function node_sort(e){return this.eachBefore(function(n){n.children&&n.children.sort(e)})}function node_path(e){for(var n=this,t=leastCommonAncestor(n,e),a=[n];n!==t;)n=n.parent,a.push(n);for(var r=a.length;e!==t;)a.splice(r,0,e),e=e.parent;return a}function leastCommonAncestor(e,n){if(e===n)return e;var t=e.ancestors(),a=n.ancestors(),r=null;for(e=t.pop(),n=a.pop();e===n;)r=e,e=t.pop(),n=a.pop();return r}function node_ancestors(){for(var e=this,n=[e];e=e.parent;)n.push(e);return n}function node_descendants(){return Array.from(this)}function node_leaves(){var e=[];return this.eachBefore(function(n){n.children||e.push(n)}),e}function node_links(){var e=this,n=[];return e.each(function(t){t!==e&&n.push({source:t.parent,target:t})}),n}function*node_iterator(){var e=this,n,t=[e],a,r,o;do for(n=t.reverse(),t=[];e=n.pop();)if(yield e,a=e.children)for(r=0,o=a.length;r<o;++r)t.push(a[r]);while(t.length)}function hierarchy(e,n){e instanceof Map?(e=[void 0,e],n===void 0&&(n=mapChildren)):n===void 0&&(n=objectChildren);for(var t=new Node$2(e),a,r=[t],o,s,i,l;a=r.pop();)if((s=n(a.data))&&(l=(s=Array.from(s)).length))for(a.children=s,i=l-1;i>=0;--i)r.push(o=s[i]=new Node$2(s[i])),o.parent=a,o.depth=a.depth+1;return t.eachBefore(computeHeight)}function node_copy(){return hierarchy(this).eachBefore(copyData)}function objectChildren(e){return e.children}function mapChildren(e){return Array.isArray(e)?e[1]:null}function copyData(e){e.data.value!==void 0&&(e.value=e.data.value),e.data=e.data.data}function computeHeight(e){var n=0;do e.height=n;while((e=e.parent)&&e.height<++n)}function Node$2(e){this.data=e,this.depth=this.height=0,this.parent=null}Node$2.prototype=hierarchy.prototype={constructor:Node$2,count:node_count,each:node_each,eachAfter:node_eachAfter,eachBefore:node_eachBefore,find:node_find,sum:node_sum,sort:node_sort,path:node_path,ancestors:node_ancestors,descendants:node_descendants,leaves:node_leaves,links:node_links,copy:node_copy,[Symbol.iterator]:node_iterator};function optional(e){return e==null?null:required$2(e)}function required$2(e){if(typeof e!="function")throw new Error;return e}function constantZero(){return 0}function constant(e){return function(){return e}}function roundNode(e){e.x0=Math.round(e.x0),e.y0=Math.round(e.y0),e.x1=Math.round(e.x1),e.y1=Math.round(e.y1)}function treemapDice(e,n,t,a,r){for(var o=e.children,s,i=-1,l=o.length,u=e.value&&(a-n)/e.value;++i<l;)s=o[i],s.y0=t,s.y1=r,s.x0=n,s.x1=n+=s.value*u}var preroot={depth:-1},ambiguous={},imputed={};function defaultId(e){return e.id}function defaultParentId(e){return e.parentId}function stratify(){var e=defaultId,n=defaultParentId,t;function a(r){var o=Array.from(r),s=e,i=n,l,u,c,d,v,f,h,p,m=new Map;if(t!=null){const g=o.map((S,k)=>normalize(t(S,k,r))),_=g.map(parentof),b=new Set(g).add("");for(const S of _)b.has(S)||(b.add(S),g.push(S),_.push(parentof(S)),o.push(imputed));s=(S,k)=>g[k],i=(S,k)=>_[k]}for(c=0,l=o.length;c<l;++c)u=o[c],f=o[c]=new Node$2(u),(h=s(u,c,r))!=null&&(h+="")&&(p=f.id=h,m.set(p,m.has(p)?ambiguous:f)),(h=i(u,c,r))!=null&&(h+="")&&(f.parent=h);for(c=0;c<l;++c)if(f=o[c],h=f.parent){if(v=m.get(h),!v)throw new Error("missing: "+h);if(v===ambiguous)throw new Error("ambiguous: "+h);v.children?v.children.push(f):v.children=[f],f.parent=v}else{if(d)throw new Error("multiple roots");d=f}if(!d)throw new Error("no root");if(t!=null){for(;d.data===imputed&&d.children.length===1;)d=d.children[0],--l;for(let g=o.length-1;g>=0&&(f=o[g],f.data===imputed);--g)f.data=null}if(d.parent=preroot,d.eachBefore(function(g){g.depth=g.parent.depth+1,--l}).eachBefore(computeHeight),d.parent=null,l>0)throw new Error("cycle");return d}return a.id=function(r){return arguments.length?(e=optional(r),a):e},a.parentId=function(r){return arguments.length?(n=optional(r),a):n},a.path=function(r){return arguments.length?(t=optional(r),a):t},a}function normalize(e){e=`${e}`;let n=e.length;return slash(e,n-1)&&!slash(e,n-2)&&(e=e.slice(0,-1)),e[0]==="/"?e:`/${e}`}function parentof(e){let n=e.length;if(n<2)return"";for(;--n>1&&!slash(e,n););return e.slice(0,n)}function slash(e,n){if(e[n]==="/"){let t=0;for(;n>0&&e[--n]==="\\";)++t;if(!(t&1))return!0}return!1}function treemapSlice(e,n,t,a,r){for(var o=e.children,s,i=-1,l=o.length,u=e.value&&(r-t)/e.value;++i<l;)s=o[i],s.x0=n,s.x1=a,s.y0=t,s.y1=t+=s.value*u}var phi=(1+Math.sqrt(5))/2;function squarifyRatio(e,n,t,a,r,o){for(var s=[],i=n.children,l,u,c=0,d=0,v=i.length,f,h,p=n.value,m,g,_,b,S,k,C;c<v;){f=r-t,h=o-a;do m=i[d++].value;while(!m&&d<v);for(g=_=m,k=Math.max(h/f,f/h)/(p*e),C=m*m*k,S=Math.max(_/C,C/g);d<v;++d){if(m+=u=i[d].value,u<g&&(g=u),u>_&&(_=u),C=m*m*k,b=Math.max(_/C,C/g),b>S){m-=u;break}S=b}s.push(l={value:m,dice:f<h,children:i.slice(c,d)}),l.dice?treemapDice(l,t,a,r,p?a+=h*m/p:o):treemapSlice(l,t,a,p?t+=f*m/p:r,o),p-=m,c=d}return s}var squarify=function e(n){function t(a,r,o,s,i){squarifyRatio(n,a,r,o,s,i)}return t.ratio=function(a){return e((a=+a)>1?a:1)},t}(phi);function treemap(){var e=squarify,n=!1,t=1,a=1,r=[0],o=constantZero,s=constantZero,i=constantZero,l=constantZero,u=constantZero;function c(v){return v.x0=v.y0=0,v.x1=t,v.y1=a,v.eachBefore(d),r=[0],n&&v.eachBefore(roundNode),v}function d(v){var f=r[v.depth],h=v.x0+f,p=v.y0+f,m=v.x1-f,g=v.y1-f;m<h&&(h=m=(h+m)/2),g<p&&(p=g=(p+g)/2),v.x0=h,v.y0=p,v.x1=m,v.y1=g,v.children&&(f=r[v.depth+1]=o(v)/2,h+=u(v)-f,p+=s(v)-f,m-=i(v)-f,g-=l(v)-f,m<h&&(h=m=(h+m)/2),g<p&&(p=g=(p+g)/2),e(v,h,p,m,g))}return c.round=function(v){return arguments.length?(n=!!v,c):n},c.size=function(v){return arguments.length?(t=+v[0],a=+v[1],c):[t,a]},c.tile=function(v){return arguments.length?(e=required$2(v),c):e},c.padding=function(v){return arguments.length?c.paddingInner(v).paddingOuter(v):c.paddingInner()},c.paddingInner=function(v){return arguments.length?(o=typeof v=="function"?v:constant(+v),c):o},c.paddingOuter=function(v){return arguments.length?c.paddingTop(v).paddingRight(v).paddingBottom(v).paddingLeft(v):c.paddingTop()},c.paddingTop=function(v){return arguments.length?(s=typeof v=="function"?v:constant(+v),c):s},c.paddingRight=function(v){return arguments.length?(i=typeof v=="function"?v:constant(+v),c):i},c.paddingBottom=function(v){return arguments.length?(l=typeof v=="function"?v:constant(+v),c):l},c.paddingLeft=function(v){return arguments.length?(u=typeof v=="function"?v:constant(+v),c):u},c}var script$1=vue.defineComponent({name:"Treemap",props:{size:{type:Object,default:()=>({width:500,height:400}),required:!1},margin:{type:Object,default:()=>({top:0,right:0,bottom:0,left:0})},padding:{type:Number,default:8},data:{type:Array,default:()=>[]},dataKeys:{type:Object,required:!0},colorFn:{type:Function,default:()=>interpolateHcl("#60c96e","#6b46c1")},rcStyle:{type:Function,required:!1}},setup(e){const n=vue.ref(null),t=vue.ref(e.data),a=vue.ref(null),r=vue.ref({x:e.margin.left,y:e.margin.top,width:e.size.width-e.margin.right,height:e.size.height-e.margin.bottom}),o=vue.ref([]);function s(){const f=extent(t.value.map(m=>m[e.dataKeys[1]])),h=linear().domain(f).range([0,100]).nice(),p=sequential().domain(f).interpolator(e.colorFn());return{x:h,y:p}}function i(){const{y:f}=s();return l(t.value).leaves().map((p,m)=>({idx:m,x0:r.value.x+p.x0,x1:r.value.x+p.x1,y0:r.value.y+p.y0,y1:r.value.y+p.y1,width:p.x1-p.x0,height:p.y1-p.y0,data:p.data,color:f(p.value)}))}function l(f){const{x:h}=s(),p=treemap().size([r.value.width-r.value.x,r.value.height-r.value.y]).padding(e.padding),g=stratify().id(_=>_.name).parentId(_=>_.parent)([{name:"root"}].concat(f.map(_=>({name:_[e.dataKeys[0]],value:_[e.dataKeys[1]],parent:"root"}))));return g.sum(_=>h(_.value)),p(g),g}const u=f=>mapKeys(kebabize,f),c=f=>{const h={stroke:f.color,strokeWidth:5,fill:f.color,fillOpacity:.9};return e.rcStyle&&typeof e.rcStyle=="function"?Object.assign(Object.assign({},h),e.rcStyle(f)):h};function d(f){a.value=f}function v(){a.value=null}return vue.watch(e,()=>{t.value=e.data,r.value={x:e.margin.left,y:e.margin.top,width:e.size.width-e.margin.right,height:e.size.height-e.margin.bottom},o.value=i()},{immediate:!0}),{el:n,rectangles:o,selected:a,getStyle:c,toKebabCase:u,onMouseOver:d,onMouseOut:v}}});const _hoisted_1$1$1={class:"treemap",style:{display:"flex",position:"relative"}},_hoisted_2$1$1=["width","height","viewBox"],_hoisted_3$T={class:"layer-rectangles"},_hoisted_4$G=["transform","onMouseover"],_hoisted_5$s=["width","height"],_hoisted_6$j={x:10,y:20,"font-size":"15px",fill:"white","font-weight":"bold"};function render$1(e,n,t,a,r,o){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1$1,[(vue.openBlock(),vue.createElementBlock("svg",{width:e.size.width,height:e.size.height,viewBox:`0 0 ${e.size.width} ${e.size.height}`,ref:"el"},[vue.createElementVNode("g",_hoisted_3$T,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.rectangles,(s,i)=>(vue.openBlock(),vue.createElementBlock("g",{class:vue.normalizeClass(["rectangle",{selected:e.selected===i}]),key:i,transform:`translate(${s.x0}, ${s.y0})`,onMouseover:()=>e.onMouseOver(i),onMouseleave:n[0]||(n[0]=(...l)=>e.onMouseOut&&e.onMouseOut(...l))},[vue.renderSlot(e.$slots,"default",{r:s,selected:e.selected===i},()=>[vue.createElementVNode("rect",vue.mergeProps(e.toKebabCase(e.getStyle(s)),{x:0,y:0,width:s.width,height:s.height}),null,16,_hoisted_5$s),vue.renderSlot(e.$slots,"text",{r:s,selected:e.selected===i},()=>[vue.createElementVNode("text",_hoisted_6$j,vue.toDisplayString(s.data.name),1)])])],42,_hoisted_4$G))),128))])],8,_hoisted_2$1$1)),vue.renderSlot(e.$slots,"widgets")])}script$1.render=render$1;script$1.__file="src/components/Treemap/index.vue";var script=vue.defineComponent({name:"HoverBar",props:{barStyle:{type:Object,default:()=>({"fill-opacity":.05})}},setup(){const e=useChart(),n=useMouse(),t=vue.ref({x:0,y:0,width:0,height:0}),a=vue.ref("horizontal"),r=vue.ref({x:0,y:0,width:0,height:0});return vue.watch(e.updates,()=>{r.value=e.canvas,a.value=e.config.direction},{immediate:!0}),vue.watch(n,()=>{if(e.bandScale){const o=e.getData(e.getKeys(0)),[s]=e.bandScale.map([o[n.index]]),i=e.bandScale.bandwidth();s&&(e.config.direction==="horizontal"?t.value={x:s-i/2,y:0,width:i,height:r.value.height}:t.value={x:40,y:s-i/2,width:r.value.width-40,height:i})}}),{bar:t,canvas:r,direction:a,mouse:n}}});const _hoisted_1$1t={key:0,class:"layer-hover-bar"},_hoisted_2$14=["x","y","width","height"];function render(e,n,t,a,r,o){return e.mouse.hover?(vue.openBlock(),vue.createElementBlock("g",_hoisted_1$1t,[vue.createElementVNode("rect",vue.mergeProps({class:"hover-bar"},e.barStyle,{x:e.bar.x,y:e.bar.y,width:e.bar.width>0?e.bar.width:0,height:e.bar.height>0?e.bar.height:0}),null,16,_hoisted_2$14)])):vue.createCommentVNode("v-if",!0)}script.render=render;script.__file="src/components/HoverBar/index.vue";const _sfc_main$1T={name:"VsCarbonCalculatorResults",status:"prototype",release:"0.0.1",components:{VsCol:LoadingSpinner.VsCol,VsRow:LoadingSpinner.VsRow,VsHeading:LoadingSpinner.VsHeading,VsIcon:LoadingSpinner.VsIcon,Chart:script$c,Grid:script$5,Bar:script$8,Responsive:script$6},mixins:[LoadingSpinner.dataLayerMixin],inject:["labelsMap"],props:{totalKilos:{type:Number,default:0},foodKilos:{type:Number,default:0},transportKilos:{type:Number,default:0},accommodationKilos:{type:Number,default:0},stayDuration:{type:Number,default:1},comparisonReplacements:{type:Array,default:()=>[]},language:{type:String,default:"en-gb"}},data(){return{chartDirection:vue.ref("horizontal"),chartAxis:vue.ref({primary:{type:"band"}}),cssProps:`--chart-label: '${this.labelsMap.kgsOf}'`,tokens:LoadingSpinner.designTokens}},computed:{chartData(){return[{name:this.labelsMap.transport,emissions:this.transportKilos},{name:this.labelsMap.accommodation,emissions:this.accommodationKilos},{name:this.labelsMap.food,emissions:this.foodKilos}]},interpolComparison(){let e=this.labelsMap.comparison;for(let n=0;n<this.comparisonReplacements.length;n++)e=e.replace(this.comparisonReplacements[n].repl,(this.totalKilos/this.comparisonReplacements[n].divisor).toLocaleString(this.language,{minimumFractionDigits:3}));return e},interpolKGsPerDay(){return this.labelsMap.kgsPerDay.replace("xxx",this.totalPerDay)},interpolPerDaySuccess(){return this.labelsMap.perDaySuccess.replace("xxx",this.labelsMap.perDayTarget)},transportPercent(){return this.transportKilos/this.totalKilos*100},accommodationPercent(){return this.accommodationKilos/this.totalKilos*100},foodPercent(){return this.foodKilos/this.totalKilos*100},totalPerDay(){return this.totalKilos/Math.max(this.stayDuration,1)}},mounted(){this.createDataLayerObject("carbonCompleteEvent",{totalEmissions:this.totalKilos,totalPerDay:this.totalPerDay,travelPercent:this.transportPercent.toFixed(3)||0,accommodationPercent:this.accommodationPercent.toFixed(3)||0,foodPercent:this.foodPercent.toFixed(3)||0})},methods:{responsiveMargin(e){return e>300?{left:20,top:20,right:20,bottom:20}:{left:5,top:5,right:5,bottom:5}}}},_hoisted_1$1s={class:"vs-carbon-calculator-results__headline"},_hoisted_2$13={class:"mb-050"},_hoisted_3$S={class:"vs-carbon-calculator-results__total"},_hoisted_4$F=["innerHTML"],_hoisted_5$r={class:"vs-carbon-calculator-results__unicorn-icon-container"},_hoisted_6$i={class:"vs-carbon-calculator-results__unicorn-content"};function _sfc_render$1C(e,n,t,a,r,o){const s=vue.resolveComponent("VsHeading"),i=vue.resolveComponent("VsCol"),l=vue.resolveComponent("VsRow"),u=vue.resolveComponent("VsIcon"),c=vue.resolveComponent("Grid"),d=vue.resolveComponent("Bar"),v=vue.resolveComponent("Chart"),f=vue.resolveComponent("Responsive");return vue.openBlock(),vue.createBlock(l,{"data-test":"vs-carbon-calculator-results",style:vue.normalizeStyle(r.cssProps)},{default:vue.withCtx(()=>[vue.createVNode(i,{cols:"12"},{default:vue.withCtx(()=>[vue.createVNode(s,{level:"2","heading-style":"heading-m"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(o.labelsMap.results),1)]),_:1})]),_:1}),vue.createVNode(i,{cols:"12"},{default:vue.withCtx(()=>[vue.createVNode(l,{class:"vs-carbon-calculator-results__summary"},{default:vue.withCtx(()=>[vue.createVNode(i,{cols:"12",md:"6"},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$1s,[vue.createElementVNode("p",_hoisted_2$13,vue.toDisplayString(o.labelsMap.resultsIntro),1),vue.createElementVNode("p",null,[vue.createElementVNode("span",_hoisted_3$S,vue.toDisplayString(t.totalKilos.toLocaleString(t.language,{minimumFractionDigits:3})),1),vue.createTextVNode(" "+vue.toDisplayString(o.labelsMap.kgsOf),1)])])]),_:1}),vue.createVNode(i,{cols:"12",md:"6",class:"vs-carbon-calculator-results__comparison"},{default:vue.withCtx(()=>[vue.createElementVNode("p",{innerHTML:o.interpolComparison},null,8,_hoisted_4$F)]),_:1})]),_:1})]),_:1}),o.totalPerDay<=o.labelsMap.perDayTarget?(vue.openBlock(),vue.createBlock(i,{key:0,cols:"12",class:"vs-carbon-calculator-results__unicorn"},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_5$r,[vue.createVNode(u,{icon:"fa-kit fa-vs-unicorn",size:"lg",variant:"highlight",class:"vs-carbon-calculator-results__unicorn-icon"})]),vue.createElementVNode("div",_hoisted_6$i,[vue.createVNode(s,{level:"3","heading-style":"heading-xs"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(o.labelsMap.perDayCongratulations),1)]),_:1}),vue.createElementVNode("p",null,vue.toDisplayString(o.interpolPerDaySuccess),1)])]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(i,null,{default:vue.withCtx(()=>[vue.createVNode(s,{level:"3","heading-style":"heading-xs"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(o.labelsMap.chartTitle),1)]),_:1})]),_:1}),vue.createVNode(i,{class:"vs-carbon-calculator-results__chart-wrapper",cols:"12"},{default:vue.withCtx(()=>[vue.createVNode(f,null,{main:vue.withCtx(({width:h})=>[vue.createVNode(v,{class:"vs-carbon-calculator-results__chart",size:{width:h,height:420},data:o.chartData,margin:o.responsiveMargin(h),direction:r.chartDirection,axis:r.chartAxis},{layers:vue.withCtx(()=>[vue.createVNode(c,{"stroke-dasharray":"2,2"}),vue.createVNode(d,{"data-keys":["name","emissions"],"bar-style":{fill:r.tokens["vs-color-background-highlight"]},gap:20},null,8,["bar-style"])]),_:2},1032,["size","data","margin","direction","axis"])]),_:1})]),_:1})]),_:1},8,["style"])}const VsCarbonCalculatorResults=LoadingSpinner._export_sfc(_sfc_main$1T,[["render",_sfc_render$1C]]),_sfc_main$1S={name:"VsCarbonCalculatorRunningTotal",status:"prototype",release:"0.0.1",components:{VsIcon:LoadingSpinner.VsIcon},inject:["labelsMap"],props:{totalKilos:{type:Number,default:0},language:{type:String,default:"en-gb"}}},_hoisted_1$1r={class:"vs-carbon-calculator-running-total","data-test":"vs-carbon-calculator-running-total"},_hoisted_2$12={class:"vs-carbon-calculator-running-total__icon"},_hoisted_3$R={class:"vs-carbon-calculator-running-total__content"},_hoisted_4$E={class:"vs-carbon-calculator-running-total__value"};function _sfc_render$1B(e,n,t,a,r,o){const s=vue.resolveComponent("VsIcon");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1r,[vue.createElementVNode("div",_hoisted_2$12,[vue.createVNode(s,{icon:"fa-regular fa-pen-field",size:"md"})]),vue.createElementVNode("div",_hoisted_3$R,[vue.createElementVNode("p",null,vue.toDisplayString(o.labelsMap.soFar),1),vue.createElementVNode("p",null,[vue.createElementVNode("span",_hoisted_4$E,vue.toDisplayString(t.totalKilos.toLocaleString(t.language,{minimumFractionDigits:3})),1),vue.createTextVNode(" "+vue.toDisplayString(o.labelsMap.kgsOf),1)])])])}const VsCarbonCalculatorRunningTotal=LoadingSpinner._export_sfc(_sfc_main$1S,[["render",_sfc_render$1B]]),_sfc_main$1R={name:"VsCarbonCalculatorIntro",status:"prototype",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading},inject:["labelsMap"]},_hoisted_1$1q={class:"vs-carbon-calculator-intro","data-test":"vs-carbon-calculator-intro"};function _sfc_render$1A(e,n,t,a,r,o){const s=vue.resolveComponent("VsHeading");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1q,[vue.createVNode(s,{level:"2","heading-style":"heading-l"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(o.labelsMap.introHeading),1)]),_:1}),vue.createElementVNode("p",null,vue.toDisplayString(o.labelsMap.introContent),1)])}const VsCarbonCalculatorIntro=LoadingSpinner._export_sfc(_sfc_main$1R,[["render",_sfc_render$1A]]);function ownKeys$1(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);n&&(a=a.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),t.push.apply(t,a)}return t}function _objectSpread2$1(e){for(var n=1;n<arguments.length;n++){var t=arguments[n]!=null?arguments[n]:{};n%2?ownKeys$1(Object(t),!0).forEach(function(a){_defineProperty$2(e,a,t[a])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys$1(Object(t)).forEach(function(a){Object.defineProperty(e,a,Object.getOwnPropertyDescriptor(t,a))})}return e}function _defineProperty$2(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function unwrapObj(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return Object.keys(e).reduce((t,a)=>(n.includes(a)||(t[a]=vue.unref(e[a])),t),{})}function isFunction$2(e){return typeof e=="function"}function isProxy(e){return vue.isReactive(e)||vue.isReadonly(e)}function get(e,n,t){let a=e;const r=n.split(".");for(let o=0;o<r.length;o++){if(!a[r[o]])return t;a=a[r[o]]}return a}function gatherBooleanGroupProperties(e,n,t){return vue.computed(()=>e.some(a=>get(n,a,{[t]:!1})[t]))}function gatherArrayGroupProperties(e,n,t){return vue.computed(()=>e.reduce((a,r)=>{const o=get(n,r,{[t]:!1})[t]||[];return a.concat(o)},[]))}function callRule(e,n,t,a){return e.call(a,vue.unref(n),vue.unref(t),a)}function normalizeValidatorResponse(e){return e.$valid!==void 0?!e.$valid:!e}function createAsyncResult(e,n,t,a,r,o,s){let{$lazy:i,$rewardEarly:l}=r,u=arguments.length>7&&arguments[7]!==void 0?arguments[7]:[],c=arguments.length>8?arguments[8]:void 0,d=arguments.length>9?arguments[9]:void 0,v=arguments.length>10?arguments[10]:void 0;const f=vue.ref(!!a.value),h=vue.ref(0);t.value=!1;const p=vue.watch([n,a].concat(u,v),()=>{if(i&&!a.value||l&&!d.value&&!t.value)return;let m;try{m=callRule(e,n,c,s)}catch(g){m=Promise.reject(g)}h.value++,t.value=!!h.value,f.value=!1,Promise.resolve(m).then(g=>{h.value--,t.value=!!h.value,o.value=g,f.value=normalizeValidatorResponse(g)}).catch(g=>{h.value--,t.value=!!h.value,o.value=g,f.value=!0})},{immediate:!0,deep:typeof n=="object"});return{$invalid:f,$unwatch:p}}function createSyncResult(e,n,t,a,r,o,s,i){let{$lazy:l,$rewardEarly:u}=a;const c=()=>({}),d=vue.computed(()=>{if(l&&!t.value||u&&!i.value)return!1;let v=!0;try{const f=callRule(e,n,s,o);r.value=f,v=normalizeValidatorResponse(f)}catch(f){r.value=f}return v});return{$unwatch:c,$invalid:d}}function createValidatorResult(e,n,t,a,r,o,s,i,l,u,c){const d=vue.ref(!1),v=e.$params||{},f=vue.ref(null);let h,p;e.$async?{$invalid:h,$unwatch:p}=createAsyncResult(e.$validator,n,d,t,a,f,r,e.$watchTargets,l,u,c):{$invalid:h,$unwatch:p}=createSyncResult(e.$validator,n,t,a,f,r,l,u);const m=e.$message;return{$message:isFunction$2(m)?vue.computed(()=>m(unwrapObj({$pending:d,$invalid:h,$params:unwrapObj(v),$model:n,$response:f,$validator:o,$propertyPath:i,$property:s}))):m||"",$params:v,$pending:d,$invalid:h,$response:f,$unwatch:p}}function sortValidations(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};const n=vue.unref(e),t=Object.keys(n),a={},r={},o={};let s=null;return t.forEach(i=>{const l=n[i];switch(!0){case isFunction$2(l.$validator):a[i]=l;break;case isFunction$2(l):a[i]={$validator:l};break;case i==="$validationGroups":s=l;break;case i.startsWith("$"):o[i]=l;break;default:r[i]=l}}),{rules:a,nestedValidators:r,config:o,validationGroups:s}}const ROOT_PATH="__root";function createValidationResults(e,n,t,a,r,o,s,i,l){const u=Object.keys(e),c=a.get(r,e),d=vue.ref(!1),v=vue.ref(!1),f=vue.ref(0);if(c){if(!c.$partial)return c;c.$unwatch(),d.value=c.$dirty.value}const h={$dirty:d,$path:r,$touch:()=>{d.value||(d.value=!0)},$reset:()=>{d.value&&(d.value=!1)},$commit:()=>{}};return u.length?(u.forEach(p=>{h[p]=createValidatorResult(e[p],n,h.$dirty,o,s,p,t,r,l,v,f)}),h.$externalResults=vue.computed(()=>i.value?[].concat(i.value).map((p,m)=>({$propertyPath:r,$property:t,$validator:"$externalResults",$uid:`${r}-externalResult-${m}`,$message:p,$params:{},$response:null,$pending:!1})):[]),h.$invalid=vue.computed(()=>{const p=u.some(m=>vue.unref(h[m].$invalid));return v.value=p,!!h.$externalResults.value.length||p}),h.$pending=vue.computed(()=>u.some(p=>vue.unref(h[p].$pending))),h.$error=vue.computed(()=>h.$dirty.value?h.$pending.value||h.$invalid.value:!1),h.$silentErrors=vue.computed(()=>u.filter(p=>vue.unref(h[p].$invalid)).map(p=>{const m=h[p];return vue.reactive({$propertyPath:r,$property:t,$validator:p,$uid:`${r}-${p}`,$message:m.$message,$params:m.$params,$response:m.$response,$pending:m.$pending})}).concat(h.$externalResults.value)),h.$errors=vue.computed(()=>h.$dirty.value?h.$silentErrors.value:[]),h.$unwatch=()=>u.forEach(p=>{h[p].$unwatch()}),h.$commit=()=>{v.value=!0,f.value=Date.now()},a.set(r,e,h),h):(c&&a.set(r,e,h),h)}function collectNestedValidationResults(e,n,t,a,r,o,s){const i=Object.keys(e);return i.length?i.reduce((l,u)=>(l[u]=setValidations({validations:e[u],state:n,key:u,parentKey:t,resultsCache:a,globalConfig:r,instance:o,externalResults:s}),l),{}):{}}function createMetaFields(e,n,t){const a=vue.computed(()=>[n,t].filter(h=>h).reduce((h,p)=>h.concat(Object.values(vue.unref(p))),[])),r=vue.computed({get(){return e.$dirty.value||(a.value.length?a.value.every(h=>h.$dirty):!1)},set(h){e.$dirty.value=h}}),o=vue.computed(()=>{const h=vue.unref(e.$silentErrors)||[],p=a.value.filter(m=>(vue.unref(m).$silentErrors||[]).length).reduce((m,g)=>m.concat(...g.$silentErrors),[]);return h.concat(p)}),s=vue.computed(()=>{const h=vue.unref(e.$errors)||[],p=a.value.filter(m=>(vue.unref(m).$errors||[]).length).reduce((m,g)=>m.concat(...g.$errors),[]);return h.concat(p)}),i=vue.computed(()=>a.value.some(h=>h.$invalid)||vue.unref(e.$invalid)||!1),l=vue.computed(()=>a.value.some(h=>vue.unref(h.$pending))||vue.unref(e.$pending)||!1),u=vue.computed(()=>a.value.some(h=>h.$dirty)||a.value.some(h=>h.$anyDirty)||r.value),c=vue.computed(()=>r.value?l.value||i.value:!1),d=()=>{e.$touch(),a.value.forEach(h=>{h.$touch()})},v=()=>{e.$commit(),a.value.forEach(h=>{h.$commit()})},f=()=>{e.$reset(),a.value.forEach(h=>{h.$reset()})};return a.value.length&&a.value.every(h=>h.$dirty)&&d(),{$dirty:r,$errors:s,$invalid:i,$anyDirty:u,$error:c,$pending:l,$touch:d,$reset:f,$silentErrors:o,$commit:v}}function setValidations(e){let{validations:n,state:t,key:a,parentKey:r,childResults:o,resultsCache:s,globalConfig:i={},instance:l,externalResults:u}=e;const c=r?`${r}.${a}`:a,{rules:d,nestedValidators:v,config:f,validationGroups:h}=sortValidations(n),p=_objectSpread2$1(_objectSpread2$1({},i),f),m=a?vue.computed(()=>{const T=vue.unref(t);return T?vue.unref(T[a]):void 0}):t,g=_objectSpread2$1({},vue.unref(u)||{}),_=vue.computed(()=>{const T=vue.unref(u);return a?T?vue.unref(T[a]):void 0:T}),b=createValidationResults(d,m,a,s,c,p,l,_,t),S=collectNestedValidationResults(v,m,c,s,p,l,_),k={};h&&Object.entries(h).forEach(T=>{let[F,Y]=T;k[F]={$invalid:gatherBooleanGroupProperties(Y,S,"$invalid"),$error:gatherBooleanGroupProperties(Y,S,"$error"),$pending:gatherBooleanGroupProperties(Y,S,"$pending"),$errors:gatherArrayGroupProperties(Y,S,"$errors"),$silentErrors:gatherArrayGroupProperties(Y,S,"$silentErrors")}});const{$dirty:C,$errors:B,$invalid:$,$anyDirty:P,$error:A,$pending:M,$touch:j,$reset:O,$silentErrors:q,$commit:Q}=createMetaFields(b,S,o),G=a?vue.computed({get:()=>vue.unref(m),set:T=>{C.value=!0;const F=vue.unref(t),Y=vue.unref(u);Y&&(Y[a]=g[a]),vue.isRef(F[a])?F[a].value=T:F[a]=T}}):null;a&&p.$autoDirty&&vue.watch(m,()=>{C.value||j();const T=vue.unref(u);T&&(T[a]=g[a])},{flush:"sync"});async function W(){return j(),p.$rewardEarly&&(Q(),await vue.nextTick()),await vue.nextTick(),new Promise(T=>{if(!M.value)return T(!$.value);const F=vue.watch(M,()=>{T(!$.value),F()})})}function V(T){return(o.value||{})[T]}function L(){vue.isRef(u)?u.value=g:Object.keys(g).length===0?Object.keys(u).forEach(T=>{delete u[T]}):Object.assign(u,g)}return vue.reactive(_objectSpread2$1(_objectSpread2$1(_objectSpread2$1({},b),{},{$model:G,$dirty:C,$error:A,$errors:B,$invalid:$,$anyDirty:P,$pending:M,$touch:j,$reset:O,$path:c||ROOT_PATH,$silentErrors:q,$validate:W,$commit:Q},o&&{$getResultsForChild:V,$clearExternalResults:L,$validationGroups:k}),S))}class ResultsStorage{constructor(){this.storage=new Map}set(n,t,a){this.storage.set(n,{rules:t,result:a})}checkRulesValidity(n,t,a){const r=Object.keys(a),o=Object.keys(t);return o.length!==r.length||!o.every(i=>r.includes(i))?!1:o.every(i=>t[i].$params?Object.keys(t[i].$params).every(l=>vue.unref(a[i].$params[l])===vue.unref(t[i].$params[l])):!0)}get(n,t){const a=this.storage.get(n);if(!a)return;const{rules:r,result:o}=a,s=this.checkRulesValidity(n,t,r),i=o.$unwatch?o.$unwatch:()=>({});return s?o:{$dirty:o.$dirty,$partial:!0,$unwatch:i}}}const CollectFlag={COLLECT_ALL:!0,COLLECT_NONE:!1},VuelidateInjectChildResults=Symbol("vuelidate#injectChildResults"),VuelidateRemoveChildResults=Symbol("vuelidate#removeChildResults");function nestedValidations(e){let{$scope:n,instance:t}=e;const a={},r=vue.ref([]),o=vue.computed(()=>r.value.reduce((c,d)=>(c[d]=vue.unref(a[d]),c),{}));function s(c,d){let{$registerAs:v,$scope:f,$stopPropagation:h}=d;h||n===CollectFlag.COLLECT_NONE||f===CollectFlag.COLLECT_NONE||n!==CollectFlag.COLLECT_ALL&&n!==f||(a[v]=c,r.value.push(v))}t.__vuelidateInjectInstances=[].concat(t.__vuelidateInjectInstances||[],s);function i(c){r.value=r.value.filter(d=>d!==c),delete a[c]}t.__vuelidateRemoveInstances=[].concat(t.__vuelidateRemoveInstances||[],i);const l=vue.inject(VuelidateInjectChildResults,[]);vue.provide(VuelidateInjectChildResults,t.__vuelidateInjectInstances);const u=vue.inject(VuelidateRemoveChildResults,[]);return vue.provide(VuelidateRemoveChildResults,t.__vuelidateRemoveInstances),{childResults:o,sendValidationResultsToParent:l,removeValidationResultsFromParent:u}}function ComputedProxyFactory(e){return new Proxy(e,{get(n,t){return typeof n[t]=="object"?ComputedProxyFactory(n[t]):vue.computed(()=>n[t])}})}let uid=0;function useVuelidate(e,n){var t;let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};arguments.length===1&&(a=e,e=void 0,n=void 0);let{$registerAs:r,$scope:o=CollectFlag.COLLECT_ALL,$stopPropagation:s,$externalResults:i,currentVueInstance:l}=a;const u=l||((t=vue.getCurrentInstance())===null||t===void 0?void 0:t.proxy),c=u?u.$options:{};r||(uid+=1,r=`_vuelidate_${uid}`);const d=vue.ref({}),v=new ResultsStorage,{childResults:f,sendValidationResultsToParent:h,removeValidationResultsFromParent:p}=u?nestedValidations({$scope:o,instance:u}):{childResults:vue.ref({})};if(!e&&c.validations){const m=c.validations;n=vue.ref({}),vue.onBeforeMount(()=>{n.value=u,vue.watch(()=>isFunction$2(m)?m.call(n.value,new ComputedProxyFactory(n.value)):m,g=>{d.value=setValidations({validations:g,state:n,childResults:f,resultsCache:v,globalConfig:a,instance:u,externalResults:i||u.vuelidateExternalResults})},{immediate:!0})}),a=c.validationsConfig||a}else{const m=vue.isRef(e)||isProxy(e)?e:vue.reactive(e||{});vue.watch(m,g=>{d.value=setValidations({validations:g,state:n,childResults:f,resultsCache:v,globalConfig:a,instance:u??{},externalResults:i})},{immediate:!0})}return u&&(h.forEach(m=>m(d,{$registerAs:r,$scope:o,$stopPropagation:s})),vue.onBeforeUnmount(()=>p.forEach(m=>m(r)))),vue.computed(()=>_objectSpread2$1(_objectSpread2$1({},vue.unref(d.value)),f.value))}function ownKeys(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);n&&(a=a.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),t.push.apply(t,a)}return t}function _objectSpread2(e){for(var n=1;n<arguments.length;n++){var t=arguments[n]!=null?arguments[n]:{};n%2?ownKeys(Object(t),!0).forEach(function(a){_defineProperty$1(e,a,t[a])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(a){Object.defineProperty(e,a,Object.getOwnPropertyDescriptor(t,a))})}return e}function _defineProperty$1(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function isFunction$1(e){return typeof e=="function"}function isObject$1(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function normalizeValidatorObject(e){return isFunction$1(e.$validator)?_objectSpread2({},e):{$validator:e}}function unwrapValidatorResponse(e){return typeof e=="object"?e.$valid:e}function unwrapNormalizedValidator(e){return e.$validator||e}function withParams(e,n){if(!isObject$1(e))throw new Error(`[@vuelidate/validators]: First parameter to "withParams" should be an object, provided ${typeof e}`);if(!isObject$1(n)&&!isFunction$1(n))throw new Error("[@vuelidate/validators]: Validator must be a function or object with $validator parameter");const t=normalizeValidatorObject(n);return t.$params=_objectSpread2(_objectSpread2({},t.$params||{}),e),t}function withMessage(e,n){if(!isFunction$1(e)&&typeof vue.unref(e)!="string")throw new Error(`[@vuelidate/validators]: First parameter to "withMessage" should be string or a function returning a string, provided ${typeof e}`);if(!isObject$1(n)&&!isFunction$1(n))throw new Error("[@vuelidate/validators]: Validator must be a function or object with $validator parameter");const t=normalizeValidatorObject(n);return t.$message=e,t}function withAsync(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];const t=normalizeValidatorObject(e);return _objectSpread2(_objectSpread2({},t),{},{$async:!0,$watchTargets:n})}function forEach(e){return{$validator(n){for(var t=arguments.length,a=new Array(t>1?t-1:0),r=1;r<t;r++)a[r-1]=arguments[r];return vue.unref(n).reduce((o,s,i)=>{const l=Object.entries(s).reduce((u,c)=>{let[d,v]=c;const f=e[d]||{},h=Object.entries(f).reduce((p,m)=>{let[g,_]=m;const S=unwrapNormalizedValidator(_).call(this,v,s,i,...a),k=unwrapValidatorResponse(S);if(p.$data[g]=S,p.$data.$invalid=!k||!!p.$data.$invalid,p.$data.$error=p.$data.$invalid,!k){let C=_.$message||"";const B=_.$params||{};typeof C=="function"&&(C=C({$pending:!1,$invalid:!k,$params:B,$model:v,$response:S})),p.$errors.push({$property:d,$message:C,$params:B,$response:S,$model:v,$pending:!1,$validator:g})}return{$valid:p.$valid&&k,$data:p.$data,$errors:p.$errors}},{$valid:!0,$data:{},$errors:[]});return u.$data[d]=h.$data,u.$errors[d]=h.$errors,{$valid:u.$valid&&h.$valid,$data:u.$data,$errors:u.$errors}},{$valid:!0,$data:{},$errors:{}});return{$valid:o.$valid&&l.$valid,$data:o.$data.concat(l.$data),$errors:o.$errors.concat(l.$errors)}},{$valid:!0,$data:[],$errors:[]})},$message:n=>{let{$response:t}=n;return t?t.$errors.map(a=>Object.values(a).map(r=>r.map(o=>o.$message)).reduce((r,o)=>r.concat(o),[])):[]}}}const req=e=>{if(e=vue.unref(e),Array.isArray(e))return!!e.length;if(e==null)return!1;if(e===!1)return!0;if(e instanceof Date)return!isNaN(e.getTime());if(typeof e=="object"){for(let n in e)return!0;return!1}return!!String(e).length},len=e=>(e=vue.unref(e),Array.isArray(e)?e.length:typeof e=="object"?Object.keys(e).length:String(e).length);function regex(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++)n[t]=arguments[t];return a=>(a=vue.unref(a),!req(a)||n.every(r=>(r.lastIndex=0,r.test(a))))}var common$1=Object.freeze({__proto__:null,forEach,len,normalizeValidatorObject,regex,req,unwrap:vue.unref,unwrapNormalizedValidator,unwrapValidatorResponse,withAsync,withMessage,withParams});regex(/^[a-zA-Z]*$/);regex(/^[a-zA-Z0-9]*$/);regex(/^\d*(\.\d+)?$/);const emailRegex=/^(?:[A-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[A-z0-9!#$%&'*+/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9]{2,}(?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)\])$/i;var email$1=regex(emailRegex),email={$validator:email$1,$message:"Value is not a valid email address",$params:{type:"email"}};function maxLength$1(e){return n=>!req(n)||len(n)<=vue.unref(e)}function maxLength(e){return{$validator:maxLength$1(e),$message:n=>{let{$params:t}=n;return`The maximum length allowed is ${t.max}`},$params:{max:e,type:"maxLength"}}}function minLength$1(e){return n=>!req(n)||len(n)>=vue.unref(e)}function minLength(e){return{$validator:minLength$1(e),$message:n=>{let{$params:t}=n;return`This field should be at least ${t.min} characters long`},$params:{min:e,type:"minLength"}}}function required$1(e){return typeof e=="string"&&(e=e.trim()),req(e)}var required={$validator:required$1,$message:"Value is required",$params:{type:"required"}};const urlRegex=/^(?:(?:(?:https?|ftp):)?\/\/)(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u00a1-\uffff][a-z0-9\u00a1-\uffff_-]{0,62})?[a-z0-9\u00a1-\uffff]\.)+(?:[a-z\u00a1-\uffff]{2,}\.?))(?::\d{2,5})?(?:[/?#]\S*)?$/i;regex(urlRegex);regex(/(^[0-9]*$)|(^-[0-9]+$)/);regex(/^[-]?\d*(\.\d+)?$/);const postcode=common$1.regex(/^([A-Za-z][A-HJ-Ya-hj-y]?\d[A-Za-z\d]? ?\d[A-Za-z]{2}|GIR ?0A{2})$/),validateFormElementMixin={emits:["status-update"],data(){return{inputVal:this.value,isInvalid:this.invalid}},computed:{isRequired(){return typeof required<"u"&&"required"in this.validationRules},rules(){let e={};for(const[n,t]of Object.entries(this.validationRules))n==="required"?e={...e,required}:n==="email"?e={...e,email}:n==="minLength"?e={...e,minLength:minLength(t)}:n==="maxLength"?e={...e,maxLength:maxLength(t)}:n==="invalidVal"?e={...e,noInvalid:()=>this.inputVal.indexOf(this.validationRules.invalidVal)===-1}:n==="postcode"&&(e={...e,postcode});return typeof e<"u"?(e={...e},{inputVal:e}):{}},errorsList(){const e=[];return Object.keys(this.rules.inputVal).forEach(t=>{this.v$.$errors&&this.v$.$errors.forEach(a=>{a.$validator===t&&e.push(t)})}),e}},watch:{errorsList(e){e.length?this.isInvalid=!0:this.isInvalid=!1}},methods:{manualValidate(){if(this.isInvalid=!1,"required"in this.rules.inputVal){let e=!1;typeof this.inputVal=="string"?/\S/.test(this.inputVal)||(e=!0):this.inputVal||(e=!0),e&&this.errorsList.indexOf("required")===-1&&this.errorsList.push("required")}else this.errorsList.forEach((e,n)=>{e==="required"&&this.errorsList.splice(n,1)});this.errorsList.length&&(this.isInvalid=!0),this.touched=!0,this.$emit("status-update",{field:this.fieldName,value:this.inputVal,errors:this.errorsList})},emitStatus(){setTimeout(()=>{this.manualValidate(),this.touched=!0,this.v$.$touch()},50)}}},ariaDescriptionMixin={computed:{ariaDescription(){return this.v$.inputVal&&this.v$.inputVal.$anyError||this.invalid?`error-${this.fieldName}`:this.hintText?`hint-${this.fieldName}`:null}}},_sfc_main$1Q={name:"VsRadioButton",status:"prototype",release:"0.0.1",components:{BFormRadioGroup:LoadingSpinner.Ou,BFormRadio:LoadingSpinner.pn},mixins:[validateFormElementMixin,ariaDescriptionMixin],props:{value:{type:String,default:""},fieldName:{type:String,required:!0},validationRules:{type:Object,default(){return{}}},invalid:{type:Boolean,default:!1},triggerValidate:{type:Boolean,default:!1},validationMessages:{type:Object,default(){return{}}},genericValidation:{type:Object,default(){return{}}},reAlertErrors:{type:Boolean,default:!1},options:{type:Array,required:!0},hintText:{type:String,default:""}},emits:["updated","updateFieldData"],setup:()=>({v$:useVuelidate()}),data(){return{inputVal:this.value,clearErrorsOnFocus:!1,checkedValue:this.value}},computed:{elementClass(){const e=this.v$.inputVal&&this.v$.inputVal.$anyError||this.invalid?"vs-input--error":"",n=`vs-input--${this.fieldName}`;return`${e} ${n}`},showClearButton(){return!!(this.inputVal.length&&this.clearButtonText!=="")},errorClass(){return this.v$.inputVal&&this.v$.inputVal.$anyError||this.invalid?"vs-input--error":""}},watch:{triggerValidate(){this.manualValidate()},inputVal(e){this.$emit("updated",{field:this.fieldName,value:e})},value(e){this.inputVal=e}},methods:{clearInput(){this.inputVal=""},focusOnInput(){this.$nextTick(()=>{this.$refs.input.$el.focus()})},validateErrors(){this.clearErrorsOnFocus=!1,this.emitStatus()},resetErrors(){this.clearErrorsOnFocus=!0},valueChanged(e){this.checkedValue=e.value,this.$emit("updateFieldData",e)}},validations(){return this.rules}},_hoisted_1$1p={class:"vs-radio-button","data-test":"vs-radio-button"},_hoisted_2$11=["id"],_hoisted_3$Q={class:"visually-hidden"},_hoisted_4$D=["id"];function _sfc_render$1z(e,n,t,a,r,o){const s=vue.resolveComponent("BFormRadio"),i=vue.resolveComponent("BFormRadioGroup");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1p,[e.errorsList.length||t.invalid?(vue.openBlock(),vue.createElementBlock("div",{key:0,role:"alert","aria-live":"assertive",id:`error-${t.fieldName}`},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.errorsList,l=>vue.withDirectives((vue.openBlock(),vue.createElementBlock("p",{key:l,class:"error mb-0"},[vue.createElementVNode("span",_hoisted_3$Q,vue.toDisplayString(t.fieldName),1),vue.createTextVNode(" "+vue.toDisplayString(t.validationMessages[l]||t.genericValidation[l]),1)])),[[vue.vShow,!t.reAlertErrors&&!r.clearErrorsOnFocus]])),128))],8,_hoisted_2$11)):vue.createCommentVNode("",!0),vue.createVNode(i,{id:t.fieldName,"aria-invalid":e.v$.inputVal&&e.v$.inputVal.$anyError||t.invalid,"aria-describedby":e.ariaDescription,onBlur:o.validateErrors,onChange:o.validateErrors,onFocus:o.resetErrors},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(t.options,(l,u)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-radio-button__option",[r.checkedValue===l.value?"vs-radio-button__option--checked":"",{"vs-radio-button__option--disabled":l.disabled}]]),key:u},[vue.createVNode(s,{value:l.value,name:t.fieldName,id:t.fieldName+l.value,onChange:c=>o.valueChanged({field:t.fieldName,value:l.value}),disabled:l.disabled},{default:vue.withCtx(()=>[vue.createElementVNode("span",null,vue.toDisplayString(l.text),1)]),_:2},1032,["value","name","id","onChange","disabled"])],2))),128))]),_:1},8,["id","aria-invalid","aria-describedby","onBlur","onChange","onFocus"]),t.hintText?(vue.openBlock(),vue.createElementBlock("p",{key:1,class:"hint-text",id:`hint-${t.fieldName}`},vue.toDisplayString(t.hintText),9,_hoisted_4$D)):vue.createCommentVNode("",!0)])}const VsRadioButton=LoadingSpinner._export_sfc(_sfc_main$1Q,[["render",_sfc_render$1z]]),_sfc_main$1P={name:"VsInput",status:"prototype",release:"0.0.1",components:{BFormInput:LoadingSpinner.Tu,VsButton:LoadingSpinner.VsButton},mixins:[validateFormElementMixin,ariaDescriptionMixin],props:{value:{type:Number,default:0},fieldName:{type:String,required:!0},minimumNumber:{type:Number,default:0},maximumNumber:{type:Number,default:10},autoComplete:{type:Boolean,default:!0},validationRules:{type:Object,default(){return{}}},invalid:{type:Boolean,default:!1},triggerValidate:{type:Boolean,default:!1},validationMessages:{type:Object,default(){return{}}},genericValidation:{type:Object,default(){return{}}},hintText:{type:String,default:""},clearButtonText:{type:String,default:""},reAlertErrors:{type:Boolean,default:!1}},emits:["updated"],setup:()=>({v$:useVuelidate()}),data(){return{inputVal:this.value,clearErrorsOnFocus:!1}},computed:{elementClass(){const e=this.v$.inputVal&&this.v$.inputVal.$anyError||this.invalid?"vs-input--error":"",n=`vs-input--${this.fieldName}`;return`${e} ${n}`},showClearButton(){return!!(this.inputVal.length&&this.clearButtonText!=="")},errorClass(){return this.v$.inputVal&&this.v$.inputVal.$anyError||this.invalid?"vs-input--error":""}},watch:{triggerValidate(){this.manualValidate()},inputVal(e){this.$emit("updated",{field:this.fieldName,value:e})},value(e){this.inputVal=e}},methods:{clearInput(){this.inputVal=0},focusOnInput(){this.$nextTick(()=>{this.$refs.input.$el.focus()})},clearInputAndFocus(){this.clearInput(),this.focusOnInput()},controlBlurred(){this.inputVal<this.minimumNumber&&(this.inputVal=this.minimumNumber),this.inputVal>this.maximumNumber&&(this.inputVal=this.maximumNumber),this.validateErrors()},validateErrors(){this.clearErrorsOnFocus=!1,this.emitStatus()},resetErrors(){this.clearErrorsOnFocus=!0},decrementValue(e){e&&e.preventDefault(),this.inputVal=Math.max(this.inputVal-1,this.minimumNumber)},incrementValue(e){e&&e.preventDefault(),this.inputVal=Math.min(this.inputVal+1,this.maximumNumber)}},validations(){return this.rules}},_hoisted_1$1o={"data-test":"vs-number-input"},_hoisted_2$10=["id"],_hoisted_3$P=["id"],_hoisted_4$C={class:"visually-hidden"},_hoisted_5$q={class:"visually-hidden"};function _sfc_render$1y(e,n,t,a,r,o){const s=vue.resolveComponent("VsButton"),i=vue.resolveComponent("BFormInput");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1o,[t.hintText?(vue.openBlock(),vue.createElementBlock("p",{key:0,class:"hint-text",id:`hint-${t.fieldName}`},vue.toDisplayString(t.hintText),9,_hoisted_2$10)):vue.createCommentVNode("",!0),e.errorsList.length||t.invalid?(vue.openBlock(),vue.createElementBlock("div",{key:1,role:"alert","aria-live":"assertive",id:`error-${t.fieldName}`},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.errorsList,l=>vue.withDirectives((vue.openBlock(),vue.createElementBlock("p",{key:l,class:"error mb-0"},[vue.createElementVNode("span",_hoisted_4$C,vue.toDisplayString(t.fieldName),1),vue.createTextVNode(" "+vue.toDisplayString(t.validationMessages[l]||t.genericValidation[l]),1)])),[[vue.vShow,!t.reAlertErrors&&!r.clearErrorsOnFocus]])),128))],8,_hoisted_3$P)):vue.createCommentVNode("",!0),vue.createVNode(s,{class:"vs-number-input__increment","icon-only":!0,size:"sm",icon:"fa-regular fa-minus",disabled:r.inputVal<=t.minimumNumber?!0:null,onClick:o.decrementValue},{default:vue.withCtx(()=>n[2]||(n[2]=[vue.createTextVNode(" Remove 1 ")])),_:1,__:[2]},8,["disabled","onClick"]),vue.createVNode(i,{ref:"input",type:"Number",class:vue.normalizeClass(["vs-number-input",o.elementClass]),modelValue:r.inputVal,"onUpdate:modelValue":n[0]||(n[0]=l=>r.inputVal=l),id:t.fieldName,name:t.fieldName,required:e.isRequired,v:r.inputVal,"aria-invalid":e.v$.inputVal&&e.v$.inputVal.$anyError||t.invalid,"aria-describedby":e.ariaDescription,maxlength:t.validationRules.maxLength?t.validationRules.maxLength:null,minlength:t.validationRules.minLength?t.validationRules.minLength:null,min:t.minimumNumber||null,max:t.maximumNumber||null,onBlur:o.controlBlurred,onChange:o.validateErrors,onFocus:o.resetErrors},null,8,["modelValue","class","id","name","required","v","aria-invalid","aria-describedby","maxlength","minlength","min","max","onBlur","onChange","onFocus"]),vue.createVNode(s,{class:"vs-number-input__increment","icon-only":!0,size:"sm",icon:"fa-regular fa-plus",disabled:r.inputVal>=t.maximumNumber?!0:null,onClick:o.incrementValue},{default:vue.withCtx(()=>n[3]||(n[3]=[vue.createTextVNode(" Add 1 ")])),_:1,__:[3]},8,["disabled","onClick"]),o.showClearButton?(vue.openBlock(),vue.createBlock(s,{key:2,class:"vs-number-input__clear-button d-none d-lg-block","data-test":"input-clear-button",variant:"subtle",icon:"vs-icon-control-dismiss",size:"md","icon-only":"",onClick:n[1]||(n[1]=vue.withModifiers(l=>o.clearInputAndFocus(),["prevent"]))},{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_5$q,vue.toDisplayString(t.clearButtonText),1)]),_:1})):vue.createCommentVNode("",!0)])}const VsNumberInput=LoadingSpinner._export_sfc(_sfc_main$1P,[["render",_sfc_render$1y]]),_sfc_main$1O={name:"VsCarbonCalculatorQuestion",status:"prototype",release:"0.0.1",components:{BFormGroup:LoadingSpinner.ku,VsRadioButton,VsNumberInput},props:{label:{type:String,required:!0},labelFor:{type:String,required:!0},hint:{type:String,default:""},fieldClass:{type:String,required:!0},fieldType:{type:String,default:"radio",validator:e=>e.match(/(radio|number)/)},fieldName:{type:String,required:!0},options:{type:Array,required:!0},minimum:{type:Number,default:0},maximum:{type:Number,default:0}},emits:["updateFieldData"],methods:{valueChanged(e){this.$emit("updateFieldData",e)}}},_hoisted_1$1n=["for"];function _sfc_render$1x(e,n,t,a,r,o){const s=vue.resolveComponent("VsRadioButton"),i=vue.resolveComponent("VsNumberInput"),l=vue.resolveComponent("BFormGroup");return vue.openBlock(),vue.createBlock(l,{class:vue.normalizeClass([t.fieldClass,"vs-carbon-calculator-question"]),"data-test":"vs-carbon-calculator-question"},{default:vue.withCtx(()=>[vue.createElementVNode("div",{class:vue.normalizeClass(t.fieldClass)},[vue.createElementVNode("label",{class:"vs-carbon-calculator-question__label mb-200",for:t.fieldName},vue.toDisplayString(t.label),9,_hoisted_1$1n),t.fieldType==="radio"?(vue.openBlock(),vue.createBlock(s,{key:0,"field-name":t.fieldName,options:t.options,required:!0,"hint-text":t.hint,onUpdateFieldData:o.valueChanged},null,8,["field-name","options","hint-text","onUpdateFieldData"])):vue.createCommentVNode("",!0),t.fieldType==="number"?(vue.openBlock(),vue.createBlock(i,{key:1,"field-name":t.fieldName,"increment-controls":!0,value:0,"minimum-number":t.minimum,"maximum-number":t.maximum,"hint-text":t.hint,onUpdated:o.valueChanged},null,8,["field-name","minimum-number","maximum-number","hint-text","onUpdated"])):vue.createCommentVNode("",!0)],2)]),_:1},8,["class"])}const VsCarbonCalculatorQuestion=LoadingSpinner._export_sfc(_sfc_main$1O,[["render",_sfc_render$1x]]),_sfc_main$1N={name:"VsCarbonCalculator",status:"prototype",release:"0.0.1",components:{VsButton:LoadingSpinner.VsButton,VsContainer:LoadingSpinner.VsContainer,VsCol:LoadingSpinner.VsCol,VsRow:LoadingSpinner.VsRow,VsWarning:LoadingSpinner.VsWarning,VsProgressBar,VsHeading:LoadingSpinner.VsHeading,VsCarbonCalculatorResults,VsCarbonCalculatorTip,VsCarbonCalculatorRunningTotal,VsCarbonCalculatorIntro,VsCarbonCalculatorQuestion},mixins:[LoadingSpinner.dataLayerMixin],provide(){return{labelsMap:this.labelsMap}},props:{labelsMap:{type:Object,required:!0},language:{type:String,default:"en-gb"}},data(){return this.initialState()},computed:{currentQuestion(){return!this.formData||!this.activeStage?null:this.formData.fields[this.activeStage-1]},currentTip(){return this.activeStage&&this.labelsMap[`stage-${this.activeStage}.tip`]?this.labelsMap[`stage-${this.activeStage}.tip`]:""},stayDuration(){return this.form.howLongStay?parseInt(this.form.howLongStay,10):0},currentCategory(){return this.labelsMap[`stage-${this.activeStage}.title`]?this.labelsMap[`stage-${this.activeStage}.title`]:""},activeStageRepeatable(){return this.labelsMap[`stage-${this.activeStage}.repeat`]?this.labelsMap[`stage-${this.activeStage}.repeat`]:""}},mounted(){this.getFormData()},methods:{initialState(){return{formData:{},messagingData:{},form:{},formIsInvalid:!1,showErrorMessage:!1,errorFields:[],triggerValidate:!1,conditionalFields:{},reAlertErrors:!1,totalKilos:0,transportKilos:0,accommodationKilos:0,foodKilos:0,transportTip:null,foodTip:null,accommodationTip:null,transportInternalTip:null,activeStage:0,answerSet:!1,repeatableStages:{}}},restart(){const{formData:e,repeatableStages:n}=this;Object.assign(this.$data,this.initialState()),this.$data.formData=e,this.$data.repeatableStages=n,this.cleanFields()},cleanFields(){for(let e=this.formData.fields.length-1;e>=0;e--)this.formData.fields[e].isClone&&this.formData.fields.splice(e,1);for(let e=0;e<Object.keys(this.repeatableStages).length;e++)this.repeatableStages[Object.keys(this.repeatableStages)[e]].generations=0},getFormData(){LoadingSpinner.axios.get(this.labelsMap.formUrl).then(e=>{if(this.formData=e.data,e.data.fields.forEach(n=>{this.form[n.name]="",n.conditional&&(this.conditionalFields[n.name]=!1)}),this.repeatableStages={},e.data.repeatableStages)for(let n=0;n<e.data.repeatableStages.length;n++)this.repeatableStages[e.data.repeatableStages[n]]={generations:0}})},getMessagingData(e,n){return Object.keys(this.messagingData).length>0?this.messagingData[n][e]:e==="validation"?{}:""},getQuestionLabel(e,n){if(e.isClone){if(this.labelsMap[`question-${e.originalNumber+1}.clone-question`])return this.labelsMap[`question-${e.originalNumber+1}.clone-question`];if(this.labelsMap[`question-${e.originalNumber+1}.question`])return this.labelsMap[`question-${e.originalNumber+1}.question`]}return this.labelsMap[`question-${n+1}.question`]?this.labelsMap[`question-${n+1}.question`]:""},getQuestionHint(e,n){if(e.isClone){if(this.labelsMap[`question-${e.originalNumber+1}.clone-hint`])return this.labelsMap[`question-${e.originalNumber+1}.clone-hint`];if(this.labelsMap[`question-${e.originalNumber+1}.hint`])return this.labelsMap[`question-${e.originalNumber+1}.hint`]}return this.labelsMap[`question-${n+1}.hint`]?this.labelsMap[`question-${n+1}.hint`]:""},getQuestionOptions(e,n){let t;if(e.isClone?t=e.originalNumber:t=n,e.element==="radio"){const{options:a}=e;for(let r=0;r<a.length;r++)a[r].text=this.labelsMap[`question-${t+1}.option-${r+1}`];return a}return[]},updateFieldData(e){this.form[e.field]=e.value||"",e.value?this.answerSet=!0:this.answerSet=!1,this.manageErrorStatus(e.field,e.errors),this.checkConditionalFields(),this.calculateEmissions()},manageErrorStatus(e,n){const t=this.errorFields.indexOf(e);t!==-1?(!n||n.length<1)&&this.errorFields.splice(t,1):n&&n.length>0&&this.errorFields.push(e)},getRadioValue(e,n){if(!n)return 0;let t;for(let r=0;r<this.formData.fields.length;r++)this.formData.fields[r].name===e&&(t=this.formData.fields[r]);const a=t.values[n];if(t.multiplyByNumber)return a*t.multiplyByNumber;if(t.multiplyByAnswer){let r=this.form[t.multiplyByAnswer.question]||0;return r=Math.max(r,t.multiplyByAnswer.minimum),a*r}if(t.multiplyByValue&&e!==t.multiplyByValue){let r=this.getNumberValue(t.multiplyByValue.question,this.form[t.multiplyByValue.question])||0;return r=Math.max(r,t.multiplyByValue.minimum),a*r}return a},getNumberValue(e,n){if(!n)return 0;let t;for(let a=0;a<this.formData.fields.length;a++)this.formData.fields[a].name===e&&(t=this.formData.fields[a]);if(t.multiplyByNumber)return parseInt(n,10)*t.multiplyByNumber;if(t.multiplyByAnswer){const a=this.form[t.multiplyByAnswer.question]||0;return parseInt(n,10)*a}if(t.multiplyByValue&&e!==t.multiplyByValue){const a=this.getNumberValue(t.multiplyByValue.question,this.form[t.multiplyByValue.question]);return parseInt(n,10)*a}return 0},getFieldValue(e){return e.element==="radio"?this.getRadioValue(e.name,this.form[e.name]):e.element==="number"?this.getNumberValue(e.name,this.form[e.name]):0},calculateEmissions(){this.transportKilos=0,this.accommodationKilos=0,this.foodKilos=0;for(let e=0;e<this.formData.fields.length;e++){const n=this.formData.fields[e];switch(n.stage){case 1:case 3:this.transportKilos+=this.getFieldValue(n);break;case 2:this.accommodationKilos+=this.getFieldValue(n);break;case 4:this.foodKilos+=this.getFieldValue(n);break}}this.totalKilos=this.transportKilos+this.accommodationKilos+this.foodKilos},checkConditionalFields(){Object.keys(this.conditionalFields).forEach(e=>{const n=this.formData.fields.find(a=>a.name===e);let t=!0;Object.keys(n.conditional).forEach(a=>{const r=n.conditional[a];Array.isArray(r)?r.indexOf(this.form[a])===-1&&(t=!1):this.form[a]!==r&&(t=!1),t?this.conditionalFields[e]=!0:(this.conditionalFields[e]=!1,this.manageErrorStatus(e,[]))})})},forwardPage(e){e&&e.preventDefault(),this.activeStage&&this.createDataLayerObject("carbonQuestionEvent",{questionNumber:this.activeStage,answer:this.form[this.currentQuestion.name]}),this.activeStage+=1,this.checkNewAnswerSet(),this.resetFocus()},backwardPage(e){e&&e.preventDefault(),this.activeStage-=1,this.checkNewAnswerSet(),this.resetFocus()},checkNewAnswerSet(){if(this.activeStage>this.formData.stages){this.answerSet=!0;return}this.answerSet=!0;for(let e=0;e<this.formData.fields.length;e++)if(this.formData.fields[e].stage===this.activeStage){const n=this.formData.fields[e];n.element==="radio"&&!this.form[n.name]?this.answerSet=!1:n.element==="number"&&!this.form[n.name]&&(this.form[n.name]=n.validation.min)}},isRepeatable(e){return!!(this.repeatableStages[e]&&this.repeatableStages[e].generations<3)},conditionalElementClass(e){return this.conditionalFields[e]===!0||typeof this.conditionalFields[e]>"u"?"":"d-none"},resetFocus(){this.$nextTick(()=>{this.$nextTick(()=>{try{this.$refs.questions[this.activeStage-1].$el.focus(),this.$refs.progress.$el.scrollIntoView()}catch{}})})},duplicateCurrentStage(e){e&&e.preventDefault();const n=this.repeatableStages[this.activeStage].generations+1;for(let t=0;t<this.formData.fields.length;t++){const a=this.formData.fields[t];if(a.stage===this.activeStage&&!a.isClone){const r=JSON.parse(JSON.stringify(a));r.isClone=!0;const o=`${a.name}${n}`;r.name=o,r.originalNumber=t,this.form[o]="",this.formData.fields.push(r)}}this.repeatableStages[this.activeStage].generations=n}}},_hoisted_1$1m={class:"vs-carbon-calculator__wrapper"},_hoisted_2$$={key:1};function _sfc_render$1w(e,n,t,a,r,o){const s=vue.resolveComponent("VsCarbonCalculatorIntro"),i=vue.resolveComponent("VsProgressBar"),l=vue.resolveComponent("VsHeading"),u=vue.resolveComponent("VsCarbonCalculatorQuestion"),c=vue.resolveComponent("VsButton"),d=vue.resolveComponent("VsCarbonCalculatorTip"),v=vue.resolveComponent("VsCol"),f=vue.resolveComponent("VsCarbonCalculatorRunningTotal"),h=vue.resolveComponent("VsCarbonCalculatorResults"),p=vue.resolveComponent("VsRow"),m=vue.resolveComponent("VsContainer"),g=vue.resolveComponent("VsWarning");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1m,[vue.createVNode(m,{class:"vs-carbon-calculator","data-test":"vs-carbon-calculator"},{default:vue.withCtx(()=>[e.formData&&e.formData.fields?(vue.openBlock(),vue.createBlock(p,{key:0,class:"vs-carbon-calculator__survey"},{default:vue.withCtx(()=>[vue.createVNode(v,null,{default:vue.withCtx(()=>[e.activeStage?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createBlock(s,{key:0})),e.activeStage?(vue.openBlock(),vue.createElementBlock("form",_hoisted_2$$,[vue.createElementVNode("fieldset",null,[vue.createVNode(i,{max:e.formData.stages,"current-step":e.activeStage<=e.formData.stages?e.activeStage:e.formData.stages,"is-stepped":!0,"is-full":e.activeStage>e.formData.stages,"progress-label":t.labelsMap.progress,ref:"progress"},null,8,["max","current-step","is-full","progress-label"]),vue.withDirectives(vue.createElementVNode("div",null,[o.currentCategory?(vue.openBlock(),vue.createBlock(l,{key:0,level:"2","heading-style":"heading-m",class:"vs-carbon-calculator__category-heading"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(o.currentCategory),1)]),_:1})):vue.createCommentVNode("",!0),(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.formData.fields,(_,b)=>vue.withDirectives((vue.openBlock(),vue.createBlock(u,{ref_for:!0,ref:"questions",tabindex:"0",key:_.name,label:o.getQuestionLabel(_,b),"label-for":_.name,hint:o.getQuestionHint(_,b),"field-class":o.conditionalElementClass(_.name),"field-type":_.element,"field-name":_.name,options:o.getQuestionOptions(_,b),minimum:_.element==="number"?_.validation.min:0,maximum:_.element==="number"?_.validation.max:0,onUpdateFieldData:o.updateFieldData},null,8,["label","label-for","hint","field-class","field-type","field-name","options","minimum","maximum","onUpdateFieldData"])),[[vue.vShow,_.stage===e.activeStage]])),128))],512),[[vue.vShow,e.activeStage<=e.formData.fields.length]])])])):vue.createCommentVNode("",!0),o.isRepeatable(e.activeStage)?(vue.openBlock(),vue.createBlock(c,{key:2,class:"my-100",variant:"secondary",icon:"fa-regular fa-plus",onClick:n[0]||(n[0]=_=>o.duplicateCurrentStage())},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(o.activeStageRepeatable),1)]),_:1})):vue.createCommentVNode("",!0),o.currentTip?(vue.openBlock(),vue.createBlock(d,{key:3,tip:o.currentTip},null,8,["tip"])):vue.createCommentVNode("",!0)]),_:1}),vue.createVNode(v,{cols:"12"},{default:vue.withCtx(()=>[e.activeStage>0&&e.activeStage<=e.formData.stages?(vue.openBlock(),vue.createBlock(f,{key:0,"total-kilos":e.totalKilos,language:t.language},null,8,["total-kilos","language"])):vue.createCommentVNode("",!0),e.activeStage>e.formData.stages?(vue.openBlock(),vue.createBlock(h,{key:1,"total-kilos":e.totalKilos,"transport-kilos":e.transportKilos,"food-kilos":e.foodKilos,"accommodation-kilos":e.accommodationKilos,"stay-duration":o.stayDuration,"comparison-replacements":e.formData.comparisonReplacements,language:t.language},null,8,["total-kilos","transport-kilos","food-kilos","accommodation-kilos","stay-duration","comparison-replacements","language"])):vue.createCommentVNode("",!0)]),_:1}),e.activeStage===0?(vue.openBlock(),vue.createBlock(v,{key:0,class:"text-center",cols:"12"},{default:vue.withCtx(()=>[vue.createVNode(c,{variant:"primary",type:"submit",class:"vs-form__submit mt-300",onClick:n[1]||(n[1]=_=>o.forwardPage())},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.labelsMap.begin),1)]),_:1})]),_:1})):vue.createCommentVNode("",!0),e.activeStage>0?(vue.openBlock(),vue.createBlock(v,{key:1,cols:"12"},{default:vue.withCtx(()=>[e.activeStage>1?(vue.openBlock(),vue.createBlock(c,{key:0,variant:"secondary",type:"submit",class:"vs-form__submit mt-300 float-start",ref:"backPage",onClick:n[2]||(n[2]=_=>o.backwardPage())},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.labelsMap.previous),1)]),_:1},512)):vue.createCommentVNode("",!0),e.activeStage<e.formData.stages?(vue.openBlock(),vue.createBlock(c,{key:1,variant:"primary",type:"submit",class:"vs-form__submit mt-300 float-end",ref:"forwardPage",disabled:e.activeStage>0&&!e.answerSet,onClick:n[3]||(n[3]=_=>o.forwardPage())},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.labelsMap.next),1)]),_:1},8,["disabled"])):vue.createCommentVNode("",!0),e.activeStage===e.formData.stages?(vue.openBlock(),vue.createBlock(c,{key:2,variant:"primary",type:"submit",class:"vs-form__submit mt-300 float-end",disabled:!e.answerSet,onClick:n[4]||(n[4]=_=>o.forwardPage())},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.labelsMap.results),1)]),_:1},8,["disabled"])):vue.createCommentVNode("",!0),e.activeStage>e.formData.stages?(vue.openBlock(),vue.createBlock(c,{key:3,variant:"primary",type:"submit",class:"vs-form__submit mt-300 float-end",onClick:n[5]||(n[5]=_=>o.restart())},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.labelsMap.restart),1)]),_:1})):vue.createCommentVNode("",!0)]),_:1})):vue.createCommentVNode("",!0)]),_:1})):vue.createCommentVNode("",!0)]),_:1}),vue.createVNode(g,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.labelsMap.noJsMessage),1)]),_:1})])}const CarbonCalculator=LoadingSpinner._export_sfc(_sfc_main$1N,[["render",_sfc_render$1w]]),_sfc_main$1M={name:"VsCard",status:"prototype",release:"0.1.0",props:{cardStyle:{type:String,default:null,validator:e=>e.match(/(elevated|outlined|overlay)/)},fillColor:{type:String,default:"vs-color-interaction-cta-subtle"},accentBar:{type:Boolean,default:!1},horizontal:{type:Boolean,default:!1}},data(){return{tokens:LoadingSpinner.designTokens}},computed:{cardClasses(){return[{"vs-card--horizontal":this.horizontal,"vs-card--accent-bar":this.accentBar},this.cardStyle?`vs-card--${this.cardStyle}`:null]},cardStyles(){return this.fillColor?{"background-color":this.tokens[this.fillColor]||this.fillColor}:null}}},_hoisted_1$1l={key:0,class:"vs-card__header"},_hoisted_2$_={class:"vs-card__body"},_hoisted_3$O={key:1,class:"vs-card__footer"},_hoisted_4$B={key:2,class:"vs-card__image"};function _sfc_render$1v(e,n,t,a,r,o){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-card",o.cardClasses]),"data-test":"vs-card",style:vue.normalizeStyle(o.cardStyles)},[e.$slots["vs-card-header"]&&e.$slots["vs-card-header"]()?(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1l,[vue.renderSlot(e.$slots,"vs-card-header")])):vue.createCommentVNode("",!0),vue.createElementVNode("div",_hoisted_2$_,[vue.renderSlot(e.$slots,"vs-card-body")]),e.$slots["vs-card-footer"]&&e.$slots["vs-card-footer"]()?(vue.openBlock(),vue.createElementBlock("div",_hoisted_3$O,[vue.renderSlot(e.$slots,"vs-card-footer")])):vue.createCommentVNode("",!0),t.cardStyle==="overlay"&&e.$slots["vs-card-image"]&&e.$slots["vs-card-image"]()?(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$B,[vue.renderSlot(e.$slots,"vs-card-image")])):vue.createCommentVNode("",!0)],6)}const VsCard=LoadingSpinner._export_sfc(_sfc_main$1M,[["render",_sfc_render$1v]]),_sfc_main$1L={name:"VsCardGroup",status:"prototype",release:"0.1.0",props:{variant:{type:String,default:"grid",validator:e=>e.match(/(grid)/)},cardsPerRow:{type:Number,default:3,validator:e=>[3,4].includes(e)},scrollSnap:{type:[Boolean,String],default:!1,validator:e=>[!1,!0,"always"].includes(e)}},computed:{cardGroupClasses(){return["vs-card-group",{"is-scroll-snap-responsive":this.scrollSnap===!0,"is-scroll-snap-always":this.scrollSnap==="always","is-grid":this.variant==="grid"}]}}};function _sfc_render$1u(e,n,t,a,r,o){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(o.cardGroupClasses),style:vue.normalizeStyle({"--cards-in-row":t.cardsPerRow}),"data-test":"vs-card-group"},[vue.renderSlot(e.$slots,"default")],6)}const VsCardGroup=LoadingSpinner._export_sfc(_sfc_main$1L,[["render",_sfc_render$1u]]),noJsClass="no-js",jsIsDisabled=()=>document.getElementsByClassName(noJsClass).length>0,useVideoStore=pinia.defineStore("video",{state:()=>({videos:{}}),actions:{addVideo(e){this.videos[e.videoId]={...e}}}}),cookieCheckerMixin={data(){return{requiredCookies:[],requiredCookiesAllowed:!1,cookieManagerLoaded:!1}},methods:{managerLoaded(){this.cookieManagerLoaded=!0},cookiesUpdated(){let e=!1;typeof CookieControl<"u"&&(e=this.requiredCookies.every(n=>CookieControl&&CookieControl.getCategoryConsent(n)===!0)),this.requiredCookiesAllowed=e,typeof this.callbackOnUpdated<"u"&&this.callbackOnUpdated()}},computed:{cookiesAllowed(){return typeof window<"u"&&window.bypassCookiesRequired?!0:this.requiredCookiesAllowed},cookiesLoaded(){return typeof window<"u"&&window.bypassCookiesLoaded?!0:this.cookieManagerLoaded}},mounted(){window.addEventListener("cookieManagerLoaded",()=>{this.managerLoaded()}),window.addEventListener("cookiesUpdated",()=>{this.cookiesUpdated()})}},cookieCategories=Object.freeze({analytical:0,marketing:1}),cookieValues$5={youtube:[cookieCategories.marketing],embed:[cookieCategories.analytical,cookieCategories.marketing]},cookieValues$4=cookieValues$5.youtube,_sfc_main$1K={name:"VsStretchedLinkCard",status:"prototype",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading,VsLink,VsImg:LoadingSpinner.VsImg,VsButton:LoadingSpinner.VsButton,VsWarning:LoadingSpinner.VsWarning},mixins:[cookieCheckerMixin],inject:{noJsMessage:{default:null},theme:{default:null},noCookiesMessage:{default:null},cookieLinkText:{default:null}},props:{link:{type:String,required:!0,default:"#"},headingLevel:{type:[String,Number],default:"3",validator:e=>e.match(/(1|2|3|4|5|6)/)},headingStyle:{type:[String,Number],default:"heading-xs",validator:e=>e.match(/(display-m|display-s|heading-xl|heading-l|heading-m|heading-s|heading-xs|heading-xxs)/)},type:{type:String,required:!0,validator:e=>e.match(/(default|external|internal|download|video)/)},imgSrc:{type:String,default:void 0},imgAlt:{type:String,default:""},disabled:{type:Boolean,default:!1},videoId:{type:String,default:""},videoBtnText:{type:String,default:""},errorMessage:{type:String,default:""},errorType:{type:String,default:"image",validator:e=>e.match(/(image|full)/)},warningSize:{type:String,default:"small",validator:e=>e.match(/(normal|small)/)},businessSupport:{type:Boolean,default:!1},isHomePage:{type:Boolean,default:!1}},setup(){return{videoStore:useVideoStore()}},data(){return{jsDisabled:!0,requiredCookies:cookieValues$4}},computed:{formattedVideoBtnText(){return`${this.videoBtnText} | `},formattedVideoDuration(){let e=`${this.videoDetails.videoFullDuration.seconds}`;return e.length===1&&(e=`0${e}`),`${this.videoDetails.videoFullDuration.minutes}:${e}`},stretchedLinkCardClasses(){let e="";return this.disabled&&(e+="vs-stretched-link-card--disabled"),this.type==="video"&&(e+=" vs-stretched-link-card--video"),this.showWarning&&this.type==="video"&&(e+=" vs-stretched-link-card--warning"),e},videoDetails(){return this.videoStore?this.videoStore.videos[this.videoId]:null},videoLoaded(){return typeof this.videoDetails<"u"&&this.videoDetails.videoDuration>0},warningClass(){let e="";return this.videoId&&(this.jsDisabled||!this.cookiesAllowed)&&(e="vs-stretched-link-card__img-container--warning ",this.errorType==="full"&&(this.cookiesLoaded||this.jsDisabled)&&(e+="vs-stretched-link-card__img-container--warning-full")),e},showCookieWarning(){return!!(this.videoId&&!this.jsDisabled&&!this.cookiesAllowed&&this.cookiesLoaded)},showError(){return!!(this.videoId&&this.errorMessage!==""&&!this.cookiesLoaded)},showWarning(){return this.showError||this.showCookieWarning?this.errorType:!!this.jsDisabled},warningMessage(){let e="";return this.showCookieWarning?e=this.noCookiesMessage:e=this.errorMessage,e},warningAttrs(){const e={};return this.type==="cookie"&&(e.class="vs-warning__cookie-trigger"),this.size==="small"&&(e.size="sm"),e},isSvg(){return!!(this.imgSrc&&this.imgSrc.includes(".svg"))}},mounted(){this.jsDisabled=jsIsDisabled()},methods:{emitShowModal(){!this.videoId||!this.cookiesAllowed||this.emitter&&this.emitter.emit("showModal",this.videoId,"#videoShow")}}},_hoisted_1$1k={key:0,class:"vs-stretched-link-card__video-btn-text"},_hoisted_2$Z={key:4,class:"card-body"},_hoisted_3$N={key:0,class:"vs-stretched-link-card__category","data-test":"vs-stretched-link-card__category"},_hoisted_4$A={class:"vs-stretched-link-card__content","data-test":"vs-stretched-link-card__content"},_hoisted_5$p={key:2,class:"vs-stretched-link-card__badges","data-test":"vs-stretched-link-card__badges"};function _sfc_render$1t(e,n,t,a,r,o){const s=vue.resolveComponent("VsWarning"),i=vue.resolveComponent("VsImg"),l=vue.resolveComponent("VsButton"),u=vue.resolveComponent("VsLink"),c=vue.resolveComponent("VsHeading");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["card vs-stretched-link-card",o.stretchedLinkCardClasses]),"data-test":"vs-stretched-link-card",onClick:n[0]||(n[0]=(...d)=>o.emitShowModal&&o.emitShowModal(...d)),onKeypress:n[1]||(n[1]=(...d)=>o.emitShowModal&&o.emitShowModal(...d))},[o.showWarning==="full"?(vue.openBlock(),vue.createBlock(s,{key:0,size:t.warningSize,type:o.showCookieWarning?"cookie":"normal","data-test":"vs-stretched-link-card__full-warning",class:"vs-stretched-link-card__full-warning"},vue.createSlots({default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(o.warningMessage)+" ",1)]),_:2},[o.cookieLinkText!==""&&o.showCookieWarning?{name:"button-text",fn:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(o.cookieLinkText),1)]),key:"0"}:void 0]),1032,["size","type"])):vue.createCommentVNode("",!0),t.errorType==="full"&&t.videoId!==""?(vue.openBlock(),vue.createBlock(s,{key:1,size:t.warningSize,"data-test":"vs-stretched-link-card__full-warning",class:"vs-stretched-link-card__full-warning vs-stretched-link-card__full-warning--no-js"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(o.noJsMessage),1)]),_:1},8,["size"])):vue.createCommentVNode("",!0),t.imgSrc?(vue.openBlock(),vue.createElementBlock("div",{key:2,class:vue.normalizeClass(["vs-stretched-link-card__img-container",o.warningClass])},[t.imgSrc?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createVNode(i,{src:t.imgSrc,alt:t.imgAlt,class:vue.normalizeClass(["vs-stretched-link-card__img",o.isSvg?"vs-stretched-link-card__img--svg":""]),"data-test":"vs-stretched-link-card__img","data-chromatic":"ignore"},null,8,["src","alt","class"]),t.videoId&&o.videoLoaded&&e.cookiesAllowed?(vue.openBlock(),vue.createBlock(l,{key:0,class:"vs-stretched-link-card__video-button","data-test":"vs-stretched-link-card__video-button",icon:"fa-regular fa-play","icon-position":"left",size:"md",ref:"videoShow",rounded:!1,onClick:o.emitShowModal},{default:vue.withCtx(()=>[t.videoBtnText?(vue.openBlock(),vue.createElementBlock("span",_hoisted_1$1k,vue.toDisplayString(o.formattedVideoBtnText),1)):vue.createCommentVNode("",!0),vue.createTextVNode(" "+vue.toDisplayString(o.formattedVideoDuration),1)]),_:1},8,["onClick"])):vue.createCommentVNode("",!0)],64)):vue.createCommentVNode("",!0),o.showWarning==="image"?(vue.openBlock(),vue.createBlock(s,{key:1,size:t.warningSize,type:o.showCookieWarning?"cookie":"normal","data-test":"vs-stretched-link-card__image-warning",class:"vs-stretched-link-card__image-warning"},vue.createSlots({default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(o.warningMessage)+" ",1)]),_:2},[o.cookieLinkText!==""&&o.showCookieWarning?{name:"button-text",fn:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(o.cookieLinkText),1)]),key:"0"}:void 0]),1032,["size","type"])):vue.createCommentVNode("",!0),t.videoId!==""&&t.errorType==="image"?(vue.openBlock(),vue.createBlock(s,{key:2,size:t.warningSize,"data-test":"vs-stretched-link-card__warning",class:"vs-stretched-link-card__image-warning vs-stretched-link-card__image-warning--no-js"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(o.noJsMessage),1)]),_:1},8,["size"])):vue.createCommentVNode("",!0)],2)):vue.createCommentVNode("",!0),e.$slots["stretched-card-panels"]&&e.$slots["stretched-card-panels"]()?vue.renderSlot(e.$slots,"stretched-card-panels",{key:3}):vue.createCommentVNode("",!0),o.showWarning!=="full"?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$Z,[e.$slots["stretched-card-category"]&&e.$slots["stretched-card-category"]()?(vue.openBlock(),vue.createElementBlock("span",_hoisted_3$N,[vue.renderSlot(e.$slots,"stretched-card-category")])):vue.createCommentVNode("",!0),e.$slots["stretched-card-header"]&&e.$slots["stretched-card-header"]()?(vue.openBlock(),vue.createBlock(c,{key:1,level:t.headingLevel,"heading-style":t.headingStyle,class:"card-title vs-stretched-link-card__title","data-test":"vs-stretched-link-card__title"},{default:vue.withCtx(()=>[e.$slots["stretched-card-link"]&&e.$slots["stretched-card-link"]()?vue.renderSlot(e.$slots,"stretched-card-header",{key:0}):!t.businessSupport&&t.type==="video"?vue.renderSlot(e.$slots,"stretched-card-header",{key:1}):(vue.openBlock(),vue.createBlock(u,{key:2,href:t.link,type:t.type,class:vue.normalizeClass(["stretched-link",t.disabled?"stretched-link--disabled":""]),variant:o.theme==="dark"?"on-dark":"primary","data-test":"vs-stretched-link",disabled:t.disabled,tabindex:(t.videoId||t.disabled)&&!t.businessSupport?"-1":"0"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"stretched-card-header")]),_:3},8,["href","type","class","variant","disabled","tabindex"]))]),_:3},8,["level","heading-style"])):vue.createCommentVNode("",!0),vue.createElementVNode("div",_hoisted_4$A,[vue.renderSlot(e.$slots,"stretched-card-content")]),e.$slots["stretched-card-badges"]&&e.$slots["stretched-card-badges"]()?(vue.openBlock(),vue.createElementBlock("div",_hoisted_5$p,[vue.renderSlot(e.$slots,"stretched-card-badges")])):vue.createCommentVNode("",!0),e.$slots["stretched-card-link"]&&e.$slots["stretched-card-link"]()?(vue.openBlock(),vue.createBlock(u,{key:3,href:t.link,class:"vs-stretched-link-card__link stretched-link","data-test":"vs-stretched-link-card__link"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"stretched-card-link")]),_:3},8,["href"])):vue.createCommentVNode("",!0)])):vue.createCommentVNode("",!0)],34)}const VsStretchedLinkCard=LoadingSpinner._export_sfc(_sfc_main$1K,[["render",_sfc_render$1t]]),_sfc_main$1J={name:"VsStretchedLinkPanels",status:"prototype",release:"0.0.1",components:{VsIcon:LoadingSpinner.VsIcon},props:{days:{type:String,default:""},transport:{type:String,default:""},daysLabel:{type:String,default:"days"},transportName:{type:String,default:""}}},_hoisted_1$1j={class:"vs-stretched-link-panels"},_hoisted_2$Y={class:"vs-stretched-link-panels__panel vs-stretched-link-panels__panel--days","data-test":"vs-stretched-link-panel--days"},_hoisted_3$M={"data-test":""},_hoisted_4$z={class:"vs-stretched-link-panels__days"},_hoisted_5$o={class:"vs-stretched-link-panels__panel","data-test":"vs-stretched-link-panel"},_hoisted_6$h={"data-test":"vs-stretched-link-panel__icon"};function _sfc_render$1s(e,n,t,a,r,o){const s=vue.resolveComponent("VsIcon");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1j,[vue.createElementVNode("div",_hoisted_2$Y,[vue.createElementVNode("p",_hoisted_3$M,[vue.createElementVNode("span",_hoisted_4$z,vue.toDisplayString(t.days),1),vue.createTextVNode(vue.toDisplayString(t.daysLabel),1)])]),vue.createElementVNode("div",_hoisted_5$o,[vue.createVNode(s,{icon:t.transport,variant:"inverse",size:"sm",class:"vs-stretched-link-panels__icon"},null,8,["icon"]),vue.createElementVNode("p",_hoisted_6$h,vue.toDisplayString(t.transportName),1)])])}const VsStretchedLinkPanels=LoadingSpinner._export_sfc(_sfc_main$1J,[["render",_sfc_render$1s]]),_sfc_main$1I={name:"VsCarouselSlide",status:"prototype",release:"0.0.1",components:{VsStretchedLinkCard,VsStretchedLinkPanels,VsCol:LoadingSpinner.VsCol},inject:["slideCols","visibleSlides"],props:{imgSrc:{required:!0,type:String},imgAlt:{type:String,default:""},linkType:{type:String,required:!0,validator:e=>e.match(/(default|external|internal|download)/)},linkUrl:{type:String,required:!0},categoryLabel:{type:String,default:null},category:{type:String,default:null},days:{type:String,default:""},daysLabel:{type:String,default:"days"},transport:{type:String,default:""},transportName:{type:String,default:""},slideIndex:{type:String,required:!0}},methods:{isVisible(e){const n=parseInt(e,10);return this.visibleSlides.indexOf(n)>=0}}},_hoisted_1$1i={class:"vs-carousel-slide"},_hoisted_2$X={class:"visually-hidden"},_hoisted_3$L={class:"vs-carousel-slide__title","data-test":"vs-carousel-slide__title"};function _sfc_render$1r(e,n,t,a,r,o){const s=vue.resolveComponent("VsStretchedLinkPanels"),i=vue.resolveComponent("VsStretchedLinkCard"),l=vue.resolveComponent("VsCol");return vue.openBlock(),vue.createBlock(l,{cols:o.slideCols.xs,sm:o.slideCols.sm,lg:o.slideCols.md,xl:o.slideCols.lg,"data-test":"vs-carousel-slide","aria-disabled":!o.isVisible(t.slideIndex)},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$1i,[vue.createVNode(i,{link:t.linkUrl,type:t.linkType,"img-src":t.imgSrc,"img-alt":t.imgAlt,class:vue.normalizeClass([o.isVisible(t.slideIndex)?"vs-carousel-slide__card--active":"vs-carousel-slide__card--disabled","vs-carousel-slide__card"]),disabled:!o.isVisible(t.slideIndex),"data-test":"vs-carousel-card"},vue.createSlots({"stretched-card-category":vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_2$X,vue.toDisplayString(t.categoryLabel)+": ",1),vue.createTextVNode(vue.toDisplayString(t.category),1)]),"stretched-card-header":vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_3$L,[vue.renderSlot(e.$slots,"vs-carousel-slide-heading")])]),_:2},[t.days&&t.transport?{name:"stretched-card-panels",fn:vue.withCtx(()=>[vue.createVNode(s,{days:t.days,transport:t.transport,"transport-name":t.transportName,"days-label":t.daysLabel},null,8,["days","transport","transport-name","days-label"])]),key:"0"}:void 0]),1032,["link","type","img-src","img-alt","class","disabled"])])]),_:3},8,["cols","sm","lg","xl","aria-disabled"])}const CarouselSlide=LoadingSpinner._export_sfc(_sfc_main$1I,[["render",_sfc_render$1r]]),_sfc_main$1H={name:"VsCheckbox",status:"prototype",release:"0.0.1",components:{BFormCheckbox:LoadingSpinner.fn},mixins:[validateFormElementMixin,ariaDescriptionMixin],props:{fieldName:{type:String,required:!0},value:{type:String,default:""},label:{type:String,required:!0},validationRules:{type:Object,default(){return{}}},triggerValidate:{type:Boolean,default:!1},validationMessages:{type:Object,default(){return{}}},invalid:{type:Boolean,default:!1},genericValidation:{type:Object,default(){return{}}},hintText:{type:String,default:""},infoText:{type:String,default:""},reAlertErrors:{type:Boolean,default:!1},size:{type:String,default:void 0,validator:e=>e.match(/(sm|md|lg)/)}},setup:()=>({v$:useVuelidate()}),data(){return{inputVal:"",errors:[]}},computed:{checkBoxClasses(){return{"vs-checkbox":!0,"vs-checkbox--error":this.isInvalid,"vs-checkbox--small":this.size==="sm"}}},watch:{value(e){this.inputVal=e},triggerValidate(){this.manualValidate()}},validations(){return this.rules}},_hoisted_1$1h=["id"],_hoisted_2$W=["innerHTML"],_hoisted_3$K=["id"],_hoisted_4$y={class:"visually-hidden"},_hoisted_5$n={class:"vs-checkbox__label"};function _sfc_render$1q(e,n,t,a,r,o){const s=vue.resolveComponent("BFormCheckbox");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(o.checkBoxClasses)},[vue.createElementVNode("p",{class:"hint-text",id:`hint-${t.fieldName}`},vue.toDisplayString(t.hintText),9,_hoisted_1$1h),t.infoText!==""?(vue.openBlock(),vue.createElementBlock("div",{key:0,innerHTML:t.infoText},null,8,_hoisted_2$W)):vue.createCommentVNode("",!0),e.errorsList.length||t.invalid?(vue.openBlock(),vue.createElementBlock("div",{key:1,role:"alert","aria-live":"assertive",id:`error-${t.fieldName}`},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.errorsList,i=>vue.withDirectives((vue.openBlock(),vue.createElementBlock("p",{key:i,class:"error mb-0"},[vue.createElementVNode("span",_hoisted_4$y,vue.toDisplayString(t.fieldName),1),vue.createTextVNode(" "+vue.toDisplayString(t.validationMessages[i]||t.genericValidation[i]),1)])),[[vue.vShow,!t.reAlertErrors]])),128))],8,_hoisted_3$K)):vue.createCommentVNode("",!0),t.fieldName?(vue.openBlock(),vue.createBlock(s,vue.mergeProps({key:2,modelValue:r.inputVal,"onUpdate:modelValue":n[0]||(n[0]=i=>r.inputVal=i),class:"me-100",name:t.fieldName,id:t.fieldName,value:t.value,unchecked_value:`not_${t.value}`},e.$attrs,{"data-test":"vs-checkbox",onBlur:e.emitStatus,onChange:e.emitStatus,required:e.isRequired,"aria-invalid":e.v$.inputVal&&e.v$.inputVal.$anyError||t.invalid,"aria-describedby":e.ariaDescription}),{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_5$n,vue.toDisplayString(t.label),1)]),_:1},16,["modelValue","name","id","value","unchecked_value","onBlur","onChange","required","aria-invalid","aria-describedby"])):vue.createCommentVNode("",!0)],2)}const VsCheckbox=LoadingSpinner._export_sfc(_sfc_main$1H,[["render",_sfc_render$1q]]),_sfc_main$1G={name:"VsDescriptionList",status:"prototype",release:"0.0.1",provide(){return{inline:vue.computed(()=>this.inline)}},props:{inline:{type:Boolean,default:!1}}};function _sfc_render$1p(e,n,t,a,r,o){return vue.openBlock(),vue.createElementBlock("dl",{class:vue.normalizeClass(["vs-description-list",{"list-inline":t.inline}])},[vue.renderSlot(e.$slots,"default")],2)}const DescriptionList=LoadingSpinner._export_sfc(_sfc_main$1G,[["render",_sfc_render$1p]]),_sfc_main$1F={name:"VsDescriptionListItem",status:"prototype",release:"0.0.1",components:{VsCol:LoadingSpinner.VsCol},inject:["inline"],props:{title:{type:Boolean,default:!1}}};function _sfc_render$1o(e,n,t,a,r,o){const s=vue.resolveComponent("VsCol");return vue.openBlock(),vue.createBlock(s,{tag:t.title?"dt":"dd",class:vue.normalizeClass({"list-inline-item":o.inline,"vs-description-list__detail":!t.title,"vs-description-list__detail--styled":!o.inline&&!t.title,"vs-description-list__term":t.title,"vs-description-list__term--styled":!o.inline&&t.title})},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default",{},void 0,!0)]),_:3},8,["tag","class"])}const DescriptionListItem=LoadingSpinner._export_sfc(_sfc_main$1F,[["render",_sfc_render$1o],["__scopeId","data-v-46cd5138"]]),_sfc_main$1E={name:"VsDetail",status:"prototype",release:"0.0.1",props:{size:{type:String,default:"medium",validator:e=>e.match(/(small|medium|large)/)},color:{type:String,default:"primary",validator:e=>e.match(/(primary|secondary|tertiary)/)},noMargins:{type:Boolean,default:!1}},computed:{detailClasses(){return["vs-detail",`vs-detail--${this.size}`,`vs-detail--${this.color}`,...this.noMargins?[]:["vs-detail--with-margins"]]}}};function _sfc_render$1n(e,n,t,a,r,o){return vue.openBlock(),vue.createElementBlock("p",{class:vue.normalizeClass(o.detailClasses)},[vue.renderSlot(e.$slots,"default")],2)}const VsDetail=LoadingSpinner._export_sfc(_sfc_main$1E,[["render",_sfc_render$1n]]),_sfc_main$1D={name:"VsDropdown",status:"prototype",release:"0.0.1",components:{BDropdown:LoadingSpinner.un},props:{text:{type:String,default:""},variant:{type:String,default:"primary",validator:e=>e.match(/(primary|secondary)/)}},computed:{nonButtonContentSlots(){return LoadingSpinner.lodashExports.reject(this.$slots,{name:"button-content"})}}},_hoisted_1$1g={class:"dropdown-menu overflow-auto",role:"menu"};function _sfc_render$1m(e,n,t,a,r,o){const s=vue.resolveComponent("BDropdown");return vue.openBlock(),vue.createElementBlock(vue.Fragment,null,[vue.createVNode(s,vue.mergeProps(e.$attrs,{variant:t.variant,class:"vs-dropdown"}),vue.createSlots({"button-content":vue.withCtx(()=>[vue.renderSlot(e.$slots,"button-content",{},()=>[vue.createTextVNode(vue.toDisplayString(t.text),1)])]),default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:2},[vue.renderList(o.nonButtonContentSlots,(i,l)=>({name:l,fn:vue.withCtx(()=>[vue.renderSlot(e.$slots,l)])}))]),1040,["variant"]),vue.createElementVNode("div",{class:vue.normalizeClass([e.$attrs.class,"dropdown vs-dropdown vs-dropdown--fallback"])},[vue.createElementVNode("ul",_hoisted_1$1g,[vue.renderSlot(e.$slots,"default")])],2)],64)}const VsDropdown=LoadingSpinner._export_sfc(_sfc_main$1D,[["render",_sfc_render$1m]]),_sfc_main$1C={name:"VsDropdownItem",status:"prototype",release:"0.0.1",components:{BDropdownItem:LoadingSpinner.Xi}};function _sfc_render$1l(e,n,t,a,r,o){const s=vue.resolveComponent("BDropdownItem");return vue.openBlock(),vue.createBlock(s,vue.mergeProps(e.$attrs,{role:"menuitem"}),{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},16)}const VsDropdownItem=LoadingSpinner._export_sfc(_sfc_main$1C,[["render",_sfc_render$1l]]),cookieValues$3=cookieValues$5.embed,_sfc_main$1B={name:"VsEmbedWrapper",status:"prototype",release:"0.0.1",components:{VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,VsBody:LoadingSpinner.VsBody,VsWarning:LoadingSpinner.VsWarning},mixins:[cookieCheckerMixin],props:{noCookiesRequired:{type:Boolean,default:!1},noCookieText:{type:String,required:!0},errorText:{type:String,required:!0},noJsText:{type:String,required:!0},extraContent:{type:String,default:""},embeddedScript:{type:String,default:""}},data(){return{requiredCookies:this.noCookiesRequired?null:cookieValues$3}},computed:{showError(){return this.noCookiesRequired?!1:!this.cookiesAllowed&&this.cookiesLoaded===!0||!this.cookiesLoaded},warningText(){let e="";return this.cookiesLoaded||(e=this.errorText),!this.cookiesAllowed&&this.cookiesLoaded===!0&&(e=this.noCookieText),e}},methods:{callbackOnUpdated(){if(this.embeddedScript&&this.cookiesLoaded&&this.requiredCookiesAllowed){const e=document.createElement("script");e.src=this.embeddedScript,document.head.appendChild(e)}}}},_hoisted_1$1f={"data-test":"vs-embed-wrapper",class:"vs-embed-wrapper"},_hoisted_2$V={class:"vs-embed-wrapper__container",key:"embeddedContent"},_hoisted_3$J={key:"fallback"},_hoisted_4$x=["innerHTML"];function _sfc_render$1k(e,n,t,a,r,o){const s=vue.resolveComponent("VsBody"),i=vue.resolveComponent("VsCol"),l=vue.resolveComponent("VsWarning"),u=vue.resolveComponent("VsRow"),c=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1f,[vue.createVNode(c,null,{default:vue.withCtx(()=>[vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(i,{cols:"12",sm:"10","offset-sm":"1",md:"6","offset-md":"3"},{default:vue.withCtx(()=>[e.$slots["embed-intro-copy"]&&e.$slots["embed-intro-copy"]()&&!o.showError?(vue.openBlock(),vue.createBlock(s,{key:0,class:"vs-module-wrapper__intro vs-embed-wrapper__intro","data-test":"vs-module-wrapper__intro"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"embed-intro-copy")]),_:3})):vue.createCommentVNode("",!0)]),_:3}),vue.createVNode(i,{cols:"12"},{default:vue.withCtx(()=>[e.cookiesAllowed||t.noCookiesRequired?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$V,[vue.renderSlot(e.$slots,"embed-widget")])):vue.createCommentVNode("",!0),o.showError?(vue.openBlock(),vue.createElementBlock("div",_hoisted_3$J,[vue.createVNode(l,{type:e.cookiesLoaded===!0?"cookie":"normal",class:"vs-embed-wrapper__error","data-test":"vs-embed-wrapper__error"},vue.createSlots({default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(o.warningText)+" ",1)]),_:2},[t.extraContent?{name:"extra-content",fn:vue.withCtx(()=>[vue.createElementVNode("div",{innerHTML:t.extraContent},null,8,_hoisted_4$x)]),key:"0"}:void 0,!e.cookiesAllowed&&e.cookiesLoaded===!0?{name:"button-text",fn:vue.withCtx(()=>[vue.renderSlot(e.$slots,"embed-button-text")]),key:"1"}:void 0]),1032,["type"])])):vue.createCommentVNode("",!0),vue.createVNode(l,{type:"normal","data-test":"vs-embed-wrapper__error--no-js",class:"vs-embed-wrapper__error vs-embed-wrapper__error--no-js"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.noJsText),1)]),_:1})]),_:3})]),_:3})]),_:3})])}const EmbedWrapper=LoadingSpinner._export_sfc(_sfc_main$1B,[["render",_sfc_render$1k]]),_sfc_main$1A={name:"VsEventCard",status:"prototype",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading,VsButton:LoadingSpinner.VsButton,VsCol:LoadingSpinner.VsCol,VsRow:LoadingSpinner.VsRow},props:{ctaHref:{type:String,default:"#"},ctaLabel:{type:String,default:""},ctaIcon:{type:String,default:""}}},_hoisted_1$1e={class:"card vs-event-card","data-test":"vs-event-card"},_hoisted_2$U={class:"card-body"},_hoisted_3$I={class:"vs-event-card__date"},_hoisted_4$w={key:0,class:"vs-event-card__content","data-test":"vs-event-card__content"},_hoisted_5$m={key:1,class:"vs-event-card__cta","data-test":"vs-event-card__cta"};function _sfc_render$1j(e,n,t,a,r,o){const s=vue.resolveComponent("VsHeading"),i=vue.resolveComponent("VsCol"),l=vue.resolveComponent("VsRow"),u=vue.resolveComponent("VsButton");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1e,[vue.createElementVNode("div",_hoisted_2$U,[vue.createVNode(l,{class:"vs-event-card__header"},{default:vue.withCtx(()=>[vue.createVNode(i,{sm:"12",md:"9",class:"p-0"},{default:vue.withCtx(()=>[vue.createVNode(s,{class:"vs-event-card__heading","heading-style":"heading-xs",level:"3","data-test":"vs-event-card__heading"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"event-card-header")]),_:3})]),_:3}),e.$slots["event-card-date"]?(vue.openBlock(),vue.createBlock(i,{key:0,sm:"12",md:"3",class:"my-auto p-0","data-test":"vs-event-card__date"},{default:vue.withCtx(()=>[vue.createElementVNode("p",_hoisted_3$I,[vue.renderSlot(e.$slots,"event-card-date")])]),_:3})):vue.createCommentVNode("",!0)]),_:3}),e.$slots["event-card-content"]?(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$w,[vue.renderSlot(e.$slots,"event-card-content")])):vue.createCommentVNode("",!0),t.ctaHref&&t.ctaLabel?(vue.openBlock(),vue.createElementBlock("div",_hoisted_5$m,[vue.createVNode(u,{href:t.ctaHref,icon:t.ctaIcon,"icon-position":"right","data-test":"vs-event-card__cta"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.ctaLabel),1)]),_:1},8,["href","icon"])])):vue.createCommentVNode("",!0)])])}const EventCard=LoadingSpinner._export_sfc(_sfc_main$1A,[["render",_sfc_render$1j]]),_hoisted_1$1d=["id"],_hoisted_2$T={class:"vs-filter__panel-wrapper"},_hoisted_3$H={class:"vs-filter__legend"},_sfc_main$1z={__name:"VsFilter",props:{filterId:{type:String,required:!0},filterLabel:{type:String,required:!0}},emits:["filter-updated"],setup(e,{expose:n}){const t=e,a=vue.ref(),r=i=>{const l=i;l.type==="checkbox"?l.checked=!1:l.type==="date"&&(l.value="")};return n({clearFilter:r,resetAll:()=>{a.value.querySelectorAll('input[type="checkbox"], input[type="date"]').forEach(l=>{r(l)})},resetOne:i=>{const l=a.value.querySelector(`#${i}`);r(l)}}),(i,l)=>(vue.openBlock(),vue.createElementBlock(vue.Fragment,null,[vue.createElementVNode("div",{class:"vs-filter","data-test":"vs-filter",id:t.filterId,ref_key:"filter",ref:a},[vue.createElementVNode("div",_hoisted_2$T,[vue.createElementVNode("fieldset",{class:"vs-filter__panel","data-test":"vs-filter__panel",onChange:l[0]||(l[0]=u=>i.$emit("filter-updated",u))},[vue.createElementVNode("legend",_hoisted_3$H,[vue.createVNode(LoadingSpinner.VsIcon,{icon:"vs-icon-control-filters",size:"sm"}),vue.createTextVNode(" "+vue.toDisplayString(t.filterLabel),1)]),vue.renderSlot(i.$slots,"default")],32)])],8,_hoisted_1$1d),i.$slots["no-js"]?(vue.openBlock(),vue.createBlock(LoadingSpinner.VsWarning,{key:0,class:"vs-filter__warning"},{default:vue.withCtx(()=>[vue.renderSlot(i.$slots,"no-js")]),_:3})):vue.createCommentVNode("",!0)],64))}},_hoisted_1$1c={key:0,class:"vs-filter-section__details"},_hoisted_2$S={class:"vs-filter-section__summary"},_hoisted_3$G={key:1,class:"vs-filter-section__section"},_sfc_main$1y={__name:"VsFilterSection",props:{sectionTitle:{type:String,default:void 0},type:{type:String,default:"list",validator:e=>e.match(/(inline|group|list)/)}},setup(e){const n=e,t=vue.computed(()=>({"vs-filter-section":!0,"vs-filter-section--inline":n.type==="inline"}));return(a,r)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(t.value),"data-test":"vs-filter-section"},[n.type==="group"?(vue.openBlock(),vue.createElementBlock("details",_hoisted_1$1c,[vue.createElementVNode("summary",_hoisted_2$S,[vue.createTextVNode(vue.toDisplayString(n.sectionTitle)+" ",1),vue.createVNode(LoadingSpinner.VsIcon,{icon:"vs-icon-control-expand",variant:"highlight"})]),vue.renderSlot(a.$slots,"default")])):(vue.openBlock(),vue.createElementBlock("div",_hoisted_3$G,[vue.renderSlot(a.$slots,"default")]))],2))}};function createHydrationCleanup(){let e=[];return{cleanup:()=>{e=e.filter(a=>(a(),!1))},onCleanup:a=>{e.push(a)}}}function createHydrationPromise(e){let n=()=>{};const t=new Promise(r=>{n=()=>{e(),r()}});return{promise:t,resolvePromise:n,onResolvedPromise:r=>{t.then(r)}}}function trackDepsOnRender(e){const n=e.effect.fn,t=e.render;e.render=(...a)=>{e.effect.fn=()=>t(...a);const r=e.effect.run();return e.effect.fn=n,e.render=t,r}}const isFunction=e=>typeof e=="function",isObject=e=>e!==null&&typeof e=="object";function traverseChildren(e,n){if(vue.isVNode(e)&&(n(e),e.children!==null)){if(Array.isArray(e.children)){e.children.forEach(t=>traverseChildren(t,n));return}isObject(e.children)&&Object.keys(e.children).forEach(t=>{if(!isFunction(e.children[t]))return;const a=e.children[t]();if(Array.isArray(a)){a.forEach(r=>traverseChildren(r,n));return}traverseChildren(a,n)})}}function isAsyncWrapper(e){var n,t;return((n=e.type)==null?void 0:n.__asyncLoader)&&((t=e.type)==null?void 0:t.name)==="AsyncComponentWrapper"}function waitForAsyncComponents({subTree:e},n){const t=[];if(traverseChildren(e,a=>{isAsyncWrapper(a)&&t.push(a.type.__asyncLoader())}),t.length>0){Promise.all(t).then(n);return}n()}function ensureParentHasSubTreeEl(e){if(!e||!e.subTree)return;const n=e.subTree.el,t=e.u;e.u===null&&(e.u=[]),e.u.push(()=>{e.subTree.el===null&&(e.subTree.el=n),e.u=t})}function useLazyHydration(){const e=vue.getCurrentInstance();if(!e||e.isMounted)throw new Error("useLazyHydration must be called from the setup method.");const n=e.vnode.el!==null;if(e.vnode.type.__isLazilyHydrated=!0,!n)return{willPerformHydration:n,onHydrated:()=>{}};const{cleanup:t,onCleanup:a}=createHydrationCleanup(),{promise:r,resolvePromise:o,onResolvedPromise:s}=createHydrationPromise(t),i=l=>s(()=>vue.nextTick(()=>waitForAsyncComponents(e,l)));return e.type.__asyncLoader=()=>r,ensureParentHasSubTreeEl(e.parent),vue.onBeforeMount(()=>{e.asyncDep=new Promise(l=>{l(!0)})}),s(()=>{trackDepsOnRender(e),e.asyncDep=null}),vue.onUnmounted(t),{willPerformHydration:n,hydrate:o,onHydrated:i,onCleanup:a}}function useHydrateWhenIdle({willPerformHydration:e,hydrate:n,onCleanup:t},a=2e3){if(!e)return;if(!vue.getCurrentInstance())throw new Error("useHydrateWhenIdle must be called from the setup or lifecycle hook methods.");if(!("requestIdleCallback"in window)){n();return}const r=requestIdleCallback(()=>{n()},{timeout:a});t(()=>{cancelIdleCallback(r)})}const DOMNodeTypes={ELEMENT:1,COMMENT:8},isElement=e=>e&&e.nodeType===DOMNodeTypes.ELEMENT,isComment=e=>e&&e.nodeType===DOMNodeTypes.COMMENT,isFragmentStart=e=>isComment(e)&&(e==null?void 0:e.data)==="[",isFragmentEnd=e=>isComment(e)&&(e==null?void 0:e.data)==="]";function getRootElements({vnode:e,subTree:n}){if(!e||e.el===null)return[];if(isElement(e.el))return[e.el];const t=[];if(n&&isFragmentStart(n.el)&&isFragmentEnd(n.anchor)){let a=e.el.nextSibling;for(;a;){if(a&&isElement(a)&&t.push(a),a===n.anchor)return t;a=a.nextSibling}}return t}function useHydrateOnInteraction({willPerformHydration:e,hydrate:n,onCleanup:t},a=["focus"]){if(!e)return;const r=vue.getCurrentInstance();if(!r||r.isMounted)throw new Error("useHydrateOnInteraction must be called from the setup method.");const o=vue.unref(a);vue.onMounted(()=>{const s=getRootElements(r),i=s.length>1?s[0].parentElement||document:s[0],l={capture:!0,once:!1,passive:!0},u=c=>{c.stopPropagation();const d=c.composedPath&&c.composedPath()||c.path;if(!d){let v=c.target;for(;v;){if(s.includes(v)){n();return}if(v===i)return;v=v.parentElement}return}s.forEach(v=>{d.includes(v)&&n()})};o.forEach(c=>{i.addEventListener(c,u,l)}),t(()=>{o.forEach(c=>{i.removeEventListener(c,u,l)})})})}function useHydrateWhenTriggered({willPerformHydration:e,hydrate:n,onCleanup:t},a){if(!e)return;if(!vue.getCurrentInstance())throw new Error("useHydrateWhenTriggered must be called from the setup or lifecycle hook methods.");const r=vue.watch(vue.isRef(a)?a:()=>a,o=>{o&&n()},{immediate:!0});t(r)}const observers=new Map;function createHydrationObserver(e){const n=typeof IntersectionObserver<"u";if(!n)return{supported:n};const t=JSON.stringify(e);if(observers.has(t))return{supported:n,observer:observers.get(t)};const a=new IntersectionObserver(r=>{r.forEach(o=>{!(o.isIntersecting||o.intersectionRatio>0)||!o.target.hydrate||o.target.hydrate()})},e);return observers.set(t,a),{supported:n,observer:a}}function useHydrateWhenVisible({willPerformHydration:e,hydrate:n,onCleanup:t},a){if(!e)return;const r=vue.getCurrentInstance();if(!r||r.isMounted)throw new Error("useHydrateWhenVisible must be called from the setup method.");const{supported:o,observer:s}=createHydrationObserver(a);if(!o){n();return}vue.onMounted(()=>{const i=getRootElements(r);i.forEach(l=>{l.hydrate=n,s.observe(l)}),t(()=>{i.forEach(l=>{delete l.hydrate,s.unobserve(l)})})})}const normalizeSlot=e=>e.length===1?e[0]:e,LazyHydrationWrapper=vue.defineComponent({name:"LazyHydrationWrapper",inheritAttrs:!1,suspensible:!1,props:{whenIdle:{default:!1,type:[Boolean,Number]},whenVisible:{default:!1,type:[Boolean,Object]},onInteraction:{default:!1,type:[Array,Boolean,String]},whenTriggered:{default:void 0,type:[Boolean,Object]}},emits:["hydrated"],setup(e,{slots:n,emit:t}){const a=useLazyHydration();if(!a.willPerformHydration)return()=>normalizeSlot(n.default());if(a.onHydrated(()=>t("hydrated")),e.whenIdle&&useHydrateWhenIdle(a,e.whenIdle!==!0?e.whenIdle:void 0),e.whenVisible&&useHydrateWhenVisible(a,e.whenVisible!==!0?e.whenVisible:void 0),e.onInteraction){let r;e.onInteraction!==!0&&(r=vue.computed(()=>Array.isArray(e.onInteraction)?e.onInteraction:[e.onInteraction]).value),useHydrateOnInteraction(a,r)}return e.whenTriggered!==void 0&&useHydrateWhenTriggered(a,vue.toRef(e,"whenTriggered")),()=>normalizeSlot(n.default())}}),LazyHydrationWrapper$1=vue.markRaw(LazyHydrationWrapper),_sfc_main$1x={name:"VsFooterNavList",status:"prototype",release:"0.0.1",components:{VsAccordion,VsRow:LoadingSpinner.VsRow,VsContainer:LoadingSpinner.VsContainer,LazyHydrationWrapper:LazyHydrationWrapper$1},props:{breakPoint:{type:String,default:null,validator:e=>e.match(/(xs|sm|md|lg|xl|xxl)/)}}},_hoisted_1$1b={class:"vs-footer-nav-list"};function _sfc_render$1i(e,n,t,a,r,o){const s=vue.resolveComponent("VsRow"),i=vue.resolveComponent("VsAccordion"),l=vue.resolveComponent("LazyHydrationWrapper"),u=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createBlock(u,{class:"vs-footer-nav-list","data-test":"vs-footer-nav-list"},{default:vue.withCtx(()=>[vue.createVNode(l,{"on-interaction":["focus","click"]},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$1b,[vue.createVNode(i,{"break-point":t.breakPoint},{default:vue.withCtx(()=>[vue.createVNode(s,null,{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3})]),_:3},8,["break-point"])])]),_:3})]),_:3})}const VsFooterNavList=LoadingSpinner._export_sfc(_sfc_main$1x,[["render",_sfc_render$1i]]),_sfc_main$1w={name:"VsFooter",status:"prototype",release:"0.1.0",components:{VsFooterNavList,VsCol:LoadingSpinner.VsCol,VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow}},_hoisted_1$1a={class:"vs-footer pt-150 pt-md-300","data-unique-id":"vs-footer",id:"site-footer"},_hoisted_2$R={class:"vs-footer__social-menu-wrapper"};function _sfc_render$1h(e,n,t,a,r,o){const s=vue.resolveComponent("VsCol"),i=vue.resolveComponent("VsFooterNavList"),l=vue.resolveComponent("VsRow"),u=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("footer",_hoisted_1$1a,[vue.createVNode(i,{"break-point":"md"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"accordion-items"),vue.createVNode(s,{cols:"12",lg:"3",xl:"2",class:"d-none d-lg-block","data-unique-id":"vs-footer-social_links"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"social-menu")]),_:3})]),_:3}),vue.createElementVNode("div",_hoisted_2$R,[vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.createVNode(s,{cols:"12",class:"d-block d-lg-none","data-unique-id":"vs-footer-mobile_social_links"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"social-menu")]),_:3})]),_:3})]),_:3})]),vue.renderSlot(e.$slots,"default")])}const Footer=LoadingSpinner._export_sfc(_sfc_main$1w,[["render",_sfc_render$1h]]),_sfc_main$1v={name:"VsFooterAccordionItem",status:"prototype",release:"0.0.1",components:{VsAccordionItem},props:{controlId:{type:String,required:!0},itemBreakPoint:{type:String,default:e=>e.breakPoint,validator:e=>e.match(/(xs|sm|md|lg|xl|xxl)/)},openByDefault:{type:Boolean,default:!1},title:{type:String,required:!0},variant:{type:String,default:"primary"}},computed:{getUniqueId(){let e=this.title.toLowerCase();return e=e.replace(/\s+/g,"-"),`vs-footer-${e}`}}};function _sfc_render$1g(e,n,t,a,r,o){const s=vue.resolveComponent("VsAccordionItem");return vue.openBlock(),vue.createBlock(s,{class:"vs-footer-accordion-item mb-md-150","data-test":"vs-footer-accordion-item","data-unique-id":o.getUniqueId,"control-id":t.controlId,"item-break-point":t.itemBreakPoint,"open-by-default":t.openByDefault,variant:t.variant},{title:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.title),1)]),"icon-open":vue.withCtx(()=>[vue.renderSlot(e.$slots,"icon-open")]),"icon-closed":vue.withCtx(()=>[vue.renderSlot(e.$slots,"icon-closed")]),default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},8,["data-unique-id","control-id","item-break-point","open-by-default","variant"])}const FooterAccordionItem=LoadingSpinner._export_sfc(_sfc_main$1v,[["render",_sfc_render$1g]]),_sfc_main$1u={name:"VsFooterNavListItem",status:"prototype",release:"0.0.1",components:{VsLink},props:{href:{type:String,default:null},type:{type:String,default:"default",validator:e=>e.match(/(default|external|internal|download)/)},linkText:{type:String,default:""}}},_hoisted_1$19={class:"vs-footer-nav-list-item","data-test":"vs-footer-nav-list-item",role:"menuitem"};function _sfc_render$1f(e,n,t,a,r,o){const s=vue.resolveComponent("VsLink");return vue.openBlock(),vue.createElementBlock("li",_hoisted_1$19,[vue.createVNode(s,{href:t.href,type:t.type,variant:"on-dark","data-test":"vs-footer-nav-list-item__link"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.linkText),1)]),_:1},8,["href","type"])])}const FooterNavListItem=LoadingSpinner._export_sfc(_sfc_main$1u,[["render",_sfc_render$1f]]),_sfc_main$1t={name:"VsList",status:"prototype",release:"0.0.1",props:{ordered:{type:Boolean,default:!1},unstyled:{type:Boolean,default:!1},inline:{type:Boolean,default:!1}}};function _sfc_render$1e(e,n,t,a,r,o){return vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(t.ordered?"ol":"ul"),vue.mergeProps({class:["vs-list",{"vs-list--unstyled":t.unstyled,"vs-list--inline":t.inline,"vs-list--ordered":t.ordered}]},e.$attrs),{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},16,["class"])}const VsList=LoadingSpinner._export_sfc(_sfc_main$1t,[["render",_sfc_render$1e]]),_sfc_main$1s={name:"VsFooterSocialMenu",status:"prototype",release:"0.0.1",components:{VsList,VsHeading:LoadingSpinner.VsHeading}},_hoisted_1$18={class:"vs-footer-social-menu px-0 py-150 py-md-200 py-lg-0 px-lg-075","data-test":"vs-footer-social-menu"};function _sfc_render$1d(e,n,t,a,r,o){const s=vue.resolveComponent("VsHeading"),i=vue.resolveComponent("VsList");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$18,[vue.createVNode(s,{level:"2","heading-style":"heading-xxs",class:"vs-footer-social-menu__title"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"title")]),_:3}),vue.createVNode(i,{unstyled:"",class:"mt-125 mt-md-0 mt-lg-125 pe-lg-400 pe-xl-300"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3})])}const FooterSocialMenu=LoadingSpinner._export_sfc(_sfc_main$1s,[["render",_sfc_render$1d]]),_sfc_main$1r={name:"VsFooterSocialItem",status:"prototype",release:"0.0.1",components:{VsLink,VsIcon:LoadingSpinner.VsIcon},mixins:[LoadingSpinner.dataLayerMixin],props:{href:{type:String,required:!0},icon:{type:String,required:!0},ariaLabelOverride:{type:String,default:""}}},_hoisted_1$17={class:"vs-footer-social-item","data-test":"vs-footer-social-item"};function _sfc_render$1c(e,n,t,a,r,o){const s=vue.resolveComponent("VsIcon"),i=vue.resolveComponent("VsLink");return vue.openBlock(),vue.createElementBlock("li",_hoisted_1$17,[vue.createVNode(i,{"data-test":"vs-footer-social-item__link",href:t.href,type:"external","aria-label":t.ariaLabelOverride?t.ariaLabelOverride:t.icon,"data-layer-value":"socialMediaExternalLinkDataEvent"},{default:vue.withCtx(()=>[vue.createVNode(s,{icon:t.icon,variant:"inverse",size:"sm"},null,8,["icon"])]),_:1},8,["href","aria-label"])])}const FooterSocialItem=LoadingSpinner._export_sfc(_sfc_main$1r,[["render",_sfc_render$1c]]),_sfc_main$1q={name:"VsFooterUtilityList",status:"prototype",release:"0.0.1",components:{VsList,VsRow:LoadingSpinner.VsRow,VsContainer:LoadingSpinner.VsContainer,VsCol:LoadingSpinner.VsCol}},_hoisted_1$16={class:"vs-footer-utility-list","data-test":"vs-footer-utility-list","data-unique-id":"vs-footer-utility_links"};function _sfc_render$1b(e,n,t,a,r,o){const s=vue.resolveComponent("VsList"),i=vue.resolveComponent("VsCol"),l=vue.resolveComponent("VsRow"),u=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$16,[vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.createVNode(i,{cols:"12",sm:"7",md:"12"},{default:vue.withCtx(()=>[vue.createVNode(s,{unstyled:"",role:"menu"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3})]),_:3})]),_:3})]),_:3})])}const FooterUtilityList=LoadingSpinner._export_sfc(_sfc_main$1q,[["render",_sfc_render$1b]]);function commonjsRequire(e){throw new Error('Could not dynamically require "'+e+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var dist$3={exports:{}},interopRequireDefault={exports:{}};(function(e){function n(t){return t&&t.__esModule?t:{default:t}}e.exports=n,e.exports.__esModule=!0,e.exports.default=e.exports})(interopRequireDefault);var interopRequireDefaultExports=interopRequireDefault.exports,_extends$1={exports:{}},hasRequired_extends;function require_extends(){return hasRequired_extends||(hasRequired_extends=1,function(e){function n(){return e.exports=n=Object.assign?Object.assign.bind():function(t){for(var a=1;a<arguments.length;a++){var r=arguments[a];for(var o in r)({}).hasOwnProperty.call(r,o)&&(t[o]=r[o])}return t},e.exports.__esModule=!0,e.exports.default=e.exports,n.apply(null,arguments)}e.exports=n,e.exports.__esModule=!0,e.exports.default=e.exports}(_extends$1)),_extends$1.exports}var objectWithoutPropertiesLoose={exports:{}},hasRequiredObjectWithoutPropertiesLoose;function requireObjectWithoutPropertiesLoose(){return hasRequiredObjectWithoutPropertiesLoose||(hasRequiredObjectWithoutPropertiesLoose=1,function(e){function n(t,a){if(t==null)return{};var r={};for(var o in t)if({}.hasOwnProperty.call(t,o)){if(a.indexOf(o)!==-1)continue;r[o]=t[o]}return r}e.exports=n,e.exports.__esModule=!0,e.exports.default=e.exports}(objectWithoutPropertiesLoose)),objectWithoutPropertiesLoose.exports}var path$2={exports:{}},util$3={},isBufferBrowser$1,hasRequiredIsBufferBrowser$1;function requireIsBufferBrowser$1(){return hasRequiredIsBufferBrowser$1||(hasRequiredIsBufferBrowser$1=1,isBufferBrowser$1=function(n){return n&&typeof n=="object"&&typeof n.copy=="function"&&typeof n.fill=="function"&&typeof n.readUInt8=="function"}),isBufferBrowser$1}var inherits_browser$1={exports:{}},hasRequiredInherits_browser$1;function requireInherits_browser$1(){return hasRequiredInherits_browser$1||(hasRequiredInherits_browser$1=1,typeof Object.create=="function"?inherits_browser$1.exports=function(n,t){n.super_=t,n.prototype=Object.create(t.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}})}:inherits_browser$1.exports=function(n,t){n.super_=t;var a=function(){};a.prototype=t.prototype,n.prototype=new a,n.prototype.constructor=n}),inherits_browser$1.exports}var hasRequiredUtil$1;function requireUtil$1(){return hasRequiredUtil$1||(hasRequiredUtil$1=1,function(e){var n={},t=/%[sdj%]/g;e.format=function(V){if(!S(V)){for(var L=[],T=0;T<arguments.length;T++)L.push(o(arguments[T]));return L.join(" ")}for(var T=1,F=arguments,Y=F.length,w=String(V).replace(t,function(E){if(E==="%%")return"%";if(T>=Y)return E;switch(E){case"%s":return String(F[T++]);case"%d":return Number(F[T++]);case"%j":try{return JSON.stringify(F[T++])}catch{return"[Circular]"}default:return E}}),N=F[T];T<Y;N=F[++T])g(N)||!$(N)?w+=" "+N:w+=" "+o(N);return w},e.deprecate=function(V,L){if(C(LoadingSpinner.commonjsGlobal.process))return function(){return e.deprecate(V,L).apply(this,arguments)};if(process.noDeprecation===!0)return V;var T=!1;function F(){if(!T){if(process.throwDeprecation)throw new Error(L);process.traceDeprecation?console.trace(L):console.error(L),T=!0}return V.apply(this,arguments)}return F};var a={},r;e.debuglog=function(V){if(C(r)&&(r=n.NODE_DEBUG||""),V=V.toUpperCase(),!a[V])if(new RegExp("\\b"+V+"\\b","i").test(r)){var L=process.pid;a[V]=function(){var T=e.format.apply(e,arguments);console.error("%s %d: %s",V,L,T)}}else a[V]=function(){};return a[V]};function o(V,L){var T={seen:[],stylize:i};return arguments.length>=3&&(T.depth=arguments[2]),arguments.length>=4&&(T.colors=arguments[3]),m(L)?T.showHidden=L:L&&e._extend(T,L),C(T.showHidden)&&(T.showHidden=!1),C(T.depth)&&(T.depth=2),C(T.colors)&&(T.colors=!1),C(T.customInspect)&&(T.customInspect=!0),T.colors&&(T.stylize=s),u(T,V,T.depth)}e.inspect=o,o.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},o.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function s(V,L){var T=o.styles[L];return T?"\x1B["+o.colors[T][0]+"m"+V+"\x1B["+o.colors[T][1]+"m":V}function i(V,L){return V}function l(V){var L={};return V.forEach(function(T,F){L[T]=!0}),L}function u(V,L,T){if(V.customInspect&&L&&M(L.inspect)&&L.inspect!==e.inspect&&!(L.constructor&&L.constructor.prototype===L)){var F=L.inspect(T,V);return S(F)||(F=u(V,F,T)),F}var Y=c(V,L);if(Y)return Y;var w=Object.keys(L),N=l(w);if(V.showHidden&&(w=Object.getOwnPropertyNames(L)),A(L)&&(w.indexOf("message")>=0||w.indexOf("description")>=0))return d(L);if(w.length===0){if(M(L)){var E=L.name?": "+L.name:"";return V.stylize("[Function"+E+"]","special")}if(B(L))return V.stylize(RegExp.prototype.toString.call(L),"regexp");if(P(L))return V.stylize(Date.prototype.toString.call(L),"date");if(A(L))return d(L)}var R="",D=!1,z=["{","}"];if(p(L)&&(D=!0,z=["[","]"]),M(L)){var U=L.name?": "+L.name:"";R=" [Function"+U+"]"}if(B(L)&&(R=" "+RegExp.prototype.toString.call(L)),P(L)&&(R=" "+Date.prototype.toUTCString.call(L)),A(L)&&(R=" "+d(L)),w.length===0&&(!D||L.length==0))return z[0]+R+z[1];if(T<0)return B(L)?V.stylize(RegExp.prototype.toString.call(L),"regexp"):V.stylize("[Object]","special");V.seen.push(L);var H;return D?H=v(V,L,T,N,w):H=w.map(function(J){return f(V,L,T,N,J,D)}),V.seen.pop(),h(H,R,z)}function c(V,L){if(C(L))return V.stylize("undefined","undefined");if(S(L)){var T="'"+JSON.stringify(L).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return V.stylize(T,"string")}if(b(L))return V.stylize(""+L,"number");if(m(L))return V.stylize(""+L,"boolean");if(g(L))return V.stylize("null","null")}function d(V){return"["+Error.prototype.toString.call(V)+"]"}function v(V,L,T,F,Y){for(var w=[],N=0,E=L.length;N<E;++N)W(L,String(N))?w.push(f(V,L,T,F,String(N),!0)):w.push("");return Y.forEach(function(R){R.match(/^\d+$/)||w.push(f(V,L,T,F,R,!0))}),w}function f(V,L,T,F,Y,w){var N,E,R;if(R=Object.getOwnPropertyDescriptor(L,Y)||{value:L[Y]},R.get?R.set?E=V.stylize("[Getter/Setter]","special"):E=V.stylize("[Getter]","special"):R.set&&(E=V.stylize("[Setter]","special")),W(F,Y)||(N="["+Y+"]"),E||(V.seen.indexOf(R.value)<0?(g(T)?E=u(V,R.value,null):E=u(V,R.value,T-1),E.indexOf(`
151
151
  `)>-1&&(w?E=E.split(`
152
152
  `).map(function(D){return" "+D}).join(`
153
153
  `).substr(2):E=`