@visitscotland/component-library 5.49.0 → 5.51.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.
- package/LICENSE.txt +21 -21
- package/dist/components/{deprecated-Cl9osRH8.js → deprecated-BJ2e68Yo.js} +12 -12
- package/dist/components/deprecated-SV4OJNeR.mjs +16 -0
- package/dist/components/{highland-cow-BiKfZg7L.mjs → highland-cow-6AoCzBpF.mjs} +14 -14
- package/dist/components/{highland-cow-CRm5ANrL.js → highland-cow-DlMGnebG.js} +14 -14
- package/dist/components/{iCentre-DV4_tr7d.mjs → iCentre-BLimkPxI.mjs} +42 -42
- package/dist/components/{iCentre-BeepnBTk.js → iCentre-BnLcpIw8.js} +42 -42
- package/dist/components/{os-logo-maps-B7DKWN7s.mjs → os-logo-maps-DUN8X-lQ.mjs} +9 -9
- package/dist/components/{os-logo-maps-CF9QEvIX.js → os-logo-maps-QXAuept_.js} +9 -9
- package/dist/components/{os-logo-maps-white-DOUatF7F.js → os-logo-maps-white-BTtf_Eki.js} +6 -6
- package/dist/components/{os-logo-maps-white-Dl0tLZD_.mjs → os-logo-maps-white-SKYtuD6d.mjs} +6 -6
- package/dist/components/{prototype-ggLuAMuB.js → prototype-DQocvgQh.js} +12 -12
- package/dist/components/{prototype-8NKYzK-s.mjs → prototype-lvwJzV8T.mjs} +13 -13
- package/dist/components/ready-CWPx4e9A.mjs +15 -0
- package/dist/components/{ready-DSUouF6L.js → ready-D9pdKFkx.js} +11 -11
- package/dist/components/{review-Bi0lAugE.js → review-7L3On10m.js} +11 -11
- package/dist/components/{review-B3KwWYuP.mjs → review-CknihZl_.mjs} +11 -11
- package/dist/components/src/components/form/Form.vue.d.ts +4 -10
- package/dist/components/src/components/select/Select.vue.d.ts +14 -14
- package/dist/components/style.css +1 -1
- package/dist/components/{visitscotland-logo-BA7LkUJw.mjs → visitscotland-logo-BEiiuSpo.mjs} +3 -3
- package/dist/components/{visitscotland-logo-yAzNpi5x.js → visitscotland-logo-NoymCLtN.js} +3 -3
- package/dist/components/vs-component-library.js +103 -103
- package/dist/components/vs-component-library.mjs +116 -115
- package/package.json +205 -205
- package/dist/components/deprecated-B3DbN99Y.mjs +0 -16
- package/dist/components/ready-DQA4tUcz.mjs +0 -15
|
@@ -1,113 +1,113 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const vue=require("vue"),LoadingSpinner=require("./LoadingSpinner-Dp1LUhwe.js"),pinia=require("pinia"),_sfc_main$2D={name:"VsAccordion",status:"prototype",release:"0.0.1",provide(){return{breakPoint:this.breakPoint}},props:{breakPoint:{type:String,default:null,validator:e=>e.match(/(xs|sm|md|lg|xl|xxl)/)}}},_hoisted_1$21={class:"vs-accordion","data-test":"vs-accordion"};function _sfc_render$2k(e,n,t,o,a,r){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$21,[vue.renderSlot(e.$slots,"default")])}const VsAccordion=LoadingSpinner._export_sfc(_sfc_main$2D,[["render",_sfc_render$2k]]),_sfc_main$2C={name:"VsAccordionToggle",status:"prototype",release:"0.0.1",components:{VsButton:LoadingSpinner.VsButton},props:{variant:{type:String,default:"primary"},visible:{type:Boolean,default:!0}},emits:["toggle-panel"]},_hoisted_1$20={class:"vs-accordion-toggle__text"},_hoisted_2$1q={class:"vs-accordion-toggle__icon"};function _sfc_render$2j(e,n,t,o,a,r){const s=vue.resolveComponent("VsButton");return vue.openBlock(),vue.createBlock(s,{animate:!1,"aria-expanded":t.visible?"true":"false","aria-haspopup":"true",onClick:n[0]||(n[0]=i=>e.$emit("toggle-panel")),class:vue.normalizeClass(["vs-accordion-toggle clearfix",{"vs-accordion-toggle--open":t.visible}]),variant:t.variant,rounded:!1},{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_1$20,[vue.renderSlot(e.$slots,"default")]),vue.createElementVNode("span",_hoisted_2$1q,[t.visible?vue.renderSlot(e.$slots,"icon-open",{key:0}):vue.renderSlot(e.$slots,"icon-closed",{key:1})])]),_:3},8,["aria-expanded","class","variant"])}const VsAccordionToggle=LoadingSpinner._export_sfc(_sfc_main$2C,[["render",_sfc_render$2j]]),__default__$1={name:"VsDivider"},_sfc_main$2B=Object.assign(__default__$1,{props:{variant:{type:String,required:!1,validator:e=>e.match(/(primary|secondary|inverse)/),default:"primary"}},setup(e){const n=e;return(t,o)=>(vue.openBlock(),vue.createElementBlock("hr",{class:vue.normalizeClass(["vs-divider",n.variant?`vs-divider--variant-${n.variant}`:null]),"data-test":"vs-divider","aria-hidden":"true"},null,2))}}),_sfc_main$2A={name:"VsAccordionItem",status:"prototype",release:"0.0.1",components:{VsAccordionToggle,BCard:LoadingSpinner.rn,VsIcon:LoadingSpinner.VsIcon,BCardHeader:LoadingSpinner.an,BCardBody:LoadingSpinner.nn,VsHeading:LoadingSpinner.VsHeading,VsDivider:_sfc_main$2B},mixins:[LoadingSpinner.dataLayerMixin],inject:{breakPoint:{default:"lg"}},props:{colourBadge:{type:String,required:!1,default:""},controlId:{type:String,required:!0},headingLevel:{type:Number,default:2,validator:e=>LoadingSpinner.lodashExports.isNumber(e)?e>0&&e<7:e.match(/(1|2|3|4|5|6)/)},itemBreakPoint:{type:String,default(){return vue.inject("breakPoint","lg")},validator:e=>e.match(/(xs|sm|md|lg|xl|xxl)/)},openByDefault:{type:Boolean,default:!1},variant:{type:String,default:"subtle"}},data(){return{show:this.openByDefault}},computed:{toggleAccordionBtn(){return this.itemBreakPoint?this.itemBreakPoint==="xs"?"d-none":`d-${this.itemBreakPoint}-none`:"d-flex"},toggleResponsiveItem(){return this.itemBreakPoint?this.itemBreakPoint==="xs"?"d-block":`d-${this.itemBreakPoint}-block`:""}},methods:{onButtonClick(){this.show||this.createDataLayerObject("accordionOpenEvent",{accordion_text:this.$refs["accordion-toggle"].$el.innerText}),this.show=!this.show}}};function _sfc_render$2i(e,n,t,o,a,r){const s=vue.resolveComponent("VsIcon"),i=vue.resolveComponent("VsAccordionToggle"),l=vue.resolveComponent("VsHeading"),u=vue.resolveComponent("BCardHeader"),c=vue.resolveComponent("BCardBody"),d=vue.resolveComponent("VsDivider"),v=vue.resolveComponent("BCard");return vue.openBlock(),vue.createBlock(v,{"no-body":"",class:vue.normalizeClass(["vs-accordion-item",r.breakPoint?"vs-accordion-item__responsive":""]),"data-test":"vs-accordion__item"},{default:vue.withCtx(()=>[vue.createVNode(u,{class:"vs-accordion-item__card-header","data-test":"vs-accordion__item-header"},{default:vue.withCtx(()=>[vue.createVNode(i,{"aria-controls":t.controlId,visible:a.show,variant:t.variant,class:vue.normalizeClass(r.toggleAccordionBtn),onTogglePanel:r.onButtonClick,ref:"accordion-toggle"},{"icon-open":vue.withCtx(()=>[vue.renderSlot(e.$slots,"icon-open",{},()=>[vue.createVNode(s,{icon:"vs-icon-control-collapse",size:"xs"})])]),"icon-closed":vue.withCtx(()=>[vue.renderSlot(e.$slots,"icon-closed",{},()=>[vue.createVNode(s,{icon:"vs-icon-control-expand",size:"xs"})])]),default:vue.withCtx(()=>[t.colourBadge?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:"vs-accordion-item__card-colour-badge","data-test":"vs-accordion-item__card-colour-badge",style:vue.normalizeStyle(`background-color: ${t.colourBadge}`)},null,4)):vue.createCommentVNode("",!0),vue.renderSlot(e.$slots,"title")]),_:3},8,["aria-controls","visible","variant","class","onTogglePanel"]),vue.createVNode(l,{level:t.headingLevel,"heading-style":"heading-xxs",class:vue.normalizeClass(["d-none vs-accordion-item__title",r.toggleResponsiveItem]),"data-test":"vs-accordion__item-title"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"title")]),_:3},8,["level","class"])]),_:3}),vue.withDirectives(vue.createVNode(c,{id:t.controlId,class:vue.normalizeClass(["vs-accordion-item__panel",r.toggleResponsiveItem]),"data-test":"vs-accordion__item-body"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},8,["id","class"]),[[vue.vShow,a.show]]),vue.createVNode(d,{class:"my-025"})]),_:3},8,["class"])}const VsAccordionItem=LoadingSpinner._export_sfc(_sfc_main$2A,[["render",_sfc_render$2i]]),_sfc_main$2z={name:"VsAddress",status:"prototype",release:"0.1.0",components:{VsIcon:LoadingSpinner.VsIcon}},_hoisted_1$1$={class:"vs-address","data-test":"vs-address"},_hoisted_2$1p={class:"vs-address__address-box"};function _sfc_render$2h(e,n,t,o,a,r){const s=vue.resolveComponent("VsIcon");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1$,[vue.createVNode(s,{icon:"fa-regular fa-location-dot",class:"vs-address__map-marker me-050"}),vue.createElementVNode("address",_hoisted_2$1p,[vue.renderSlot(e.$slots,"default")])])}const Address=LoadingSpinner._export_sfc(_sfc_main$2z,[["render",_sfc_render$2h]]),_sfc_main$2y={name:"VsAlert",status:"prototype",release:"0.1.0",components:{VsIcon:LoadingSpinner.VsIcon}},_hoisted_1$1_={class:"vs-alert","data-test":"vs-alert"},_hoisted_2$1o={class:"vs-alert__icon-holder"},_hoisted_3$14={class:"vs-alert__content-wrapper"},_hoisted_4$N={class:"vs-alert__content"};function _sfc_render$2g(e,n,t,o,a,r){const s=vue.resolveComponent("VsIcon");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1_,[vue.createElementVNode("div",_hoisted_2$1o,[vue.createVNode(s,{class:"vs-alert__icon",icon:"vs-icon-feedback-information",variant:"inverse"})]),vue.createElementVNode("div",_hoisted_3$14,[vue.createElementVNode("div",_hoisted_4$N,[vue.renderSlot(e.$slots,"default")])])])}const VsAlert=LoadingSpinner._export_sfc(_sfc_main$2y,[["render",_sfc_render$2g]]),_sfc_main$2x={name:"VsArticle",status:"prototype",release:"0.0.1",components:{VsCol:LoadingSpinner.VsCol,VsRow:LoadingSpinner.VsRow,VsContainer:LoadingSpinner.VsContainer,VsHeading:LoadingSpinner.VsHeading,VsBody:LoadingSpinner.VsBody},props:{title:{type:String,required:!0},anchorLink:{type:String,default:""},businessSupport:{type:Boolean,default:!1},headingLevel:{type:Number,default:2,validator:e=>LoadingSpinner.lodashExports.isNumber(e)?e>0&&e<7:e.match(/(1|2|3|4|5|6)/)},headingStyle:{type:String,default:"heading-xl",validator:e=>e.match(/(display-m|display-s|heading-xl|heading-l|heading-m|heading-s|heading-xs|heading-xxs|heading-xxxs)/)}}},_hoisted_1$1Z=["id"],_hoisted_2$1n={class:"vs-article__content"};function _sfc_render$2f(e,n,t,o,a,r){const s=vue.resolveComponent("VsHeading"),i=vue.resolveComponent("VsBody"),l=vue.resolveComponent("VsCol"),u=vue.resolveComponent("VsRow"),c=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("article",vue.mergeProps({class:"vs-article","data-test":"vs-article"},e.$attrs),[vue.createVNode(c,null,{default:vue.withCtx(()=>[vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(l,{cols:"12",class:vue.normalizeClass(t.businessSupport?null:"col-xxl-10 offset-xxl-1")},{default:vue.withCtx(()=>[vue.createElementVNode("div",{class:vue.normalizeClass(["vs-article__wrapper mb-300 mb-md-500",t.businessSupport?"vs-article__wrapper--no-border":null])},[t.businessSupport?vue.createCommentVNode("",!0):vue.renderSlot(e.$slots,"vs-article-img",{key:0}),vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(l,{cols:"12",md:"10","offset-md":t.businessSupport?null:"1"},{default:vue.withCtx(()=>[vue.createElementVNode("div",{class:vue.normalizeClass(["vs-article__header mx-md-0 mt-300 mt-lg-500",t.businessSupport?null:"mx-150"])},[vue.createVNode(s,{level:t.headingLevel,"heading-style":t.headingStyle,class:vue.normalizeClass(["mb-200 mb-lg-300",t.businessSupport?null:"text-center"])},{default:vue.withCtx(()=>[vue.createElementVNode("span",{id:t.anchorLink?t.anchorLink:""},vue.toDisplayString(t.title),9,_hoisted_1$1Z)]),_:1},8,["level","heading-style","class"]),e.$slots["vs-article-intro"]?(vue.openBlock(),vue.createBlock(i,{key:0,variant:"lead",class:vue.normalizeClass(["mb-300 mb-lg-400",t.businessSupport?null:"text-center"])},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-article-intro")]),_:3},8,["class"])):vue.createCommentVNode("",!0)],2),t.businessSupport&&e.$slots["vs-article-img"]?(vue.openBlock(),vue.createBlock(l,{key:0,class:"mb-300",cols:"7"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-article-img")]),_:3})):vue.createCommentVNode("",!0),vue.createElementVNode("div",_hoisted_2$1n,[vue.renderSlot(e.$slots,"default")])]),_:3},8,["offset-md"])]),_:3})],2)]),_:3},8,["class"])]),_:3})]),_:3})],16)}const Article=LoadingSpinner._export_sfc(_sfc_main$2x,[["render",_sfc_render$2f]]),_sfc_main$2w={name:"VsArticleSection",status:"prototype",release:"0.0.1",components:{VsCol:LoadingSpinner.VsCol,VsRow:LoadingSpinner.VsRow,VsBody:LoadingSpinner.VsBody},props:{sidebarAlign:{type:String,default:"left",validator:e=>e.match(/(left|right)/)},businessSupport:{type:Boolean,default:!1}},computed:{sidebarAlignClass(){return this.sidebarAlign==="right"?"vs-article-section--sidebar-right":"vs-article-section--sidebar-left"},hasSidebarSlot(){return!!this.$slots["article-sidebar"]}}};function _sfc_render$2e(e,n,t,o,a,r){const s=vue.resolveComponent("VsCol"),i=vue.resolveComponent("VsBody"),l=vue.resolveComponent("VsRow");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-article-section mb-200 mb-md-400",r.sidebarAlignClass]),"data-test":"vs-article-section"},[vue.createVNode(l,null,{default:vue.withCtx(()=>[r.hasSidebarSlot?(vue.openBlock(),vue.createBlock(s,{key:0,cols:"12",md:"5",xl:"4","data-test":"vs-article-section__sidebar",class:vue.normalizeClass(["col-xxl-4",t.sidebarAlign==="right"?"pe-md-0":"ps-md-0"]),"offset-xl":t.sidebarAlign==="right"?"1":null,"order-md":t.sidebarAlign==="right"?"2":null,order:t.businessSupport?"2":null},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"article-sidebar")]),_:3},8,["class","offset-xl","order-md","order"])):vue.createCommentVNode("",!0),vue.createVNode(s,{cols:"12",md:r.hasSidebarSlot?"7":"9","data-test":"vs-article-section__content","offset-xl":t.sidebarAlign==="left"?"1":""},{default:vue.withCtx(()=>[vue.createElementVNode("div",{class:vue.normalizeClass(["mx-md-0",!t.businessSupport&&"mx-150"])},[vue.createVNode(i,null,{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3})],2)]),_:3},8,["md","offset-xl"])]),_:3})],2)}const ArticleSection=LoadingSpinner._export_sfc(_sfc_main$2w,[["render",_sfc_render$2e]]),_sfc_main$2v={name:"VsArticleSidebar",status:"prototype",release:"0.0.1",props:{sidebarAlign:{type:String,default:"left",validator:e=>e.match(/(left|right)/)}},computed:{sidebarAlignClass(){return this.sidebarAlign==="right"?"vs-article-sidebar--right":"vs-article-sidebar--left"}}};function _sfc_render$2d(e,n,t,o,a,r){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-article-sidebar",r.sidebarAlignClass]),"data-test":"vs-article-sidebar"},[e.$slots["vs-article-sidebar-img"]&&e.$slots["vs-article-sidebar-img"]()?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass([e.$slots["vs-article-sidebar-quote"]&&e.$slots["vs-article-sidebar-quote"]()?"pb-200":"","vs-article-sidebar__img-wrapper"])},[vue.renderSlot(e.$slots,"vs-article-sidebar-img")],2)):vue.createCommentVNode("",!0),e.$slots["vs-article-sidebar-quote"]&&e.$slots["vs-article-sidebar-quote"]()?(vue.openBlock(),vue.createElementBlock("div",{key:1,class:vue.normalizeClass([e.$slots["vs-article-sidebar-img"]&&e.$slots["vs-article-sidebar-img"]()?"pt-0":"","vs-article-sidebar__quote-wrapper"])},[vue.renderSlot(e.$slots,"vs-article-sidebar-quote")],2)):vue.createCommentVNode("",!0)],2)}const ArticleSidebar=LoadingSpinner._export_sfc(_sfc_main$2v,[["render",_sfc_render$2d]]),_hoisted_1$1Y={class:"vs-back-to-top","data-test":"vs-back-to-top"},_sfc_main$2u={__name:"BackToTop",props:{buttonText:{type:String,required:!0},offset:{type:Number,default:100}},setup(e){const n=e,t=vue.ref(!1),o=()=>{const r=document.documentElement;(window.scrollY||r.scrollTop)-(r.clientTop||0)>n.offset?t.value=!0:t.value=!1},a=r=>{window.scroll({top:0,behavior:"smooth"}),r.target.blur()};return vue.onMounted(()=>{window.addEventListener("scroll",o)}),vue.onUnmounted(()=>{window.removeEventListener("scroll",o)}),(r,s)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1Y,[t.value?(vue.openBlock(),vue.createBlock(LoadingSpinner.VsButton,{key:0,icon:"vs-icon-control-back-to-top","icon-only":"",variant:"secondary",onClick:a},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(n.buttonText),1)]),_:1})):vue.createCommentVNode("",!0)]))}},_sfc_main$2t={name:"VsBadge",status:"prototype",release:"0.0.1",components:{BBadge:LoadingSpinner.ci},props:{variant:{type:String,default:"default",validator:e=>e.match(/(default|subtle|information|highlight)/)}},computed:{badgeClasses(){return[`vs-badge--${this.variant}`,"vs-badge"]}}};function _sfc_render$2c(e,n,t,o,a,r){const s=vue.resolveComponent("BBadge");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(r.badgeClasses),"data-test":"vs-badge"},[vue.createVNode(s,null,{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3})],2)}const VsBadge=LoadingSpinner._export_sfc(_sfc_main$2t,[["render",_sfc_render$2c]]),cookieMixin={computed:{selectedLanguage(){return this.language.substr(0,2).toUpperCase()},localeCookie(){return this.language.replace("_","-").toLowerCase()},translationCookie(){return`/en/${this.language.substr(0,2).toLowerCase()}`}},methods:{cookieExists(e){return document.cookie.indexOf(`${e}=`)>=0},setCookie(e,n,t,o=!1){let a="";if(a=`${e}=${n};`,a+="path=/;",t&&!o){const r=new Date;r.setFullYear(r.getFullYear()+1),a+=`expires=${r};`}document.cookie=a}}},_sfc_main$2s={name:"VsBanner",status:"prototype",release:"0.0.1",components:{VsButton:LoadingSpinner.VsButton,VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,VsBody:LoadingSpinner.VsBody,VsIcon:LoadingSpinner.VsIcon},mixins:[cookieMixin],props:{closeBtnText:{type:String,required:!0},dontShowAgain:{type:Boolean,default:!0}},data(){return{showBanner:!0}},mounted(){const e=this.cookieExists("vs_showbanner");this.showBanner=!e},methods:{hideBanner(){this.showBanner=!this.showBanner,this.dontShowAgain&&this.setHiddenCookie()},setHiddenCookie(){const e=this.cookieExists("vs_showbanner");this.setCookie("vs_showbanner",this.showBanner,!e,!0)}}},_hoisted_1$1X={key:0,class:"vs-banner","data-test":"vs-banner",role:"banner"},_hoisted_2$1m={key:0,class:"vs-banner__cta-link"};function _sfc_render$2b(e,n,t,o,a,r){const s=vue.resolveComponent("VsIcon"),i=vue.resolveComponent("VsCol"),l=vue.resolveComponent("VsBody"),u=vue.resolveComponent("VsRow"),c=vue.resolveComponent("VsButton"),d=vue.resolveComponent("VsContainer");return a.showBanner?(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1X,[vue.createVNode(d,null,{default:vue.withCtx(()=>[vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(i,{cols:"11",class:"vs-banner__content-wrapper"},{default:vue.withCtx(()=>[vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(i,{cols:"1",class:"vs-banner__icon-wrapper"},{default:vue.withCtx(()=>[vue.createVNode(s,{size:"sm",icon:"vs-icon-feedback-warning",class:"vs-banner__icon"})]),_:1}),vue.createVNode(i,{cols:"11"},{default:vue.withCtx(()=>[e.$slots["banner-text"]||e.$slots["banner-cta"]?(vue.openBlock(),vue.createBlock(l,{key:0,class:"vs-banner__text"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"banner-text"),e.$slots["banner-cta"]?(vue.openBlock(),vue.createElementBlock("span",_hoisted_2$1m,[vue.renderSlot(e.$slots,"banner-cta")])):vue.createCommentVNode("",!0)]),_:3})):vue.createCommentVNode("",!0)]),_:3})]),_:3})]),_:3}),vue.createVNode(i,{cols:"1"},{default:vue.withCtx(()=>[vue.createVNode(c,{class:"vs-banner__close-btn","data-test":"vs-banner__close-btn",variant:"subtle",icon:"vs-icon-control-dismiss",size:"md","icon-only":"",onClick:r.hideBanner},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.closeBtnText),1)]),_:1},8,["onClick"])]),_:1})]),_:3})]),_:3})])):vue.createCommentVNode("",!0)}const Banner=LoadingSpinner._export_sfc(_sfc_main$2s,[["render",_sfc_render$2b]]),_sfc_main$2r={name:"VsArticleDetails",status:"prototype",release:"0.0.1",components:{VsIcon:LoadingSpinner.VsIcon},props:{articleAuthor:{type:String,default:null},articlePublishDate:{type:String,default:null},articleReadTime:{type:String,default:null}},computed:{iconVariant(){return this.articleAuthor?"secondary":"highlight"}}},_hoisted_1$1W={key:0,class:"vs-article-details","data-test":"vs-article-details"},_hoisted_2$1l={key:0,class:"vs-article-details__author vs-article-details--highlight"},_hoisted_3$13={key:1,class:"vs-article-details__date"},_hoisted_4$M={key:0,class:"vs-article-details__divider"};function _sfc_render$2a(e,n,t,o,a,r){const s=vue.resolveComponent("VsIcon");return t.articleAuthor||t.articleReadTime||t.articlePublishDate?(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1W,[t.articleAuthor?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$1l,vue.toDisplayString(t.articleAuthor),1)):vue.createCommentVNode("",!0),t.articleReadTime||t.articlePublishDate?(vue.openBlock(),vue.createElementBlock("div",{key:1,"data-test":"vs-article-details__date-time",class:vue.normalizeClass(t.articleAuthor?"":"vs-article-details--highlight")},[t.articleReadTime?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createVNode(s,{icon:"fa-regular fa-clock",variant:r.iconVariant,class:"align-text-top me-050"},null,8,["variant"]),vue.createTextVNode(vue.toDisplayString(t.articleReadTime),1)],64)):vue.createCommentVNode("",!0),t.articlePublishDate?(vue.openBlock(),vue.createElementBlock("span",_hoisted_3$13,[t.articleReadTime?(vue.openBlock(),vue.createElementBlock("span",_hoisted_4$M,"•")):vue.createCommentVNode("",!0),vue.createTextVNode(" "+vue.toDisplayString(t.articlePublishDate),1)])):vue.createCommentVNode("",!0)],2)):vue.createCommentVNode("",!0)])):vue.createCommentVNode("",!0)}const ArticleDetails=LoadingSpinner._export_sfc(_sfc_main$2r,[["render",_sfc_render$2a]]),_sfc_main$2q={name:"VsBreadcrumb",status:"prototype",release:"0.0.1",components:{BBreadcrumb:LoadingSpinner.pi}},_hoisted_1$1V={"aria-label":"breadcrumbs",class:"vs-breadcrumb py-050"};function _sfc_render$29(e,n,t,o,a,r){const s=vue.resolveComponent("BBreadcrumb");return vue.openBlock(),vue.createElementBlock("nav",_hoisted_1$1V,[vue.createVNode(s,vue.mergeProps({class:"flex-nowrap p-0 mb-0"},e.$attrs),{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},16)])}const Breadcrumb=LoadingSpinner._export_sfc(_sfc_main$2q,[["render",_sfc_render$29]]),_sfc_main$2p={name:"VsBreadcrumbItem",status:"prototype",release:"0.0.1",components:{BBreadcrumbItem:LoadingSpinner.en},props:{href:{type:String,default:""},active:{type:Boolean,default:!1},ariaCurrent:{type:String,default:"page"},text:{type:String,default:"",required:!0}}};function _sfc_render$28(e,n,t,o,a,r){const s=vue.resolveComponent("BBreadcrumbItem");return vue.openBlock(),vue.createBlock(s,vue.mergeProps({class:"vs-breadcrumb-item",active:t.active,"aria-current":t.ariaCurrent,href:t.href,text:t.text},e.$attrs),null,16,["active","aria-current","href","text"])}const BreadcrumbItem=LoadingSpinner._export_sfc(_sfc_main$2p,[["render",_sfc_render$28]]);let currentURL="";typeof window<"u"&&(currentURL=window.location.href);const dmoAnalyticsLogic=e=>{let n=!1;const t=()=>!!currentURL.includes("/info"),o=r=>t()?{dmo_referral:r}:{type:"CMS referral",product:"Unclassified",dmo_referral:r};return(()=>{let r={};return e.srcElement.localName==="a"&&LoadingSpinner.dmoUrls.forEach(s=>{e.target.href.includes(s)&&(n=!0,r=o("True"))}),n||(r=o("False")),r})()},_sfc_main$2o={name:"VsLink",status:"prototype",release:"0.0.2",components:{VsIcon:LoadingSpinner.VsIcon},mixins:[LoadingSpinner.dataLayerMixin],props:{href:{type:String,default:null},type:{type:String,default:"default",validator:e=>e.match(/(default|external|internal|download)/)},variant:{type:String,default:"primary",validator:e=>e.match(/(primary|secondary|on-dark)/)},iconSize:{type:String,default:"xxs",validator:e=>e.match(/(xxs|xs|sm|md|lg|xl)/)},disabled:{type:Boolean,default:!1},dataLayerValue:{type:String,default:null},noVisitedStyles:{type:Boolean,default:!1}},computed:{linkClasses(){return["vs-link",`vs-link--variant-${this.variant}`,this.noVisitedStyles&&"vs-link--no-visited-styles"].filter(Boolean)},iconName(){let e="";switch(this.type){case"external":e="fa-regular fa-square-arrow-up-right";break;case"internal":e="fa-regular fa-arrow-right";break;case"download":e="vs-icon-control-download";break;default:e=""}return e},iconVariant(){let e="";switch(this.variant){case"secondary":e="primary";break;case"on-dark":e="inverse";break;default:e="cta"}return e}},methods:{clickHandler(e){e.preventDefault(),this.dataLayerValue?this.createDataLayerObject(this.dataLayerValue,e,this.href):this.type==="external"?(this.createDataLayerObject("cmsReferral",{referral_location:e.target.href,dmo_referral:dmoAnalyticsLogic(e).dmo_referral}),this.createDataLayerObject("externalLinkDataEvent",e,this.href)):this.createDataLayerObject("internalLinkDataEvent",e,this.href),setTimeout(()=>{this.navigateToUrl()},500)},navigateToUrl(){this.href!=="#"&&this.href!==null&&(window.location.href=this.href)},keyHandler(e){(e.keyCode===13||e.keyCode===32)&&(e.preventDefault(),this.clickHandler(e))}}},_hoisted_1$1U=["href","download","disabled","tabindex"];function _sfc_render$27(e,n,t,o,a,r){const s=vue.resolveComponent("VsIcon");return vue.openBlock(),vue.createElementBlock("a",vue.mergeProps({class:r.linkClasses,href:t.href,target:"_self",download:t.type==="download"?"true":null,disabled:t.disabled,tabindex:t.disabled?"-1":"0"},e.$attrs,{onClick:n[0]||(n[0]=i=>r.clickHandler(i)),onKeydown:n[1]||(n[1]=i=>r.keyHandler(i))}),[vue.renderSlot(e.$slots,"default"),t.type!=="default"?(vue.openBlock(),vue.createBlock(s,{key:0,icon:r.iconName,variant:r.iconVariant,size:t.iconSize,class:"ms-025 vs-link__icon"},null,8,["icon","variant","size"])):vue.createCommentVNode("",!0)],16,_hoisted_1$1U)}const VsLink=LoadingSpinner._export_sfc(_sfc_main$2o,[["render",_sfc_render$27]]),_sfc_main$2n={name:"VsCannedSearchProductCard",status:"prototype",release:"0.0.1",components:{VsImg:LoadingSpinner.VsImg,VsHeading:LoadingSpinner.VsHeading,VsLink,VsCol:LoadingSpinner.VsCol},inject:["slideCols","visibleSlides"],provide(){return{slideVisible:this.isVisible}},props:{searchType:{type:String,default:""},imgSrc:{required:!0,type:String},title:{required:!0,type:String},inBodyDuration:{type:Object,default:null},description:{type:String,default:""},detailLink:{type:Object,required:!0},slideIndex:{type:String,required:!0}},computed:{modCardBody(){return this.searchType==="even"||this.searchType==="cate"?"card-body--short":""},useGenericLqip(){return this.searchType==="tour"}},methods:{isVisible(){const e=parseInt(this.slideIndex,10);return this.visibleSlides.indexOf(e)>=0}}},_hoisted_1$1T={class:"vs-product-card__image-container"},_hoisted_2$1k={class:"vs-product-card__image-inner-container"},_hoisted_3$12={class:"vs-product-card__description"},_hoisted_4$L={key:0,class:"vs-product-card__description-inner"},_hoisted_5$y={class:"visually-hidden"},_hoisted_6$n={class:"vs-product-card__logos-container","data-chromatic":"ignore"};function _sfc_render$26(e,n,t,o,a,r){const s=vue.resolveComponent("VsImg"),i=vue.resolveComponent("VsLink"),l=vue.resolveComponent("VsHeading"),u=vue.resolveComponent("VsCol");return vue.openBlock(),vue.createBlock(u,{cols:r.slideCols.xs,sm:r.slideCols.sm,lg:r.slideCols.md,xl:r.slideCols.lg,class:"vs-carousel-slide__card","aria-disabled":!r.isVisible()},{default:vue.withCtx(()=>[vue.createElementVNode("div",{class:vue.normalizeClass(["vs-product-card",r.isVisible()?"":"vs-product-card--disabled"]),"data-test":"vs-product-card"},[vue.createElementVNode("section",vue.mergeProps({class:"card"},e.$attrs),[vue.createElementVNode("div",_hoisted_1$1T,[vue.createElementVNode("div",_hoisted_2$1k,[vue.createVNode(s,{src:t.imgSrc,alt:"",sizes:"(min-width: 768px) 50vw, 100vw","use-generic-lqip":r.useGenericLqip,class:"vs-product-card__img","data-test":"vs-product-card__img","data-chromatic":"ignore"},null,8,["src","use-generic-lqip"])]),vue.renderSlot(e.$slots,"vs-canned-search-badges")]),vue.createElementVNode("div",{class:vue.normalizeClass(["card-body",r.modCardBody])},[vue.createVNode(l,{level:"3","heading-style":"heading-xs",class:"card-title vs-product-card__title","data-test":"vs-product-card__title"},{default:vue.withCtx(()=>[vue.createVNode(i,{href:t.detailLink.link,class:"stretched-link vs-product-card__link","data-test":"vs-product-card__link",disabled:!r.isVisible()},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.title),1)]),_:1},8,["href","disabled"])]),_:1}),vue.renderSlot(e.$slots,"vs-canned-search-sub-heading"),vue.renderSlot(e.$slots,"vs-canned-search-star-rating"),vue.renderSlot(e.$slots,"vs-canned-search-categories"),vue.createElementVNode("div",_hoisted_3$12,[vue.renderSlot(e.$slots,"vs-canned-search-tour-info"),t.description?(vue.openBlock(),vue.createElementBlock("p",_hoisted_4$L,vue.toDisplayString(t.description),1)):vue.createCommentVNode("",!0),vue.createVNode(i,{href:t.detailLink.link,class:"vs-product-card__description-link",disabled:!r.isVisible()},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.detailLink.label)+" ",1),vue.createElementVNode("span",_hoisted_5$y,": "+vue.toDisplayString(t.title),1)]),_:1},8,["href","disabled"])])],2),vue.createElementVNode("div",_hoisted_6$n,[vue.renderSlot(e.$slots,"vs-canned-search-logos")])],16),vue.renderSlot(e.$slots,"vs-canned-search-summary")],2)]),_:3},8,["cols","sm","lg","xl","aria-disabled"])}const VsCannedSearchProductCard=LoadingSpinner._export_sfc(_sfc_main$2n,[["render",_sfc_render$26]]),_sfc_main$2m={name:"VsCannedSearchStars",status:"prototype",release:"0.0.1",props:{min:{type:Number,default:null},max:{type:Number,default:null}}},_hoisted_1$1S={class:"vs-canned-search-stars","data-test":"vs-canned-search-stars"},_hoisted_2$1j={key:0},_hoisted_3$11={key:1};function _sfc_render$25(e,n,t,o,a,r){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1S,[t.min&&t.max&&t.min!==t.max?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$1j,[n[0]||(n[0]=vue.createElementVNode("span",{class:"vs-canned-search-stars__star"}," ★ ",-1)),vue.createTextVNode(" "+vue.toDisplayString(t.min)+"-"+vue.toDisplayString(t.max),1)])):(vue.openBlock(),vue.createElementBlock("div",_hoisted_3$11,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(t.min,s=>(vue.openBlock(),vue.createElementBlock("span",{key:s,class:"vs-canned-search-stars__star"}," ★ "))),128))]))])}const VsCannedSearchStars=LoadingSpinner._export_sfc(_sfc_main$2m,[["render",_sfc_render$25]]),min$3=Math.min,max$3=Math.max,oppositeSideMap={left:"right",right:"left",bottom:"top",top:"bottom"};function clamp(e,n,t){return max$3(e,min$3(n,t))}function evaluate(e,n){return typeof e=="function"?e(n):e}function getSide(e){return e.split("-")[0]}function getAlignment(e){return e.split("-")[1]}function getOppositeAxis(e){return e==="x"?"y":"x"}function getAxisLength(e){return e==="y"?"height":"width"}function getSideAxis(e){const n=e[0];return n==="t"||n==="b"?"y":"x"}function getAlignmentAxis(e){return getOppositeAxis(getSideAxis(e))}function getAlignmentSides(e,n,t){t===void 0&&(t=!1);const o=getAlignment(e),a=getAlignmentAxis(e),r=getAxisLength(a);let s=a==="x"?o===(t?"end":"start")?"right":"left":o==="start"?"bottom":"top";return n.reference[r]>n.floating[r]&&(s=getOppositePlacement(s)),[s,getOppositePlacement(s)]}function getExpandedPlacements(e){const n=getOppositePlacement(e);return[getOppositeAlignmentPlacement(e),n,getOppositeAlignmentPlacement(n)]}function getOppositeAlignmentPlacement(e){return e.includes("start")?e.replace("start","end"):e.replace("end","start")}const lrPlacement=["left","right"],rlPlacement=["right","left"],tbPlacement=["top","bottom"],btPlacement=["bottom","top"];function getSideList(e,n,t){switch(e){case"top":case"bottom":return t?n?rlPlacement:lrPlacement:n?lrPlacement:rlPlacement;case"left":case"right":return n?tbPlacement:btPlacement;default:return[]}}function getOppositeAxisPlacements(e,n,t,o){const a=getAlignment(e);let r=getSideList(getSide(e),t==="start",o);return a&&(r=r.map(s=>s+"-"+a),n&&(r=r.concat(r.map(getOppositeAlignmentPlacement)))),r}function getOppositePlacement(e){const n=getSide(e);return oppositeSideMap[n]+e.slice(n.length)}function expandPaddingObject(e){return{top:0,right:0,bottom:0,left:0,...e}}function getPaddingObject(e){return typeof e!="number"?expandPaddingObject(e):{top:e,right:e,bottom:e,left:e}}function rectToClientRect(e){const{x:n,y:t,width:o,height:a}=e;return{width:o,height:a,top:t,left:n,right:n+o,bottom:t+a,x:n,y:t}}function computeCoordsFromPlacement(e,n,t){let{reference:o,floating:a}=e;const r=getSideAxis(n),s=getAlignmentAxis(n),i=getAxisLength(s),l=getSide(n),u=r==="y",c=o.x+o.width/2-a.width/2,d=o.y+o.height/2-a.height/2,v=o[i]/2-a[i]/2;let m;switch(l){case"top":m={x:c,y:o.y-a.height};break;case"bottom":m={x:c,y:o.y+o.height};break;case"right":m={x:o.x+o.width,y:d};break;case"left":m={x:o.x-a.width,y:d};break;default:m={x:o.x,y:o.y}}switch(getAlignment(n)){case"start":m[s]-=v*(t&&u?-1:1);break;case"end":m[s]+=v*(t&&u?-1:1);break}return m}async function detectOverflow(e,n){var t;n===void 0&&(n={});const{x:o,y:a,platform:r,rects:s,elements:i,strategy:l}=e,{boundary:u="clippingAncestors",rootBoundary:c="viewport",elementContext:d="floating",altBoundary:v=!1,padding:m=0}=evaluate(n,e),f=getPaddingObject(m),g=i[v?d==="floating"?"reference":"floating":d],_=rectToClientRect(await r.getClippingRect({element:(t=await(r.isElement==null?void 0:r.isElement(g)))==null||t?g:g.contextElement||await(r.getDocumentElement==null?void 0:r.getDocumentElement(i.floating)),boundary:u,rootBoundary:c,strategy:l})),h=d==="floating"?{x:o,y:a,width:s.floating.width,height:s.floating.height}:s.reference,b=await(r.getOffsetParent==null?void 0:r.getOffsetParent(i.floating)),V=await(r.isElement==null?void 0:r.isElement(b))?await(r.getScale==null?void 0:r.getScale(b))||{x:1,y:1}:{x:1,y:1},S=rectToClientRect(r.convertOffsetParentRelativeRectToViewportRelativeRect?await r.convertOffsetParentRelativeRectToViewportRelativeRect({elements:i,rect:h,offsetParent:b,strategy:l}):h);return{top:(_.top-S.top+f.top)/V.y,bottom:(S.bottom-_.bottom+f.bottom)/V.y,left:(_.left-S.left+f.left)/V.x,right:(S.right-_.right+f.right)/V.x}}const MAX_RESET_COUNT=50,computePosition$1=async(e,n,t)=>{const{placement:o="bottom",strategy:a="absolute",middleware:r=[],platform:s}=t,i=s.detectOverflow?s:{...s,detectOverflow},l=await(s.isRTL==null?void 0:s.isRTL(n));let u=await s.getElementRects({reference:e,floating:n,strategy:a}),{x:c,y:d}=computeCoordsFromPlacement(u,o,l),v=o,m=0;const f={};for(let p=0;p<r.length;p++){const g=r[p];if(!g)continue;const{name:_,fn:h}=g,{x:b,y:V,data:S,reset:$}=await h({x:c,y:d,initialPlacement:o,placement:v,strategy:a,middlewareData:f,rects:u,platform:i,elements:{reference:e,floating:n}});c=b??c,d=V??d,f[_]={...f[_],...S},$&&m<MAX_RESET_COUNT&&(m++,typeof $=="object"&&($.placement&&(v=$.placement),$.rects&&(u=$.rects===!0?await s.getElementRects({reference:e,floating:n,strategy:a}):$.rects),{x:c,y:d}=computeCoordsFromPlacement(u,v,l)),p=-1)}return{x:c,y:d,placement:v,strategy:a,middlewareData:f}},arrow$1=e=>({name:"arrow",options:e,async fn(n){const{x:t,y:o,placement:a,rects:r,platform:s,elements:i,middlewareData:l}=n,{element:u,padding:c=0}=evaluate(e,n)||{};if(u==null)return{};const d=getPaddingObject(c),v={x:t,y:o},m=getAlignmentAxis(a),f=getAxisLength(m),p=await s.getDimensions(u),g=m==="y",_=g?"top":"left",h=g?"bottom":"right",b=g?"clientHeight":"clientWidth",V=r.reference[f]+r.reference[m]-v[m]-r.floating[f],S=v[m]-r.reference[m],$=await(s.getOffsetParent==null?void 0:s.getOffsetParent(u));let w=$?$[b]:0;(!w||!await(s.isElement==null?void 0:s.isElement($)))&&(w=i.floating[b]||r.floating[f]);const k=V/2-S/2,P=w/2-p[f]/2-1,O=min$3(d[_],P),B=min$3(d[h],P),T=O,L=w-p[f]-B,E=w/2-p[f]/2+k,z=clamp(T,E,L),F=!l.arrow&&getAlignment(a)!=null&&E!==z&&r.reference[f]/2-(E<T?O:B)-p[f]/2<0,A=F?E<T?E-T:E-L:0;return{[m]:v[m]+A,data:{[m]:z,centerOffset:E-z-A,...F&&{alignmentOffset:A}},reset:F}}}),flip$1=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(n){var t,o;const{placement:a,middlewareData:r,rects:s,initialPlacement:i,platform:l,elements:u}=n,{mainAxis:c=!0,crossAxis:d=!0,fallbackPlacements:v,fallbackStrategy:m="bestFit",fallbackAxisSideDirection:f="none",flipAlignment:p=!0,...g}=evaluate(e,n);if((t=r.arrow)!=null&&t.alignmentOffset)return{};const _=getSide(a),h=getSideAxis(i),b=getSide(i)===i,V=await(l.isRTL==null?void 0:l.isRTL(u.floating)),S=v||(b||!p?[getOppositePlacement(i)]:getExpandedPlacements(i)),$=f!=="none";!v&&$&&S.push(...getOppositeAxisPlacements(i,p,f,V));const w=[i,...S],k=await l.detectOverflow(n,g),P=[];let O=((o=r.flip)==null?void 0:o.overflows)||[];if(c&&P.push(k[_]),d){const E=getAlignmentSides(a,s,V);P.push(k[E[0]],k[E[1]])}if(O=[...O,{placement:a,overflows:P}],!P.every(E=>E<=0)){var B,T;const E=(((B=r.flip)==null?void 0:B.index)||0)+1,z=w[E];if(z&&(!(d==="alignment"?h!==getSideAxis(z):!1)||O.every(C=>getSideAxis(C.placement)===h?C.overflows[0]>0:!0)))return{data:{index:E,overflows:O},reset:{placement:z}};let F=(T=O.filter(A=>A.overflows[0]<=0).sort((A,C)=>A.overflows[1]-C.overflows[1])[0])==null?void 0:T.placement;if(!F)switch(m){case"bestFit":{var L;const A=(L=O.filter(C=>{if($){const D=getSideAxis(C.placement);return D===h||D==="y"}return!0}).map(C=>[C.placement,C.overflows.filter(D=>D>0).reduce((D,R)=>D+R,0)]).sort((C,D)=>C[1]-D[1])[0])==null?void 0:L[0];A&&(F=A);break}case"initialPlacement":F=i;break}if(a!==F)return{reset:{placement:F}}}return{}}}},originSides=new Set(["left","top"]);async function convertValueToCoords(e,n){const{placement:t,platform:o,elements:a}=e,r=await(o.isRTL==null?void 0:o.isRTL(a.floating)),s=getSide(t),i=getAlignment(t),l=getSideAxis(t)==="y",u=originSides.has(s)?-1:1,c=r&&l?-1:1,d=evaluate(n,e);let{mainAxis:v,crossAxis:m,alignmentAxis:f}=typeof d=="number"?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return i&&typeof f=="number"&&(m=i==="end"?f*-1:f),l?{x:m*c,y:v*u}:{x:v*u,y:m*c}}const offset$1=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(n){var t,o;const{x:a,y:r,placement:s,middlewareData:i}=n,l=await convertValueToCoords(n,e);return s===((t=i.offset)==null?void 0:t.placement)&&(o=i.arrow)!=null&&o.alignmentOffset?{}:{x:a+l.x,y:r+l.y,data:{...l,placement:s}}}}},shift$1=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(n){const{x:t,y:o,placement:a,platform:r}=n,{mainAxis:s=!0,crossAxis:i=!1,limiter:l={fn:_=>{let{x:h,y:b}=_;return{x:h,y:b}}},...u}=evaluate(e,n),c={x:t,y:o},d=await r.detectOverflow(n,u),v=getSideAxis(getSide(a)),m=getOppositeAxis(v);let f=c[m],p=c[v];if(s){const _=m==="y"?"top":"left",h=m==="y"?"bottom":"right",b=f+d[_],V=f-d[h];f=clamp(b,f,V)}if(i){const _=v==="y"?"top":"left",h=v==="y"?"bottom":"right",b=p+d[_],V=p-d[h];p=clamp(b,p,V)}const g=l.fn({...n,[m]:f,[v]:p});return{...g,data:{x:g.x-t,y:g.y-o,enabled:{[m]:s,[v]:i}}}}}},min$2=Math.min,max$2=Math.max,round=Math.round,floor=Math.floor,createCoords=e=>({x:e,y:e});function hasWindow(){return typeof window<"u"}function getNodeName(e){return isNode(e)?(e.nodeName||"").toLowerCase():"#document"}function getWindow(e){var n;return(e==null||(n=e.ownerDocument)==null?void 0:n.defaultView)||window}function getDocumentElement(e){var n;return(n=(isNode(e)?e.ownerDocument:e.document)||window.document)==null?void 0:n.documentElement}function isNode(e){return hasWindow()?e instanceof Node||e instanceof getWindow(e).Node:!1}function isElement$1(e){return hasWindow()?e instanceof Element||e instanceof getWindow(e).Element:!1}function isHTMLElement(e){return hasWindow()?e instanceof HTMLElement||e instanceof getWindow(e).HTMLElement:!1}function isShadowRoot(e){return!hasWindow()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof getWindow(e).ShadowRoot}function isOverflowElement(e){const{overflow:n,overflowX:t,overflowY:o,display:a}=getComputedStyle$1(e);return/auto|scroll|overlay|hidden|clip/.test(n+o+t)&&a!=="inline"&&a!=="contents"}function isTableElement(e){return/^(table|td|th)$/.test(getNodeName(e))}function isTopLayer(e){try{if(e.matches(":popover-open"))return!0}catch{}try{return e.matches(":modal")}catch{return!1}}const willChangeRe=/transform|translate|scale|rotate|perspective|filter/,containRe=/paint|layout|strict|content/,isNotNone=e=>!!e&&e!=="none";let isWebKitValue;function isContainingBlock(e){const n=isElement$1(e)?getComputedStyle$1(e):e;return isNotNone(n.transform)||isNotNone(n.translate)||isNotNone(n.scale)||isNotNone(n.rotate)||isNotNone(n.perspective)||!isWebKit()&&(isNotNone(n.backdropFilter)||isNotNone(n.filter))||willChangeRe.test(n.willChange||"")||containRe.test(n.contain||"")}function getContainingBlock(e){let n=getParentNode(e);for(;isHTMLElement(n)&&!isLastTraversableNode(n);){if(isContainingBlock(n))return n;if(isTopLayer(n))return null;n=getParentNode(n)}return null}function isWebKit(){return isWebKitValue==null&&(isWebKitValue=typeof CSS<"u"&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),isWebKitValue}function isLastTraversableNode(e){return/^(html|body|#document)$/.test(getNodeName(e))}function getComputedStyle$1(e){return getWindow(e).getComputedStyle(e)}function getNodeScroll(e){return isElement$1(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function getParentNode(e){if(getNodeName(e)==="html")return e;const n=e.assignedSlot||e.parentNode||isShadowRoot(e)&&e.host||getDocumentElement(e);return isShadowRoot(n)?n.host:n}function getNearestOverflowAncestor(e){const n=getParentNode(e);return isLastTraversableNode(n)?e.ownerDocument?e.ownerDocument.body:e.body:isHTMLElement(n)&&isOverflowElement(n)?n:getNearestOverflowAncestor(n)}function getOverflowAncestors(e,n,t){var o;n===void 0&&(n=[]),t===void 0&&(t=!0);const a=getNearestOverflowAncestor(e),r=a===((o=e.ownerDocument)==null?void 0:o.body),s=getWindow(a);if(r){const i=getFrameElement(s);return n.concat(s,s.visualViewport||[],isOverflowElement(a)?a:[],i&&t?getOverflowAncestors(i):[])}else return n.concat(a,getOverflowAncestors(a,[],t))}function getFrameElement(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function getCssDimensions(e){const n=getComputedStyle$1(e);let t=parseFloat(n.width)||0,o=parseFloat(n.height)||0;const a=isHTMLElement(e),r=a?e.offsetWidth:t,s=a?e.offsetHeight:o,i=round(t)!==r||round(o)!==s;return i&&(t=r,o=s),{width:t,height:o,$:i}}function unwrapElement(e){return isElement$1(e)?e:e.contextElement}function getScale(e){const n=unwrapElement(e);if(!isHTMLElement(n))return createCoords(1);const t=n.getBoundingClientRect(),{width:o,height:a,$:r}=getCssDimensions(n);let s=(r?round(t.width):t.width)/o,i=(r?round(t.height):t.height)/a;return(!s||!Number.isFinite(s))&&(s=1),(!i||!Number.isFinite(i))&&(i=1),{x:s,y:i}}const noOffsets=createCoords(0);function getVisualOffsets(e){const n=getWindow(e);return!isWebKit()||!n.visualViewport?noOffsets:{x:n.visualViewport.offsetLeft,y:n.visualViewport.offsetTop}}function shouldAddVisualOffsets(e,n,t){return n===void 0&&(n=!1),!t||n&&t!==getWindow(e)?!1:n}function getBoundingClientRect(e,n,t,o){n===void 0&&(n=!1),t===void 0&&(t=!1);const a=e.getBoundingClientRect(),r=unwrapElement(e);let s=createCoords(1);n&&(o?isElement$1(o)&&(s=getScale(o)):s=getScale(e));const i=shouldAddVisualOffsets(r,t,o)?getVisualOffsets(r):createCoords(0);let l=(a.left+i.x)/s.x,u=(a.top+i.y)/s.y,c=a.width/s.x,d=a.height/s.y;if(r){const v=getWindow(r),m=o&&isElement$1(o)?getWindow(o):o;let f=v,p=getFrameElement(f);for(;p&&o&&m!==f;){const g=getScale(p),_=p.getBoundingClientRect(),h=getComputedStyle$1(p),b=_.left+(p.clientLeft+parseFloat(h.paddingLeft))*g.x,V=_.top+(p.clientTop+parseFloat(h.paddingTop))*g.y;l*=g.x,u*=g.y,c*=g.x,d*=g.y,l+=b,u+=V,f=getWindow(p),p=getFrameElement(f)}}return rectToClientRect({width:c,height:d,x:l,y:u})}function getWindowScrollBarX(e,n){const t=getNodeScroll(e).scrollLeft;return n?n.left+t:getBoundingClientRect(getDocumentElement(e)).left+t}function getHTMLOffset(e,n){const t=e.getBoundingClientRect(),o=t.left+n.scrollLeft-getWindowScrollBarX(e,t),a=t.top+n.scrollTop;return{x:o,y:a}}function convertOffsetParentRelativeRectToViewportRelativeRect(e){let{elements:n,rect:t,offsetParent:o,strategy:a}=e;const r=a==="fixed",s=getDocumentElement(o),i=n?isTopLayer(n.floating):!1;if(o===s||i&&r)return t;let l={scrollLeft:0,scrollTop:0},u=createCoords(1);const c=createCoords(0),d=isHTMLElement(o);if((d||!d&&!r)&&((getNodeName(o)!=="body"||isOverflowElement(s))&&(l=getNodeScroll(o)),d)){const m=getBoundingClientRect(o);u=getScale(o),c.x=m.x+o.clientLeft,c.y=m.y+o.clientTop}const v=s&&!d&&!r?getHTMLOffset(s,l):createCoords(0);return{width:t.width*u.x,height:t.height*u.y,x:t.x*u.x-l.scrollLeft*u.x+c.x+v.x,y:t.y*u.y-l.scrollTop*u.y+c.y+v.y}}function getClientRects(e){return Array.from(e.getClientRects())}function getDocumentRect(e){const n=getDocumentElement(e),t=getNodeScroll(e),o=e.ownerDocument.body,a=max$2(n.scrollWidth,n.clientWidth,o.scrollWidth,o.clientWidth),r=max$2(n.scrollHeight,n.clientHeight,o.scrollHeight,o.clientHeight);let s=-t.scrollLeft+getWindowScrollBarX(e);const i=-t.scrollTop;return getComputedStyle$1(o).direction==="rtl"&&(s+=max$2(n.clientWidth,o.clientWidth)-a),{width:a,height:r,x:s,y:i}}const SCROLLBAR_MAX=25;function getViewportRect(e,n){const t=getWindow(e),o=getDocumentElement(e),a=t.visualViewport;let r=o.clientWidth,s=o.clientHeight,i=0,l=0;if(a){r=a.width,s=a.height;const c=isWebKit();(!c||c&&n==="fixed")&&(i=a.offsetLeft,l=a.offsetTop)}const u=getWindowScrollBarX(o);if(u<=0){const c=o.ownerDocument,d=c.body,v=getComputedStyle(d),m=c.compatMode==="CSS1Compat"&&parseFloat(v.marginLeft)+parseFloat(v.marginRight)||0,f=Math.abs(o.clientWidth-d.clientWidth-m);f<=SCROLLBAR_MAX&&(r-=f)}else u<=SCROLLBAR_MAX&&(r+=u);return{width:r,height:s,x:i,y:l}}function getInnerBoundingClientRect(e,n){const t=getBoundingClientRect(e,!0,n==="fixed"),o=t.top+e.clientTop,a=t.left+e.clientLeft,r=isHTMLElement(e)?getScale(e):createCoords(1),s=e.clientWidth*r.x,i=e.clientHeight*r.y,l=a*r.x,u=o*r.y;return{width:s,height:i,x:l,y:u}}function getClientRectFromClippingAncestor(e,n,t){let o;if(n==="viewport")o=getViewportRect(e,t);else if(n==="document")o=getDocumentRect(getDocumentElement(e));else if(isElement$1(n))o=getInnerBoundingClientRect(n,t);else{const a=getVisualOffsets(e);o={x:n.x-a.x,y:n.y-a.y,width:n.width,height:n.height}}return rectToClientRect(o)}function hasFixedPositionAncestor(e,n){const t=getParentNode(e);return t===n||!isElement$1(t)||isLastTraversableNode(t)?!1:getComputedStyle$1(t).position==="fixed"||hasFixedPositionAncestor(t,n)}function getClippingElementAncestors(e,n){const t=n.get(e);if(t)return t;let o=getOverflowAncestors(e,[],!1).filter(i=>isElement$1(i)&&getNodeName(i)!=="body"),a=null;const r=getComputedStyle$1(e).position==="fixed";let s=r?getParentNode(e):e;for(;isElement$1(s)&&!isLastTraversableNode(s);){const i=getComputedStyle$1(s),l=isContainingBlock(s);!l&&i.position==="fixed"&&(a=null),(r?!l&&!a:!l&&i.position==="static"&&!!a&&(a.position==="absolute"||a.position==="fixed")||isOverflowElement(s)&&!l&&hasFixedPositionAncestor(e,s))?o=o.filter(c=>c!==s):a=i,s=getParentNode(s)}return n.set(e,o),o}function getClippingRect(e){let{element:n,boundary:t,rootBoundary:o,strategy:a}=e;const s=[...t==="clippingAncestors"?isTopLayer(n)?[]:getClippingElementAncestors(n,this._c):[].concat(t),o],i=getClientRectFromClippingAncestor(n,s[0],a);let l=i.top,u=i.right,c=i.bottom,d=i.left;for(let v=1;v<s.length;v++){const m=getClientRectFromClippingAncestor(n,s[v],a);l=max$2(m.top,l),u=min$2(m.right,u),c=min$2(m.bottom,c),d=max$2(m.left,d)}return{width:u-d,height:c-l,x:d,y:l}}function getDimensions(e){const{width:n,height:t}=getCssDimensions(e);return{width:n,height:t}}function getRectRelativeToOffsetParent(e,n,t){const o=isHTMLElement(n),a=getDocumentElement(n),r=t==="fixed",s=getBoundingClientRect(e,!0,r,n);let i={scrollLeft:0,scrollTop:0};const l=createCoords(0);function u(){l.x=getWindowScrollBarX(a)}if(o||!o&&!r)if((getNodeName(n)!=="body"||isOverflowElement(a))&&(i=getNodeScroll(n)),o){const m=getBoundingClientRect(n,!0,r,n);l.x=m.x+n.clientLeft,l.y=m.y+n.clientTop}else a&&u();r&&!o&&a&&u();const c=a&&!o&&!r?getHTMLOffset(a,i):createCoords(0),d=s.left+i.scrollLeft-l.x-c.x,v=s.top+i.scrollTop-l.y-c.y;return{x:d,y:v,width:s.width,height:s.height}}function isStaticPositioned(e){return getComputedStyle$1(e).position==="static"}function getTrueOffsetParent(e,n){if(!isHTMLElement(e)||getComputedStyle$1(e).position==="fixed")return null;if(n)return n(e);let t=e.offsetParent;return getDocumentElement(e)===t&&(t=t.ownerDocument.body),t}function getOffsetParent(e,n){const t=getWindow(e);if(isTopLayer(e))return t;if(!isHTMLElement(e)){let a=getParentNode(e);for(;a&&!isLastTraversableNode(a);){if(isElement$1(a)&&!isStaticPositioned(a))return a;a=getParentNode(a)}return t}let o=getTrueOffsetParent(e,n);for(;o&&isTableElement(o)&&isStaticPositioned(o);)o=getTrueOffsetParent(o,n);return o&&isLastTraversableNode(o)&&isStaticPositioned(o)&&!isContainingBlock(o)?t:o||getContainingBlock(e)||t}const getElementRects=async function(e){const n=this.getOffsetParent||getOffsetParent,t=this.getDimensions,o=await t(e.floating);return{reference:getRectRelativeToOffsetParent(e.reference,await n(e.floating),e.strategy),floating:{x:0,y:0,width:o.width,height:o.height}}};function isRTL(e){return getComputedStyle$1(e).direction==="rtl"}const platform={convertOffsetParentRelativeRectToViewportRelativeRect,getDocumentElement,getClippingRect,getOffsetParent,getElementRects,getClientRects,getDimensions,getScale,isElement:isElement$1,isRTL};function rectsAreEqual(e,n){return e.x===n.x&&e.y===n.y&&e.width===n.width&&e.height===n.height}function observeMove(e,n){let t=null,o;const a=getDocumentElement(e);function r(){var i;clearTimeout(o),(i=t)==null||i.disconnect(),t=null}function s(i,l){i===void 0&&(i=!1),l===void 0&&(l=1),r();const u=e.getBoundingClientRect(),{left:c,top:d,width:v,height:m}=u;if(i||n(),!v||!m)return;const f=floor(d),p=floor(a.clientWidth-(c+v)),g=floor(a.clientHeight-(d+m)),_=floor(c),b={rootMargin:-f+"px "+-p+"px "+-g+"px "+-_+"px",threshold:max$2(0,min$2(1,l))||1};let V=!0;function S($){const w=$[0].intersectionRatio;if(w!==l){if(!V)return s();w?s(!1,w):o=setTimeout(()=>{s(!1,1e-7)},1e3)}w===1&&!rectsAreEqual(u,e.getBoundingClientRect())&&s(),V=!1}try{t=new IntersectionObserver(S,{...b,root:a.ownerDocument})}catch{t=new IntersectionObserver(S,b)}t.observe(e)}return s(!0),r}function autoUpdate(e,n,t,o){o===void 0&&(o={});const{ancestorScroll:a=!0,ancestorResize:r=!0,elementResize:s=typeof ResizeObserver=="function",layoutShift:i=typeof IntersectionObserver=="function",animationFrame:l=!1}=o,u=unwrapElement(e),c=a||r?[...u?getOverflowAncestors(u):[],...n?getOverflowAncestors(n):[]]:[];c.forEach(_=>{a&&_.addEventListener("scroll",t,{passive:!0}),r&&_.addEventListener("resize",t)});const d=u&&i?observeMove(u,t):null;let v=-1,m=null;s&&(m=new ResizeObserver(_=>{let[h]=_;h&&h.target===u&&m&&n&&(m.unobserve(n),cancelAnimationFrame(v),v=requestAnimationFrame(()=>{var b;(b=m)==null||b.observe(n)})),t()}),u&&!l&&m.observe(u),n&&m.observe(n));let f,p=l?getBoundingClientRect(e):null;l&&g();function g(){const _=getBoundingClientRect(e);p&&!rectsAreEqual(p,_)&&t(),p=_,f=requestAnimationFrame(g)}return t(),()=>{var _;c.forEach(h=>{a&&h.removeEventListener("scroll",t),r&&h.removeEventListener("resize",t)}),d==null||d(),(_=m)==null||_.disconnect(),m=null,l&&cancelAnimationFrame(f)}}const offset=offset$1,shift=shift$1,flip=flip$1,arrow=arrow$1,computePosition=(e,n,t)=>{const o=new Map,a={platform,...t},r={...a.platform,_c:o};return computePosition$1(e,n,{...a,platform:r})},_sfc_main$2l={name:"VsTooltip",components:{VsButton:LoadingSpinner.VsButton},directives:{"b-tooltip":LoadingSpinner.Ed},props:{title:{type:String,default:""},position:{type:String,default:"top",validator:e=>e.match(/(top|right|left|bottom)/)},offset:{type:Number,default:8},subtle:{type:Boolean,default:!1},useLegacy:{type:Boolean,default:!0}},data(){return{visible:!1,hideTimeout:null,tooltipId:`vs-tooltip-${Math.random().toString(36).slice(2)}`,floatingStyles:{},arrowStyles:{},cleanup:null}},computed:{tooltipClasses(){return["vs-tooltip-popover",{"vs-tooltip-popover--subtle":this.subtle}]},tooltipConfig(){return{placement:this.position,customClass:["vs-tooltip",this.subtle&&"vs-tooltip--subtle"].filter(Boolean).join(" ")}}},beforeUnmount(){clearTimeout(this.hideTimeout),this.cleanup&&this.cleanup()},methods:{show(){this.useLegacy||!this.title||(clearTimeout(this.hideTimeout),this.hideTimeout=null,!this.visible&&(this.visible=!0,this.$nextTick(this.updatePosition)))},hide(){this.useLegacy||(clearTimeout(this.hideTimeout),this.hideTimeout=setTimeout(()=>{this.visible=!1,this.cleanup&&(this.cleanup(),this.cleanup=null),this.hideTimeout=null},220))},async updatePosition(){const e=this.$refs.trigger,n=this.$refs.tooltip,t=this.$refs.arrow;!e||!n||(this.cleanup=autoUpdate(e,n,async()=>{const o=await computePosition(e,n,{placement:this.position,strategy:"fixed",middleware:[offset(this.offset),flip(),shift({padding:8,crossAxis:!0}),arrow({element:t})]});this.applyTooltipPosition(o),this.applyArrowPosition(o)}))},applyTooltipPosition({x:e,y:n}){this.floatingStyles={position:"fixed",left:`${e}px`,top:`${n}px`}},applyArrowPosition({placement:e,middlewareData:n}){if(!n.arrow)return;const{x:t,y:o}=n.arrow,a=e.split("-")[0],r={top:"bottom",right:"left",bottom:"top",left:"right"}[a];this.arrowStyles={left:t!=null?`${t}px`:"",top:o!=null?`${o}px`:"",right:"",bottom:"",[r]:"-4px"}}}},_hoisted_1$1R=["aria-describedby"],_hoisted_2$1i=["id"];function _sfc_render$24(e,n,t,o,a,r){const s=vue.resolveComponent("VsButton"),i=vue.resolveDirective("b-tooltip");return t.useLegacy?vue.withDirectives((vue.openBlock(),vue.createBlock(s,vue.mergeProps({key:1},e.$attrs,{class:"vs-tooltip position-relative","data-test":"vs-tooltip",title:t.title}),{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},16,["title"])),[[i,r.tooltipConfig]]):(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createElementVNode("span",vue.mergeProps({ref:"trigger"},e.$attrs,{"data-test":"vs-tooltip-trigger",class:"d-inline-block","aria-describedby":a.visible?a.tooltipId:null,onMouseenter:n[0]||(n[0]=(...l)=>r.show&&r.show(...l)),onMouseleave:n[1]||(n[1]=(...l)=>r.hide&&r.hide(...l)),onFocusin:n[2]||(n[2]=(...l)=>r.show&&r.show(...l)),onFocusout:n[3]||(n[3]=(...l)=>r.hide&&r.hide(...l)),onKeydown:n[4]||(n[4]=vue.withKeys((...l)=>r.hide&&r.hide(...l),["escape"]))}),[vue.renderSlot(e.$slots,"default")],16,_hoisted_1$1R),a.visible&&t.title?(vue.openBlock(),vue.createElementBlock("div",{key:0,ref:"tooltip",id:a.tooltipId,tabindex:"-1",class:vue.normalizeClass(r.tooltipClasses),role:"tooltip",style:vue.normalizeStyle(a.floatingStyles)},[vue.createTextVNode(vue.toDisplayString(t.title)+" ",1),vue.createElementVNode("div",{ref:"arrow",class:"vs-tooltip__arrow",style:vue.normalizeStyle(a.arrowStyles)},null,4)],14,_hoisted_2$1i)):vue.createCommentVNode("",!0)],64))}const VsTooltip=LoadingSpinner._export_sfc(_sfc_main$2l,[["render",_sfc_render$24]]),_sfc_main$2k={name:"VsCannedSearchLogos",status:"prototype",release:"0.0.1",components:{VsTooltip,VsImg:LoadingSpinner.VsImg},inject:["slideVisible"],props:{goodToGoLogo:{type:Object,default:null},safeTravelsLogo:{type:Object,default:null},awards:{type:Array,default:null},accessGuide:{type:Object,default:null}}},_hoisted_1$1Q={class:"vs-canned-search-logos"};function _sfc_render$23(e,n,t,o,a,r){const s=vue.resolveComponent("VsImg"),i=vue.resolveComponent("VsTooltip");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1Q,[t.goodToGoLogo?(vue.openBlock(),vue.createBlock(i,{key:0,title:t.goodToGoLogo.name,href:"#",class:"p-0",variant:"subtle","data-test":"vs-canned-search-logos__good-to-go",disabled:!r.slideVisible(),tabindex:r.slideVisible()?"0":"-1"},{default:vue.withCtx(()=>[vue.createVNode(s,{alt:t.goodToGoLogo.name,src:t.goodToGoLogo.image,class:"vs-canned-search-logos__logo"},null,8,["alt","src"])]),_:1},8,["title","disabled","tabindex"])):vue.createCommentVNode("",!0),t.safeTravelsLogo?(vue.openBlock(),vue.createBlock(i,{key:1,title:t.safeTravelsLogo.name,href:"#",class:"p-0",variant:"subtle","data-test":"vs-canned-search-logos__safe-travels",disabled:!r.slideVisible(),tabindex:r.slideVisible()?"0":"-1"},{default:vue.withCtx(()=>[vue.createVNode(s,{alt:t.safeTravelsLogo.name,src:t.safeTravelsLogo.image,class:"vs-canned-search-logos__logo"},null,8,["alt","src"])]),_:1},8,["title","disabled","tabindex"])):vue.createCommentVNode("",!0),(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(t.awards,l=>(vue.openBlock(),vue.createBlock(i,{title:l.name,key:l.id,href:"#",class:"p-0",variant:"subtle",disabled:!r.slideVisible(),tabindex:r.slideVisible()?"0":"-1"},{default:vue.withCtx(()=>[vue.createVNode(s,{src:l.image,alt:l.name,class:"vs-canned-search-logos__logo","data-test":"vs-canned-search-logos__award-logo"},null,8,["src","alt"])]),_:2},1032,["title","disabled","tabindex"]))),128)),t.accessGuide?(vue.openBlock(),vue.createBlock(i,{key:2,title:t.accessGuide.name,href:"#",variant:"subtle",class:"vs-canned-search-logos__access p-0","data-test":"vs-canned-search-logos__access-guide",disabled:!r.slideVisible(),tabindex:r.slideVisible()?"0":"-1"},{default:vue.withCtx(()=>[vue.createVNode(s,{src:t.accessGuide.image,alt:t.accessGuide.name,class:"vs-canned-search-logos__logo"},null,8,["src","alt"])]),_:1},8,["title","disabled","tabindex"])):vue.createCommentVNode("",!0)])}const VsCannedSearchLogos=LoadingSpinner._export_sfc(_sfc_main$2k,[["render",_sfc_render$23]]),_sfc_main$2j={name:"VsCannedSearchCategories",status:"prototype",release:"0.0.1",props:{categories:{type:Array,default:null}},computed:{transformedCategories(){return this.categories?this.categories.slice(0,3).map(e=>e.name).join(" | "):""}}},_hoisted_1$1P={class:"vs-canned-search-categories","data-test":"vs-canned-search-categories"};function _sfc_render$22(e,n,t,o,a,r){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1P,vue.toDisplayString(r.transformedCategories),1)}const VsCannedSearchCategories=LoadingSpinner._export_sfc(_sfc_main$2j,[["render",_sfc_render$22]]),_sfc_main$2i={name:"VsCannedSearchPrice",status:"prototype",release:"0.0.1",props:{price:{type:String,default:""},priceIntro:{type:String,default:""},priceOutro:{type:String,default:""}}},_hoisted_1$1O={class:"vs-canned-search-price"},_hoisted_2$1h={key:0,class:"vs-canned-search-price__intro"},_hoisted_3$10={key:1,class:"vs-canned-search-price__main"},_hoisted_4$K={key:2,class:"vs-canned-search-price__outro"};function _sfc_render$21(e,n,t,o,a,r){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1O,[t.priceIntro?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$1h,vue.toDisplayString(t.priceIntro),1)):vue.createCommentVNode("",!0),t.price?(vue.openBlock(),vue.createElementBlock("div",_hoisted_3$10,vue.toDisplayString(t.price),1)):vue.createCommentVNode("",!0),t.priceOutro?(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$K,vue.toDisplayString(t.priceOutro),1)):vue.createCommentVNode("",!0)])}const VsCannedSearchPrice=LoadingSpinner._export_sfc(_sfc_main$2i,[["render",_sfc_render$21]]),_sfc_main$2h={name:"VsCannedSearchDuration",status:"prototype",release:"0.0.1",props:{duration:{type:String,default:""},durationIntro:{type:String,default:""}}},_hoisted_1$1N={class:"vs-canned-search-duration"},_hoisted_2$1g={key:0,class:"vs-canned-search-duration__intro"},_hoisted_3$$={key:1,class:"vs-canned-search-duration__main"};function _sfc_render$20(e,n,t,o,a,r){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1N,[t.durationIntro?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$1g,vue.toDisplayString(t.durationIntro),1)):vue.createCommentVNode("",!0),t.duration?(vue.openBlock(),vue.createElementBlock("div",_hoisted_3$$,vue.toDisplayString(t.duration),1)):vue.createCommentVNode("",!0)])}const VsCannedSearchDuration=LoadingSpinner._export_sfc(_sfc_main$2h,[["render",_sfc_render$20]]),_sfc_main$2g={name:"VsCannedSearchSummaryBox",status:"prototype",release:"0.0.1",components:{VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,VsLink},inject:["slideVisible"],props:{linkHref:{type:String,default:""},linkLabel:{type:String,default:""},linkType:{type:String,default:""},linkTitle:{type:String,default:""}}},_hoisted_1$1M=["disabled"],_hoisted_2$1f={class:"visually-hidden"};function _sfc_render$1$(e,n,t,o,a,r){const s=vue.resolveComponent("VsCol"),i=vue.resolveComponent("VsRow"),l=vue.resolveComponent("VsLink"),u=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("div",{class:"vs-canned-search-summary-box",disabled:!r.slideVisible()},[vue.createVNode(u,null,{default:vue.withCtx(()=>[e.$slots["vs-canned-search-summary-top"]&&e.$slots["vs-canned-search-summary-top"]()?(vue.openBlock(),vue.createBlock(i,{key:0},{default:vue.withCtx(()=>[vue.createVNode(s,{cols:"12",class:"vs-canned-search-summary-box__summary-item"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-canned-search-summary-top")]),_:3})]),_:3})):vue.createCommentVNode("",!0),vue.createVNode(i,{class:"row--tall"},{default:vue.withCtx(()=>[e.$slots["vs-canned-search-summary-left"]&&e.$slots["vs-canned-search-summary-left"]()?(vue.openBlock(),vue.createBlock(s,{key:0,class:"vs-canned-search-summary-box__summary-item"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-canned-search-summary-left")]),_:3})):vue.createCommentVNode("",!0),e.$slots["vs-canned-search-summary-centre"]&&e.$slots["vs-canned-search-summary-centre"]()?(vue.openBlock(),vue.createBlock(s,{key:1,class:"vs-canned-search-summary-box__summary-item"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-canned-search-summary-centre")]),_:3})):vue.createCommentVNode("",!0),t.linkHref?(vue.openBlock(),vue.createBlock(s,{key:2,class:"vs-canned-search-summary-box__summary-item"},{default:vue.withCtx(()=>[vue.createVNode(l,{"data-test":"vs-canned-search-summary-box__link",href:t.linkHref,type:t.linkType.toLowerCase(),disabled:!r.slideVisible()},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.linkLabel)+" ",1),vue.createElementVNode("span",_hoisted_2$1f,": "+vue.toDisplayString(t.linkTitle),1)]),_:1},8,["href","type","disabled"])]),_:1})):vue.createCommentVNode("",!0)]),_:3})]),_:3})],8,_hoisted_1$1M)}const VsCannedSearchSummaryBox=LoadingSpinner._export_sfc(_sfc_main$2g,[["render",_sfc_render$1$]]),_sfc_main$2f={name:"VsCannedSearchDates",status:"prototype",release:"0.0.1",props:{period:{type:Object,default:null},label:{type:String,default:""}},computed:{datePeriod(){return this.period&&this.period.startDay?this.period.endDay?`${this.period.startDay} - ${this.period.endDay}`:this.period.startDay:""}}},_hoisted_1$1L={class:"vs-canned-search-dates"},_hoisted_2$1e={class:"vs-canned-search-dates__intro"},_hoisted_3$_={class:"vs-canned-search-dates__main"};function _sfc_render$1_(e,n,t,o,a,r){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1L,[vue.createElementVNode("div",_hoisted_2$1e,vue.toDisplayString(t.label),1),vue.createElementVNode("div",_hoisted_3$_,vue.toDisplayString(r.datePeriod),1)])}const VsCannedSearchDates=LoadingSpinner._export_sfc(_sfc_main$2f,[["render",_sfc_render$1_]]),_sfc_main$2e={name:"VsCannedSearchBadges",status:"prototype",release:"0.0.1",props:{badgeOne:{type:String,default:""},multiBadgeOne:{type:Array,default:null},badgeTwo:{type:String,default:""},badgeThree:{type:String,default:""}},computed:{limitedMulti(){return this.multiBadgeOne?this.multiBadgeOne.slice(0,3):[]}}},_hoisted_1$1K={class:"vs-canned-search-badges"},_hoisted_2$1d={key:0,class:"vs-canned-search-badges__badge vs-canned-search-badges__badge--category vs-canned-search-badges__badge--tr"},_hoisted_3$Z={key:1,class:"vs-canned-search-badges__multi-badge-holder"},_hoisted_4$J={key:2,class:"vs-canned-search-badges__badge vs-canned-search-badges__badge--offer vs-canned-search-badges__badge--tr2"},_hoisted_5$x={key:3,class:"vs-canned-search-badges__badge vs-canned-search-badges__badge--open vs-canned-search-badges__badge--br"};function _sfc_render$1Z(e,n,t,o,a,r){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1K,[t.badgeOne?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$1d,vue.toDisplayString(t.badgeOne),1)):t.multiBadgeOne&&t.multiBadgeOne.length?(vue.openBlock(),vue.createElementBlock("div",_hoisted_3$Z,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(r.limitedMulti,(s,i)=>(vue.openBlock(),vue.createElementBlock("div",{key:i,class:"vs-canned-search-badges__badge vs-canned-search-badges__badge--category vs-canned-search-badges__multi-badge"},vue.toDisplayString(s),1))),128))])):vue.createCommentVNode("",!0),t.badgeTwo?(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$J,vue.toDisplayString(t.badgeTwo),1)):vue.createCommentVNode("",!0),t.badgeThree?(vue.openBlock(),vue.createElementBlock("div",_hoisted_5$x,vue.toDisplayString(t.badgeThree),1)):vue.createCommentVNode("",!0)])}const VsCannedSearchBadges=LoadingSpinner._export_sfc(_sfc_main$2e,[["render",_sfc_render$1Z]]),_sfc_main$2d={name:"VsCannedSearchCuisines",status:"prototype",release:"0.0.1",props:{cuisines:{type:Array,default:null}}},_hoisted_1$1J={class:"vs-canned-search-cuisines","data-test":"vs-canned-search-cuisines"};function _sfc_render$1Y(e,n,t,o,a,r){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1J,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(t.cuisines,(s,i)=>(vue.openBlock(),vue.createElementBlock("span",{class:"vs-canned-search-cuisines__cuisine",key:i},vue.toDisplayString(s.name),1))),128))])}const VsCannedSearchCuisines=LoadingSpinner._export_sfc(_sfc_main$2d,[["render",_sfc_render$1Y]]),_sfc_main$2c={name:"VsCannedSearchSubHeading",status:"prototype",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading},props:{subHeading:{type:String,default:""},lineLimit:{type:Number,default:null,validator:e=>[1,2].includes(e)}}};function _sfc_render$1X(e,n,t,o,a,r){const s=vue.resolveComponent("VsHeading");return t.subHeading?(vue.openBlock(),vue.createBlock(s,{key:0,level:"4","heading-style":"heading-xxs",class:vue.normalizeClass(["vs-canned-search-sub-heading",t.lineLimit?`vs-canned-search-sub-heading--lines-${t.lineLimit}`:""]),"data-test":"vs-canned-search-sub-heading"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.subHeading),1)]),_:1},8,["class"])):vue.createCommentVNode("",!0)}const VsCannedSearchSubHeading=LoadingSpinner._export_sfc(_sfc_main$2c,[["render",_sfc_render$1X]]),_sfc_main$2b={name:"VsCannedSearchTourRuns",status:"prototype",release:"0.0.1",props:{label:{type:String,default:""},startDay:{type:String,default:""},endDay:{type:String,default:""}},computed:{formattedPeriod(){let e=`${this.label}: ${this.startDay}`;return this.endDay&&(e=`${e} - ${this.endDay}`),e}}},_hoisted_1$1I={class:"vs-canned-search-tour-runs"};function _sfc_render$1W(e,n,t,o,a,r){return vue.openBlock(),vue.createElementBlock("p",_hoisted_1$1I,vue.toDisplayString(r.formattedPeriod),1)}const VsCannedSearchTourRuns=LoadingSpinner._export_sfc(_sfc_main$2b,[["render",_sfc_render$1W]]),_sfc_main$2a={name:"VsCannedSearchTourDeparts",status:"prototype",release:"0.0.1",props:{label:{type:String,default:null},origins:{type:Array,default:null}},computed:{transformedOrigins(){return this.origins?this.origins.map(e=>e.name).join(", "):""}}},_hoisted_1$1H={class:"vs-canned-search-tour-departs"},_hoisted_2$1c={class:"vs-canned-search-tour-departs__label"};function _sfc_render$1V(e,n,t,o,a,r){return vue.openBlock(),vue.createElementBlock("p",_hoisted_1$1H,[vue.createElementVNode("span",_hoisted_2$1c,vue.toDisplayString(t.label)+":",1),vue.createTextVNode(" "+vue.toDisplayString(r.transformedOrigins),1)])}const VsCannedSearchTourDeparts=LoadingSpinner._export_sfc(_sfc_main$2a,[["render",_sfc_render$1V]]),_sfc_main$29={name:"VsCarousel",status:"prototype",release:"0.0.1",components:{VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,VsButton:LoadingSpinner.VsButton},provide(){const e={},n=this.activeSlides;return Object.keys(this.slidesPerPage).forEach(t=>{const o=12/this.slidesPerPage[t];e[t]=o}),{slideCols:e,visibleSlides:n}},props:{prevText:{type:String,default:"Previous slide"},nextText:{type:String,default:"Next slide"},slidesXs:{type:Number,default:1},slidesSm:{type:Number,default:2},slidesMd:{type:Number,default:3},slidesLg:{type:Number,default:4}},data(){return{totalSlides:null,currentPage:0,maxPages:1,nextDisabled:!1,prevDisabled:!0,currentWidth:"lg",activeSlides:[],remainderOffset:0,navigating:!1}},computed:{slidesPerPage(){const e={};return e.lg=this.slidesLg,e.md=this.slidesMd,e.sm=this.slidesSm,e.xs=this.slidesXs,e},trackOffset(){return this.remainderOffset?`-${(this.currentPage-1)*100+this.remainderOffset}%`:`-${this.currentPage*100}%`}},mounted(){window.addEventListener("resize",()=>{this.setActivePage(),this.sliderNavigate(null,this.currentPage)}),this.defineActiveSlides(),this.initNavigation()},methods:{defineActiveSlides(e){this.calcViewport(),this.activeSlides.length=0;const n=this.$refs.carousel.getElementsByClassName("vs-carousel-slide__card");let t=0;n.length>0&&Array.from(n).forEach((a,r)=>{const s=this.currentPage*this.slidesPerPage[this.currentWidth],i=parseInt(this.currentPage*this.slidesPerPage[this.currentWidth],10)+parseInt(this.slidesPerPage[this.currentWidth],10);e&&typeof e<"u"?r>=this.totalSlides-this.slidesPerPage[this.currentWidth]&&this.activeSlides.push(r):r>=s&&r<i&&this.activeSlides.push(r),t+=1}),this.totalSlides=t,this.maxPages=Math.ceil(t/this.slidesPerPage[this.currentWidth])},calcViewport(){window.matchMedia("(min-width: 1200px)").matches?this.currentWidth="lg":window.matchMedia("(min-width: 992px)").matches?this.currentWidth="md":window.matchMedia("(min-width: 576px)").matches?this.currentWidth="sm":this.currentWidth="xs"},setActivePage(){let e;this.currentWidth==="xs"&&this.slidesXs===1?e=this.currentPage+1:e=this.currentPage*this.slidesPerPage[this.currentWidth]+1,this.calcViewport();let n;this.currentWidth==="xs"&&this.slidesXs===1?n=e:n=Math.ceil(e/this.slidesPerPage[this.currentWidth]),this.currentPage=n-1,this.sliderNavigate(null,this.currentPage)},sliderNavigate(e,n){const t=this.activeSlides[0];if(e&&e.preventDefault(),this.navigating)return;this.navigating=!0,setTimeout(()=>{this.navigating=!1},250),n==="next"?this.currentPage+1<this.maxPages&&(this.currentPage+=1):n==="prev"?this.currentPage>0&&(this.currentPage-=1):this.currentPage=n,this.initNavigation();const o=this.slidesPerPage[this.currentWidth]*(this.currentPage+1);let a=!1;if(o>this.totalSlides?(this.remainderOffset=this.checkRemainder(o),a=!0):this.remainderOffset=0,this.defineActiveSlides(a),n==="next"){const r=this.getFirstActiveSlide();if(r){const s=r.querySelectorAll("a")[0];setTimeout(()=>{s.focus()},250)}}else if(n==="prev"&&this.currentPage>=0){const r=this.$refs.carousel.querySelectorAll(".card")[t-1];if(r){const s=r.querySelectorAll("a")[0];setTimeout(()=>{s.focus()},250)}}},getFirstActiveSlide(){return this.$refs.carousel.querySelectorAll(".card")[this.currentPage*this.slidesPerPage[this.currentWidth]]},getLastActiveSlide(){return this.$refs.carousel.querySelectorAll(".card")[this.currentPage*this.slidesPerPage[this.currentWidth]+this.slidesPerPage[this.currentWidth]-1]},initNavigation(){this.currentPage+1>=this.totalSlides/this.slidesPerPage[this.currentWidth]?this.nextDisabled=!0:this.nextDisabled=!1,this.currentPage>0?this.prevDisabled=!1:this.prevDisabled=!0},checkRemainder(e){const n=this.slidesPerPage[this.currentWidth]-(e-this.totalSlides);return 100/this.slidesPerPage[this.currentWidth]*n}}},_hoisted_1$1G={class:"vs-carousel","data-test":"vs-carousel",ref:"carousel"},_hoisted_2$1b={class:"slider"},_hoisted_3$Y={key:2,class:"vs-carousel__navigation"},_hoisted_4$I=["onClick","onKeypress","data-test"],_hoisted_5$w={class:"visually-hidden"},_hoisted_6$m={key:0,class:"vs-carousel__mobile-pagination-wrapper"},_hoisted_7$i={class:"vs-carousel__mobile-pagination","data-test":"vs-carousel__mobile-pagination"};function _sfc_render$1U(e,n,t,o,a,r){const s=vue.resolveComponent("VsButton"),i=vue.resolveComponent("VsRow"),l=vue.resolveComponent("VsCol"),u=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("section",_hoisted_1$1G,[vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(i,null,{default:vue.withCtx(()=>[vue.createVNode(l,{cols:"10",offset:"1",sm:"12","offset-sm":"0",class:"position-relative"},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_2$1b,[a.prevDisabled?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createBlock(s,{key:0,"icon-only":"",class:"vs-carousel__control vs-carousel__control--prev",onClick:n[0]||(n[0]=c=>r.sliderNavigate(c,"prev")),onKeypress:n[1]||(n[1]=c=>r.sliderNavigate(c,"prev",!0)),icon:"fa-regular fa-arrow-left",ref:"prevButton"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.prevText),1)]),_:1},512)),vue.createVNode(i,{class:"vs-carousel__track",style:vue.normalizeStyle({transform:`translateX(${r.trackOffset})`})},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},8,["style"]),a.nextDisabled?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createBlock(s,{key:1,"icon-only":"",class:"vs-carousel__control vs-carousel__control--next",onKeypress:n[2]||(n[2]=c=>r.sliderNavigate(c,"next",!0)),onClick:n[3]||(n[3]=c=>r.sliderNavigate(c,"next")),icon:"fa-regular fa-arrow-right",ref:"nextButton"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.nextText),1)]),_:1},512)),a.totalSlides>r.slidesPerPage[a.currentWidth]?(vue.openBlock(),vue.createElementBlock("ul",_hoisted_3$Y,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(a.maxPages,c=>(vue.openBlock(),vue.createElementBlock("li",{key:c},[vue.createElementVNode("button",{type:"button",class:vue.normalizeClass(["vs-carousel__navigation-item",c===a.currentPage+1?"vs-carousel__navigation-item--active":""]),onClick:vue.withModifiers(d=>r.sliderNavigate(d,c-1),["prevent"]),onKeypress:vue.withModifiers(d=>r.sliderNavigate(d,c-1,!0),["prevent"]),tabindex:"0","data-test":`vs-carousel__nav-${c}`},[vue.createElementVNode("span",_hoisted_5$w,[vue.renderSlot(e.$slots,"vs-carousel-navigate"),vue.createTextVNode(" "+vue.toDisplayString(c),1)])],42,_hoisted_4$I)]))),128))])):vue.createCommentVNode("",!0)]),a.totalSlides>r.slidesPerPage[a.currentWidth]?(vue.openBlock(),vue.createElementBlock("div",_hoisted_6$m,[vue.createElementVNode("p",_hoisted_7$i,[vue.createTextVNode(vue.toDisplayString(a.currentPage+1)+" ",1),vue.renderSlot(e.$slots,"vs-carousel-of"),vue.createTextVNode(" "+vue.toDisplayString(a.totalSlides),1)])])):vue.createCommentVNode("",!0)]),_:3})]),_:3})]),_:3})],512)}const VsCarousel=LoadingSpinner._export_sfc(_sfc_main$29,[["render",_sfc_render$1U]]),_sfc_main$28={name:"VsModuleWrapper",status:"deprecated",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading,VsBody:LoadingSpinner.VsBody,VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol},props:{anchorId:{type:String,default:null},businessSupport:{type:Boolean,default:!1},headingLevel:{type:Number,default:2,validator:e=>LoadingSpinner.lodashExports.isNumber(e)?e>0&&e<7:e.match(/(1|2|3|4|5|6)/)},headingStyle:{type:String,default:"heading-xl",validator:e=>e.match(/(display-m|display-s|heading-xl|heading-l|heading-m|heading-s|heading-xs|heading-xxs|heading-xxxs)/)},theme:{type:String,default:"light",validator:e=>e.match(/(light|grey|neutral)/)}},computed:{sectionClasses(){return["vs-module-wrapper",`vs-module-wrapper--${this.theme}`,this.businessSupport?"vs-module-wrapper--left-align":null]},headingColumnSizes(){return{cols:this.businessSupport?12:10,offset:this.businessSupport?0:1,md:this.businessSupport?12:8,"offset-md":this.businessSupport?0:2}},IntroColumnSizes(){return{cols:12,sm:this.businessSupport?12:10,"offset-sm":this.businessSupport?0:1,md:this.businessSupport?12:8,"offset-md":this.businessSupport?0:2}}}};function _sfc_render$1T(e,n,t,o,a,r){const s=vue.resolveComponent("VsHeading"),i=vue.resolveComponent("VsCol"),l=vue.resolveComponent("VsBody"),u=vue.resolveComponent("VsRow"),c=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("section",vue.mergeProps({class:r.sectionClasses,"data-test":"vs-module-wrapper"},e.$attrs),[e.$slots["vs-module-wrapper-heading"]&&e.$slots["vs-module-wrapper-heading"]||e.$slots["vs-module-wrapper-intro"]&&e.$slots["vs-module-wrapper-intro"]?(vue.openBlock(),vue.createBlock(c,{key:0},{default:vue.withCtx(()=>[vue.createVNode(u,null,{default:vue.withCtx(()=>[e.$slots["vs-module-wrapper-heading"]&&e.$slots["vs-module-wrapper-heading"]?(vue.openBlock(),vue.createBlock(i,vue.normalizeProps(vue.mergeProps({key:0},r.headingColumnSizes)),{default:vue.withCtx(()=>[vue.createVNode(s,{level:t.headingLevel,"heading-style":t.headingStyle,class:"vs-module-wrapper__heading","data-test":"vs-module-wrapper__heading",id:t.anchorId},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-module-wrapper-heading")]),_:3},8,["level","heading-style","id"])]),_:3},16)):vue.createCommentVNode("",!0),e.$slots["vs-module-wrapper-intro"]&&e.$slots["vs-module-wrapper-intro"]?(vue.openBlock(),vue.createBlock(i,vue.normalizeProps(vue.mergeProps({key:1},r.IntroColumnSizes)),{default:vue.withCtx(()=>[vue.createVNode(l,{class:"vs-module-wrapper__intro","data-test":"vs-module-wrapper__intro",variant:"lead"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-module-wrapper-intro")]),_:3})]),_:3},16)):vue.createCommentVNode("",!0)]),_:3})]),_:3})):vue.createCommentVNode("",!0),vue.renderSlot(e.$slots,"default")],16)}const VsModuleWrapper=LoadingSpinner._export_sfc(_sfc_main$28,[["render",_sfc_render$1T]]),_sfc_main$27={name:"VsCannedSearch",status:"prototype",release:"0.0.1",components:{VsCannedSearchProductCard,VsCannedSearchStars,VsCannedSearchLogos,VsCannedSearchCategories,VsCannedSearchPrice,VsCannedSearchDuration,VsCannedSearchSummaryBox,VsCannedSearchDates,VsCannedSearchBadges,VsCannedSearchCuisines,VsCannedSearchSubHeading,VsCannedSearchTourRuns,VsCannedSearchTourDeparts,VsCarousel,VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,VsModuleWrapper},props:{apiUrl:{type:String,default:""},searchType:{type:String,default:""},heading:{type:String,default:""},carouselNextText:{type:String,default:"Next slide"},carouselPreviousText:{type:String,default:"Previous slide"}},data(){return{products:[]}},computed:{showLogos(){for(let e=0;e<this.products.length;e++){const n=this.products[e];if(n.awards&&n.awards.length||n.accessGuide||n.covidInformation&&n.covidInformation.goodToGo||n.covidInformation&&n.covidInformation.safeTravels)return!0}return!1}},mounted(){this.apiUrl&&this.retrieveProducts()},methods:{retrieveProducts(){LoadingSpinner.axios.get(this.apiUrl).then(e=>{this.products=e.data.data.products}).catch(()=>{this.products=[]})},fetchSubHeading(e){return this.searchType==="tour"?this.fetchCategoryStrings(e):this.fetchAddress(e)},fetchCategoryStrings(e){return e.category&&e.category.length?e.category.map(n=>n.name).join(", "):""},fetchAddress(e){return e.onlineEvent?e.onlineEvent:e.address?this.searchType==="even"?`${e.eventVenue}, ${e.address.city}`:`${e.address.city}, ${e.address.county}`:""},fetchBadgeOne(e){return this.searchType!=="tour"&&e.category&&e.category.length&&e.category[0]?e.category[0].name:null},fetchMultiBadgeOne(e){return this.searchType==="tour"&&e.tourVehicles&&e.tourVehicles.length?e.tourVehicles.map(n=>n.name):null},fetchBadgeThree(e){return e.covidInformation&&e.covidInformation.weAreOpen?e.covidInformation.weAreOpen:e.opening&&e.opening.nowOn?e.opening.nowOn:""}}},_hoisted_1$1F={class:"vs-canned-search","data-test":"vs-canned-search"};function _sfc_render$1S(e,n,t,o,a,r){const s=vue.resolveComponent("VsCol"),i=vue.resolveComponent("VsRow"),l=vue.resolveComponent("VsContainer"),u=vue.resolveComponent("VsCannedSearchTourRuns"),c=vue.resolveComponent("VsCannedSearchTourDeparts"),d=vue.resolveComponent("VsCannedSearchSubHeading"),v=vue.resolveComponent("VsCannedSearchStars"),m=vue.resolveComponent("VsCannedSearchCategories"),f=vue.resolveComponent("VsCannedSearchLogos"),p=vue.resolveComponent("VsCannedSearchBadges"),g=vue.resolveComponent("VsCannedSearchDates"),_=vue.resolveComponent("VsCannedSearchDuration"),h=vue.resolveComponent("VsCannedSearchPrice"),b=vue.resolveComponent("VsCannedSearchCuisines"),V=vue.resolveComponent("VsCannedSearchSummaryBox"),S=vue.resolveComponent("VsCannedSearchProductCard"),$=vue.resolveComponent("VsCarousel"),w=vue.resolveComponent("VsModuleWrapper");return vue.withDirectives((vue.openBlock(),vue.createBlock(w,null,vue.createSlots({default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$1F,[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.createVNode(i,null,{default:vue.withCtx(()=>[vue.createVNode(s,{cols:"10",offset:"1",md:"8","offset-md":"2",lg:"6","offset-lg":"3",class:"vs-canned-search__buttons"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-canned-search-buttons")]),_:3})]),_:3})]),_:3}),a.products.length?(vue.openBlock(),vue.createBlock($,{key:0,"next-text":t.carouselNextText,"prev-text":t.carouselPreviousText,"slides-xs":1,"slides-md":2,"slides-lg":3},{"vs-carousel-of":vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-canned-search-of")]),default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(a.products,(k,P)=>(vue.openBlock(),vue.createBlock(S,{key:P,"slide-index":`${P}`,"img-src":k.images?k.images[0].mediaUrl:"",title:k.name,"detail-link":{link:k.productLink.link,label:k.productLink.label,type:k.productLink.type.toLowerCase()},description:k.description,"search-type":t.searchType},vue.createSlots({"vs-canned-search-sub-heading":vue.withCtx(()=>[vue.createVNode(d,{"sub-heading":r.fetchSubHeading(k),"line-limit":t.searchType==="tour"?1:2},null,8,["sub-heading","line-limit"])]),"vs-canned-search-badges":vue.withCtx(()=>[vue.createVNode(p,{"badge-one":r.fetchBadgeOne(k),"multi-badge-one":r.fetchMultiBadgeOne(k),"badge-two":k.offers,"badge-three":r.fetchBadgeThree(k)},null,8,["badge-one","multi-badge-one","badge-two","badge-three"])]),"vs-canned-search-summary":vue.withCtx(()=>[vue.createVNode(V,{"link-href":k.website.link,"link-type":k.website.type,"link-label":k.website.label,"link-title":k.name},vue.createSlots({"vs-canned-search-summary-left":vue.withCtx(()=>[t.searchType==="tour"&&k.tourLength?(vue.openBlock(),vue.createBlock(_,{key:0,"duration-intro":k.tourLength.label,duration:k.tourLength.value},null,8,["duration-intro","duration"])):k.price&&t.searchType!=="tour"?(vue.openBlock(),vue.createBlock(h,{key:1,"price-intro":k.price.priceLabel,price:k.price.price,"price-outro":k.price.priceBasis},null,8,["price-intro","price","price-outro"])):k.cuisines?(vue.openBlock(),vue.createBlock(b,{key:2,cuisines:k.cuisines},null,8,["cuisines"])):vue.createCommentVNode("",!0)]),_:2},[k.opening&&t.searchType!=="tour"?{name:"vs-canned-search-summary-top",fn:vue.withCtx(()=>[vue.createVNode(g,{period:k.opening.period,label:k.opening.period.label},null,8,["period","label"])]),key:"0"}:void 0,k.price&&t.searchType==="tour"?{name:"vs-canned-search-summary-centre",fn:vue.withCtx(()=>[vue.createVNode(h,{"price-intro":k.price.priceLabel,price:k.price.price,"price-outro":k.price.priceBasis},null,8,["price-intro","price","price-outro"])]),key:"1"}:void 0]),1032,["link-href","link-type","link-label","link-title"])]),_:2},[t.searchType==="tour"?{name:"vs-canned-search-tour-info",fn:vue.withCtx(()=>[vue.createElementVNode("div",null,[k.opening&&k.opening.period&&k.opening.period.startDay?(vue.openBlock(),vue.createBlock(u,{key:0,label:k.opening.period.label,"start-day":k.opening.period.startDay,"end-day":k.opening.period.endDay},null,8,["label","start-day","end-day"])):vue.createCommentVNode("",!0),k.tourOrigin&&k.tourOrigin.tourOrigin?(vue.openBlock(),vue.createBlock(c,{key:1,label:k.tourOrigin.label,origins:k.tourOrigin.tourOrigin},null,8,["label","origins"])):vue.createCommentVNode("",!0)])]),key:"0"}:void 0,k.grading?{name:"vs-canned-search-star-rating",fn:vue.withCtx(()=>[vue.createVNode(v,{min:k.grading.minStars,max:k.grading.maxStars},null,8,["min","max"])]),key:"1"}:void 0,k.locations?{name:"vs-canned-search-categories",fn:vue.withCtx(()=>[vue.createVNode(m,{categories:k.locations},null,8,["categories"])]),key:"2"}:void 0,r.showLogos?{name:"vs-canned-search-logos",fn:vue.withCtx(()=>[vue.createVNode(f,{"good-to-go-logo":k.covidInformation&&k.covidInformation.goodToGo?k.covidInformation.goodToGo:null,"safe-travels-logo":k.covidInformation&&k.covidInformation.safeTravels?k.covidInformation.safeTravels:null,"access-guide":k.accessGuide||null,awards:k.awards},null,8,["good-to-go-logo","safe-travels-logo","access-guide","awards"])]),key:"3"}:void 0]),1032,["slide-index","img-src","title","detail-link","description","search-type"]))),128))]),_:3},8,["next-text","prev-text"])):vue.createCommentVNode("",!0),e.$slots["vs-canned-search-credit"]?(vue.openBlock(),vue.createBlock(l,{key:1,class:"vs-canned-search__credit-container"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-canned-search-credit")]),_:3})):vue.createCommentVNode("",!0)])]),_:2},[t.heading?{name:"vs-module-wrapper-heading",fn:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.heading),1)]),key:"0"}:void 0,e.$slots["vs-canned-search-intro"]?{name:"vs-module-wrapper-intro",fn:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-canned-search-intro")]),key:"1"}:void 0]),1536)),[[vue.vShow,a.products.length]])}const CannedSearch=LoadingSpinner._export_sfc(_sfc_main$27,[["render",_sfc_render$1S]]),_sfc_main$26={name:"VsCaptionImageMap",status:"prototype",release:"0.0.1",props:{latitude:{type:String,default:""},longitude:{type:String,default:""},mapOutlineColor:{type:String,default:"#191919"},mapMarkerColor:{type:String,default:"#191919"}},data(){return{cornerCoordinates:{NE:61.3,NW:54.4,SE:-9.1,SW:.4},mapWidth:75,mapHeight:104}},computed:{positionY(){const e=Number(this.latitude);return Math.round(this.calculateAxisPosition(this.cornerCoordinates.NE,this.cornerCoordinates.NW,e,this.mapHeight))},positionX(){const e=Number(this.longitude);return Math.round(this.calculateAxisPosition(this.cornerCoordinates.SE,this.cornerCoordinates.SW,e,this.mapWidth))}},methods:{calculateAxisPosition(e,n,t,o){return(t-e)*o/(n-e)}}},_hoisted_1$1E=["width","height"],_hoisted_2$1a=["stroke"],_hoisted_3$X=["stroke"],_hoisted_4$H=["stroke"],_hoisted_5$v=["stroke"],_hoisted_6$l=["stroke"],_hoisted_7$h=["stroke"],_hoisted_8$5=["stroke"],_hoisted_9$5=["stroke"],_hoisted_10$5=["stroke"],_hoisted_11$4=["stroke"],_hoisted_12$3=["stroke"],_hoisted_13$3=["stroke"],_hoisted_14$2=["stroke"],_hoisted_15$2=["stroke"],_hoisted_16$2=["stroke"],_hoisted_17$2=["stroke"],_hoisted_18$1=["stroke"],_hoisted_19$1=["stroke"],_hoisted_20=["stroke"],_hoisted_21=["stroke"],_hoisted_22=["stroke"],_hoisted_23=["stroke"],_hoisted_24=["stroke"],_hoisted_25=["stroke"],_hoisted_26=["stroke"],_hoisted_27=["stroke"],_hoisted_28=["stroke"],_hoisted_29=["stroke"],_hoisted_30=["stroke"],_hoisted_31=["stroke"],_hoisted_32=["width","height"],_hoisted_33=["fill","cx","cy"];function _sfc_render$1R(e,n,t,o,a,r){return vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",width:a.mapWidth,height:a.mapHeight,viewBox:"0 0 76 105.9",class:"vs-caption-image-map","data-test":"vs-caption-image-map"},[vue.createElementVNode("path",{"data-test":"vs-caption-image-map__first-path",d:"M65.9965,9.0973l-.167.736.668.184Z",transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_2$1a),vue.createElementVNode("path",{d:`M64.6595,9.4653l-.668,2.391,
|
|
2
|
-
1.169.368-.334-1.287C64.8265
|
|
3
|
-
10.2013,65.1605,10.2013,64.6595,9.4653Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_3$X),vue.createElementVNode("path",{d:"M66.1635,11.4883l1.336.184-.336-.736Z",transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_4$H),vue.createElementVNode("path",{d:`M62.1546,11.3043l-1.5,1.1c.5.92.8349.736
|
|
4
|
-
1.837.736l-.3341.368h-.173a1.6911,1.6911,0,0,0,1.336.92c-.668
|
|
5
|
-
1.287-1.67,1.1-2.8389,1.655v.368c1.67.736,1.336,1.1,2.506-.184
|
|
6
|
-
1.169,2.391-.5,2.759.668,4.966h.334l.334-1.471v-1.837l.5-1.1-.835-1.655a3.6491
|
|
7
|
-
3.6491,0,0,0,.835-1.839c-.668.368-.668.368-1.336,0C62.3215
|
|
8
|
-
12.7753,62.8235,12.2243,62.1546,11.3043Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_5$v),vue.createElementVNode("path",{d:"M65.9965,13.8793l-.668,1.287,1.169-.368Z",transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_6$l),vue.createElementVNode("path",{d:"M49.46,30.2483l1,.736C50.96,30.2483,50.2945,29.5123,49.46,30.2483Z",transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_7$h),vue.createElementVNode("path",{d:"M52.8005,31.1643l1.67-.552-.17-.548C53.1345,30.2483,52.9675,29.88,52.8005,31.1643Z",transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_8$5),vue.createElementVNode("path",{d:"M51.2975,30.9843l.167,1.655,1.169-1.287Z",transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_9$5),vue.createElementVNode("path",{d:`M48.6245,31.72c.1671,1.655-1,.552-1.5.92s-.334
|
|
9
|
-
1.655-.167,2.207l1.336-.184c.167.92.5.552,1.169.736l.835.368a1.5181,1.5181,0,0,0
|
|
10
|
-
1.8371-.736l-2.172.184.167-.736-1.3421-.184v-.363l.668-.368-.668-.552c.668-.552
|
|
11
|
-
1-.368,1.5-1.287A2.6,2.6,0,0,0,48.6245,31.72Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_10$5),vue.createElementVNode("path",{d:"M50.4625,33.1913l.334.92.835-.92-.169-.184Z",transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_11$4),vue.createElementVNode("path",{d:`M46.6205,36.1343c0,.184.167.552.167.736.167.184.167.368.334.368
|
|
12
|
-
1.169.92,1.336-1.287.167-1.287C46.9545,35.95,46.7875,35.95,46.6205,36.1343Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_12$3),vue.createElementVNode("path",{d:"M49.6265,37.0533l-.334.92,1,.552.334-1.471Z",transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_13$3),vue.createElementVNode("path",{d:`M46.12,39.6283c-1,1.287-1.5.736-2.505.92-.334.184-.668.552-1
|
|
13
|
-
.552-.5.184-1.5-.184-2-.184a14.9016,14.9016,0,0
|
|
14
|
-
0-3.007,1.1l.167.736-1.343-1.469a1.64,1.64,0,0,1-1.5
|
|
15
|
-
1.287l.5-1.655-1.169.368-.668-1.1-1.336,1.1v.552c.5.368.668.368.334.92l.334
|
|
16
|
-
1.1-1.169-.184,1.5,2.207-1.837-.184h-1.5c.668,1.839.835.92-.167
|
|
17
|
-
2.759l-.5-.736c-.167.736.334,1.1.835,1.471a26.8342,26.8342,0,0,1,2.171
|
|
18
|
-
2.207c-1.67,0-1.169-.736-2-1.1-.668-.368-1.5.184-2.171.552l-.835-.92.167
|
|
19
|
-
1.839c-.668-.552-2-1.1-1.5.552,1,0,1,.736-.167,1.1l1.169,1.1,1
|
|
20
|
-
1.287c-1.67.184-1.5-.92-3.174-.368a3.4256,3.4256,0,0,1,.668,2.207c1.336
|
|
21
|
-
0,1.837-.7359,2.673.552h-2.515c.5.736.835.5521,1.5.736l1
|
|
22
|
-
.736c-.668.368-.668.368-1.336.184l.167,1.287.668-.184c0,1.655-.334
|
|
23
|
-
1.1-1.169,1.1l-1.169.184c.835,1.655,1.169.368,2.339,1.471a3.9245,3.9245,0,0
|
|
24
|
-
1-2.506-.184c0,.552-.167,1.288.167,1.655l-.835.184v.92c-1.837-.552-1.67
|
|
25
|
-
0-3.174.552,2.171,1.471,3.174-.552,5.178.368-1.5,1.471-.835-.184-3.341
|
|
26
|
-
1.287.835.92,2.339.552,3.341.552.668-1.471,2-1.1
|
|
27
|
-
2.506-2.023.334-.7359-.334-1.839.668-2.207.668-.368,1.169.552,1
|
|
28
|
-
1.1a1.1582,1.1582,0,0,1-1,.552,3.54,3.54,0,0,0,2.673.7359l-1.5
|
|
29
|
-
1.287-1.837.552-.334,1.655.668.1841,1.336-1.287c-.167.92-.5
|
|
30
|
-
2.207-1.5,2.207-.668,0-1.5-.92-2.171,0-1,.92-.167,2.207-.5
|
|
31
|
-
3.6779l.5.1841-.334.92c1.67.552,2.171-1.1,3.174-2.2071a6.619
|
|
32
|
-
6.619,0,0,1,1.5-.92c.334,1.4709-.668,1.839-1.67,2.207,0,1.287-.835.7359-1
|
|
33
|
-
2.5749a3.8062,3.8062,0,0,1,1.67,1.655l.668-.552.5-3.862h.835l-.167,2.207
|
|
34
|
-
1.837.552c1.336.1841,1.169,0,2.339,1.1-1.169.184-1.67-.1841-2.84-.368a.9569.9569
|
|
35
|
-
0,0,0-1.169.184c-.5.368-.167,1.1-.334,1.655l-.167,1.287c1,.736,2.673,2.023
|
|
36
|
-
1.837,3.678a8.1472,8.1472,0,0,1-1.169,1.287c-.334.552,0,1.1-.5
|
|
37
|
-
1.839-.334.552-1,.736-1.5,1.471-.5,1.1,0,1.655-.167,2.207,0,.368-.334.736-.5
|
|
38
|
-
1.1-.167-.368-.668-1.471-1-1.471-.5-.184-1.169.736-.835,1.471s1.169.736,1.67
|
|
39
|
-
1.1c.668.92.167,1.839,1.5,2.391.167-1.287-.668-2.207.167-2.759,1.169-.552
|
|
40
|
-
2.84,1.839,3.341,2.023,1.5.552,1.336-.736.835-1.655a4.7548,4.7548,0,0
|
|
41
|
-
1-.668-1.287c.334-.184.668-.368,1-.184.668.368.167,1.1
|
|
42
|
-
1.336.736.167.368.167.552.5.7359a2.5229,2.5229,0,0,0,2,.368c.334,0
|
|
43
|
-
.668-.552,1.169-.7359s1.336.184,1.67-.552c.5-.5521.167-1.8391,0-2.575
|
|
44
|
-
1.5.7359,1.5.368,2.673.552.668.184,1.67.552,2.338.184.5-.184.5-.552
|
|
45
|
-
1.336-1.287,2.171-1.655,4.51-3.862,7.015-4.6-.334-1.287-.835-1.287-1-2.023-.334-1.1
|
|
46
|
-
1-2.207,1.837-2.575l-1-2.391-2.672-.92-2-1.1-1.5.3679c0,.552,0
|
|
47
|
-
.92-.5,1.287-1.5.92-3.007-.7359-4.176-.92-.668,0-2.171.552-2.673-.368-.334-.368
|
|
48
|
-
0-.736.334-.92.668-.368,1.336,0,2,.184l1.837.184.167-.552.835.368a2.3569
|
|
49
|
-
2.3569,0,0,1,1.5-2.207c.334,0,.835.368,1.336.184l1.837-.736v-.368a5.49
|
|
50
|
-
5.49,0,0,0-2.84-1.1l.334-.736-.668-.184c-.835,1.1-1.336.736-2.506
|
|
51
|
-
1.1-.334,0-1,.184-1.336,0-.167-.184-.167-.368-.334-.736,2.171.368
|
|
52
|
-
2.171-.92,3.508-1.287.668-.368,1,0,1.837,0a3.77,3.77,0,0,0,3.341-2.207
|
|
53
|
-
5.2019,5.2019,0,0,1-1-.736c-.334-1.1,1.336-1.1
|
|
54
|
-
1.5-1.287.334-.184.668-.92.835-1.1.334-.552,1.169-1.471
|
|
55
|
-
1.336-1.839l.835-2.943.835-.92.668-1.839c.334-.552.668-.368
|
|
56
|
-
1.169-1.471-1.336-1.288-.835-2.575-2-2.943s-2.505.736-4.176
|
|
57
|
-
.92-2.673-.92-3.341-.92l-1.837.368-2.338-.552c-1
|
|
58
|
-
0-3.174,1.287-4.176,1.655l-1.169.552c-.334.184-.835.92-1.5
|
|
59
|
-
1.471-.5.184-2.338.736-2.673.184-.334-.184-.167-.552,0-.736.5-.368,1,0
|
|
60
|
-
1.5,0a8.5374,8.5374,0,0,0,2.171-2.207c-1.5-.552-1.336.736-3.007
|
|
61
|
-
1.1l.5-1.839c1.67.184,1.336-.368,2.506-.552a4.4993,4.4993,0,0,1,1.5.368c0-1.471.5-.92
|
|
62
|
-
1.169-2.207l-1.837.736c-1-.368-2.338.184-3.007-1.1h2.673l-.668-1.287a8.2712
|
|
63
|
-
8.2712,0,0,0,2.506-1.1,6.33,6.33,0,0,0,1.837-1.1l.835-1.1,1.336-1.1c.835-.736
|
|
64
|
-
2.171-1.2871,2-2.7591h.5c-.334-1.287-.668-1.287.167-2.0229l-1.67-.1841Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_14$2),vue.createElementVNode("path",{d:`M17.2225,46.4343c-.5-1.1-.835-1.1-1.837-.736l.167.736c-1.169.736-.835
|
|
65
|
-
1.471.167,1.1l.334.92h-1l-.167.552a1.521,1.521,0,0,1,1.169,1.471l-1.339.555c.5.736
|
|
66
|
-
1.336,1.287,2,.552.334-.184.5-.92.835-1.1.167-.184.835,0,1.169,0a3.0538
|
|
67
|
-
3.0538,0,0,0-1.336-2.207l.835-.368a.8581.8581,0,0,0,.5.92c.835.736,1.67,0
|
|
68
|
-
2.506-.368-.334-1.287-1.336-1.1-2.338-1.1l2.673-.736c-.5-2.023.5-1.839
|
|
69
|
-
2-2.391l-.334-1.287c0-.368.334-1.1-.334-1.471-.5-.552-1.5.736-1.837,1.1-1.336
|
|
70
|
-
1.287-1.837.92-2.506,1.471S18.5585,45.1463,17.2225,46.4343Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_15$2),vue.createElementVNode("path",{d:"M22.0665,45.33v.736c1-.368,1.5.184,2-.92Z",transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_16$2),vue.createElementVNode("path",{d:`M20.8965,52.8713l-1,.92.5,1.471c-1.5.184-1-.736-2.171-1.1l.334
|
|
71
|
-
2.759-1.5-.92c-.167,1.1.334,1.655,1.169,2.391l.5-.552c1.5-.552.668,2.575
|
|
72
|
-
1.67,2.943.835.552,1.169-1.1,2,.184.5-.184,1.5-.552,1.336.552-.167.368-.668.736-.835
|
|
73
|
-
1.1,1.336,0,1.336-.736,1.837-1.655l.668-.92a3.848,3.848,0,0
|
|
74
|
-
1-2.84-1.839l-.5-3.311A3.0591,3.0591,0,0,0,20.8965,52.8713Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_17$2),vue.createElementVNode("path",{d:`M12.5415,54.1593c-.5-.736-.668-.552-1.336-.736l-.167.736c.167,0
|
|
75
|
-
.5.184.668.184,1.336.92,0,2.575-.167,3.678-.167.92.167,1.655-.334
|
|
76
|
-
3.311h1.169a22.2511,22.2511,0,0,1,.334-3.311c.167-1.287,0-1.839
|
|
77
|
-
1-2.759l-.167-1.1c.668-.184.835-.184,1.169-.92C13.38,53.0553
|
|
78
|
-
13.2125,52.8713,12.5415,54.1593Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_18$1),vue.createElementVNode("path",{d:`M23.9035,55.8133c-.334.736-.5,1.1-1.169,1.287,0,2.023,1
|
|
79
|
-
1.471,1.169,1.1A11.4313,11.4313,0,0,0,23.9035,55.8133Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_19$1),vue.createElementVNode("path",{d:`M10.5405,62.0673l-.835.736a4.3288,4.3288,0,0
|
|
80
|
-
1-.835,2.942l.167.184,1.333-2.023.5-1.1Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_20),vue.createElementVNode("path",{d:"M19.8945,62.6193l-.334,1.1,1.837-.184Z",transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_21),vue.createElementVNode("path",{d:`M18.7255,67.5843c-1.169.92-1.837.92-2,2.207a5.2615,5.2615,0,0
|
|
81
|
-
0-2.84.92c.167.184.167.368.5.368.835.184,2.84-1.471,3.508-2.023C18.3915
|
|
82
|
-
68.6843,18.8925,68.32,18.7255,67.5843Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_22),vue.createElementVNode("path",{d:`M21.3975,68.1363c-1,1.1-1.336.368-1.5,1.655.668.184.668.368,1
|
|
83
|
-
.92l1.336.184-1,.736,1.169.736-3.343.919c.167.184.167.368.334.552.5.184
|
|
84
|
-
1.5.368,1.837,0a1.5054,1.5054,0,0,0,.167-.736c1.67.552.835-.552
|
|
85
|
-
2.673-.184a1.6551,1.6551,0,0,1,1.67-.92c-.167-1.839-.835-1.287-1.837-2.023C23.0685
|
|
86
|
-
69.4233,23.2355,69.0563,21.3975,68.1363Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_23),vue.createElementVNode("path",{d:`M22.4,80.4613c.5-1.1.668-1.1.167-2.207.334,0,.668.184,1,0
|
|
87
|
-
.668-.184,1.336-1.839,1.5-2.391-1.169,0-2.171,1.1-2.84,2.0231C21.7315
|
|
88
|
-
78.62,20.73,79.3563,22.4,80.4613Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_24),vue.createElementVNode("path",{d:`M26.0755,76.4133c-.835,1.287-.334,1.287-.5
|
|
89
|
-
2.207-.334.92-.668.736-.835,2.207,1.169.184,1.169.184,2.171-.736-.167
|
|
90
|
-
1.471-3.174,2.943-1.837,4.966l-.334.3681v.1839c2.171-.368,2-2.575
|
|
91
|
-
2.506-3.4939.167-.736.835-.92.668-1.655,0-.552-.668-1.287-.835-1.839
|
|
92
|
-
0-.552.167-.92.167-1.471Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_25),vue.createElementVNode("path",{d:"M20.5605,76.5973l-1,.736C20.0605,77.5173,20.73,77.3333,20.5605,76.5973Z",transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_26),vue.createElementVNode("path",{d:"M27.5785,78.9883c.668.92,2,2.391,3.174,2.207-.334-.552-.334-.92-1-1.1v-.736Z",transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_27),vue.createElementVNode("path",{d:`M18.7255,83.4023c.668-.1839.668-.1839.835-.92.167,0
|
|
93
|
-
.334.184.668,0,1.5,0,.835-1.287.5-2.207l-.333-1.103c-1.169.552-.668.92-1
|
|
94
|
-
2.023A6.64,6.64,0,0,0,18.7255,83.4023Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_28),vue.createElementVNode("path",{d:`M18.8885,79.3553l-1.336,1.1.167.736-.835.92.167.184C18.2245
|
|
95
|
-
81.93,19.7285,81.01,18.8885,79.3553Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_29),vue.createElementVNode("path",{d:`M28.2465,82.1143c-.668.92-.5,1.287-.5,2.391,0,.552,0
|
|
96
|
-
1.288.668,1.288C29.75,85.6083,29.2485,82.85,28.2465,82.1143Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_30),vue.createElementVNode("path",{d:`M23.2355,88.1793c1.5-.92.5-.736,2.506-.92C24.5725
|
|
97
|
-
85.0573,23.0685,85.9793,23.2355,88.1793Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_31),vue.createElementVNode("rect",{width:a.mapWidth,height:a.mapHeight,fill:"none"},null,8,_hoisted_32),vue.createElementVNode("circle",{r:"4","data-test":"vs-caption-image-map__marker",fill:t.mapMarkerColor,cx:r.positionX,cy:r.positionY},null,8,_hoisted_33)],8,_hoisted_1$1E)}const VsCaptionImageMap=LoadingSpinner._export_sfc(_sfc_main$26,[["render",_sfc_render$1R]]),_sfc_main$25={name:"VsCaption",status:"deprecated",release:"0.0.1",components:{VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,VsContainer:LoadingSpinner.VsContainer,VsCaptionImageMap},props:{variant:{type:String,default:"fullwidth",validator:e=>e.match(/(fullwidth|large)/)},theme:{type:String,default:"bold",validator:e=>e.match(/(bold|subtle)/)},latitude:{type:String,default:""},longitude:{type:String,default:""},textAlign:{type:String,default:"left",validator:e=>e.match(/(left|right)/)}},data(){return{tokens:LoadingSpinner.designTokens}},computed:{showMap(){return!!(this.longitude&&this.latitude)},isLargeCaption(){return this.variant==="large"},captionClasses(){return[{"vs-caption--large":this.isLargeCaption,"vs-caption--fullwidth":!this.isLargeCaption},`vs-caption--${this.textAlign}`,`vs-caption--${this.theme}`]}}},_hoisted_1$1D={class:"vs-caption__caption-info"},_hoisted_2$19={key:0,class:"vs-caption__image-caption"},_hoisted_3$W={key:1,class:"vs-caption__image-credit"},_hoisted_4$G={class:"vs-caption__map-wrapper pt-075 pt-sm-050 pb-sm-050 mx-auto"};function _sfc_render$1Q(e,n,t,o,a,r){const s=vue.resolveComponent("VsCol"),i=vue.resolveComponent("VsCaptionImageMap"),l=vue.resolveComponent("VsRow"),u=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("div",{"data-test":"vs-caption",class:vue.normalizeClass(["vs-caption",r.captionClasses])},[vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(l,{class:"justify-content-center justify-content-sm-start"},{default:vue.withCtx(()=>[vue.createVNode(s,{class:vue.normalizeClass(["order-2 order-sm-1",[r.showMap?"":"align-self-center"]])},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$1D,[e.$slots.caption?(vue.openBlock(),vue.createElementBlock("p",_hoisted_2$19,[vue.renderSlot(e.$slots,"caption")])):vue.createCommentVNode("",!0),e.$slots.credit?(vue.openBlock(),vue.createElementBlock("p",_hoisted_3$W,[vue.renderSlot(e.$slots,"credit")])):vue.createCommentVNode("",!0)])]),_:3},8,["class"]),r.showMap&&r.isLargeCaption?(vue.openBlock(),vue.createBlock(s,{key:0,class:"col-12 col-sm-auto order-1 order-sm-2 ps-sm-0 align-self-end align-self-sm-start"},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_4$G,[vue.createVNode(i,{latitude:t.latitude,longitude:t.longitude,"map-outline-color":a.tokens["vs-color-icon-inverse"],"map-marker-color":a.tokens["vs-color-background-accent-tolsta-40"]},null,8,["latitude","longitude","map-outline-color","map-marker-color"])])]),_:1})):vue.createCommentVNode("",!0)]),_:3})]),_:3})],2)}const Caption=LoadingSpinner._export_sfc(_sfc_main$25,[["render",_sfc_render$1Q]]),_sfc_main$24={name:"VsProgressBar",status:"prototype",release:"0.1.0",components:{BProgress:LoadingSpinner.Zo,BProgressBar:LoadingSpinner.Yo},props:{max:{type:Number,required:!0},currentStep:{type:Number,required:!0},isStepped:{type:Boolean,required:!1},isFull:{type:Boolean,required:!1},progressLabel:{type:String,default:""}},data(){return{compId:null}},computed:{computedClasses(){let e="";return this.isFull&&(e+="vs-progress-bar--full "),this.isStepped&&(e+="vs-progress-bar--stepped "),e},interpolProgressLabel(){if(this.progressLabel){let e=this.progressLabel.replace("xxx",this.currentStep);return e=e.replace("yyy",this.max),e}return""}},mounted(){const e=vue.getCurrentInstance();this.compId=vue.ref(e.uid)}},_hoisted_1$1C={key:1,class:"vs-progress-bar__stepper"},_hoisted_2$18=["id"],_hoisted_3$V=["id"];function _sfc_render$1P(e,n,t,o,a,r){const s=vue.resolveComponent("BProgressBar"),i=vue.resolveComponent("BProgress");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-progress-bar",r.computedClasses]),"data-test":"vs-progress-bar"},[!t.isStepped||t.max>5?(vue.openBlock(),vue.createBlock(i,{key:0,max:t.max},{default:vue.withCtx(()=>[vue.createVNode(s,{value:t.currentStep,"aria-labelledBy":`progress-bar-${a.compId}`},null,8,["value","aria-labelledBy"])]),_:1},8,["max"])):vue.createCommentVNode("",!0),t.isStepped&&t.max<=5?(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1C,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(t.max,l=>(vue.openBlock(),vue.createBlock(i,{key:l,max:1},{default:vue.withCtx(()=>[vue.createVNode(s,{value:l<=t.currentStep?1:0,"aria-labelledBy":`progress-bar-${a.compId}`},null,8,["value","aria-labelledBy"])]),_:2},1024))),128))])):vue.createCommentVNode("",!0),r.interpolProgressLabel?(vue.openBlock(),vue.createElementBlock("p",{key:2,class:"vs-progress-bar__label",id:`progress-bar-${a.compId}`},vue.toDisplayString(r.interpolProgressLabel),9,_hoisted_2$18)):(vue.openBlock(),vue.createElementBlock("p",{key:3,class:"vs-progress-bar__label",id:`progress-bar-${a.compId}`},vue.toDisplayString(t.currentStep)+" / "+vue.toDisplayString(t.max),9,_hoisted_3$V))],2)}const VsProgressBar=LoadingSpinner._export_sfc(_sfc_main$24,[["render",_sfc_render$1P]]),_sfc_main$23={name:"VsCarbonCalculatorTip",status:"prototype",release:"0.0.1",components:{VsIcon:LoadingSpinner.VsIcon,VsHeading:LoadingSpinner.VsHeading},inject:["labelsMap"],props:{tip:{type:String,default:""},showingAllTips:{type:Boolean,default:!1}}},_hoisted_1$1B={class:"vs-carbon-calculator-tip","data-test":"vs-carbon-calculator-tip"},_hoisted_2$17={class:"vs-carbon-calculator-tip__icon-container"},_hoisted_3$U={class:"vs-carbon-calculator-tip__content"},_hoisted_4$F=["innerHTML"],_hoisted_5$u=["innerHTML"];function _sfc_render$1O(e,n,t,o,a,r){const s=vue.resolveComponent("VsIcon"),i=vue.resolveComponent("VsHeading");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1B,[vue.createElementVNode("div",_hoisted_2$17,[vue.createVNode(s,{icon:"fa-kit fa-vs-coo-head",size:"lg",variant:"highlight",class:"vs-carbon-calculator-tip__icon"})]),vue.createElementVNode("div",_hoisted_3$U,[vue.createVNode(i,{level:"3","heading-style":"heading-xs"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.labelsMap.topTip),1)]),_:1}),t.showingAllTips?(vue.openBlock(),vue.createElementBlock("p",{key:0,class:"vs-carbon-calculator-tip__content","data-test":"vs-carbon-calculator-tip__summary",innerHTML:r.labelsMap.allTips},null,8,_hoisted_4$F)):vue.createCommentVNode("",!0),t.showingAllTips?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createElementBlock("p",{key:1,class:"vs-carbon-calculator-tip__content","data-test":"vs-carbon-calculator-tip__content",innerHTML:t.tip},null,8,_hoisted_5$u))])])}const VsCarbonCalculatorTip=LoadingSpinner._export_sfc(_sfc_main$23,[["render",_sfc_render$1O]]);function _isPlaceholder(e){return e!=null&&typeof e=="object"&&e["@@functional/placeholder"]===!0}function _curry1(e){return function n(t){return arguments.length===0||_isPlaceholder(t)?n:e.apply(this,arguments)}}function _curry2(e){return function n(t,o){switch(arguments.length){case 0:return n;case 1:return _isPlaceholder(t)?n:_curry1(function(a){return e(t,a)});default:return _isPlaceholder(t)&&_isPlaceholder(o)?n:_isPlaceholder(t)?_curry1(function(a){return e(a,o)}):_isPlaceholder(o)?_curry1(function(a){return e(t,a)}):e(t,o)}}}function _arity(e,n){switch(e){case 0:return function(){return n.apply(this,arguments)};case 1:return function(t){return n.apply(this,arguments)};case 2:return function(t,o){return n.apply(this,arguments)};case 3:return function(t,o,a){return n.apply(this,arguments)};case 4:return function(t,o,a,r){return n.apply(this,arguments)};case 5:return function(t,o,a,r,s){return n.apply(this,arguments)};case 6:return function(t,o,a,r,s,i){return n.apply(this,arguments)};case 7:return function(t,o,a,r,s,i,l){return n.apply(this,arguments)};case 8:return function(t,o,a,r,s,i,l,u){return n.apply(this,arguments)};case 9:return function(t,o,a,r,s,i,l,u,c){return n.apply(this,arguments)};case 10:return function(t,o,a,r,s,i,l,u,c,d){return n.apply(this,arguments)};default:throw new Error("First argument to _arity must be a non-negative integer no greater than ten")}}function _curryN(e,n,t){return function(){for(var o=[],a=0,r=e,s=0;s<n.length||a<arguments.length;){var i;s<n.length&&(!_isPlaceholder(n[s])||a>=arguments.length)?i=n[s]:(i=arguments[a],a+=1),o[s]=i,_isPlaceholder(i)||(r-=1),s+=1}return r<=0?t.apply(this,o):_arity(r,_curryN(e,o,t))}}var curryN=_curry2(function(n,t){return n===1?_curry1(t):_arity(n,_curryN(n,[],t))});function _curry3(e){return function n(t,o,a){switch(arguments.length){case 0:return n;case 1:return _isPlaceholder(t)?n:_curry2(function(r,s){return e(t,r,s)});case 2:return _isPlaceholder(t)&&_isPlaceholder(o)?n:_isPlaceholder(t)?_curry2(function(r,s){return e(r,o,s)}):_isPlaceholder(o)?_curry2(function(r,s){return e(t,r,s)}):_curry1(function(r){return e(t,o,r)});default:return _isPlaceholder(t)&&_isPlaceholder(o)&&_isPlaceholder(a)?n:_isPlaceholder(t)&&_isPlaceholder(o)?_curry2(function(r,s){return e(r,s,a)}):_isPlaceholder(t)&&_isPlaceholder(a)?_curry2(function(r,s){return e(r,o,s)}):_isPlaceholder(o)&&_isPlaceholder(a)?_curry2(function(r,s){return e(t,r,s)}):_isPlaceholder(t)?_curry1(function(r){return e(r,o,a)}):_isPlaceholder(o)?_curry1(function(r){return e(t,r,a)}):_isPlaceholder(a)?_curry1(function(r){return e(t,o,r)}):e(t,o,a)}}}var _isArray=Array.isArray||function(n){return n!=null&&n.length>=0&&Object.prototype.toString.call(n)==="[object Array]"};function _isTransformer(e){return e!=null&&typeof e["@@transducer/step"]=="function"}function _dispatchable(e,n,t){return function(){if(arguments.length===0)return t();var o=arguments[arguments.length-1];if(!_isArray(o)){for(var a=0;a<e.length;){if(typeof o[e[a]]=="function")return o[e[a]].apply(o,Array.prototype.slice.call(arguments,0,-1));a+=1}if(_isTransformer(o)){var r=n.apply(null,Array.prototype.slice.call(arguments,0,-1));return r(o)}}return t.apply(this,arguments)}}var _xfBase={init:function(){return this.xf["@@transducer/init"]()},result:function(e){return this.xf["@@transducer/result"](e)}};function _map(e,n){for(var t=0,o=n.length,a=Array(o);t<o;)a[t]=e(n[t]),t+=1;return a}function _isString(e){return Object.prototype.toString.call(e)==="[object String]"}var _isArrayLike=_curry1(function(n){return _isArray(n)?!0:!n||typeof n!="object"||_isString(n)?!1:n.length===0?!0:n.length>0?n.hasOwnProperty(0)&&n.hasOwnProperty(n.length-1):!1}),XWrap=function(){function e(n){this.f=n}return e.prototype["@@transducer/init"]=function(){throw new Error("init not implemented on XWrap")},e.prototype["@@transducer/result"]=function(n){return n},e.prototype["@@transducer/step"]=function(n,t){return this.f(n,t)},e}();function _xwrap(e){return new XWrap(e)}var bind=_curry2(function(n,t){return _arity(n.length,function(){return n.apply(t,arguments)})});function _arrayReduce(e,n,t){for(var o=0,a=t.length;o<a;){if(n=e["@@transducer/step"](n,t[o]),n&&n["@@transducer/reduced"]){n=n["@@transducer/value"];break}o+=1}return e["@@transducer/result"](n)}function _iterableReduce(e,n,t){for(var o=t.next();!o.done;){if(n=e["@@transducer/step"](n,o.value),n&&n["@@transducer/reduced"]){n=n["@@transducer/value"];break}o=t.next()}return e["@@transducer/result"](n)}function _methodReduce(e,n,t,o){return e["@@transducer/result"](t[o](bind(e["@@transducer/step"],e),n))}var symIterator=typeof Symbol<"u"?Symbol.iterator:"@@iterator";function _reduce(e,n,t){if(typeof e=="function"&&(e=_xwrap(e)),_isArrayLike(t))return _arrayReduce(e,n,t);if(typeof t["fantasy-land/reduce"]=="function")return _methodReduce(e,n,t,"fantasy-land/reduce");if(t[symIterator]!=null)return _iterableReduce(e,n,t[symIterator]());if(typeof t.next=="function")return _iterableReduce(e,n,t);if(typeof t.reduce=="function")return _methodReduce(e,n,t,"reduce");throw new TypeError("reduce: list must be array or iterable")}var XMap=function(){function e(n,t){this.xf=t,this.f=n}return e.prototype["@@transducer/init"]=_xfBase.init,e.prototype["@@transducer/result"]=_xfBase.result,e.prototype["@@transducer/step"]=function(n,t){return this.xf["@@transducer/step"](n,this.f(t))},e}(),_xmap=_curry2(function(n,t){return new XMap(n,t)});function _has(e,n){return Object.prototype.hasOwnProperty.call(n,e)}var toString$1=Object.prototype.toString,_isArguments=function(){return toString$1.call(arguments)==="[object Arguments]"?function(n){return toString$1.call(n)==="[object Arguments]"}:function(n){return _has("callee",n)}}(),hasEnumBug=!{toString:null}.propertyIsEnumerable("toString"),nonEnumerableProps=["constructor","valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"],hasArgsEnumBug=function(){return arguments.propertyIsEnumerable("length")}(),contains=function(n,t){for(var o=0;o<n.length;){if(n[o]===t)return!0;o+=1}return!1},keys=_curry1(typeof Object.keys=="function"&&!hasArgsEnumBug?function(n){return Object(n)!==n?[]:Object.keys(n)}:function(n){if(Object(n)!==n)return[];var t,o,a=[],r=hasArgsEnumBug&&_isArguments(n);for(t in n)_has(t,n)&&(!r||t!=="length")&&(a[a.length]=t);if(hasEnumBug)for(o=nonEnumerableProps.length-1;o>=0;)t=nonEnumerableProps[o],_has(t,n)&&!contains(a,t)&&(a[a.length]=t),o-=1;return a}),map$1=_curry2(_dispatchable(["fantasy-land/map","map"],_xmap,function(n,t){switch(Object.prototype.toString.call(t)){case"[object Function]":return curryN(t.length,function(){return n.call(this,t.apply(this,arguments))});case"[object Object]":return _reduce(function(o,a){return o[a]=n(t[a]),o},{},keys(t));default:return _map(n,t)}})),map$2=map$1,_isInteger=Number.isInteger||function(n){return n<<0===n},nth=_curry2(function(n,t){var o=n<0?t.length+n:n;return _isString(t)?t.charAt(o):t[o]}),nth$1=nth,prop=_curry2(function(n,t){if(t!=null)return _isInteger(n)?nth$1(n,t):t[n]}),prop$1=prop,reduce=_curry3(_reduce),reduce$1=reduce,values=_curry1(function(n){for(var t=keys(n),o=t.length,a=[],r=0;r<o;)a[r]=n[t[r]],r+=1;return a}),values$1=values;function _isFunction(e){var n=Object.prototype.toString.call(e);return n==="[object Function]"||n==="[object AsyncFunction]"||n==="[object GeneratorFunction]"||n==="[object AsyncGeneratorFunction]"}var type=_curry1(function(n){return n===null?"Null":n===void 0?"Undefined":Object.prototype.toString.call(n).slice(8,-1)});function _pipe(e,n){return function(){return n.call(this,e.apply(this,arguments))}}function _checkForMethod(e,n){return function(){var t=arguments.length;if(t===0)return n();var o=arguments[t-1];return _isArray(o)||typeof o[e]!="function"?n.apply(this,arguments):o[e].apply(o,Array.prototype.slice.call(arguments,0,t-1))}}var slice=_curry3(_checkForMethod("slice",function(n,t,o){return Array.prototype.slice.call(o,n,t)})),tail=_curry1(_checkForMethod("tail",slice(1,1/0))),tail$1=tail;function pipe(){if(arguments.length===0)throw new Error("pipe requires at least one argument");return _arity(arguments[0].length,reduce$1(_pipe,arguments[0],tail$1(arguments)))}function _arrayFromIterator(e){for(var n=[],t;!(t=e.next()).done;)n.push(t.value);return n}function _includesWith(e,n,t){for(var o=0,a=t.length;o<a;){if(e(n,t[o]))return!0;o+=1}return!1}function _functionName(e){var n=String(e).match(/^function (\w*)/);return n==null?"":n[1]}function _objectIs(e,n){return e===n?e!==0||1/e===1/n:e!==e&&n!==n}var _objectIs$1=typeof Object.is=="function"?Object.is:_objectIs;function _uniqContentEquals(e,n,t,o){var a=_arrayFromIterator(e),r=_arrayFromIterator(n);function s(i,l){return _equals(i,l,t.slice(),o.slice())}return!_includesWith(function(i,l){return!_includesWith(s,l,i)},r,a)}function _equals(e,n,t,o){if(_objectIs$1(e,n))return!0;var a=type(e);if(a!==type(n))return!1;if(typeof e["fantasy-land/equals"]=="function"||typeof n["fantasy-land/equals"]=="function")return typeof e["fantasy-land/equals"]=="function"&&e["fantasy-land/equals"](n)&&typeof n["fantasy-land/equals"]=="function"&&n["fantasy-land/equals"](e);if(typeof e.equals=="function"||typeof n.equals=="function")return typeof e.equals=="function"&&e.equals(n)&&typeof n.equals=="function"&&n.equals(e);switch(a){case"Arguments":case"Array":case"Object":if(typeof e.constructor=="function"&&_functionName(e.constructor)==="Promise")return e===n;break;case"Boolean":case"Number":case"String":if(!(typeof e==typeof n&&_objectIs$1(e.valueOf(),n.valueOf())))return!1;break;case"Date":if(!_objectIs$1(e.valueOf(),n.valueOf()))return!1;break;case"Error":return e.name===n.name&&e.message===n.message;case"RegExp":if(!(e.source===n.source&&e.global===n.global&&e.ignoreCase===n.ignoreCase&&e.multiline===n.multiline&&e.sticky===n.sticky&&e.unicode===n.unicode))return!1;break}for(var r=t.length-1;r>=0;){if(t[r]===e)return o[r]===n;r-=1}switch(a){case"Map":return e.size!==n.size?!1:_uniqContentEquals(e.entries(),n.entries(),t.concat([e]),o.concat([n]));case"Set":return e.size!==n.size?!1:_uniqContentEquals(e.values(),n.values(),t.concat([e]),o.concat([n]));case"Arguments":case"Array":case"Object":case"Boolean":case"Number":case"String":case"Date":case"Error":case"RegExp":case"Int8Array":case"Uint8Array":case"Uint8ClampedArray":case"Int16Array":case"Uint16Array":case"Int32Array":case"Uint32Array":case"Float32Array":case"Float64Array":case"ArrayBuffer":break;default:return!1}var s=keys(e);if(s.length!==keys(n).length)return!1;var i=t.concat([e]),l=o.concat([n]);for(r=s.length-1;r>=0;){var u=s[r];if(!(_has(u,n)&&_equals(n[u],e[u],i,l)))return!1;r-=1}return!0}var equals=_curry2(function(n,t){return _equals(n,t,[],[])});function _indexOf(e,n,t){var o,a;if(typeof e.indexOf=="function")switch(typeof n){case"number":if(n===0){for(o=1/n;t<e.length;){if(a=e[t],a===0&&1/a===o)return t;t+=1}return-1}else if(n!==n){for(;t<e.length;){if(a=e[t],typeof a=="number"&&a!==a)return t;t+=1}return-1}return e.indexOf(n,t);case"string":case"boolean":case"function":case"undefined":return e.indexOf(n,t);case"object":if(n===null)return e.indexOf(n,t)}for(;t<e.length;){if(equals(e[t],n))return t;t+=1}return-1}function _includes(e,n){return _indexOf(n,e,0)>=0}function _quote(e){var n=e.replace(/\\/g,"\\\\").replace(/[\b]/g,"\\b").replace(/\f/g,"\\f").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\t/g,"\\t").replace(/\v/g,"\\v").replace(/\0/g,"\\0");return'"'+n.replace(/"/g,'\\"')+'"'}var pad=function(n){return(n<10?"0":"")+n},_toISOString=typeof Date.prototype.toISOString=="function"?function(n){return n.toISOString()}:function(n){return n.getUTCFullYear()+"-"+pad(n.getUTCMonth()+1)+"-"+pad(n.getUTCDate())+"T"+pad(n.getUTCHours())+":"+pad(n.getUTCMinutes())+":"+pad(n.getUTCSeconds())+"."+(n.getUTCMilliseconds()/1e3).toFixed(3).slice(2,5)+"Z"};function _complement(e){return function(){return!e.apply(this,arguments)}}function _filter(e,n){for(var t=0,o=n.length,a=[];t<o;)e(n[t])&&(a[a.length]=n[t]),t+=1;return a}function _isObject(e){return Object.prototype.toString.call(e)==="[object Object]"}var XFilter=function(){function e(n,t){this.xf=t,this.f=n}return e.prototype["@@transducer/init"]=_xfBase.init,e.prototype["@@transducer/result"]=_xfBase.result,e.prototype["@@transducer/step"]=function(n,t){return this.f(t)?this.xf["@@transducer/step"](n,t):n},e}(),_xfilter=_curry2(function(n,t){return new XFilter(n,t)}),filter$1=_curry2(_dispatchable(["fantasy-land/filter","filter"],_xfilter,function(e,n){return _isObject(n)?_reduce(function(t,o){return e(n[o])&&(t[o]=n[o]),t},{},keys(n)):_filter(e,n)})),reject=_curry2(function(n,t){return filter$1(_complement(n),t)});function _toString(e,n){var t=function(s){var i=n.concat([e]);return _includes(s,i)?"<Circular>":_toString(s,i)},o=function(r,s){return _map(function(i){return _quote(i)+": "+t(r[i])},s.slice().sort())};switch(Object.prototype.toString.call(e)){case"[object Arguments]":return"(function() { return arguments; }("+_map(t,e).join(", ")+"))";case"[object Array]":return"["+_map(t,e).concat(o(e,reject(function(r){return/^\d+$/.test(r)},keys(e)))).join(", ")+"]";case"[object Boolean]":return typeof e=="object"?"new Boolean("+t(e.valueOf())+")":e.toString();case"[object Date]":return"new Date("+(isNaN(e.valueOf())?t(NaN):_quote(_toISOString(e)))+")";case"[object Null]":return"null";case"[object Number]":return typeof e=="object"?"new Number("+t(e.valueOf())+")":1/e===-1/0?"-0":e.toString(10);case"[object String]":return typeof e=="object"?"new String("+t(e.valueOf())+")":_quote(e);case"[object Undefined]":return"undefined";default:if(typeof e.toString=="function"){var a=e.toString();if(a!=="[object Object]")return a}return"{"+o(e,keys(e)).join(", ")+"}"}}var toString=_curry1(function(n){return _toString(n,[])}),curry=_curry1(function(n){return curryN(n.length,n)}),curry$1=curry,invoker=_curry2(function(n,t){return curryN(n+1,function(){var o=arguments[n];if(o!=null&&_isFunction(o[t]))return o[t].apply(o,Array.prototype.slice.call(arguments,0,n));throw new TypeError(toString(o)+' does not have a method named "'+t+'"')})}),invoker$1=invoker,is=_curry2(function(n,t){return t instanceof n||t!=null&&(t.constructor===n||n.name==="Object"&&typeof t=="object")}),is$1=is,join=invoker$1(1,"join"),join$1=join,mergeWithKey=_curry3(function(n,t,o){var a={},r;for(r in t)_has(r,t)&&(a[r]=_has(r,o)?n(r,t[r],o[r]):t[r]);for(r in o)_has(r,o)&&!_has(r,a)&&(a[r]=o[r]);return a}),mergeDeepWithKey=_curry3(function e(n,t,o){return mergeWithKey(function(a,r,s){return _isObject(r)&&_isObject(s)?e(n,r,s):n(a,r,s)},t,o)}),mergeDeepLeft=_curry2(function(n,t){return mergeDeepWithKey(function(o,a,r){return a},n,t)}),mergeDeepLeft$1=mergeDeepLeft,omit=_curry2(function(n,t){for(var o={},a={},r=0,s=n.length;r<s;)a[n[r]]=1,r+=1;for(var i in t)a.hasOwnProperty(i)||(o[i]=t[i]);return o}),omit$1=omit,pickBy=_curry2(function(n,t){var o={};for(var a in t)n(t[a],a,t)&&(o[a]=t[a]);return o}),pickBy$1=pickBy,split=invoker$1(1,"split"),split$1=split,toLower=invoker$1(0,"toLowerCase"),toLower$1=toLower,zipObj=_curry2(function(n,t){for(var o=0,a=Math.min(n.length,t.length),r={};o<a;)r[n[o]]=t[o],o+=1;return r}),zipObj$1=zipObj;pipe(toLower$1,split$1(" "),join$1("-"));const getCol=curry$1((e,n)=>is$1(Number)?map$2(t=>nth$1(e,t)||"",n).filter(t=>t!==""):map$2(prop$1(e),n)),mapKeys=(e,n)=>zipObj$1(map$2(e,keys(n)),values$1(n)),kebabize=e=>e.split("").map((n,t)=>n.toUpperCase()===n?`${t!==0?"-":""}${n.toLowerCase()}`:n).join("");function ascending$1(e,n){return e==null||n==null?NaN:e<n?-1:e>n?1:e>=n?0:NaN}function descending$1(e,n){return e==null||n==null?NaN:n<e?-1:n>e?1:n>=e?0:NaN}function bisector(e){let n,t,o;e.length!==2?(n=ascending$1,t=(i,l)=>ascending$1(e(i),l),o=(i,l)=>e(i)-l):(n=e===ascending$1||e===descending$1?e:zero$1,t=e,o=e);function a(i,l,u=0,c=i.length){if(u<c){if(n(l,l)!==0)return c;do{const d=u+c>>>1;t(i[d],l)<0?u=d+1:c=d}while(u<c)}return u}function r(i,l,u=0,c=i.length){if(u<c){if(n(l,l)!==0)return c;do{const d=u+c>>>1;t(i[d],l)<=0?u=d+1:c=d}while(u<c)}return u}function s(i,l,u=0,c=i.length){const d=a(i,l,u,c-1);return d>u&&o(i[d-1],l)>-o(i[d],l)?d-1:d}return{left:a,center:s,right:r}}function zero$1(){return 0}function number$2(e){return e===null?NaN:+e}const ascendingBisect=bisector(ascending$1),bisectRight=ascendingBisect.right,bisectCenter=bisector(number$2).center;function extent(e,n){let t,o;for(const a of e)a!=null&&(t===void 0?a>=a&&(t=o=a):(t>a&&(t=a),o<a&&(o=a)));return[t,o]}class InternMap extends Map{constructor(n,t=keyof){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:t}}),n!=null)for(const[o,a]of n)this.set(o,a)}get(n){return super.get(intern_get(this,n))}has(n){return super.has(intern_get(this,n))}set(n,t){return super.set(intern_set(this,n),t)}delete(n){return super.delete(intern_delete(this,n))}}function intern_get({_intern:e,_key:n},t){const o=n(t);return e.has(o)?e.get(o):t}function intern_set({_intern:e,_key:n},t){const o=n(t);return e.has(o)?e.get(o):(e.set(o,t),t)}function intern_delete({_intern:e,_key:n},t){const o=n(t);return e.has(o)&&(t=e.get(o),e.delete(o)),t}function keyof(e){return e!==null&&typeof e=="object"?e.valueOf():e}const e10=Math.sqrt(50),e5=Math.sqrt(10),e2=Math.sqrt(2);function tickSpec(e,n,t){const o=(n-e)/Math.max(0,t),a=Math.floor(Math.log10(o)),r=o/Math.pow(10,a),s=r>=e10?10:r>=e5?5:r>=e2?2:1;let i,l,u;return a<0?(u=Math.pow(10,-a)/s,i=Math.round(e*u),l=Math.round(n*u),i/u<e&&++i,l/u>n&&--l,u=-u):(u=Math.pow(10,a)*s,i=Math.round(e/u),l=Math.round(n/u),i*u<e&&++i,l*u>n&&--l),l<i&&.5<=t&&t<2?tickSpec(e,n,t*2):[i,l,u]}function ticks(e,n,t){if(n=+n,e=+e,t=+t,!(t>0))return[];if(e===n)return[e];const o=n<e,[a,r,s]=o?tickSpec(n,e,t):tickSpec(e,n,t);if(!(r>=a))return[];const i=r-a+1,l=new Array(i);if(o)if(s<0)for(let u=0;u<i;++u)l[u]=(r-u)/-s;else for(let u=0;u<i;++u)l[u]=(r-u)*s;else if(s<0)for(let u=0;u<i;++u)l[u]=(a+u)/-s;else for(let u=0;u<i;++u)l[u]=(a+u)*s;return l}function tickIncrement(e,n,t){return n=+n,e=+e,t=+t,tickSpec(e,n,t)[2]}function tickStep(e,n,t){n=+n,e=+e,t=+t;const o=n<e,a=o?tickIncrement(n,e,t):tickIncrement(e,n,t);return(o?-1:1)*(a<0?1/-a:a)}function max$1(e,n){let t;if(n===void 0)for(const o of e)o!=null&&(t<o||t===void 0&&o>=o)&&(t=o);else{let o=-1;for(let a of e)(a=n(a,++o,e))!=null&&(t<a||t===void 0&&a>=a)&&(t=a)}return t}function min$1(e,n){let t;if(n===void 0)for(const o of e)o!=null&&(t>o||t===void 0&&o>=o)&&(t=o);else{let o=-1;for(let a of e)(a=n(a,++o,e))!=null&&(t>a||t===void 0&&a>=a)&&(t=a)}return t}function range(e,n,t){e=+e,n=+n,t=(a=arguments.length)<2?(n=e,e=0,1):a<3?1:+t;for(var o=-1,a=Math.max(0,Math.ceil((n-e)/t))|0,r=new Array(a);++o<a;)r[o]=e+o*t;return r}function initRange(e,n){switch(arguments.length){case 0:break;case 1:this.range(e);break;default:this.range(n).domain(e);break}return this}function initInterpolator(e,n){switch(arguments.length){case 0:break;case 1:{typeof e=="function"?this.interpolator(e):this.range(e);break}default:{this.domain(e),typeof n=="function"?this.interpolator(n):this.range(n);break}}return this}const implicit=Symbol("implicit");function ordinal(){var e=new InternMap,n=[],t=[],o=implicit;function a(r){let s=e.get(r);if(s===void 0){if(o!==implicit)return o;e.set(r,s=n.push(r)-1)}return t[s%t.length]}return a.domain=function(r){if(!arguments.length)return n.slice();n=[],e=new InternMap;for(const s of r)e.has(s)||e.set(s,n.push(s)-1);return a},a.range=function(r){return arguments.length?(t=Array.from(r),a):t.slice()},a.unknown=function(r){return arguments.length?(o=r,a):o},a.copy=function(){return ordinal(n,t).unknown(o)},initRange.apply(a,arguments),a}function band(){var e=ordinal().unknown(void 0),n=e.domain,t=e.range,o=0,a=1,r,s,i=!1,l=0,u=0,c=.5;delete e.unknown;function d(){var v=n().length,m=a<o,f=m?a:o,p=m?o:a;r=(p-f)/Math.max(1,v-l+u*2),i&&(r=Math.floor(r)),f+=(p-f-r*(v-l))*c,s=r*(1-l),i&&(f=Math.round(f),s=Math.round(s));var g=range(v).map(function(_){return f+r*_});return t(m?g.reverse():g)}return e.domain=function(v){return arguments.length?(n(v),d()):n()},e.range=function(v){return arguments.length?([o,a]=v,o=+o,a=+a,d()):[o,a]},e.rangeRound=function(v){return[o,a]=v,o=+o,a=+a,i=!0,d()},e.bandwidth=function(){return s},e.step=function(){return r},e.round=function(v){return arguments.length?(i=!!v,d()):i},e.padding=function(v){return arguments.length?(l=Math.min(1,u=+v),d()):l},e.paddingInner=function(v){return arguments.length?(l=Math.min(1,v),d()):l},e.paddingOuter=function(v){return arguments.length?(u=+v,d()):u},e.align=function(v){return arguments.length?(c=Math.max(0,Math.min(1,v)),d()):c},e.copy=function(){return band(n(),[o,a]).round(i).paddingInner(l).paddingOuter(u).align(c)},initRange.apply(d(),arguments)}function define(e,n,t){e.prototype=n.prototype=t,t.constructor=e}function extend(e,n){var t=Object.create(e.prototype);for(var o in n)t[o]=n[o];return t}function Color(){}var darker=.7,brighter=1/darker,reI="\\s*([+-]?\\d+)\\s*",reN="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",reP="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",reHex=/^#([0-9a-f]{3,8})$/,reRgbInteger=new RegExp(`^rgb\\(${reI},${reI},${reI}\\)$`),reRgbPercent=new RegExp(`^rgb\\(${reP},${reP},${reP}\\)$`),reRgbaInteger=new RegExp(`^rgba\\(${reI},${reI},${reI},${reN}\\)$`),reRgbaPercent=new RegExp(`^rgba\\(${reP},${reP},${reP},${reN}\\)$`),reHslPercent=new RegExp(`^hsl\\(${reN},${reP},${reP}\\)$`),reHslaPercent=new RegExp(`^hsla\\(${reN},${reP},${reP},${reN}\\)$`),named={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};define(Color,color,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:color_formatHex,formatHex:color_formatHex,formatHex8:color_formatHex8,formatHsl:color_formatHsl,formatRgb:color_formatRgb,toString:color_formatRgb});function color_formatHex(){return this.rgb().formatHex()}function color_formatHex8(){return this.rgb().formatHex8()}function color_formatHsl(){return hslConvert(this).formatHsl()}function color_formatRgb(){return this.rgb().formatRgb()}function color(e){var n,t;return e=(e+"").trim().toLowerCase(),(n=reHex.exec(e))?(t=n[1].length,n=parseInt(n[1],16),t===6?rgbn(n):t===3?new Rgb(n>>8&15|n>>4&240,n>>4&15|n&240,(n&15)<<4|n&15,1):t===8?rgba(n>>24&255,n>>16&255,n>>8&255,(n&255)/255):t===4?rgba(n>>12&15|n>>8&240,n>>8&15|n>>4&240,n>>4&15|n&240,((n&15)<<4|n&15)/255):null):(n=reRgbInteger.exec(e))?new Rgb(n[1],n[2],n[3],1):(n=reRgbPercent.exec(e))?new Rgb(n[1]*255/100,n[2]*255/100,n[3]*255/100,1):(n=reRgbaInteger.exec(e))?rgba(n[1],n[2],n[3],n[4]):(n=reRgbaPercent.exec(e))?rgba(n[1]*255/100,n[2]*255/100,n[3]*255/100,n[4]):(n=reHslPercent.exec(e))?hsla(n[1],n[2]/100,n[3]/100,1):(n=reHslaPercent.exec(e))?hsla(n[1],n[2]/100,n[3]/100,n[4]):named.hasOwnProperty(e)?rgbn(named[e]):e==="transparent"?new Rgb(NaN,NaN,NaN,0):null}function rgbn(e){return new Rgb(e>>16&255,e>>8&255,e&255,1)}function rgba(e,n,t,o){return o<=0&&(e=n=t=NaN),new Rgb(e,n,t,o)}function rgbConvert(e){return e instanceof Color||(e=color(e)),e?(e=e.rgb(),new Rgb(e.r,e.g,e.b,e.opacity)):new Rgb}function rgb$1(e,n,t,o){return arguments.length===1?rgbConvert(e):new Rgb(e,n,t,o??1)}function Rgb(e,n,t,o){this.r=+e,this.g=+n,this.b=+t,this.opacity=+o}define(Rgb,rgb$1,extend(Color,{brighter(e){return e=e==null?brighter:Math.pow(brighter,e),new Rgb(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?darker:Math.pow(darker,e),new Rgb(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new Rgb(clampi(this.r),clampi(this.g),clampi(this.b),clampa(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:rgb_formatHex,formatHex:rgb_formatHex,formatHex8:rgb_formatHex8,formatRgb:rgb_formatRgb,toString:rgb_formatRgb}));function rgb_formatHex(){return`#${hex(this.r)}${hex(this.g)}${hex(this.b)}`}function rgb_formatHex8(){return`#${hex(this.r)}${hex(this.g)}${hex(this.b)}${hex((isNaN(this.opacity)?1:this.opacity)*255)}`}function rgb_formatRgb(){const e=clampa(this.opacity);return`${e===1?"rgb(":"rgba("}${clampi(this.r)}, ${clampi(this.g)}, ${clampi(this.b)}${e===1?")":`, ${e})`}`}function clampa(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function clampi(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function hex(e){return e=clampi(e),(e<16?"0":"")+e.toString(16)}function hsla(e,n,t,o){return o<=0?e=n=t=NaN:t<=0||t>=1?e=n=NaN:n<=0&&(e=NaN),new Hsl(e,n,t,o)}function hslConvert(e){if(e instanceof Hsl)return new Hsl(e.h,e.s,e.l,e.opacity);if(e instanceof Color||(e=color(e)),!e)return new Hsl;if(e instanceof Hsl)return e;e=e.rgb();var n=e.r/255,t=e.g/255,o=e.b/255,a=Math.min(n,t,o),r=Math.max(n,t,o),s=NaN,i=r-a,l=(r+a)/2;return i?(n===r?s=(t-o)/i+(t<o)*6:t===r?s=(o-n)/i+2:s=(n-t)/i+4,i/=l<.5?r+a:2-r-a,s*=60):i=l>0&&l<1?0:s,new Hsl(s,i,l,e.opacity)}function hsl(e,n,t,o){return arguments.length===1?hslConvert(e):new Hsl(e,n,t,o??1)}function Hsl(e,n,t,o){this.h=+e,this.s=+n,this.l=+t,this.opacity=+o}define(Hsl,hsl,extend(Color,{brighter(e){return e=e==null?brighter:Math.pow(brighter,e),new Hsl(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?darker:Math.pow(darker,e),new Hsl(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,n=isNaN(e)||isNaN(this.s)?0:this.s,t=this.l,o=t+(t<.5?t:1-t)*n,a=2*t-o;return new Rgb(hsl2rgb(e>=240?e-240:e+120,a,o),hsl2rgb(e,a,o),hsl2rgb(e<120?e+240:e-120,a,o),this.opacity)},clamp(){return new Hsl(clamph(this.h),clampt(this.s),clampt(this.l),clampa(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=clampa(this.opacity);return`${e===1?"hsl(":"hsla("}${clamph(this.h)}, ${clampt(this.s)*100}%, ${clampt(this.l)*100}%${e===1?")":`, ${e})`}`}}));function clamph(e){return e=(e||0)%360,e<0?e+360:e}function clampt(e){return Math.max(0,Math.min(1,e||0))}function hsl2rgb(e,n,t){return(e<60?n+(t-n)*e/60:e<180?t:e<240?n+(t-n)*(240-e)/60:n)*255}const radians=Math.PI/180,degrees=180/Math.PI,K=18,Xn=.96422,Yn=1,Zn=.82521,t0=4/29,t1=6/29,t2=3*t1*t1,t3=t1*t1*t1;function labConvert(e){if(e instanceof Lab)return new Lab(e.l,e.a,e.b,e.opacity);if(e instanceof Hcl)return hcl2lab(e);e instanceof Rgb||(e=rgbConvert(e));var n=rgb2lrgb(e.r),t=rgb2lrgb(e.g),o=rgb2lrgb(e.b),a=xyz2lab((.2225045*n+.7168786*t+.0606169*o)/Yn),r,s;return n===t&&t===o?r=s=a:(r=xyz2lab((.4360747*n+.3850649*t+.1430804*o)/Xn),s=xyz2lab((.0139322*n+.0971045*t+.7141733*o)/Zn)),new Lab(116*a-16,500*(r-a),200*(a-s),e.opacity)}function lab(e,n,t,o){return arguments.length===1?labConvert(e):new Lab(e,n,t,o??1)}function Lab(e,n,t,o){this.l=+e,this.a=+n,this.b=+t,this.opacity=+o}define(Lab,lab,extend(Color,{brighter(e){return new Lab(this.l+K*(e??1),this.a,this.b,this.opacity)},darker(e){return new Lab(this.l-K*(e??1),this.a,this.b,this.opacity)},rgb(){var e=(this.l+16)/116,n=isNaN(this.a)?e:e+this.a/500,t=isNaN(this.b)?e:e-this.b/200;return n=Xn*lab2xyz(n),e=Yn*lab2xyz(e),t=Zn*lab2xyz(t),new Rgb(lrgb2rgb(3.1338561*n-1.6168667*e-.4906146*t),lrgb2rgb(-.9787684*n+1.9161415*e+.033454*t),lrgb2rgb(.0719453*n-.2289914*e+1.4052427*t),this.opacity)}}));function xyz2lab(e){return e>t3?Math.pow(e,1/3):e/t2+t0}function lab2xyz(e){return e>t1?e*e*e:t2*(e-t0)}function lrgb2rgb(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function rgb2lrgb(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function hclConvert(e){if(e instanceof Hcl)return new Hcl(e.h,e.c,e.l,e.opacity);if(e instanceof Lab||(e=labConvert(e)),e.a===0&&e.b===0)return new Hcl(NaN,0<e.l&&e.l<100?0:NaN,e.l,e.opacity);var n=Math.atan2(e.b,e.a)*degrees;return new Hcl(n<0?n+360:n,Math.sqrt(e.a*e.a+e.b*e.b),e.l,e.opacity)}function hcl$1(e,n,t,o){return arguments.length===1?hclConvert(e):new Hcl(e,n,t,o??1)}function Hcl(e,n,t,o){this.h=+e,this.c=+n,this.l=+t,this.opacity=+o}function hcl2lab(e){if(isNaN(e.h))return new Lab(e.l,0,0,e.opacity);var n=e.h*radians;return new Lab(e.l,Math.cos(n)*e.c,Math.sin(n)*e.c,e.opacity)}define(Hcl,hcl$1,extend(Color,{brighter(e){return new Hcl(this.h,this.c,this.l+K*(e??1),this.opacity)},darker(e){return new Hcl(this.h,this.c,this.l-K*(e??1),this.opacity)},rgb(){return hcl2lab(this).rgb()}}));var constant$3=e=>()=>e;function linear$1(e,n){return function(t){return e+t*n}}function exponential(e,n,t){return e=Math.pow(e,t),n=Math.pow(n,t)-e,t=1/t,function(o){return Math.pow(e+o*n,t)}}function hue(e,n){var t=n-e;return t?linear$1(e,t>180||t<-180?t-360*Math.round(t/360):t):constant$3(isNaN(e)?n:e)}function gamma(e){return(e=+e)==1?nogamma:function(n,t){return t-n?exponential(n,t,e):constant$3(isNaN(n)?t:n)}}function nogamma(e,n){var t=n-e;return t?linear$1(e,t):constant$3(isNaN(e)?n:e)}var rgb=function e(n){var t=gamma(n);function o(a,r){var s=t((a=rgb$1(a)).r,(r=rgb$1(r)).r),i=t(a.g,r.g),l=t(a.b,r.b),u=nogamma(a.opacity,r.opacity);return function(c){return a.r=s(c),a.g=i(c),a.b=l(c),a.opacity=u(c),a+""}}return o.gamma=e,o}(1);function numberArray(e,n){n||(n=[]);var t=e?Math.min(n.length,e.length):0,o=n.slice(),a;return function(r){for(a=0;a<t;++a)o[a]=e[a]*(1-r)+n[a]*r;return o}}function isNumberArray(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function genericArray(e,n){var t=n?n.length:0,o=e?Math.min(t,e.length):0,a=new Array(o),r=new Array(t),s;for(s=0;s<o;++s)a[s]=interpolate(e[s],n[s]);for(;s<t;++s)r[s]=n[s];return function(i){for(s=0;s<o;++s)r[s]=a[s](i);return r}}function date(e,n){var t=new Date;return e=+e,n=+n,function(o){return t.setTime(e*(1-o)+n*o),t}}function interpolateNumber(e,n){return e=+e,n=+n,function(t){return e*(1-t)+n*t}}function object(e,n){var t={},o={},a;(e===null||typeof e!="object")&&(e={}),(n===null||typeof n!="object")&&(n={});for(a in n)a in e?t[a]=interpolate(e[a],n[a]):o[a]=n[a];return function(r){for(a in t)o[a]=t[a](r);return o}}var reA=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,reB=new RegExp(reA.source,"g");function zero(e){return function(){return e}}function one(e){return function(n){return e(n)+""}}function string(e,n){var t=reA.lastIndex=reB.lastIndex=0,o,a,r,s=-1,i=[],l=[];for(e=e+"",n=n+"";(o=reA.exec(e))&&(a=reB.exec(n));)(r=a.index)>t&&(r=n.slice(t,r),i[s]?i[s]+=r:i[++s]=r),(o=o[0])===(a=a[0])?i[s]?i[s]+=a:i[++s]=a:(i[++s]=null,l.push({i:s,x:interpolateNumber(o,a)})),t=reB.lastIndex;return t<n.length&&(r=n.slice(t),i[s]?i[s]+=r:i[++s]=r),i.length<2?l[0]?one(l[0].x):zero(n):(n=l.length,function(u){for(var c=0,d;c<n;++c)i[(d=l[c]).i]=d.x(u);return i.join("")})}function interpolate(e,n){var t=typeof n,o;return n==null||t==="boolean"?constant$3(n):(t==="number"?interpolateNumber:t==="string"?(o=color(n))?(n=o,rgb):string:n instanceof color?rgb:n instanceof Date?date:isNumberArray(n)?numberArray:Array.isArray(n)?genericArray:typeof n.valueOf!="function"&&typeof n.toString!="function"||isNaN(n)?object:interpolateNumber)(e,n)}function interpolateRound(e,n){return e=+e,n=+n,function(t){return Math.round(e*(1-t)+n*t)}}function hcl(e){return function(n,t){var o=e((n=hcl$1(n)).h,(t=hcl$1(t)).h),a=nogamma(n.c,t.c),r=nogamma(n.l,t.l),s=nogamma(n.opacity,t.opacity);return function(i){return n.h=o(i),n.c=a(i),n.l=r(i),n.opacity=s(i),n+""}}}var interpolateHcl=hcl(hue);function constants(e){return function(){return e}}function number$1(e){return+e}var unit=[0,1];function identity$3(e){return e}function normalize$1(e,n){return(n-=e=+e)?function(t){return(t-e)/n}:constants(isNaN(n)?NaN:.5)}function clamper(e,n){var t;return e>n&&(t=e,e=n,n=t),function(o){return Math.max(e,Math.min(n,o))}}function bimap(e,n,t){var o=e[0],a=e[1],r=n[0],s=n[1];return a<o?(o=normalize$1(a,o),r=t(s,r)):(o=normalize$1(o,a),r=t(r,s)),function(i){return r(o(i))}}function polymap(e,n,t){var o=Math.min(e.length,n.length)-1,a=new Array(o),r=new Array(o),s=-1;for(e[o]<e[0]&&(e=e.slice().reverse(),n=n.slice().reverse());++s<o;)a[s]=normalize$1(e[s],e[s+1]),r[s]=t(n[s],n[s+1]);return function(i){var l=bisectRight(e,i,1,o)-1;return r[l](a[l](i))}}function copy$1(e,n){return n.domain(e.domain()).range(e.range()).interpolate(e.interpolate()).clamp(e.clamp()).unknown(e.unknown())}function transformer$1(){var e=unit,n=unit,t=interpolate,o,a,r,s=identity$3,i,l,u;function c(){var v=Math.min(e.length,n.length);return s!==identity$3&&(s=clamper(e[0],e[v-1])),i=v>2?polymap:bimap,l=u=null,d}function d(v){return v==null||isNaN(v=+v)?r:(l||(l=i(e.map(o),n,t)))(o(s(v)))}return d.invert=function(v){return s(a((u||(u=i(n,e.map(o),interpolateNumber)))(v)))},d.domain=function(v){return arguments.length?(e=Array.from(v,number$1),c()):e.slice()},d.range=function(v){return arguments.length?(n=Array.from(v),c()):n.slice()},d.rangeRound=function(v){return n=Array.from(v),t=interpolateRound,c()},d.clamp=function(v){return arguments.length?(s=v?!0:identity$3,c()):s!==identity$3},d.interpolate=function(v){return arguments.length?(t=v,c()):t},d.unknown=function(v){return arguments.length?(r=v,d):r},function(v,m){return o=v,a=m,c()}}function continuous(){return transformer$1()(identity$3,identity$3)}function formatDecimal(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)}function formatDecimalParts(e,n){if((t=(e=n?e.toExponential(n-1):e.toExponential()).indexOf("e"))<0)return null;var t,o=e.slice(0,t);return[o.length>1?o[0]+o.slice(2):o,+e.slice(t+1)]}function exponent(e){return e=formatDecimalParts(Math.abs(e)),e?e[1]:NaN}function formatGroup(e,n){return function(t,o){for(var a=t.length,r=[],s=0,i=e[0],l=0;a>0&&i>0&&(l+i+1>o&&(i=Math.max(1,o-l)),r.push(t.substring(a-=i,a+i)),!((l+=i+1)>o));)i=e[s=(s+1)%e.length];return r.reverse().join(n)}}function formatNumerals(e){return function(n){return n.replace(/[0-9]/g,function(t){return e[+t]})}}var re=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function formatSpecifier(e){if(!(n=re.exec(e)))throw new Error("invalid format: "+e);var n;return new FormatSpecifier({fill:n[1],align:n[2],sign:n[3],symbol:n[4],zero:n[5],width:n[6],comma:n[7],precision:n[8]&&n[8].slice(1),trim:n[9],type:n[10]})}formatSpecifier.prototype=FormatSpecifier.prototype;function FormatSpecifier(e){this.fill=e.fill===void 0?" ":e.fill+"",this.align=e.align===void 0?">":e.align+"",this.sign=e.sign===void 0?"-":e.sign+"",this.symbol=e.symbol===void 0?"":e.symbol+"",this.zero=!!e.zero,this.width=e.width===void 0?void 0:+e.width,this.comma=!!e.comma,this.precision=e.precision===void 0?void 0:+e.precision,this.trim=!!e.trim,this.type=e.type===void 0?"":e.type+""}FormatSpecifier.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function formatTrim(e){e:for(var n=e.length,t=1,o=-1,a;t<n;++t)switch(e[t]){case".":o=a=t;break;case"0":o===0&&(o=t),a=t;break;default:if(!+e[t])break e;o>0&&(o=0);break}return o>0?e.slice(0,o)+e.slice(a+1):e}var prefixExponent;function formatPrefixAuto(e,n){var t=formatDecimalParts(e,n);if(!t)return e+"";var o=t[0],a=t[1],r=a-(prefixExponent=Math.max(-8,Math.min(8,Math.floor(a/3)))*3)+1,s=o.length;return r===s?o:r>s?o+new Array(r-s+1).join("0"):r>0?o.slice(0,r)+"."+o.slice(r):"0."+new Array(1-r).join("0")+formatDecimalParts(e,Math.max(0,n+r-1))[0]}function formatRounded(e,n){var t=formatDecimalParts(e,n);if(!t)return e+"";var o=t[0],a=t[1];return a<0?"0."+new Array(-a).join("0")+o:o.length>a+1?o.slice(0,a+1)+"."+o.slice(a+1):o+new Array(a-o.length+2).join("0")}var formatTypes={"%":(e,n)=>(e*100).toFixed(n),b:e=>Math.round(e).toString(2),c:e=>e+"",d:formatDecimal,e:(e,n)=>e.toExponential(n),f:(e,n)=>e.toFixed(n),g:(e,n)=>e.toPrecision(n),o:e=>Math.round(e).toString(8),p:(e,n)=>formatRounded(e*100,n),r:formatRounded,s:formatPrefixAuto,X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function identity$2(e){return e}var map=Array.prototype.map,prefixes=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function formatLocale(e){var n=e.grouping===void 0||e.thousands===void 0?identity$2:formatGroup(map.call(e.grouping,Number),e.thousands+""),t=e.currency===void 0?"":e.currency[0]+"",o=e.currency===void 0?"":e.currency[1]+"",a=e.decimal===void 0?".":e.decimal+"",r=e.numerals===void 0?identity$2:formatNumerals(map.call(e.numerals,String)),s=e.percent===void 0?"%":e.percent+"",i=e.minus===void 0?"−":e.minus+"",l=e.nan===void 0?"NaN":e.nan+"";function u(d){d=formatSpecifier(d);var v=d.fill,m=d.align,f=d.sign,p=d.symbol,g=d.zero,_=d.width,h=d.comma,b=d.precision,V=d.trim,S=d.type;S==="n"?(h=!0,S="g"):formatTypes[S]||(b===void 0&&(b=12),V=!0,S="g"),(g||v==="0"&&m==="=")&&(g=!0,v="0",m="=");var $=p==="$"?t:p==="#"&&/[boxX]/.test(S)?"0"+S.toLowerCase():"",w=p==="$"?o:/[%p]/.test(S)?s:"",k=formatTypes[S],P=/[defgprs%]/.test(S);b=b===void 0?6:/[gprs]/.test(S)?Math.max(1,Math.min(21,b)):Math.max(0,Math.min(20,b));function O(B){var T=$,L=w,E,z,F;if(S==="c")L=k(B)+L,B="";else{B=+B;var A=B<0||1/B<0;if(B=isNaN(B)?l:k(Math.abs(B),b),V&&(B=formatTrim(B)),A&&+B==0&&f!=="+"&&(A=!1),T=(A?f==="("?f:i:f==="-"||f==="("?"":f)+T,L=(S==="s"?prefixes[8+prefixExponent/3]:"")+L+(A&&f==="("?")":""),P){for(E=-1,z=B.length;++E<z;)if(F=B.charCodeAt(E),48>F||F>57){L=(F===46?a+B.slice(E+1):B.slice(E))+L,B=B.slice(0,E);break}}}h&&!g&&(B=n(B,1/0));var C=T.length+B.length+L.length,D=C<_?new Array(_-C+1).join(v):"";switch(h&&g&&(B=n(D+B,D.length?_-L.length:1/0),D=""),m){case"<":B=T+B+L+D;break;case"=":B=T+D+B+L;break;case"^":B=D.slice(0,C=D.length>>1)+T+B+L+D.slice(C);break;default:B=D+T+B+L;break}return r(B)}return O.toString=function(){return d+""},O}function c(d,v){var m=u((d=formatSpecifier(d),d.type="f",d)),f=Math.max(-8,Math.min(8,Math.floor(exponent(v)/3)))*3,p=Math.pow(10,-f),g=prefixes[8+f/3];return function(_){return m(p*_)+g}}return{format:u,formatPrefix:c}}var locale,format,formatPrefix;defaultLocale({thousands:",",grouping:[3],currency:["$",""]});function defaultLocale(e){return locale=formatLocale(e),format=locale.format,formatPrefix=locale.formatPrefix,locale}function precisionFixed(e){return Math.max(0,-exponent(Math.abs(e)))}function precisionPrefix(e,n){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(exponent(n)/3)))*3-exponent(Math.abs(e)))}function precisionRound(e,n){return e=Math.abs(e),n=Math.abs(n)-e,Math.max(0,exponent(n)-exponent(e))+1}function tickFormat(e,n,t,o){var a=tickStep(e,n,t),r;switch(o=formatSpecifier(o??",f"),o.type){case"s":{var s=Math.max(Math.abs(e),Math.abs(n));return o.precision==null&&!isNaN(r=precisionPrefix(a,s))&&(o.precision=r),formatPrefix(o,s)}case"":case"e":case"g":case"p":case"r":{o.precision==null&&!isNaN(r=precisionRound(a,Math.max(Math.abs(e),Math.abs(n))))&&(o.precision=r-(o.type==="e"));break}case"f":case"%":{o.precision==null&&!isNaN(r=precisionFixed(a))&&(o.precision=r-(o.type==="%")*2);break}}return format(o)}function linearish(e){var n=e.domain;return e.ticks=function(t){var o=n();return ticks(o[0],o[o.length-1],t??10)},e.tickFormat=function(t,o){var a=n();return tickFormat(a[0],a[a.length-1],t??10,o)},e.nice=function(t){t==null&&(t=10);var o=n(),a=0,r=o.length-1,s=o[a],i=o[r],l,u,c=10;for(i<s&&(u=s,s=i,i=u,u=a,a=r,r=u);c-- >0;){if(u=tickIncrement(s,i,t),u===l)return o[a]=s,o[r]=i,n(o);if(u>0)s=Math.floor(s/u)*u,i=Math.ceil(i/u)*u;else if(u<0)s=Math.ceil(s*u)/u,i=Math.floor(i*u)/u;else break;l=u}return e},e}function linear(){var e=continuous();return e.copy=function(){return copy$1(e,linear())},initRange.apply(e,arguments),linearish(e)}function transformer(){var e=0,n=1,t,o,a,r,s=identity$3,i=!1,l;function u(d){return d==null||isNaN(d=+d)?l:s(a===0?.5:(d=(r(d)-t)*a,i?Math.max(0,Math.min(1,d)):d))}u.domain=function(d){return arguments.length?([e,n]=d,t=r(e=+e),o=r(n=+n),a=t===o?0:1/(o-t),u):[e,n]},u.clamp=function(d){return arguments.length?(i=!!d,u):i},u.interpolator=function(d){return arguments.length?(s=d,u):s};function c(d){return function(v){var m,f;return arguments.length?([m,f]=v,s=d(m,f),u):[s(0),s(1)]}}return u.range=c(interpolate),u.rangeRound=c(interpolateRound),u.unknown=function(d){return arguments.length?(l=d,u):l},function(d){return r=d,t=d(e),o=d(n),a=t===o?0:1/(o-t),u}}function copy(e,n){return n.domain(e.domain()).interpolator(e.interpolator()).clamp(e.clamp()).unknown(e.unknown())}function sequential(){var e=linearish(transformer()(identity$3));return e.copy=function(){return copy(e,sequential())},initInterpolator.apply(e,arguments)}class Scale{constructor(e){this.config=e,this.createScale(e.type)}createScale(e){switch(e){case"band":this.scale=band();break;case"linear":this.scale=linear();break}}changeConfig(e){this.createScale(e.type),this.config=e}get type(){return this.config.type}bandwidth(){return this.type==="band"?this.scale.bandwidth():0}updateRange(e){this.scale=this.scale.copy().range(e)}updateDomain(e,n,t){const o=this.config.type==="band"?this.categoryDomain(e,t):this.numericDomain(e,n,t);this.scale=this.scale.copy().domain(o)}map(e){return e.map(n=>this.mapOne(n))}mapOne(e){const{type:n}=this.config;return n==="band"?this.scale(e)+this.scale.bandwidth()/2:this.scale(e)}ticks(){const{type:e}=this.config;return this.config.tickValues!==void 0?this.config.tickValues:e==="band"?this.scale.domain():this.scale.ticks(this.config.ticks||5)}categoryDomain(e,n){const t=n.reduce((o,a)=>o.concat(getCol(a,e)),[]);return Array.from(new Set(t))}numericDomain(data,stackedData,keys){const{domain}=this.config,values=keys.reduce((e,n)=>e.concat(getCol(n,data)),[]),valueMax=max$1(stackedData,e=>max$1(e,n=>max$1(n)))||0,valueMin=min$1(stackedData,e=>min$1(e,n=>min$1(n)))||0,[dataMin,dataMax]=extent(Array.from(new Set(values.concat([valueMin,valueMax])))),yMin=eval(`
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const vue=require("vue"),LoadingSpinner=require("./LoadingSpinner-Dp1LUhwe.js"),pinia=require("pinia"),_sfc_main$2D={name:"VsAccordion",status:"prototype",release:"0.0.1",provide(){return{breakPoint:this.breakPoint}},props:{breakPoint:{type:String,default:null,validator:e=>e.match(/(xs|sm|md|lg|xl|xxl)/)}}},_hoisted_1$21={class:"vs-accordion","data-test":"vs-accordion"};function _sfc_render$2k(e,n,t,o,r,a){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$21,[vue.renderSlot(e.$slots,"default")])}const VsAccordion=LoadingSpinner._export_sfc(_sfc_main$2D,[["render",_sfc_render$2k]]),_sfc_main$2C={name:"VsAccordionToggle",status:"prototype",release:"0.0.1",components:{VsButton:LoadingSpinner.VsButton},props:{variant:{type:String,default:"primary"},visible:{type:Boolean,default:!0}},emits:["toggle-panel"]},_hoisted_1$20={class:"vs-accordion-toggle__text"},_hoisted_2$1q={class:"vs-accordion-toggle__icon"};function _sfc_render$2j(e,n,t,o,r,a){const s=vue.resolveComponent("VsButton");return vue.openBlock(),vue.createBlock(s,{animate:!1,"aria-expanded":t.visible?"true":"false","aria-haspopup":"true",onClick:n[0]||(n[0]=i=>e.$emit("toggle-panel")),class:vue.normalizeClass(["vs-accordion-toggle clearfix",{"vs-accordion-toggle--open":t.visible}]),variant:t.variant,rounded:!1},{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_1$20,[vue.renderSlot(e.$slots,"default")]),vue.createElementVNode("span",_hoisted_2$1q,[t.visible?vue.renderSlot(e.$slots,"icon-open",{key:0}):vue.renderSlot(e.$slots,"icon-closed",{key:1})])]),_:3},8,["aria-expanded","class","variant"])}const VsAccordionToggle=LoadingSpinner._export_sfc(_sfc_main$2C,[["render",_sfc_render$2j]]),__default__$1={name:"VsDivider"},_sfc_main$2B=Object.assign(__default__$1,{props:{variant:{type:String,required:!1,validator:e=>e.match(/(primary|secondary|inverse)/),default:"primary"}},setup(e){const n=e;return(t,o)=>(vue.openBlock(),vue.createElementBlock("hr",{class:vue.normalizeClass(["vs-divider",n.variant?`vs-divider--variant-${n.variant}`:null]),"data-test":"vs-divider","aria-hidden":"true"},null,2))}}),_sfc_main$2A={name:"VsAccordionItem",status:"prototype",release:"0.0.1",components:{VsAccordionToggle,BCard:LoadingSpinner.rn,VsIcon:LoadingSpinner.VsIcon,BCardHeader:LoadingSpinner.an,BCardBody:LoadingSpinner.nn,VsHeading:LoadingSpinner.VsHeading,VsDivider:_sfc_main$2B},mixins:[LoadingSpinner.dataLayerMixin],inject:{breakPoint:{default:"lg"}},props:{colourBadge:{type:String,required:!1,default:""},controlId:{type:String,required:!0},headingLevel:{type:Number,default:2,validator:e=>LoadingSpinner.lodashExports.isNumber(e)?e>0&&e<7:e.match(/(1|2|3|4|5|6)/)},itemBreakPoint:{type:String,default(){return vue.inject("breakPoint","lg")},validator:e=>e.match(/(xs|sm|md|lg|xl|xxl)/)},openByDefault:{type:Boolean,default:!1},variant:{type:String,default:"subtle"}},data(){return{show:this.openByDefault}},computed:{toggleAccordionBtn(){return this.itemBreakPoint?this.itemBreakPoint==="xs"?"d-none":`d-${this.itemBreakPoint}-none`:"d-flex"},toggleResponsiveItem(){return this.itemBreakPoint?this.itemBreakPoint==="xs"?"d-block":`d-${this.itemBreakPoint}-block`:""}},methods:{onButtonClick(){this.show||this.createDataLayerObject("accordionOpenEvent",{accordion_text:this.$refs["accordion-toggle"].$el.innerText}),this.show=!this.show}}};function _sfc_render$2i(e,n,t,o,r,a){const s=vue.resolveComponent("VsIcon"),i=vue.resolveComponent("VsAccordionToggle"),l=vue.resolveComponent("VsHeading"),u=vue.resolveComponent("BCardHeader"),c=vue.resolveComponent("BCardBody"),d=vue.resolveComponent("VsDivider"),v=vue.resolveComponent("BCard");return vue.openBlock(),vue.createBlock(v,{"no-body":"",class:vue.normalizeClass(["vs-accordion-item",a.breakPoint?"vs-accordion-item__responsive":""]),"data-test":"vs-accordion__item"},{default:vue.withCtx(()=>[vue.createVNode(u,{class:"vs-accordion-item__card-header","data-test":"vs-accordion__item-header"},{default:vue.withCtx(()=>[vue.createVNode(i,{"aria-controls":t.controlId,visible:r.show,variant:t.variant,class:vue.normalizeClass(a.toggleAccordionBtn),onTogglePanel:a.onButtonClick,ref:"accordion-toggle"},{"icon-open":vue.withCtx(()=>[vue.renderSlot(e.$slots,"icon-open",{},()=>[vue.createVNode(s,{icon:"vs-icon-control-collapse",size:"xs"})])]),"icon-closed":vue.withCtx(()=>[vue.renderSlot(e.$slots,"icon-closed",{},()=>[vue.createVNode(s,{icon:"vs-icon-control-expand",size:"xs"})])]),default:vue.withCtx(()=>[t.colourBadge?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:"vs-accordion-item__card-colour-badge","data-test":"vs-accordion-item__card-colour-badge",style:vue.normalizeStyle(`background-color: ${t.colourBadge}`)},null,4)):vue.createCommentVNode("",!0),vue.renderSlot(e.$slots,"title")]),_:3},8,["aria-controls","visible","variant","class","onTogglePanel"]),vue.createVNode(l,{level:t.headingLevel,"heading-style":"heading-xxs",class:vue.normalizeClass(["d-none vs-accordion-item__title",a.toggleResponsiveItem]),"data-test":"vs-accordion__item-title"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"title")]),_:3},8,["level","class"])]),_:3}),vue.withDirectives(vue.createVNode(c,{id:t.controlId,class:vue.normalizeClass(["vs-accordion-item__panel",a.toggleResponsiveItem]),"data-test":"vs-accordion__item-body"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},8,["id","class"]),[[vue.vShow,r.show]]),vue.createVNode(d,{class:"my-025"})]),_:3},8,["class"])}const VsAccordionItem=LoadingSpinner._export_sfc(_sfc_main$2A,[["render",_sfc_render$2i]]),_sfc_main$2z={name:"VsAddress",status:"prototype",release:"0.1.0",components:{VsIcon:LoadingSpinner.VsIcon}},_hoisted_1$1$={class:"vs-address","data-test":"vs-address"},_hoisted_2$1p={class:"vs-address__address-box"};function _sfc_render$2h(e,n,t,o,r,a){const s=vue.resolveComponent("VsIcon");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1$,[vue.createVNode(s,{icon:"fa-regular fa-location-dot",class:"vs-address__map-marker me-050"}),vue.createElementVNode("address",_hoisted_2$1p,[vue.renderSlot(e.$slots,"default")])])}const Address=LoadingSpinner._export_sfc(_sfc_main$2z,[["render",_sfc_render$2h]]),_sfc_main$2y={name:"VsAlert",status:"prototype",release:"0.1.0",components:{VsIcon:LoadingSpinner.VsIcon}},_hoisted_1$1_={class:"vs-alert","data-test":"vs-alert"},_hoisted_2$1o={class:"vs-alert__icon-holder"},_hoisted_3$14={class:"vs-alert__content-wrapper"},_hoisted_4$N={class:"vs-alert__content"};function _sfc_render$2g(e,n,t,o,r,a){const s=vue.resolveComponent("VsIcon");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1_,[vue.createElementVNode("div",_hoisted_2$1o,[vue.createVNode(s,{class:"vs-alert__icon",icon:"vs-icon-feedback-information",variant:"inverse"})]),vue.createElementVNode("div",_hoisted_3$14,[vue.createElementVNode("div",_hoisted_4$N,[vue.renderSlot(e.$slots,"default")])])])}const VsAlert=LoadingSpinner._export_sfc(_sfc_main$2y,[["render",_sfc_render$2g]]),_sfc_main$2x={name:"VsArticle",status:"prototype",release:"0.0.1",components:{VsCol:LoadingSpinner.VsCol,VsRow:LoadingSpinner.VsRow,VsContainer:LoadingSpinner.VsContainer,VsHeading:LoadingSpinner.VsHeading,VsBody:LoadingSpinner.VsBody},props:{title:{type:String,required:!0},anchorLink:{type:String,default:""},businessSupport:{type:Boolean,default:!1},headingLevel:{type:Number,default:2,validator:e=>LoadingSpinner.lodashExports.isNumber(e)?e>0&&e<7:e.match(/(1|2|3|4|5|6)/)},headingStyle:{type:String,default:"heading-xl",validator:e=>e.match(/(display-m|display-s|heading-xl|heading-l|heading-m|heading-s|heading-xs|heading-xxs|heading-xxxs)/)}}},_hoisted_1$1Z=["id"],_hoisted_2$1n={class:"vs-article__content"};function _sfc_render$2f(e,n,t,o,r,a){const s=vue.resolveComponent("VsHeading"),i=vue.resolveComponent("VsBody"),l=vue.resolveComponent("VsCol"),u=vue.resolveComponent("VsRow"),c=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("article",vue.mergeProps({class:"vs-article","data-test":"vs-article"},e.$attrs),[vue.createVNode(c,null,{default:vue.withCtx(()=>[vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(l,{cols:"12",class:vue.normalizeClass(t.businessSupport?null:"col-xxl-10 offset-xxl-1")},{default:vue.withCtx(()=>[vue.createElementVNode("div",{class:vue.normalizeClass(["vs-article__wrapper mb-300 mb-md-500",t.businessSupport?"vs-article__wrapper--no-border":null])},[t.businessSupport?vue.createCommentVNode("",!0):vue.renderSlot(e.$slots,"vs-article-img",{key:0}),vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(l,{cols:"12",md:"10","offset-md":t.businessSupport?null:"1"},{default:vue.withCtx(()=>[vue.createElementVNode("div",{class:vue.normalizeClass(["vs-article__header mx-md-0 mt-300 mt-lg-500",t.businessSupport?null:"mx-150"])},[vue.createVNode(s,{level:t.headingLevel,"heading-style":t.headingStyle,class:vue.normalizeClass(["mb-200 mb-lg-300",t.businessSupport?null:"text-center"])},{default:vue.withCtx(()=>[vue.createElementVNode("span",{id:t.anchorLink?t.anchorLink:""},vue.toDisplayString(t.title),9,_hoisted_1$1Z)]),_:1},8,["level","heading-style","class"]),e.$slots["vs-article-intro"]?(vue.openBlock(),vue.createBlock(i,{key:0,variant:"lead",class:vue.normalizeClass(["mb-300 mb-lg-400",t.businessSupport?null:"text-center"])},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-article-intro")]),_:3},8,["class"])):vue.createCommentVNode("",!0)],2),t.businessSupport&&e.$slots["vs-article-img"]?(vue.openBlock(),vue.createBlock(l,{key:0,class:"mb-300",cols:"7"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-article-img")]),_:3})):vue.createCommentVNode("",!0),vue.createElementVNode("div",_hoisted_2$1n,[vue.renderSlot(e.$slots,"default")])]),_:3},8,["offset-md"])]),_:3})],2)]),_:3},8,["class"])]),_:3})]),_:3})],16)}const Article=LoadingSpinner._export_sfc(_sfc_main$2x,[["render",_sfc_render$2f]]),_sfc_main$2w={name:"VsArticleSection",status:"prototype",release:"0.0.1",components:{VsCol:LoadingSpinner.VsCol,VsRow:LoadingSpinner.VsRow,VsBody:LoadingSpinner.VsBody},props:{sidebarAlign:{type:String,default:"left",validator:e=>e.match(/(left|right)/)},businessSupport:{type:Boolean,default:!1}},computed:{sidebarAlignClass(){return this.sidebarAlign==="right"?"vs-article-section--sidebar-right":"vs-article-section--sidebar-left"},hasSidebarSlot(){return!!this.$slots["article-sidebar"]}}};function _sfc_render$2e(e,n,t,o,r,a){const s=vue.resolveComponent("VsCol"),i=vue.resolveComponent("VsBody"),l=vue.resolveComponent("VsRow");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-article-section mb-200 mb-md-400",a.sidebarAlignClass]),"data-test":"vs-article-section"},[vue.createVNode(l,null,{default:vue.withCtx(()=>[a.hasSidebarSlot?(vue.openBlock(),vue.createBlock(s,{key:0,cols:"12",md:"5",xl:"4","data-test":"vs-article-section__sidebar",class:vue.normalizeClass(["col-xxl-4",t.sidebarAlign==="right"?"pe-md-0":"ps-md-0"]),"offset-xl":t.sidebarAlign==="right"?"1":null,"order-md":t.sidebarAlign==="right"?"2":null,order:t.businessSupport?"2":null},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"article-sidebar")]),_:3},8,["class","offset-xl","order-md","order"])):vue.createCommentVNode("",!0),vue.createVNode(s,{cols:"12",md:a.hasSidebarSlot?"7":"9","data-test":"vs-article-section__content","offset-xl":t.sidebarAlign==="left"?"1":""},{default:vue.withCtx(()=>[vue.createElementVNode("div",{class:vue.normalizeClass(["mx-md-0",!t.businessSupport&&"mx-150"])},[vue.createVNode(i,null,{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3})],2)]),_:3},8,["md","offset-xl"])]),_:3})],2)}const ArticleSection=LoadingSpinner._export_sfc(_sfc_main$2w,[["render",_sfc_render$2e]]),_sfc_main$2v={name:"VsArticleSidebar",status:"prototype",release:"0.0.1",props:{sidebarAlign:{type:String,default:"left",validator:e=>e.match(/(left|right)/)}},computed:{sidebarAlignClass(){return this.sidebarAlign==="right"?"vs-article-sidebar--right":"vs-article-sidebar--left"}}};function _sfc_render$2d(e,n,t,o,r,a){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-article-sidebar",a.sidebarAlignClass]),"data-test":"vs-article-sidebar"},[e.$slots["vs-article-sidebar-img"]&&e.$slots["vs-article-sidebar-img"]()?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass([e.$slots["vs-article-sidebar-quote"]&&e.$slots["vs-article-sidebar-quote"]()?"pb-200":"","vs-article-sidebar__img-wrapper"])},[vue.renderSlot(e.$slots,"vs-article-sidebar-img")],2)):vue.createCommentVNode("",!0),e.$slots["vs-article-sidebar-quote"]&&e.$slots["vs-article-sidebar-quote"]()?(vue.openBlock(),vue.createElementBlock("div",{key:1,class:vue.normalizeClass([e.$slots["vs-article-sidebar-img"]&&e.$slots["vs-article-sidebar-img"]()?"pt-0":"","vs-article-sidebar__quote-wrapper"])},[vue.renderSlot(e.$slots,"vs-article-sidebar-quote")],2)):vue.createCommentVNode("",!0)],2)}const ArticleSidebar=LoadingSpinner._export_sfc(_sfc_main$2v,[["render",_sfc_render$2d]]),_hoisted_1$1Y={class:"vs-back-to-top","data-test":"vs-back-to-top"},_sfc_main$2u={__name:"BackToTop",props:{buttonText:{type:String,required:!0},offset:{type:Number,default:100}},setup(e){const n=e,t=vue.ref(!1),o=()=>{const a=document.documentElement;(window.scrollY||a.scrollTop)-(a.clientTop||0)>n.offset?t.value=!0:t.value=!1},r=a=>{window.scroll({top:0,behavior:"smooth"}),a.target.blur()};return vue.onMounted(()=>{window.addEventListener("scroll",o)}),vue.onUnmounted(()=>{window.removeEventListener("scroll",o)}),(a,s)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1Y,[t.value?(vue.openBlock(),vue.createBlock(LoadingSpinner.VsButton,{key:0,icon:"vs-icon-control-back-to-top","icon-only":"",variant:"secondary",onClick:r},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(n.buttonText),1)]),_:1})):vue.createCommentVNode("",!0)]))}},_sfc_main$2t={name:"VsBadge",status:"prototype",release:"0.0.1",components:{BBadge:LoadingSpinner.ci},props:{variant:{type:String,default:"default",validator:e=>e.match(/(default|subtle|information|highlight)/)}},computed:{badgeClasses(){return[`vs-badge--${this.variant}`,"vs-badge"]}}};function _sfc_render$2c(e,n,t,o,r,a){const s=vue.resolveComponent("BBadge");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(a.badgeClasses),"data-test":"vs-badge"},[vue.createVNode(s,null,{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3})],2)}const VsBadge=LoadingSpinner._export_sfc(_sfc_main$2t,[["render",_sfc_render$2c]]),cookieMixin={computed:{selectedLanguage(){return this.language.substr(0,2).toUpperCase()},localeCookie(){return this.language.replace("_","-").toLowerCase()},translationCookie(){return`/en/${this.language.substr(0,2).toLowerCase()}`}},methods:{cookieExists(e){return document.cookie.indexOf(`${e}=`)>=0},setCookie(e,n,t,o=!1){let r="";if(r=`${e}=${n};`,r+="path=/;",t&&!o){const a=new Date;a.setFullYear(a.getFullYear()+1),r+=`expires=${a};`}document.cookie=r}}},_sfc_main$2s={name:"VsBanner",status:"prototype",release:"0.0.1",components:{VsButton:LoadingSpinner.VsButton,VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,VsBody:LoadingSpinner.VsBody,VsIcon:LoadingSpinner.VsIcon},mixins:[cookieMixin],props:{closeBtnText:{type:String,required:!0},dontShowAgain:{type:Boolean,default:!0}},data(){return{showBanner:!0}},mounted(){const e=this.cookieExists("vs_showbanner");this.showBanner=!e},methods:{hideBanner(){this.showBanner=!this.showBanner,this.dontShowAgain&&this.setHiddenCookie()},setHiddenCookie(){const e=this.cookieExists("vs_showbanner");this.setCookie("vs_showbanner",this.showBanner,!e,!0)}}},_hoisted_1$1X={key:0,class:"vs-banner","data-test":"vs-banner",role:"banner"},_hoisted_2$1m={key:0,class:"vs-banner__cta-link"};function _sfc_render$2b(e,n,t,o,r,a){const s=vue.resolveComponent("VsIcon"),i=vue.resolveComponent("VsCol"),l=vue.resolveComponent("VsBody"),u=vue.resolveComponent("VsRow"),c=vue.resolveComponent("VsButton"),d=vue.resolveComponent("VsContainer");return r.showBanner?(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1X,[vue.createVNode(d,null,{default:vue.withCtx(()=>[vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(i,{cols:"11",class:"vs-banner__content-wrapper"},{default:vue.withCtx(()=>[vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(i,{cols:"1",class:"vs-banner__icon-wrapper"},{default:vue.withCtx(()=>[vue.createVNode(s,{size:"sm",icon:"vs-icon-feedback-warning",class:"vs-banner__icon"})]),_:1}),vue.createVNode(i,{cols:"11"},{default:vue.withCtx(()=>[e.$slots["banner-text"]||e.$slots["banner-cta"]?(vue.openBlock(),vue.createBlock(l,{key:0,class:"vs-banner__text"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"banner-text"),e.$slots["banner-cta"]?(vue.openBlock(),vue.createElementBlock("span",_hoisted_2$1m,[vue.renderSlot(e.$slots,"banner-cta")])):vue.createCommentVNode("",!0)]),_:3})):vue.createCommentVNode("",!0)]),_:3})]),_:3})]),_:3}),vue.createVNode(i,{cols:"1"},{default:vue.withCtx(()=>[vue.createVNode(c,{class:"vs-banner__close-btn","data-test":"vs-banner__close-btn",variant:"subtle",icon:"vs-icon-control-dismiss",size:"md","icon-only":"",onClick:a.hideBanner},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.closeBtnText),1)]),_:1},8,["onClick"])]),_:1})]),_:3})]),_:3})])):vue.createCommentVNode("",!0)}const Banner=LoadingSpinner._export_sfc(_sfc_main$2s,[["render",_sfc_render$2b]]),_sfc_main$2r={name:"VsArticleDetails",status:"prototype",release:"0.0.1",components:{VsIcon:LoadingSpinner.VsIcon},props:{articleAuthor:{type:String,default:null},articlePublishDate:{type:String,default:null},articleReadTime:{type:String,default:null}},computed:{iconVariant(){return this.articleAuthor?"secondary":"highlight"}}},_hoisted_1$1W={key:0,class:"vs-article-details","data-test":"vs-article-details"},_hoisted_2$1l={key:0,class:"vs-article-details__author vs-article-details--highlight"},_hoisted_3$13={key:1,class:"vs-article-details__date"},_hoisted_4$M={key:0,class:"vs-article-details__divider"};function _sfc_render$2a(e,n,t,o,r,a){const s=vue.resolveComponent("VsIcon");return t.articleAuthor||t.articleReadTime||t.articlePublishDate?(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1W,[t.articleAuthor?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$1l,vue.toDisplayString(t.articleAuthor),1)):vue.createCommentVNode("",!0),t.articleReadTime||t.articlePublishDate?(vue.openBlock(),vue.createElementBlock("div",{key:1,"data-test":"vs-article-details__date-time",class:vue.normalizeClass(t.articleAuthor?"":"vs-article-details--highlight")},[t.articleReadTime?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createVNode(s,{icon:"fa-regular fa-clock",variant:a.iconVariant,class:"align-text-top me-050"},null,8,["variant"]),vue.createTextVNode(vue.toDisplayString(t.articleReadTime),1)],64)):vue.createCommentVNode("",!0),t.articlePublishDate?(vue.openBlock(),vue.createElementBlock("span",_hoisted_3$13,[t.articleReadTime?(vue.openBlock(),vue.createElementBlock("span",_hoisted_4$M,"•")):vue.createCommentVNode("",!0),vue.createTextVNode(" "+vue.toDisplayString(t.articlePublishDate),1)])):vue.createCommentVNode("",!0)],2)):vue.createCommentVNode("",!0)])):vue.createCommentVNode("",!0)}const ArticleDetails=LoadingSpinner._export_sfc(_sfc_main$2r,[["render",_sfc_render$2a]]),_sfc_main$2q={name:"VsBreadcrumb",status:"prototype",release:"0.0.1",components:{BBreadcrumb:LoadingSpinner.pi}},_hoisted_1$1V={"aria-label":"breadcrumbs",class:"vs-breadcrumb py-050"};function _sfc_render$29(e,n,t,o,r,a){const s=vue.resolveComponent("BBreadcrumb");return vue.openBlock(),vue.createElementBlock("nav",_hoisted_1$1V,[vue.createVNode(s,vue.mergeProps({class:"flex-nowrap p-0 mb-0"},e.$attrs),{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},16)])}const Breadcrumb=LoadingSpinner._export_sfc(_sfc_main$2q,[["render",_sfc_render$29]]),_sfc_main$2p={name:"VsBreadcrumbItem",status:"prototype",release:"0.0.1",components:{BBreadcrumbItem:LoadingSpinner.en},props:{href:{type:String,default:""},active:{type:Boolean,default:!1},ariaCurrent:{type:String,default:"page"},text:{type:String,default:"",required:!0}}};function _sfc_render$28(e,n,t,o,r,a){const s=vue.resolveComponent("BBreadcrumbItem");return vue.openBlock(),vue.createBlock(s,vue.mergeProps({class:"vs-breadcrumb-item",active:t.active,"aria-current":t.ariaCurrent,href:t.href,text:t.text},e.$attrs),null,16,["active","aria-current","href","text"])}const BreadcrumbItem=LoadingSpinner._export_sfc(_sfc_main$2p,[["render",_sfc_render$28]]);let currentURL="";typeof window<"u"&&(currentURL=window.location.href);const dmoAnalyticsLogic=e=>{let n=!1;const t=()=>!!currentURL.includes("/info"),o=a=>t()?{dmo_referral:a}:{type:"CMS referral",product:"Unclassified",dmo_referral:a};return(()=>{let a={};return e.srcElement.localName==="a"&&LoadingSpinner.dmoUrls.forEach(s=>{e.target.href.includes(s)&&(n=!0,a=o("True"))}),n||(a=o("False")),a})()},_sfc_main$2o={name:"VsLink",status:"prototype",release:"0.0.2",components:{VsIcon:LoadingSpinner.VsIcon},mixins:[LoadingSpinner.dataLayerMixin],props:{href:{type:String,default:null},type:{type:String,default:"default",validator:e=>e.match(/(default|external|internal|download)/)},variant:{type:String,default:"primary",validator:e=>e.match(/(primary|secondary|on-dark)/)},iconSize:{type:String,default:"xxs",validator:e=>e.match(/(xxs|xs|sm|md|lg|xl)/)},disabled:{type:Boolean,default:!1},dataLayerValue:{type:String,default:null},noVisitedStyles:{type:Boolean,default:!1}},computed:{linkClasses(){return["vs-link",`vs-link--variant-${this.variant}`,this.noVisitedStyles&&"vs-link--no-visited-styles"].filter(Boolean)},iconName(){let e="";switch(this.type){case"external":e="fa-regular fa-square-arrow-up-right";break;case"internal":e="fa-regular fa-arrow-right";break;case"download":e="vs-icon-control-download";break;default:e=""}return e},iconVariant(){let e="";switch(this.variant){case"secondary":e="primary";break;case"on-dark":e="inverse";break;default:e="cta"}return e}},methods:{clickHandler(e){e.preventDefault(),this.dataLayerValue?this.createDataLayerObject(this.dataLayerValue,e,this.href):this.type==="external"?(this.createDataLayerObject("cmsReferral",{referral_location:e.target.href,dmo_referral:dmoAnalyticsLogic(e).dmo_referral}),this.createDataLayerObject("externalLinkDataEvent",e,this.href)):this.createDataLayerObject("internalLinkDataEvent",e,this.href),setTimeout(()=>{this.navigateToUrl()},500)},navigateToUrl(){this.href!=="#"&&this.href!==null&&(window.location.href=this.href)},keyHandler(e){(e.keyCode===13||e.keyCode===32)&&(e.preventDefault(),this.clickHandler(e))}}},_hoisted_1$1U=["href","download","disabled","tabindex"];function _sfc_render$27(e,n,t,o,r,a){const s=vue.resolveComponent("VsIcon");return vue.openBlock(),vue.createElementBlock("a",vue.mergeProps({class:a.linkClasses,href:t.href,target:"_self",download:t.type==="download"?"true":null,disabled:t.disabled,tabindex:t.disabled?"-1":"0"},e.$attrs,{onClick:n[0]||(n[0]=i=>a.clickHandler(i)),onKeydown:n[1]||(n[1]=i=>a.keyHandler(i))}),[vue.renderSlot(e.$slots,"default"),t.type!=="default"?(vue.openBlock(),vue.createBlock(s,{key:0,icon:a.iconName,variant:a.iconVariant,size:t.iconSize,class:"ms-025 vs-link__icon"},null,8,["icon","variant","size"])):vue.createCommentVNode("",!0)],16,_hoisted_1$1U)}const VsLink=LoadingSpinner._export_sfc(_sfc_main$2o,[["render",_sfc_render$27]]),_sfc_main$2n={name:"VsCannedSearchProductCard",status:"prototype",release:"0.0.1",components:{VsImg:LoadingSpinner.VsImg,VsHeading:LoadingSpinner.VsHeading,VsLink,VsCol:LoadingSpinner.VsCol},inject:["slideCols","visibleSlides"],provide(){return{slideVisible:this.isVisible}},props:{searchType:{type:String,default:""},imgSrc:{required:!0,type:String},title:{required:!0,type:String},inBodyDuration:{type:Object,default:null},description:{type:String,default:""},detailLink:{type:Object,required:!0},slideIndex:{type:String,required:!0}},computed:{modCardBody(){return this.searchType==="even"||this.searchType==="cate"?"card-body--short":""},useGenericLqip(){return this.searchType==="tour"}},methods:{isVisible(){const e=parseInt(this.slideIndex,10);return this.visibleSlides.indexOf(e)>=0}}},_hoisted_1$1T={class:"vs-product-card__image-container"},_hoisted_2$1k={class:"vs-product-card__image-inner-container"},_hoisted_3$12={class:"vs-product-card__description"},_hoisted_4$L={key:0,class:"vs-product-card__description-inner"},_hoisted_5$y={class:"visually-hidden"},_hoisted_6$n={class:"vs-product-card__logos-container","data-chromatic":"ignore"};function _sfc_render$26(e,n,t,o,r,a){const s=vue.resolveComponent("VsImg"),i=vue.resolveComponent("VsLink"),l=vue.resolveComponent("VsHeading"),u=vue.resolveComponent("VsCol");return vue.openBlock(),vue.createBlock(u,{cols:a.slideCols.xs,sm:a.slideCols.sm,lg:a.slideCols.md,xl:a.slideCols.lg,class:"vs-carousel-slide__card","aria-disabled":!a.isVisible()},{default:vue.withCtx(()=>[vue.createElementVNode("div",{class:vue.normalizeClass(["vs-product-card",a.isVisible()?"":"vs-product-card--disabled"]),"data-test":"vs-product-card"},[vue.createElementVNode("section",vue.mergeProps({class:"card"},e.$attrs),[vue.createElementVNode("div",_hoisted_1$1T,[vue.createElementVNode("div",_hoisted_2$1k,[vue.createVNode(s,{src:t.imgSrc,alt:"",sizes:"(min-width: 768px) 50vw, 100vw","use-generic-lqip":a.useGenericLqip,class:"vs-product-card__img","data-test":"vs-product-card__img","data-chromatic":"ignore"},null,8,["src","use-generic-lqip"])]),vue.renderSlot(e.$slots,"vs-canned-search-badges")]),vue.createElementVNode("div",{class:vue.normalizeClass(["card-body",a.modCardBody])},[vue.createVNode(l,{level:"3","heading-style":"heading-xs",class:"card-title vs-product-card__title","data-test":"vs-product-card__title"},{default:vue.withCtx(()=>[vue.createVNode(i,{href:t.detailLink.link,class:"stretched-link vs-product-card__link","data-test":"vs-product-card__link",disabled:!a.isVisible()},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.title),1)]),_:1},8,["href","disabled"])]),_:1}),vue.renderSlot(e.$slots,"vs-canned-search-sub-heading"),vue.renderSlot(e.$slots,"vs-canned-search-star-rating"),vue.renderSlot(e.$slots,"vs-canned-search-categories"),vue.createElementVNode("div",_hoisted_3$12,[vue.renderSlot(e.$slots,"vs-canned-search-tour-info"),t.description?(vue.openBlock(),vue.createElementBlock("p",_hoisted_4$L,vue.toDisplayString(t.description),1)):vue.createCommentVNode("",!0),vue.createVNode(i,{href:t.detailLink.link,class:"vs-product-card__description-link",disabled:!a.isVisible()},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.detailLink.label)+" ",1),vue.createElementVNode("span",_hoisted_5$y,": "+vue.toDisplayString(t.title),1)]),_:1},8,["href","disabled"])])],2),vue.createElementVNode("div",_hoisted_6$n,[vue.renderSlot(e.$slots,"vs-canned-search-logos")])],16),vue.renderSlot(e.$slots,"vs-canned-search-summary")],2)]),_:3},8,["cols","sm","lg","xl","aria-disabled"])}const VsCannedSearchProductCard=LoadingSpinner._export_sfc(_sfc_main$2n,[["render",_sfc_render$26]]),_sfc_main$2m={name:"VsCannedSearchStars",status:"prototype",release:"0.0.1",props:{min:{type:Number,default:null},max:{type:Number,default:null}}},_hoisted_1$1S={class:"vs-canned-search-stars","data-test":"vs-canned-search-stars"},_hoisted_2$1j={key:0},_hoisted_3$11={key:1};function _sfc_render$25(e,n,t,o,r,a){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1S,[t.min&&t.max&&t.min!==t.max?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$1j,[n[0]||(n[0]=vue.createElementVNode("span",{class:"vs-canned-search-stars__star"}," ★ ",-1)),vue.createTextVNode(" "+vue.toDisplayString(t.min)+"-"+vue.toDisplayString(t.max),1)])):(vue.openBlock(),vue.createElementBlock("div",_hoisted_3$11,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(t.min,s=>(vue.openBlock(),vue.createElementBlock("span",{key:s,class:"vs-canned-search-stars__star"}," ★ "))),128))]))])}const VsCannedSearchStars=LoadingSpinner._export_sfc(_sfc_main$2m,[["render",_sfc_render$25]]),min$3=Math.min,max$3=Math.max,oppositeSideMap={left:"right",right:"left",bottom:"top",top:"bottom"};function clamp(e,n,t){return max$3(e,min$3(n,t))}function evaluate(e,n){return typeof e=="function"?e(n):e}function getSide(e){return e.split("-")[0]}function getAlignment(e){return e.split("-")[1]}function getOppositeAxis(e){return e==="x"?"y":"x"}function getAxisLength(e){return e==="y"?"height":"width"}function getSideAxis(e){const n=e[0];return n==="t"||n==="b"?"y":"x"}function getAlignmentAxis(e){return getOppositeAxis(getSideAxis(e))}function getAlignmentSides(e,n,t){t===void 0&&(t=!1);const o=getAlignment(e),r=getAlignmentAxis(e),a=getAxisLength(r);let s=r==="x"?o===(t?"end":"start")?"right":"left":o==="start"?"bottom":"top";return n.reference[a]>n.floating[a]&&(s=getOppositePlacement(s)),[s,getOppositePlacement(s)]}function getExpandedPlacements(e){const n=getOppositePlacement(e);return[getOppositeAlignmentPlacement(e),n,getOppositeAlignmentPlacement(n)]}function getOppositeAlignmentPlacement(e){return e.includes("start")?e.replace("start","end"):e.replace("end","start")}const lrPlacement=["left","right"],rlPlacement=["right","left"],tbPlacement=["top","bottom"],btPlacement=["bottom","top"];function getSideList(e,n,t){switch(e){case"top":case"bottom":return t?n?rlPlacement:lrPlacement:n?lrPlacement:rlPlacement;case"left":case"right":return n?tbPlacement:btPlacement;default:return[]}}function getOppositeAxisPlacements(e,n,t,o){const r=getAlignment(e);let a=getSideList(getSide(e),t==="start",o);return r&&(a=a.map(s=>s+"-"+r),n&&(a=a.concat(a.map(getOppositeAlignmentPlacement)))),a}function getOppositePlacement(e){const n=getSide(e);return oppositeSideMap[n]+e.slice(n.length)}function expandPaddingObject(e){return{top:0,right:0,bottom:0,left:0,...e}}function getPaddingObject(e){return typeof e!="number"?expandPaddingObject(e):{top:e,right:e,bottom:e,left:e}}function rectToClientRect(e){const{x:n,y:t,width:o,height:r}=e;return{width:o,height:r,top:t,left:n,right:n+o,bottom:t+r,x:n,y:t}}function computeCoordsFromPlacement(e,n,t){let{reference:o,floating:r}=e;const a=getSideAxis(n),s=getAlignmentAxis(n),i=getAxisLength(s),l=getSide(n),u=a==="y",c=o.x+o.width/2-r.width/2,d=o.y+o.height/2-r.height/2,v=o[i]/2-r[i]/2;let m;switch(l){case"top":m={x:c,y:o.y-r.height};break;case"bottom":m={x:c,y:o.y+o.height};break;case"right":m={x:o.x+o.width,y:d};break;case"left":m={x:o.x-r.width,y:d};break;default:m={x:o.x,y:o.y}}switch(getAlignment(n)){case"start":m[s]-=v*(t&&u?-1:1);break;case"end":m[s]+=v*(t&&u?-1:1);break}return m}async function detectOverflow(e,n){var t;n===void 0&&(n={});const{x:o,y:r,platform:a,rects:s,elements:i,strategy:l}=e,{boundary:u="clippingAncestors",rootBoundary:c="viewport",elementContext:d="floating",altBoundary:v=!1,padding:m=0}=evaluate(n,e),f=getPaddingObject(m),g=i[v?d==="floating"?"reference":"floating":d],_=rectToClientRect(await a.getClippingRect({element:(t=await(a.isElement==null?void 0:a.isElement(g)))==null||t?g:g.contextElement||await(a.getDocumentElement==null?void 0:a.getDocumentElement(i.floating)),boundary:u,rootBoundary:c,strategy:l})),h=d==="floating"?{x:o,y:r,width:s.floating.width,height:s.floating.height}:s.reference,b=await(a.getOffsetParent==null?void 0:a.getOffsetParent(i.floating)),V=await(a.isElement==null?void 0:a.isElement(b))?await(a.getScale==null?void 0:a.getScale(b))||{x:1,y:1}:{x:1,y:1},S=rectToClientRect(a.convertOffsetParentRelativeRectToViewportRelativeRect?await a.convertOffsetParentRelativeRectToViewportRelativeRect({elements:i,rect:h,offsetParent:b,strategy:l}):h);return{top:(_.top-S.top+f.top)/V.y,bottom:(S.bottom-_.bottom+f.bottom)/V.y,left:(_.left-S.left+f.left)/V.x,right:(S.right-_.right+f.right)/V.x}}const MAX_RESET_COUNT=50,computePosition$1=async(e,n,t)=>{const{placement:o="bottom",strategy:r="absolute",middleware:a=[],platform:s}=t,i=s.detectOverflow?s:{...s,detectOverflow},l=await(s.isRTL==null?void 0:s.isRTL(n));let u=await s.getElementRects({reference:e,floating:n,strategy:r}),{x:c,y:d}=computeCoordsFromPlacement(u,o,l),v=o,m=0;const f={};for(let p=0;p<a.length;p++){const g=a[p];if(!g)continue;const{name:_,fn:h}=g,{x:b,y:V,data:S,reset:$}=await h({x:c,y:d,initialPlacement:o,placement:v,strategy:r,middlewareData:f,rects:u,platform:i,elements:{reference:e,floating:n}});c=b??c,d=V??d,f[_]={...f[_],...S},$&&m<MAX_RESET_COUNT&&(m++,typeof $=="object"&&($.placement&&(v=$.placement),$.rects&&(u=$.rects===!0?await s.getElementRects({reference:e,floating:n,strategy:r}):$.rects),{x:c,y:d}=computeCoordsFromPlacement(u,v,l)),p=-1)}return{x:c,y:d,placement:v,strategy:r,middlewareData:f}},arrow$1=e=>({name:"arrow",options:e,async fn(n){const{x:t,y:o,placement:r,rects:a,platform:s,elements:i,middlewareData:l}=n,{element:u,padding:c=0}=evaluate(e,n)||{};if(u==null)return{};const d=getPaddingObject(c),v={x:t,y:o},m=getAlignmentAxis(r),f=getAxisLength(m),p=await s.getDimensions(u),g=m==="y",_=g?"top":"left",h=g?"bottom":"right",b=g?"clientHeight":"clientWidth",V=a.reference[f]+a.reference[m]-v[m]-a.floating[f],S=v[m]-a.reference[m],$=await(s.getOffsetParent==null?void 0:s.getOffsetParent(u));let w=$?$[b]:0;(!w||!await(s.isElement==null?void 0:s.isElement($)))&&(w=i.floating[b]||a.floating[f]);const k=V/2-S/2,P=w/2-p[f]/2-1,O=min$3(d[_],P),B=min$3(d[h],P),T=O,L=w-p[f]-B,E=w/2-p[f]/2+k,z=clamp(T,E,L),F=!l.arrow&&getAlignment(r)!=null&&E!==z&&a.reference[f]/2-(E<T?O:B)-p[f]/2<0,A=F?E<T?E-T:E-L:0;return{[m]:v[m]+A,data:{[m]:z,centerOffset:E-z-A,...F&&{alignmentOffset:A}},reset:F}}}),flip$1=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(n){var t,o;const{placement:r,middlewareData:a,rects:s,initialPlacement:i,platform:l,elements:u}=n,{mainAxis:c=!0,crossAxis:d=!0,fallbackPlacements:v,fallbackStrategy:m="bestFit",fallbackAxisSideDirection:f="none",flipAlignment:p=!0,...g}=evaluate(e,n);if((t=a.arrow)!=null&&t.alignmentOffset)return{};const _=getSide(r),h=getSideAxis(i),b=getSide(i)===i,V=await(l.isRTL==null?void 0:l.isRTL(u.floating)),S=v||(b||!p?[getOppositePlacement(i)]:getExpandedPlacements(i)),$=f!=="none";!v&&$&&S.push(...getOppositeAxisPlacements(i,p,f,V));const w=[i,...S],k=await l.detectOverflow(n,g),P=[];let O=((o=a.flip)==null?void 0:o.overflows)||[];if(c&&P.push(k[_]),d){const E=getAlignmentSides(r,s,V);P.push(k[E[0]],k[E[1]])}if(O=[...O,{placement:r,overflows:P}],!P.every(E=>E<=0)){var B,T;const E=(((B=a.flip)==null?void 0:B.index)||0)+1,z=w[E];if(z&&(!(d==="alignment"?h!==getSideAxis(z):!1)||O.every(C=>getSideAxis(C.placement)===h?C.overflows[0]>0:!0)))return{data:{index:E,overflows:O},reset:{placement:z}};let F=(T=O.filter(A=>A.overflows[0]<=0).sort((A,C)=>A.overflows[1]-C.overflows[1])[0])==null?void 0:T.placement;if(!F)switch(m){case"bestFit":{var L;const A=(L=O.filter(C=>{if($){const D=getSideAxis(C.placement);return D===h||D==="y"}return!0}).map(C=>[C.placement,C.overflows.filter(D=>D>0).reduce((D,R)=>D+R,0)]).sort((C,D)=>C[1]-D[1])[0])==null?void 0:L[0];A&&(F=A);break}case"initialPlacement":F=i;break}if(r!==F)return{reset:{placement:F}}}return{}}}},originSides=new Set(["left","top"]);async function convertValueToCoords(e,n){const{placement:t,platform:o,elements:r}=e,a=await(o.isRTL==null?void 0:o.isRTL(r.floating)),s=getSide(t),i=getAlignment(t),l=getSideAxis(t)==="y",u=originSides.has(s)?-1:1,c=a&&l?-1:1,d=evaluate(n,e);let{mainAxis:v,crossAxis:m,alignmentAxis:f}=typeof d=="number"?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return i&&typeof f=="number"&&(m=i==="end"?f*-1:f),l?{x:m*c,y:v*u}:{x:v*u,y:m*c}}const offset$1=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(n){var t,o;const{x:r,y:a,placement:s,middlewareData:i}=n,l=await convertValueToCoords(n,e);return s===((t=i.offset)==null?void 0:t.placement)&&(o=i.arrow)!=null&&o.alignmentOffset?{}:{x:r+l.x,y:a+l.y,data:{...l,placement:s}}}}},shift$1=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(n){const{x:t,y:o,placement:r,platform:a}=n,{mainAxis:s=!0,crossAxis:i=!1,limiter:l={fn:_=>{let{x:h,y:b}=_;return{x:h,y:b}}},...u}=evaluate(e,n),c={x:t,y:o},d=await a.detectOverflow(n,u),v=getSideAxis(getSide(r)),m=getOppositeAxis(v);let f=c[m],p=c[v];if(s){const _=m==="y"?"top":"left",h=m==="y"?"bottom":"right",b=f+d[_],V=f-d[h];f=clamp(b,f,V)}if(i){const _=v==="y"?"top":"left",h=v==="y"?"bottom":"right",b=p+d[_],V=p-d[h];p=clamp(b,p,V)}const g=l.fn({...n,[m]:f,[v]:p});return{...g,data:{x:g.x-t,y:g.y-o,enabled:{[m]:s,[v]:i}}}}}},min$2=Math.min,max$2=Math.max,round=Math.round,floor=Math.floor,createCoords=e=>({x:e,y:e});function hasWindow(){return typeof window<"u"}function getNodeName(e){return isNode(e)?(e.nodeName||"").toLowerCase():"#document"}function getWindow(e){var n;return(e==null||(n=e.ownerDocument)==null?void 0:n.defaultView)||window}function getDocumentElement(e){var n;return(n=(isNode(e)?e.ownerDocument:e.document)||window.document)==null?void 0:n.documentElement}function isNode(e){return hasWindow()?e instanceof Node||e instanceof getWindow(e).Node:!1}function isElement$1(e){return hasWindow()?e instanceof Element||e instanceof getWindow(e).Element:!1}function isHTMLElement(e){return hasWindow()?e instanceof HTMLElement||e instanceof getWindow(e).HTMLElement:!1}function isShadowRoot(e){return!hasWindow()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof getWindow(e).ShadowRoot}function isOverflowElement(e){const{overflow:n,overflowX:t,overflowY:o,display:r}=getComputedStyle$1(e);return/auto|scroll|overlay|hidden|clip/.test(n+o+t)&&r!=="inline"&&r!=="contents"}function isTableElement(e){return/^(table|td|th)$/.test(getNodeName(e))}function isTopLayer(e){try{if(e.matches(":popover-open"))return!0}catch{}try{return e.matches(":modal")}catch{return!1}}const willChangeRe=/transform|translate|scale|rotate|perspective|filter/,containRe=/paint|layout|strict|content/,isNotNone=e=>!!e&&e!=="none";let isWebKitValue;function isContainingBlock(e){const n=isElement$1(e)?getComputedStyle$1(e):e;return isNotNone(n.transform)||isNotNone(n.translate)||isNotNone(n.scale)||isNotNone(n.rotate)||isNotNone(n.perspective)||!isWebKit()&&(isNotNone(n.backdropFilter)||isNotNone(n.filter))||willChangeRe.test(n.willChange||"")||containRe.test(n.contain||"")}function getContainingBlock(e){let n=getParentNode(e);for(;isHTMLElement(n)&&!isLastTraversableNode(n);){if(isContainingBlock(n))return n;if(isTopLayer(n))return null;n=getParentNode(n)}return null}function isWebKit(){return isWebKitValue==null&&(isWebKitValue=typeof CSS<"u"&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),isWebKitValue}function isLastTraversableNode(e){return/^(html|body|#document)$/.test(getNodeName(e))}function getComputedStyle$1(e){return getWindow(e).getComputedStyle(e)}function getNodeScroll(e){return isElement$1(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function getParentNode(e){if(getNodeName(e)==="html")return e;const n=e.assignedSlot||e.parentNode||isShadowRoot(e)&&e.host||getDocumentElement(e);return isShadowRoot(n)?n.host:n}function getNearestOverflowAncestor(e){const n=getParentNode(e);return isLastTraversableNode(n)?e.ownerDocument?e.ownerDocument.body:e.body:isHTMLElement(n)&&isOverflowElement(n)?n:getNearestOverflowAncestor(n)}function getOverflowAncestors(e,n,t){var o;n===void 0&&(n=[]),t===void 0&&(t=!0);const r=getNearestOverflowAncestor(e),a=r===((o=e.ownerDocument)==null?void 0:o.body),s=getWindow(r);if(a){const i=getFrameElement(s);return n.concat(s,s.visualViewport||[],isOverflowElement(r)?r:[],i&&t?getOverflowAncestors(i):[])}else return n.concat(r,getOverflowAncestors(r,[],t))}function getFrameElement(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function getCssDimensions(e){const n=getComputedStyle$1(e);let t=parseFloat(n.width)||0,o=parseFloat(n.height)||0;const r=isHTMLElement(e),a=r?e.offsetWidth:t,s=r?e.offsetHeight:o,i=round(t)!==a||round(o)!==s;return i&&(t=a,o=s),{width:t,height:o,$:i}}function unwrapElement(e){return isElement$1(e)?e:e.contextElement}function getScale(e){const n=unwrapElement(e);if(!isHTMLElement(n))return createCoords(1);const t=n.getBoundingClientRect(),{width:o,height:r,$:a}=getCssDimensions(n);let s=(a?round(t.width):t.width)/o,i=(a?round(t.height):t.height)/r;return(!s||!Number.isFinite(s))&&(s=1),(!i||!Number.isFinite(i))&&(i=1),{x:s,y:i}}const noOffsets=createCoords(0);function getVisualOffsets(e){const n=getWindow(e);return!isWebKit()||!n.visualViewport?noOffsets:{x:n.visualViewport.offsetLeft,y:n.visualViewport.offsetTop}}function shouldAddVisualOffsets(e,n,t){return n===void 0&&(n=!1),!t||n&&t!==getWindow(e)?!1:n}function getBoundingClientRect(e,n,t,o){n===void 0&&(n=!1),t===void 0&&(t=!1);const r=e.getBoundingClientRect(),a=unwrapElement(e);let s=createCoords(1);n&&(o?isElement$1(o)&&(s=getScale(o)):s=getScale(e));const i=shouldAddVisualOffsets(a,t,o)?getVisualOffsets(a):createCoords(0);let l=(r.left+i.x)/s.x,u=(r.top+i.y)/s.y,c=r.width/s.x,d=r.height/s.y;if(a){const v=getWindow(a),m=o&&isElement$1(o)?getWindow(o):o;let f=v,p=getFrameElement(f);for(;p&&o&&m!==f;){const g=getScale(p),_=p.getBoundingClientRect(),h=getComputedStyle$1(p),b=_.left+(p.clientLeft+parseFloat(h.paddingLeft))*g.x,V=_.top+(p.clientTop+parseFloat(h.paddingTop))*g.y;l*=g.x,u*=g.y,c*=g.x,d*=g.y,l+=b,u+=V,f=getWindow(p),p=getFrameElement(f)}}return rectToClientRect({width:c,height:d,x:l,y:u})}function getWindowScrollBarX(e,n){const t=getNodeScroll(e).scrollLeft;return n?n.left+t:getBoundingClientRect(getDocumentElement(e)).left+t}function getHTMLOffset(e,n){const t=e.getBoundingClientRect(),o=t.left+n.scrollLeft-getWindowScrollBarX(e,t),r=t.top+n.scrollTop;return{x:o,y:r}}function convertOffsetParentRelativeRectToViewportRelativeRect(e){let{elements:n,rect:t,offsetParent:o,strategy:r}=e;const a=r==="fixed",s=getDocumentElement(o),i=n?isTopLayer(n.floating):!1;if(o===s||i&&a)return t;let l={scrollLeft:0,scrollTop:0},u=createCoords(1);const c=createCoords(0),d=isHTMLElement(o);if((d||!d&&!a)&&((getNodeName(o)!=="body"||isOverflowElement(s))&&(l=getNodeScroll(o)),d)){const m=getBoundingClientRect(o);u=getScale(o),c.x=m.x+o.clientLeft,c.y=m.y+o.clientTop}const v=s&&!d&&!a?getHTMLOffset(s,l):createCoords(0);return{width:t.width*u.x,height:t.height*u.y,x:t.x*u.x-l.scrollLeft*u.x+c.x+v.x,y:t.y*u.y-l.scrollTop*u.y+c.y+v.y}}function getClientRects(e){return Array.from(e.getClientRects())}function getDocumentRect(e){const n=getDocumentElement(e),t=getNodeScroll(e),o=e.ownerDocument.body,r=max$2(n.scrollWidth,n.clientWidth,o.scrollWidth,o.clientWidth),a=max$2(n.scrollHeight,n.clientHeight,o.scrollHeight,o.clientHeight);let s=-t.scrollLeft+getWindowScrollBarX(e);const i=-t.scrollTop;return getComputedStyle$1(o).direction==="rtl"&&(s+=max$2(n.clientWidth,o.clientWidth)-r),{width:r,height:a,x:s,y:i}}const SCROLLBAR_MAX=25;function getViewportRect(e,n){const t=getWindow(e),o=getDocumentElement(e),r=t.visualViewport;let a=o.clientWidth,s=o.clientHeight,i=0,l=0;if(r){a=r.width,s=r.height;const c=isWebKit();(!c||c&&n==="fixed")&&(i=r.offsetLeft,l=r.offsetTop)}const u=getWindowScrollBarX(o);if(u<=0){const c=o.ownerDocument,d=c.body,v=getComputedStyle(d),m=c.compatMode==="CSS1Compat"&&parseFloat(v.marginLeft)+parseFloat(v.marginRight)||0,f=Math.abs(o.clientWidth-d.clientWidth-m);f<=SCROLLBAR_MAX&&(a-=f)}else u<=SCROLLBAR_MAX&&(a+=u);return{width:a,height:s,x:i,y:l}}function getInnerBoundingClientRect(e,n){const t=getBoundingClientRect(e,!0,n==="fixed"),o=t.top+e.clientTop,r=t.left+e.clientLeft,a=isHTMLElement(e)?getScale(e):createCoords(1),s=e.clientWidth*a.x,i=e.clientHeight*a.y,l=r*a.x,u=o*a.y;return{width:s,height:i,x:l,y:u}}function getClientRectFromClippingAncestor(e,n,t){let o;if(n==="viewport")o=getViewportRect(e,t);else if(n==="document")o=getDocumentRect(getDocumentElement(e));else if(isElement$1(n))o=getInnerBoundingClientRect(n,t);else{const r=getVisualOffsets(e);o={x:n.x-r.x,y:n.y-r.y,width:n.width,height:n.height}}return rectToClientRect(o)}function hasFixedPositionAncestor(e,n){const t=getParentNode(e);return t===n||!isElement$1(t)||isLastTraversableNode(t)?!1:getComputedStyle$1(t).position==="fixed"||hasFixedPositionAncestor(t,n)}function getClippingElementAncestors(e,n){const t=n.get(e);if(t)return t;let o=getOverflowAncestors(e,[],!1).filter(i=>isElement$1(i)&&getNodeName(i)!=="body"),r=null;const a=getComputedStyle$1(e).position==="fixed";let s=a?getParentNode(e):e;for(;isElement$1(s)&&!isLastTraversableNode(s);){const i=getComputedStyle$1(s),l=isContainingBlock(s);!l&&i.position==="fixed"&&(r=null),(a?!l&&!r:!l&&i.position==="static"&&!!r&&(r.position==="absolute"||r.position==="fixed")||isOverflowElement(s)&&!l&&hasFixedPositionAncestor(e,s))?o=o.filter(c=>c!==s):r=i,s=getParentNode(s)}return n.set(e,o),o}function getClippingRect(e){let{element:n,boundary:t,rootBoundary:o,strategy:r}=e;const s=[...t==="clippingAncestors"?isTopLayer(n)?[]:getClippingElementAncestors(n,this._c):[].concat(t),o],i=getClientRectFromClippingAncestor(n,s[0],r);let l=i.top,u=i.right,c=i.bottom,d=i.left;for(let v=1;v<s.length;v++){const m=getClientRectFromClippingAncestor(n,s[v],r);l=max$2(m.top,l),u=min$2(m.right,u),c=min$2(m.bottom,c),d=max$2(m.left,d)}return{width:u-d,height:c-l,x:d,y:l}}function getDimensions(e){const{width:n,height:t}=getCssDimensions(e);return{width:n,height:t}}function getRectRelativeToOffsetParent(e,n,t){const o=isHTMLElement(n),r=getDocumentElement(n),a=t==="fixed",s=getBoundingClientRect(e,!0,a,n);let i={scrollLeft:0,scrollTop:0};const l=createCoords(0);function u(){l.x=getWindowScrollBarX(r)}if(o||!o&&!a)if((getNodeName(n)!=="body"||isOverflowElement(r))&&(i=getNodeScroll(n)),o){const m=getBoundingClientRect(n,!0,a,n);l.x=m.x+n.clientLeft,l.y=m.y+n.clientTop}else r&&u();a&&!o&&r&&u();const c=r&&!o&&!a?getHTMLOffset(r,i):createCoords(0),d=s.left+i.scrollLeft-l.x-c.x,v=s.top+i.scrollTop-l.y-c.y;return{x:d,y:v,width:s.width,height:s.height}}function isStaticPositioned(e){return getComputedStyle$1(e).position==="static"}function getTrueOffsetParent(e,n){if(!isHTMLElement(e)||getComputedStyle$1(e).position==="fixed")return null;if(n)return n(e);let t=e.offsetParent;return getDocumentElement(e)===t&&(t=t.ownerDocument.body),t}function getOffsetParent(e,n){const t=getWindow(e);if(isTopLayer(e))return t;if(!isHTMLElement(e)){let r=getParentNode(e);for(;r&&!isLastTraversableNode(r);){if(isElement$1(r)&&!isStaticPositioned(r))return r;r=getParentNode(r)}return t}let o=getTrueOffsetParent(e,n);for(;o&&isTableElement(o)&&isStaticPositioned(o);)o=getTrueOffsetParent(o,n);return o&&isLastTraversableNode(o)&&isStaticPositioned(o)&&!isContainingBlock(o)?t:o||getContainingBlock(e)||t}const getElementRects=async function(e){const n=this.getOffsetParent||getOffsetParent,t=this.getDimensions,o=await t(e.floating);return{reference:getRectRelativeToOffsetParent(e.reference,await n(e.floating),e.strategy),floating:{x:0,y:0,width:o.width,height:o.height}}};function isRTL(e){return getComputedStyle$1(e).direction==="rtl"}const platform={convertOffsetParentRelativeRectToViewportRelativeRect,getDocumentElement,getClippingRect,getOffsetParent,getElementRects,getClientRects,getDimensions,getScale,isElement:isElement$1,isRTL};function rectsAreEqual(e,n){return e.x===n.x&&e.y===n.y&&e.width===n.width&&e.height===n.height}function observeMove(e,n){let t=null,o;const r=getDocumentElement(e);function a(){var i;clearTimeout(o),(i=t)==null||i.disconnect(),t=null}function s(i,l){i===void 0&&(i=!1),l===void 0&&(l=1),a();const u=e.getBoundingClientRect(),{left:c,top:d,width:v,height:m}=u;if(i||n(),!v||!m)return;const f=floor(d),p=floor(r.clientWidth-(c+v)),g=floor(r.clientHeight-(d+m)),_=floor(c),b={rootMargin:-f+"px "+-p+"px "+-g+"px "+-_+"px",threshold:max$2(0,min$2(1,l))||1};let V=!0;function S($){const w=$[0].intersectionRatio;if(w!==l){if(!V)return s();w?s(!1,w):o=setTimeout(()=>{s(!1,1e-7)},1e3)}w===1&&!rectsAreEqual(u,e.getBoundingClientRect())&&s(),V=!1}try{t=new IntersectionObserver(S,{...b,root:r.ownerDocument})}catch{t=new IntersectionObserver(S,b)}t.observe(e)}return s(!0),a}function autoUpdate(e,n,t,o){o===void 0&&(o={});const{ancestorScroll:r=!0,ancestorResize:a=!0,elementResize:s=typeof ResizeObserver=="function",layoutShift:i=typeof IntersectionObserver=="function",animationFrame:l=!1}=o,u=unwrapElement(e),c=r||a?[...u?getOverflowAncestors(u):[],...n?getOverflowAncestors(n):[]]:[];c.forEach(_=>{r&&_.addEventListener("scroll",t,{passive:!0}),a&&_.addEventListener("resize",t)});const d=u&&i?observeMove(u,t):null;let v=-1,m=null;s&&(m=new ResizeObserver(_=>{let[h]=_;h&&h.target===u&&m&&n&&(m.unobserve(n),cancelAnimationFrame(v),v=requestAnimationFrame(()=>{var b;(b=m)==null||b.observe(n)})),t()}),u&&!l&&m.observe(u),n&&m.observe(n));let f,p=l?getBoundingClientRect(e):null;l&&g();function g(){const _=getBoundingClientRect(e);p&&!rectsAreEqual(p,_)&&t(),p=_,f=requestAnimationFrame(g)}return t(),()=>{var _;c.forEach(h=>{r&&h.removeEventListener("scroll",t),a&&h.removeEventListener("resize",t)}),d==null||d(),(_=m)==null||_.disconnect(),m=null,l&&cancelAnimationFrame(f)}}const offset=offset$1,shift=shift$1,flip=flip$1,arrow=arrow$1,computePosition=(e,n,t)=>{const o=new Map,r={platform,...t},a={...r.platform,_c:o};return computePosition$1(e,n,{...r,platform:a})},_sfc_main$2l={name:"VsTooltip",components:{VsButton:LoadingSpinner.VsButton},directives:{"b-tooltip":LoadingSpinner.Ed},props:{title:{type:String,default:""},position:{type:String,default:"top",validator:e=>e.match(/(top|right|left|bottom)/)},offset:{type:Number,default:8},subtle:{type:Boolean,default:!1},useLegacy:{type:Boolean,default:!0}},data(){return{visible:!1,hideTimeout:null,tooltipId:`vs-tooltip-${Math.random().toString(36).slice(2)}`,floatingStyles:{},arrowStyles:{},cleanup:null}},computed:{tooltipClasses(){return["vs-tooltip-popover",{"vs-tooltip-popover--subtle":this.subtle}]},tooltipConfig(){return{placement:this.position,customClass:["vs-tooltip",this.subtle&&"vs-tooltip--subtle"].filter(Boolean).join(" ")}}},beforeUnmount(){clearTimeout(this.hideTimeout),this.cleanup&&this.cleanup()},methods:{show(){this.useLegacy||!this.title||(clearTimeout(this.hideTimeout),this.hideTimeout=null,!this.visible&&(this.visible=!0,this.$nextTick(this.updatePosition)))},hide(){this.useLegacy||(clearTimeout(this.hideTimeout),this.hideTimeout=setTimeout(()=>{this.visible=!1,this.cleanup&&(this.cleanup(),this.cleanup=null),this.hideTimeout=null},220))},async updatePosition(){const e=this.$refs.trigger,n=this.$refs.tooltip,t=this.$refs.arrow;!e||!n||(this.cleanup=autoUpdate(e,n,async()=>{const o=await computePosition(e,n,{placement:this.position,strategy:"fixed",middleware:[offset(this.offset),flip(),shift({padding:8,crossAxis:!0}),arrow({element:t})]});this.applyTooltipPosition(o),this.applyArrowPosition(o)}))},applyTooltipPosition({x:e,y:n}){this.floatingStyles={position:"fixed",left:`${e}px`,top:`${n}px`}},applyArrowPosition({placement:e,middlewareData:n}){if(!n.arrow)return;const{x:t,y:o}=n.arrow,r=e.split("-")[0],a={top:"bottom",right:"left",bottom:"top",left:"right"}[r];this.arrowStyles={left:t!=null?`${t}px`:"",top:o!=null?`${o}px`:"",right:"",bottom:"",[a]:"-4px"}}}},_hoisted_1$1R=["aria-describedby"],_hoisted_2$1i=["id"];function _sfc_render$24(e,n,t,o,r,a){const s=vue.resolveComponent("VsButton"),i=vue.resolveDirective("b-tooltip");return t.useLegacy?vue.withDirectives((vue.openBlock(),vue.createBlock(s,vue.mergeProps({key:1},e.$attrs,{class:"vs-tooltip position-relative","data-test":"vs-tooltip",title:t.title}),{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},16,["title"])),[[i,a.tooltipConfig]]):(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createElementVNode("span",vue.mergeProps({ref:"trigger"},e.$attrs,{"data-test":"vs-tooltip-trigger",class:"d-inline-block","aria-describedby":r.visible?r.tooltipId:null,onMouseenter:n[0]||(n[0]=(...l)=>a.show&&a.show(...l)),onMouseleave:n[1]||(n[1]=(...l)=>a.hide&&a.hide(...l)),onFocusin:n[2]||(n[2]=(...l)=>a.show&&a.show(...l)),onFocusout:n[3]||(n[3]=(...l)=>a.hide&&a.hide(...l)),onKeydown:n[4]||(n[4]=vue.withKeys((...l)=>a.hide&&a.hide(...l),["escape"]))}),[vue.renderSlot(e.$slots,"default")],16,_hoisted_1$1R),r.visible&&t.title?(vue.openBlock(),vue.createElementBlock("div",{key:0,ref:"tooltip",id:r.tooltipId,tabindex:"-1",class:vue.normalizeClass(a.tooltipClasses),role:"tooltip",style:vue.normalizeStyle(r.floatingStyles)},[vue.createTextVNode(vue.toDisplayString(t.title)+" ",1),vue.createElementVNode("div",{ref:"arrow",class:"vs-tooltip__arrow",style:vue.normalizeStyle(r.arrowStyles)},null,4)],14,_hoisted_2$1i)):vue.createCommentVNode("",!0)],64))}const VsTooltip=LoadingSpinner._export_sfc(_sfc_main$2l,[["render",_sfc_render$24]]),_sfc_main$2k={name:"VsCannedSearchLogos",status:"prototype",release:"0.0.1",components:{VsTooltip,VsImg:LoadingSpinner.VsImg},inject:["slideVisible"],props:{goodToGoLogo:{type:Object,default:null},safeTravelsLogo:{type:Object,default:null},awards:{type:Array,default:null},accessGuide:{type:Object,default:null}}},_hoisted_1$1Q={class:"vs-canned-search-logos"};function _sfc_render$23(e,n,t,o,r,a){const s=vue.resolveComponent("VsImg"),i=vue.resolveComponent("VsTooltip");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1Q,[t.goodToGoLogo?(vue.openBlock(),vue.createBlock(i,{key:0,title:t.goodToGoLogo.name,href:"#",class:"p-0",variant:"subtle","data-test":"vs-canned-search-logos__good-to-go",disabled:!a.slideVisible(),tabindex:a.slideVisible()?"0":"-1"},{default:vue.withCtx(()=>[vue.createVNode(s,{alt:t.goodToGoLogo.name,src:t.goodToGoLogo.image,class:"vs-canned-search-logos__logo"},null,8,["alt","src"])]),_:1},8,["title","disabled","tabindex"])):vue.createCommentVNode("",!0),t.safeTravelsLogo?(vue.openBlock(),vue.createBlock(i,{key:1,title:t.safeTravelsLogo.name,href:"#",class:"p-0",variant:"subtle","data-test":"vs-canned-search-logos__safe-travels",disabled:!a.slideVisible(),tabindex:a.slideVisible()?"0":"-1"},{default:vue.withCtx(()=>[vue.createVNode(s,{alt:t.safeTravelsLogo.name,src:t.safeTravelsLogo.image,class:"vs-canned-search-logos__logo"},null,8,["alt","src"])]),_:1},8,["title","disabled","tabindex"])):vue.createCommentVNode("",!0),(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(t.awards,l=>(vue.openBlock(),vue.createBlock(i,{title:l.name,key:l.id,href:"#",class:"p-0",variant:"subtle",disabled:!a.slideVisible(),tabindex:a.slideVisible()?"0":"-1"},{default:vue.withCtx(()=>[vue.createVNode(s,{src:l.image,alt:l.name,class:"vs-canned-search-logos__logo","data-test":"vs-canned-search-logos__award-logo"},null,8,["src","alt"])]),_:2},1032,["title","disabled","tabindex"]))),128)),t.accessGuide?(vue.openBlock(),vue.createBlock(i,{key:2,title:t.accessGuide.name,href:"#",variant:"subtle",class:"vs-canned-search-logos__access p-0","data-test":"vs-canned-search-logos__access-guide",disabled:!a.slideVisible(),tabindex:a.slideVisible()?"0":"-1"},{default:vue.withCtx(()=>[vue.createVNode(s,{src:t.accessGuide.image,alt:t.accessGuide.name,class:"vs-canned-search-logos__logo"},null,8,["src","alt"])]),_:1},8,["title","disabled","tabindex"])):vue.createCommentVNode("",!0)])}const VsCannedSearchLogos=LoadingSpinner._export_sfc(_sfc_main$2k,[["render",_sfc_render$23]]),_sfc_main$2j={name:"VsCannedSearchCategories",status:"prototype",release:"0.0.1",props:{categories:{type:Array,default:null}},computed:{transformedCategories(){return this.categories?this.categories.slice(0,3).map(e=>e.name).join(" | "):""}}},_hoisted_1$1P={class:"vs-canned-search-categories","data-test":"vs-canned-search-categories"};function _sfc_render$22(e,n,t,o,r,a){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1P,vue.toDisplayString(a.transformedCategories),1)}const VsCannedSearchCategories=LoadingSpinner._export_sfc(_sfc_main$2j,[["render",_sfc_render$22]]),_sfc_main$2i={name:"VsCannedSearchPrice",status:"prototype",release:"0.0.1",props:{price:{type:String,default:""},priceIntro:{type:String,default:""},priceOutro:{type:String,default:""}}},_hoisted_1$1O={class:"vs-canned-search-price"},_hoisted_2$1h={key:0,class:"vs-canned-search-price__intro"},_hoisted_3$10={key:1,class:"vs-canned-search-price__main"},_hoisted_4$K={key:2,class:"vs-canned-search-price__outro"};function _sfc_render$21(e,n,t,o,r,a){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1O,[t.priceIntro?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$1h,vue.toDisplayString(t.priceIntro),1)):vue.createCommentVNode("",!0),t.price?(vue.openBlock(),vue.createElementBlock("div",_hoisted_3$10,vue.toDisplayString(t.price),1)):vue.createCommentVNode("",!0),t.priceOutro?(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$K,vue.toDisplayString(t.priceOutro),1)):vue.createCommentVNode("",!0)])}const VsCannedSearchPrice=LoadingSpinner._export_sfc(_sfc_main$2i,[["render",_sfc_render$21]]),_sfc_main$2h={name:"VsCannedSearchDuration",status:"prototype",release:"0.0.1",props:{duration:{type:String,default:""},durationIntro:{type:String,default:""}}},_hoisted_1$1N={class:"vs-canned-search-duration"},_hoisted_2$1g={key:0,class:"vs-canned-search-duration__intro"},_hoisted_3$$={key:1,class:"vs-canned-search-duration__main"};function _sfc_render$20(e,n,t,o,r,a){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1N,[t.durationIntro?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$1g,vue.toDisplayString(t.durationIntro),1)):vue.createCommentVNode("",!0),t.duration?(vue.openBlock(),vue.createElementBlock("div",_hoisted_3$$,vue.toDisplayString(t.duration),1)):vue.createCommentVNode("",!0)])}const VsCannedSearchDuration=LoadingSpinner._export_sfc(_sfc_main$2h,[["render",_sfc_render$20]]),_sfc_main$2g={name:"VsCannedSearchSummaryBox",status:"prototype",release:"0.0.1",components:{VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,VsLink},inject:["slideVisible"],props:{linkHref:{type:String,default:""},linkLabel:{type:String,default:""},linkType:{type:String,default:""},linkTitle:{type:String,default:""}}},_hoisted_1$1M=["disabled"],_hoisted_2$1f={class:"visually-hidden"};function _sfc_render$1$(e,n,t,o,r,a){const s=vue.resolveComponent("VsCol"),i=vue.resolveComponent("VsRow"),l=vue.resolveComponent("VsLink"),u=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("div",{class:"vs-canned-search-summary-box",disabled:!a.slideVisible()},[vue.createVNode(u,null,{default:vue.withCtx(()=>[e.$slots["vs-canned-search-summary-top"]&&e.$slots["vs-canned-search-summary-top"]()?(vue.openBlock(),vue.createBlock(i,{key:0},{default:vue.withCtx(()=>[vue.createVNode(s,{cols:"12",class:"vs-canned-search-summary-box__summary-item"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-canned-search-summary-top")]),_:3})]),_:3})):vue.createCommentVNode("",!0),vue.createVNode(i,{class:"row--tall"},{default:vue.withCtx(()=>[e.$slots["vs-canned-search-summary-left"]&&e.$slots["vs-canned-search-summary-left"]()?(vue.openBlock(),vue.createBlock(s,{key:0,class:"vs-canned-search-summary-box__summary-item"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-canned-search-summary-left")]),_:3})):vue.createCommentVNode("",!0),e.$slots["vs-canned-search-summary-centre"]&&e.$slots["vs-canned-search-summary-centre"]()?(vue.openBlock(),vue.createBlock(s,{key:1,class:"vs-canned-search-summary-box__summary-item"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-canned-search-summary-centre")]),_:3})):vue.createCommentVNode("",!0),t.linkHref?(vue.openBlock(),vue.createBlock(s,{key:2,class:"vs-canned-search-summary-box__summary-item"},{default:vue.withCtx(()=>[vue.createVNode(l,{"data-test":"vs-canned-search-summary-box__link",href:t.linkHref,type:t.linkType.toLowerCase(),disabled:!a.slideVisible()},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.linkLabel)+" ",1),vue.createElementVNode("span",_hoisted_2$1f,": "+vue.toDisplayString(t.linkTitle),1)]),_:1},8,["href","type","disabled"])]),_:1})):vue.createCommentVNode("",!0)]),_:3})]),_:3})],8,_hoisted_1$1M)}const VsCannedSearchSummaryBox=LoadingSpinner._export_sfc(_sfc_main$2g,[["render",_sfc_render$1$]]),_sfc_main$2f={name:"VsCannedSearchDates",status:"prototype",release:"0.0.1",props:{period:{type:Object,default:null},label:{type:String,default:""}},computed:{datePeriod(){return this.period&&this.period.startDay?this.period.endDay?`${this.period.startDay} - ${this.period.endDay}`:this.period.startDay:""}}},_hoisted_1$1L={class:"vs-canned-search-dates"},_hoisted_2$1e={class:"vs-canned-search-dates__intro"},_hoisted_3$_={class:"vs-canned-search-dates__main"};function _sfc_render$1_(e,n,t,o,r,a){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1L,[vue.createElementVNode("div",_hoisted_2$1e,vue.toDisplayString(t.label),1),vue.createElementVNode("div",_hoisted_3$_,vue.toDisplayString(a.datePeriod),1)])}const VsCannedSearchDates=LoadingSpinner._export_sfc(_sfc_main$2f,[["render",_sfc_render$1_]]),_sfc_main$2e={name:"VsCannedSearchBadges",status:"prototype",release:"0.0.1",props:{badgeOne:{type:String,default:""},multiBadgeOne:{type:Array,default:null},badgeTwo:{type:String,default:""},badgeThree:{type:String,default:""}},computed:{limitedMulti(){return this.multiBadgeOne?this.multiBadgeOne.slice(0,3):[]}}},_hoisted_1$1K={class:"vs-canned-search-badges"},_hoisted_2$1d={key:0,class:"vs-canned-search-badges__badge vs-canned-search-badges__badge--category vs-canned-search-badges__badge--tr"},_hoisted_3$Z={key:1,class:"vs-canned-search-badges__multi-badge-holder"},_hoisted_4$J={key:2,class:"vs-canned-search-badges__badge vs-canned-search-badges__badge--offer vs-canned-search-badges__badge--tr2"},_hoisted_5$x={key:3,class:"vs-canned-search-badges__badge vs-canned-search-badges__badge--open vs-canned-search-badges__badge--br"};function _sfc_render$1Z(e,n,t,o,r,a){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1K,[t.badgeOne?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$1d,vue.toDisplayString(t.badgeOne),1)):t.multiBadgeOne&&t.multiBadgeOne.length?(vue.openBlock(),vue.createElementBlock("div",_hoisted_3$Z,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(a.limitedMulti,(s,i)=>(vue.openBlock(),vue.createElementBlock("div",{key:i,class:"vs-canned-search-badges__badge vs-canned-search-badges__badge--category vs-canned-search-badges__multi-badge"},vue.toDisplayString(s),1))),128))])):vue.createCommentVNode("",!0),t.badgeTwo?(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$J,vue.toDisplayString(t.badgeTwo),1)):vue.createCommentVNode("",!0),t.badgeThree?(vue.openBlock(),vue.createElementBlock("div",_hoisted_5$x,vue.toDisplayString(t.badgeThree),1)):vue.createCommentVNode("",!0)])}const VsCannedSearchBadges=LoadingSpinner._export_sfc(_sfc_main$2e,[["render",_sfc_render$1Z]]),_sfc_main$2d={name:"VsCannedSearchCuisines",status:"prototype",release:"0.0.1",props:{cuisines:{type:Array,default:null}}},_hoisted_1$1J={class:"vs-canned-search-cuisines","data-test":"vs-canned-search-cuisines"};function _sfc_render$1Y(e,n,t,o,r,a){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1J,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(t.cuisines,(s,i)=>(vue.openBlock(),vue.createElementBlock("span",{class:"vs-canned-search-cuisines__cuisine",key:i},vue.toDisplayString(s.name),1))),128))])}const VsCannedSearchCuisines=LoadingSpinner._export_sfc(_sfc_main$2d,[["render",_sfc_render$1Y]]),_sfc_main$2c={name:"VsCannedSearchSubHeading",status:"prototype",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading},props:{subHeading:{type:String,default:""},lineLimit:{type:Number,default:null,validator:e=>[1,2].includes(e)}}};function _sfc_render$1X(e,n,t,o,r,a){const s=vue.resolveComponent("VsHeading");return t.subHeading?(vue.openBlock(),vue.createBlock(s,{key:0,level:"4","heading-style":"heading-xxs",class:vue.normalizeClass(["vs-canned-search-sub-heading",t.lineLimit?`vs-canned-search-sub-heading--lines-${t.lineLimit}`:""]),"data-test":"vs-canned-search-sub-heading"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.subHeading),1)]),_:1},8,["class"])):vue.createCommentVNode("",!0)}const VsCannedSearchSubHeading=LoadingSpinner._export_sfc(_sfc_main$2c,[["render",_sfc_render$1X]]),_sfc_main$2b={name:"VsCannedSearchTourRuns",status:"prototype",release:"0.0.1",props:{label:{type:String,default:""},startDay:{type:String,default:""},endDay:{type:String,default:""}},computed:{formattedPeriod(){let e=`${this.label}: ${this.startDay}`;return this.endDay&&(e=`${e} - ${this.endDay}`),e}}},_hoisted_1$1I={class:"vs-canned-search-tour-runs"};function _sfc_render$1W(e,n,t,o,r,a){return vue.openBlock(),vue.createElementBlock("p",_hoisted_1$1I,vue.toDisplayString(a.formattedPeriod),1)}const VsCannedSearchTourRuns=LoadingSpinner._export_sfc(_sfc_main$2b,[["render",_sfc_render$1W]]),_sfc_main$2a={name:"VsCannedSearchTourDeparts",status:"prototype",release:"0.0.1",props:{label:{type:String,default:null},origins:{type:Array,default:null}},computed:{transformedOrigins(){return this.origins?this.origins.map(e=>e.name).join(", "):""}}},_hoisted_1$1H={class:"vs-canned-search-tour-departs"},_hoisted_2$1c={class:"vs-canned-search-tour-departs__label"};function _sfc_render$1V(e,n,t,o,r,a){return vue.openBlock(),vue.createElementBlock("p",_hoisted_1$1H,[vue.createElementVNode("span",_hoisted_2$1c,vue.toDisplayString(t.label)+":",1),vue.createTextVNode(" "+vue.toDisplayString(a.transformedOrigins),1)])}const VsCannedSearchTourDeparts=LoadingSpinner._export_sfc(_sfc_main$2a,[["render",_sfc_render$1V]]),_sfc_main$29={name:"VsCarousel",status:"prototype",release:"0.0.1",components:{VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,VsButton:LoadingSpinner.VsButton},provide(){const e={},n=this.activeSlides;return Object.keys(this.slidesPerPage).forEach(t=>{const o=12/this.slidesPerPage[t];e[t]=o}),{slideCols:e,visibleSlides:n}},props:{prevText:{type:String,default:"Previous slide"},nextText:{type:String,default:"Next slide"},slidesXs:{type:Number,default:1},slidesSm:{type:Number,default:2},slidesMd:{type:Number,default:3},slidesLg:{type:Number,default:4}},data(){return{totalSlides:null,currentPage:0,maxPages:1,nextDisabled:!1,prevDisabled:!0,currentWidth:"lg",activeSlides:[],remainderOffset:0,navigating:!1}},computed:{slidesPerPage(){const e={};return e.lg=this.slidesLg,e.md=this.slidesMd,e.sm=this.slidesSm,e.xs=this.slidesXs,e},trackOffset(){return this.remainderOffset?`-${(this.currentPage-1)*100+this.remainderOffset}%`:`-${this.currentPage*100}%`}},mounted(){window.addEventListener("resize",()=>{this.setActivePage(),this.sliderNavigate(null,this.currentPage)}),this.defineActiveSlides(),this.initNavigation()},methods:{defineActiveSlides(e){this.calcViewport(),this.activeSlides.length=0;const n=this.$refs.carousel.getElementsByClassName("vs-carousel-slide__card");let t=0;n.length>0&&Array.from(n).forEach((r,a)=>{const s=this.currentPage*this.slidesPerPage[this.currentWidth],i=parseInt(this.currentPage*this.slidesPerPage[this.currentWidth],10)+parseInt(this.slidesPerPage[this.currentWidth],10);e&&typeof e<"u"?a>=this.totalSlides-this.slidesPerPage[this.currentWidth]&&this.activeSlides.push(a):a>=s&&a<i&&this.activeSlides.push(a),t+=1}),this.totalSlides=t,this.maxPages=Math.ceil(t/this.slidesPerPage[this.currentWidth])},calcViewport(){window.matchMedia("(min-width: 1200px)").matches?this.currentWidth="lg":window.matchMedia("(min-width: 992px)").matches?this.currentWidth="md":window.matchMedia("(min-width: 576px)").matches?this.currentWidth="sm":this.currentWidth="xs"},setActivePage(){let e;this.currentWidth==="xs"&&this.slidesXs===1?e=this.currentPage+1:e=this.currentPage*this.slidesPerPage[this.currentWidth]+1,this.calcViewport();let n;this.currentWidth==="xs"&&this.slidesXs===1?n=e:n=Math.ceil(e/this.slidesPerPage[this.currentWidth]),this.currentPage=n-1,this.sliderNavigate(null,this.currentPage)},sliderNavigate(e,n){const t=this.activeSlides[0];if(e&&e.preventDefault(),this.navigating)return;this.navigating=!0,setTimeout(()=>{this.navigating=!1},250),n==="next"?this.currentPage+1<this.maxPages&&(this.currentPage+=1):n==="prev"?this.currentPage>0&&(this.currentPage-=1):this.currentPage=n,this.initNavigation();const o=this.slidesPerPage[this.currentWidth]*(this.currentPage+1);let r=!1;if(o>this.totalSlides?(this.remainderOffset=this.checkRemainder(o),r=!0):this.remainderOffset=0,this.defineActiveSlides(r),n==="next"){const a=this.getFirstActiveSlide();if(a){const s=a.querySelectorAll("a")[0];setTimeout(()=>{s.focus()},250)}}else if(n==="prev"&&this.currentPage>=0){const a=this.$refs.carousel.querySelectorAll(".card")[t-1];if(a){const s=a.querySelectorAll("a")[0];setTimeout(()=>{s.focus()},250)}}},getFirstActiveSlide(){return this.$refs.carousel.querySelectorAll(".card")[this.currentPage*this.slidesPerPage[this.currentWidth]]},getLastActiveSlide(){return this.$refs.carousel.querySelectorAll(".card")[this.currentPage*this.slidesPerPage[this.currentWidth]+this.slidesPerPage[this.currentWidth]-1]},initNavigation(){this.currentPage+1>=this.totalSlides/this.slidesPerPage[this.currentWidth]?this.nextDisabled=!0:this.nextDisabled=!1,this.currentPage>0?this.prevDisabled=!1:this.prevDisabled=!0},checkRemainder(e){const n=this.slidesPerPage[this.currentWidth]-(e-this.totalSlides);return 100/this.slidesPerPage[this.currentWidth]*n}}},_hoisted_1$1G={class:"vs-carousel","data-test":"vs-carousel",ref:"carousel"},_hoisted_2$1b={class:"slider"},_hoisted_3$Y={key:2,class:"vs-carousel__navigation"},_hoisted_4$I=["onClick","onKeypress","data-test"],_hoisted_5$w={class:"visually-hidden"},_hoisted_6$m={key:0,class:"vs-carousel__mobile-pagination-wrapper"},_hoisted_7$i={class:"vs-carousel__mobile-pagination","data-test":"vs-carousel__mobile-pagination"};function _sfc_render$1U(e,n,t,o,r,a){const s=vue.resolveComponent("VsButton"),i=vue.resolveComponent("VsRow"),l=vue.resolveComponent("VsCol"),u=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("section",_hoisted_1$1G,[vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(i,null,{default:vue.withCtx(()=>[vue.createVNode(l,{cols:"10",offset:"1",sm:"12","offset-sm":"0",class:"position-relative"},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_2$1b,[r.prevDisabled?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createBlock(s,{key:0,"icon-only":"",class:"vs-carousel__control vs-carousel__control--prev",onClick:n[0]||(n[0]=c=>a.sliderNavigate(c,"prev")),onKeypress:n[1]||(n[1]=c=>a.sliderNavigate(c,"prev",!0)),icon:"fa-regular fa-arrow-left",ref:"prevButton"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.prevText),1)]),_:1},512)),vue.createVNode(i,{class:"vs-carousel__track",style:vue.normalizeStyle({transform:`translateX(${a.trackOffset})`})},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},8,["style"]),r.nextDisabled?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createBlock(s,{key:1,"icon-only":"",class:"vs-carousel__control vs-carousel__control--next",onKeypress:n[2]||(n[2]=c=>a.sliderNavigate(c,"next",!0)),onClick:n[3]||(n[3]=c=>a.sliderNavigate(c,"next")),icon:"fa-regular fa-arrow-right",ref:"nextButton"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.nextText),1)]),_:1},512)),r.totalSlides>a.slidesPerPage[r.currentWidth]?(vue.openBlock(),vue.createElementBlock("ul",_hoisted_3$Y,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(r.maxPages,c=>(vue.openBlock(),vue.createElementBlock("li",{key:c},[vue.createElementVNode("button",{type:"button",class:vue.normalizeClass(["vs-carousel__navigation-item",c===r.currentPage+1?"vs-carousel__navigation-item--active":""]),onClick:vue.withModifiers(d=>a.sliderNavigate(d,c-1),["prevent"]),onKeypress:vue.withModifiers(d=>a.sliderNavigate(d,c-1,!0),["prevent"]),tabindex:"0","data-test":`vs-carousel__nav-${c}`},[vue.createElementVNode("span",_hoisted_5$w,[vue.renderSlot(e.$slots,"vs-carousel-navigate"),vue.createTextVNode(" "+vue.toDisplayString(c),1)])],42,_hoisted_4$I)]))),128))])):vue.createCommentVNode("",!0)]),r.totalSlides>a.slidesPerPage[r.currentWidth]?(vue.openBlock(),vue.createElementBlock("div",_hoisted_6$m,[vue.createElementVNode("p",_hoisted_7$i,[vue.createTextVNode(vue.toDisplayString(r.currentPage+1)+" ",1),vue.renderSlot(e.$slots,"vs-carousel-of"),vue.createTextVNode(" "+vue.toDisplayString(r.totalSlides),1)])])):vue.createCommentVNode("",!0)]),_:3})]),_:3})]),_:3})],512)}const VsCarousel=LoadingSpinner._export_sfc(_sfc_main$29,[["render",_sfc_render$1U]]),_sfc_main$28={name:"VsModuleWrapper",status:"deprecated",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading,VsBody:LoadingSpinner.VsBody,VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol},props:{anchorId:{type:String,default:null},businessSupport:{type:Boolean,default:!1},headingLevel:{type:Number,default:2,validator:e=>LoadingSpinner.lodashExports.isNumber(e)?e>0&&e<7:e.match(/(1|2|3|4|5|6)/)},headingStyle:{type:String,default:"heading-xl",validator:e=>e.match(/(display-m|display-s|heading-xl|heading-l|heading-m|heading-s|heading-xs|heading-xxs|heading-xxxs)/)},theme:{type:String,default:"light",validator:e=>e.match(/(light|grey|neutral)/)}},computed:{sectionClasses(){return["vs-module-wrapper",`vs-module-wrapper--${this.theme}`,this.businessSupport?"vs-module-wrapper--left-align":null]},headingColumnSizes(){return{cols:this.businessSupport?12:10,offset:this.businessSupport?0:1,md:this.businessSupport?12:8,"offset-md":this.businessSupport?0:2}},IntroColumnSizes(){return{cols:12,sm:this.businessSupport?12:10,"offset-sm":this.businessSupport?0:1,md:this.businessSupport?12:8,"offset-md":this.businessSupport?0:2}}}};function _sfc_render$1T(e,n,t,o,r,a){const s=vue.resolveComponent("VsHeading"),i=vue.resolveComponent("VsCol"),l=vue.resolveComponent("VsBody"),u=vue.resolveComponent("VsRow"),c=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("section",vue.mergeProps({class:a.sectionClasses,"data-test":"vs-module-wrapper"},e.$attrs),[e.$slots["vs-module-wrapper-heading"]&&e.$slots["vs-module-wrapper-heading"]||e.$slots["vs-module-wrapper-intro"]&&e.$slots["vs-module-wrapper-intro"]?(vue.openBlock(),vue.createBlock(c,{key:0},{default:vue.withCtx(()=>[vue.createVNode(u,null,{default:vue.withCtx(()=>[e.$slots["vs-module-wrapper-heading"]&&e.$slots["vs-module-wrapper-heading"]?(vue.openBlock(),vue.createBlock(i,vue.normalizeProps(vue.mergeProps({key:0},a.headingColumnSizes)),{default:vue.withCtx(()=>[vue.createVNode(s,{level:t.headingLevel,"heading-style":t.headingStyle,class:"vs-module-wrapper__heading","data-test":"vs-module-wrapper__heading",id:t.anchorId},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-module-wrapper-heading")]),_:3},8,["level","heading-style","id"])]),_:3},16)):vue.createCommentVNode("",!0),e.$slots["vs-module-wrapper-intro"]&&e.$slots["vs-module-wrapper-intro"]?(vue.openBlock(),vue.createBlock(i,vue.normalizeProps(vue.mergeProps({key:1},a.IntroColumnSizes)),{default:vue.withCtx(()=>[vue.createVNode(l,{class:"vs-module-wrapper__intro","data-test":"vs-module-wrapper__intro",variant:"lead"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-module-wrapper-intro")]),_:3})]),_:3},16)):vue.createCommentVNode("",!0)]),_:3})]),_:3})):vue.createCommentVNode("",!0),vue.renderSlot(e.$slots,"default")],16)}const VsModuleWrapper=LoadingSpinner._export_sfc(_sfc_main$28,[["render",_sfc_render$1T]]),_sfc_main$27={name:"VsCannedSearch",status:"prototype",release:"0.0.1",components:{VsCannedSearchProductCard,VsCannedSearchStars,VsCannedSearchLogos,VsCannedSearchCategories,VsCannedSearchPrice,VsCannedSearchDuration,VsCannedSearchSummaryBox,VsCannedSearchDates,VsCannedSearchBadges,VsCannedSearchCuisines,VsCannedSearchSubHeading,VsCannedSearchTourRuns,VsCannedSearchTourDeparts,VsCarousel,VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,VsModuleWrapper},props:{apiUrl:{type:String,default:""},searchType:{type:String,default:""},heading:{type:String,default:""},carouselNextText:{type:String,default:"Next slide"},carouselPreviousText:{type:String,default:"Previous slide"}},data(){return{products:[]}},computed:{showLogos(){for(let e=0;e<this.products.length;e++){const n=this.products[e];if(n.awards&&n.awards.length||n.accessGuide||n.covidInformation&&n.covidInformation.goodToGo||n.covidInformation&&n.covidInformation.safeTravels)return!0}return!1}},mounted(){this.apiUrl&&this.retrieveProducts()},methods:{retrieveProducts(){LoadingSpinner.axios.get(this.apiUrl).then(e=>{this.products=e.data.data.products}).catch(()=>{this.products=[]})},fetchSubHeading(e){return this.searchType==="tour"?this.fetchCategoryStrings(e):this.fetchAddress(e)},fetchCategoryStrings(e){return e.category&&e.category.length?e.category.map(n=>n.name).join(", "):""},fetchAddress(e){return e.onlineEvent?e.onlineEvent:e.address?this.searchType==="even"?`${e.eventVenue}, ${e.address.city}`:`${e.address.city}, ${e.address.county}`:""},fetchBadgeOne(e){return this.searchType!=="tour"&&e.category&&e.category.length&&e.category[0]?e.category[0].name:null},fetchMultiBadgeOne(e){return this.searchType==="tour"&&e.tourVehicles&&e.tourVehicles.length?e.tourVehicles.map(n=>n.name):null},fetchBadgeThree(e){return e.covidInformation&&e.covidInformation.weAreOpen?e.covidInformation.weAreOpen:e.opening&&e.opening.nowOn?e.opening.nowOn:""}}},_hoisted_1$1F={class:"vs-canned-search","data-test":"vs-canned-search"};function _sfc_render$1S(e,n,t,o,r,a){const s=vue.resolveComponent("VsCol"),i=vue.resolveComponent("VsRow"),l=vue.resolveComponent("VsContainer"),u=vue.resolveComponent("VsCannedSearchTourRuns"),c=vue.resolveComponent("VsCannedSearchTourDeparts"),d=vue.resolveComponent("VsCannedSearchSubHeading"),v=vue.resolveComponent("VsCannedSearchStars"),m=vue.resolveComponent("VsCannedSearchCategories"),f=vue.resolveComponent("VsCannedSearchLogos"),p=vue.resolveComponent("VsCannedSearchBadges"),g=vue.resolveComponent("VsCannedSearchDates"),_=vue.resolveComponent("VsCannedSearchDuration"),h=vue.resolveComponent("VsCannedSearchPrice"),b=vue.resolveComponent("VsCannedSearchCuisines"),V=vue.resolveComponent("VsCannedSearchSummaryBox"),S=vue.resolveComponent("VsCannedSearchProductCard"),$=vue.resolveComponent("VsCarousel"),w=vue.resolveComponent("VsModuleWrapper");return vue.withDirectives((vue.openBlock(),vue.createBlock(w,null,vue.createSlots({default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$1F,[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.createVNode(i,null,{default:vue.withCtx(()=>[vue.createVNode(s,{cols:"10",offset:"1",md:"8","offset-md":"2",lg:"6","offset-lg":"3",class:"vs-canned-search__buttons"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-canned-search-buttons")]),_:3})]),_:3})]),_:3}),r.products.length?(vue.openBlock(),vue.createBlock($,{key:0,"next-text":t.carouselNextText,"prev-text":t.carouselPreviousText,"slides-xs":1,"slides-md":2,"slides-lg":3},{"vs-carousel-of":vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-canned-search-of")]),default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(r.products,(k,P)=>(vue.openBlock(),vue.createBlock(S,{key:P,"slide-index":`${P}`,"img-src":k.images?k.images[0].mediaUrl:"",title:k.name,"detail-link":{link:k.productLink.link,label:k.productLink.label,type:k.productLink.type.toLowerCase()},description:k.description,"search-type":t.searchType},vue.createSlots({"vs-canned-search-sub-heading":vue.withCtx(()=>[vue.createVNode(d,{"sub-heading":a.fetchSubHeading(k),"line-limit":t.searchType==="tour"?1:2},null,8,["sub-heading","line-limit"])]),"vs-canned-search-badges":vue.withCtx(()=>[vue.createVNode(p,{"badge-one":a.fetchBadgeOne(k),"multi-badge-one":a.fetchMultiBadgeOne(k),"badge-two":k.offers,"badge-three":a.fetchBadgeThree(k)},null,8,["badge-one","multi-badge-one","badge-two","badge-three"])]),"vs-canned-search-summary":vue.withCtx(()=>[vue.createVNode(V,{"link-href":k.website.link,"link-type":k.website.type,"link-label":k.website.label,"link-title":k.name},vue.createSlots({"vs-canned-search-summary-left":vue.withCtx(()=>[t.searchType==="tour"&&k.tourLength?(vue.openBlock(),vue.createBlock(_,{key:0,"duration-intro":k.tourLength.label,duration:k.tourLength.value},null,8,["duration-intro","duration"])):k.price&&t.searchType!=="tour"?(vue.openBlock(),vue.createBlock(h,{key:1,"price-intro":k.price.priceLabel,price:k.price.price,"price-outro":k.price.priceBasis},null,8,["price-intro","price","price-outro"])):k.cuisines?(vue.openBlock(),vue.createBlock(b,{key:2,cuisines:k.cuisines},null,8,["cuisines"])):vue.createCommentVNode("",!0)]),_:2},[k.opening&&t.searchType!=="tour"?{name:"vs-canned-search-summary-top",fn:vue.withCtx(()=>[vue.createVNode(g,{period:k.opening.period,label:k.opening.period.label},null,8,["period","label"])]),key:"0"}:void 0,k.price&&t.searchType==="tour"?{name:"vs-canned-search-summary-centre",fn:vue.withCtx(()=>[vue.createVNode(h,{"price-intro":k.price.priceLabel,price:k.price.price,"price-outro":k.price.priceBasis},null,8,["price-intro","price","price-outro"])]),key:"1"}:void 0]),1032,["link-href","link-type","link-label","link-title"])]),_:2},[t.searchType==="tour"?{name:"vs-canned-search-tour-info",fn:vue.withCtx(()=>[vue.createElementVNode("div",null,[k.opening&&k.opening.period&&k.opening.period.startDay?(vue.openBlock(),vue.createBlock(u,{key:0,label:k.opening.period.label,"start-day":k.opening.period.startDay,"end-day":k.opening.period.endDay},null,8,["label","start-day","end-day"])):vue.createCommentVNode("",!0),k.tourOrigin&&k.tourOrigin.tourOrigin?(vue.openBlock(),vue.createBlock(c,{key:1,label:k.tourOrigin.label,origins:k.tourOrigin.tourOrigin},null,8,["label","origins"])):vue.createCommentVNode("",!0)])]),key:"0"}:void 0,k.grading?{name:"vs-canned-search-star-rating",fn:vue.withCtx(()=>[vue.createVNode(v,{min:k.grading.minStars,max:k.grading.maxStars},null,8,["min","max"])]),key:"1"}:void 0,k.locations?{name:"vs-canned-search-categories",fn:vue.withCtx(()=>[vue.createVNode(m,{categories:k.locations},null,8,["categories"])]),key:"2"}:void 0,a.showLogos?{name:"vs-canned-search-logos",fn:vue.withCtx(()=>[vue.createVNode(f,{"good-to-go-logo":k.covidInformation&&k.covidInformation.goodToGo?k.covidInformation.goodToGo:null,"safe-travels-logo":k.covidInformation&&k.covidInformation.safeTravels?k.covidInformation.safeTravels:null,"access-guide":k.accessGuide||null,awards:k.awards},null,8,["good-to-go-logo","safe-travels-logo","access-guide","awards"])]),key:"3"}:void 0]),1032,["slide-index","img-src","title","detail-link","description","search-type"]))),128))]),_:3},8,["next-text","prev-text"])):vue.createCommentVNode("",!0),e.$slots["vs-canned-search-credit"]?(vue.openBlock(),vue.createBlock(l,{key:1,class:"vs-canned-search__credit-container"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-canned-search-credit")]),_:3})):vue.createCommentVNode("",!0)])]),_:2},[t.heading?{name:"vs-module-wrapper-heading",fn:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.heading),1)]),key:"0"}:void 0,e.$slots["vs-canned-search-intro"]?{name:"vs-module-wrapper-intro",fn:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-canned-search-intro")]),key:"1"}:void 0]),1536)),[[vue.vShow,r.products.length]])}const CannedSearch=LoadingSpinner._export_sfc(_sfc_main$27,[["render",_sfc_render$1S]]),_sfc_main$26={name:"VsCaptionImageMap",status:"prototype",release:"0.0.1",props:{latitude:{type:String,default:""},longitude:{type:String,default:""},mapOutlineColor:{type:String,default:"#191919"},mapMarkerColor:{type:String,default:"#191919"}},data(){return{cornerCoordinates:{NE:61.3,NW:54.4,SE:-9.1,SW:.4},mapWidth:75,mapHeight:104}},computed:{positionY(){const e=Number(this.latitude);return Math.round(this.calculateAxisPosition(this.cornerCoordinates.NE,this.cornerCoordinates.NW,e,this.mapHeight))},positionX(){const e=Number(this.longitude);return Math.round(this.calculateAxisPosition(this.cornerCoordinates.SE,this.cornerCoordinates.SW,e,this.mapWidth))}},methods:{calculateAxisPosition(e,n,t,o){return(t-e)*o/(n-e)}}},_hoisted_1$1E=["width","height"],_hoisted_2$1a=["stroke"],_hoisted_3$X=["stroke"],_hoisted_4$H=["stroke"],_hoisted_5$v=["stroke"],_hoisted_6$l=["stroke"],_hoisted_7$h=["stroke"],_hoisted_8$5=["stroke"],_hoisted_9$5=["stroke"],_hoisted_10$5=["stroke"],_hoisted_11$4=["stroke"],_hoisted_12$3=["stroke"],_hoisted_13$3=["stroke"],_hoisted_14$2=["stroke"],_hoisted_15$2=["stroke"],_hoisted_16$2=["stroke"],_hoisted_17$2=["stroke"],_hoisted_18$1=["stroke"],_hoisted_19$1=["stroke"],_hoisted_20=["stroke"],_hoisted_21=["stroke"],_hoisted_22=["stroke"],_hoisted_23=["stroke"],_hoisted_24=["stroke"],_hoisted_25=["stroke"],_hoisted_26=["stroke"],_hoisted_27=["stroke"],_hoisted_28=["stroke"],_hoisted_29=["stroke"],_hoisted_30=["stroke"],_hoisted_31=["stroke"],_hoisted_32=["width","height"],_hoisted_33=["fill","cx","cy"];function _sfc_render$1R(e,n,t,o,r,a){return vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",width:r.mapWidth,height:r.mapHeight,viewBox:"0 0 76 105.9",class:"vs-caption-image-map","data-test":"vs-caption-image-map"},[vue.createElementVNode("path",{"data-test":"vs-caption-image-map__first-path",d:"M65.9965,9.0973l-.167.736.668.184Z",transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_2$1a),vue.createElementVNode("path",{d:`M64.6595,9.4653l-.668,2.391,\r
|
|
2
|
+
1.169.368-.334-1.287C64.8265,\r
|
|
3
|
+
10.2013,65.1605,10.2013,64.6595,9.4653Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_3$X),vue.createElementVNode("path",{d:"M66.1635,11.4883l1.336.184-.336-.736Z",transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_4$H),vue.createElementVNode("path",{d:`M62.1546,11.3043l-1.5,1.1c.5.92.8349.736,\r
|
|
4
|
+
1.837.736l-.3341.368h-.173a1.6911,1.6911,0,0,0,1.336.92c-.668,\r
|
|
5
|
+
1.287-1.67,1.1-2.8389,1.655v.368c1.67.736,1.336,1.1,2.506-.184,\r
|
|
6
|
+
1.169,2.391-.5,2.759.668,4.966h.334l.334-1.471v-1.837l.5-1.1-.835-1.655a3.6491,\r
|
|
7
|
+
3.6491,0,0,0,.835-1.839c-.668.368-.668.368-1.336,0C62.3215,\r
|
|
8
|
+
12.7753,62.8235,12.2243,62.1546,11.3043Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_5$v),vue.createElementVNode("path",{d:"M65.9965,13.8793l-.668,1.287,1.169-.368Z",transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_6$l),vue.createElementVNode("path",{d:"M49.46,30.2483l1,.736C50.96,30.2483,50.2945,29.5123,49.46,30.2483Z",transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_7$h),vue.createElementVNode("path",{d:"M52.8005,31.1643l1.67-.552-.17-.548C53.1345,30.2483,52.9675,29.88,52.8005,31.1643Z",transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_8$5),vue.createElementVNode("path",{d:"M51.2975,30.9843l.167,1.655,1.169-1.287Z",transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_9$5),vue.createElementVNode("path",{d:`M48.6245,31.72c.1671,1.655-1,.552-1.5.92s-.334,\r
|
|
9
|
+
1.655-.167,2.207l1.336-.184c.167.92.5.552,1.169.736l.835.368a1.5181,1.5181,0,0,0,\r
|
|
10
|
+
1.8371-.736l-2.172.184.167-.736-1.3421-.184v-.363l.668-.368-.668-.552c.668-.552,\r
|
|
11
|
+
1-.368,1.5-1.287A2.6,2.6,0,0,0,48.6245,31.72Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_10$5),vue.createElementVNode("path",{d:"M50.4625,33.1913l.334.92.835-.92-.169-.184Z",transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_11$4),vue.createElementVNode("path",{d:`M46.6205,36.1343c0,.184.167.552.167.736.167.184.167.368.334.368,\r
|
|
12
|
+
1.169.92,1.336-1.287.167-1.287C46.9545,35.95,46.7875,35.95,46.6205,36.1343Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_12$3),vue.createElementVNode("path",{d:"M49.6265,37.0533l-.334.92,1,.552.334-1.471Z",transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_13$3),vue.createElementVNode("path",{d:`M46.12,39.6283c-1,1.287-1.5.736-2.505.92-.334.184-.668.552-1,\r
|
|
13
|
+
.552-.5.184-1.5-.184-2-.184a14.9016,14.9016,0,0,\r
|
|
14
|
+
0-3.007,1.1l.167.736-1.343-1.469a1.64,1.64,0,0,1-1.5,\r
|
|
15
|
+
1.287l.5-1.655-1.169.368-.668-1.1-1.336,1.1v.552c.5.368.668.368.334.92l.334,\r
|
|
16
|
+
1.1-1.169-.184,1.5,2.207-1.837-.184h-1.5c.668,1.839.835.92-.167,\r
|
|
17
|
+
2.759l-.5-.736c-.167.736.334,1.1.835,1.471a26.8342,26.8342,0,0,1,2.171,\r
|
|
18
|
+
2.207c-1.67,0-1.169-.736-2-1.1-.668-.368-1.5.184-2.171.552l-.835-.92.167,\r
|
|
19
|
+
1.839c-.668-.552-2-1.1-1.5.552,1,0,1,.736-.167,1.1l1.169,1.1,1,\r
|
|
20
|
+
1.287c-1.67.184-1.5-.92-3.174-.368a3.4256,3.4256,0,0,1,.668,2.207c1.336,\r
|
|
21
|
+
0,1.837-.7359,2.673.552h-2.515c.5.736.835.5521,1.5.736l1,\r
|
|
22
|
+
.736c-.668.368-.668.368-1.336.184l.167,1.287.668-.184c0,1.655-.334,\r
|
|
23
|
+
1.1-1.169,1.1l-1.169.184c.835,1.655,1.169.368,2.339,1.471a3.9245,3.9245,0,0,\r
|
|
24
|
+
1-2.506-.184c0,.552-.167,1.288.167,1.655l-.835.184v.92c-1.837-.552-1.67,\r
|
|
25
|
+
0-3.174.552,2.171,1.471,3.174-.552,5.178.368-1.5,1.471-.835-.184-3.341,\r
|
|
26
|
+
1.287.835.92,2.339.552,3.341.552.668-1.471,2-1.1,\r
|
|
27
|
+
2.506-2.023.334-.7359-.334-1.839.668-2.207.668-.368,1.169.552,1,\r
|
|
28
|
+
1.1a1.1582,1.1582,0,0,1-1,.552,3.54,3.54,0,0,0,2.673.7359l-1.5,\r
|
|
29
|
+
1.287-1.837.552-.334,1.655.668.1841,1.336-1.287c-.167.92-.5,\r
|
|
30
|
+
2.207-1.5,2.207-.668,0-1.5-.92-2.171,0-1,.92-.167,2.207-.5,\r
|
|
31
|
+
3.6779l.5.1841-.334.92c1.67.552,2.171-1.1,3.174-2.2071a6.619,\r
|
|
32
|
+
6.619,0,0,1,1.5-.92c.334,1.4709-.668,1.839-1.67,2.207,0,1.287-.835.7359-1,\r
|
|
33
|
+
2.5749a3.8062,3.8062,0,0,1,1.67,1.655l.668-.552.5-3.862h.835l-.167,2.207,\r
|
|
34
|
+
1.837.552c1.336.1841,1.169,0,2.339,1.1-1.169.184-1.67-.1841-2.84-.368a.9569.9569,\r
|
|
35
|
+
0,0,0-1.169.184c-.5.368-.167,1.1-.334,1.655l-.167,1.287c1,.736,2.673,2.023,\r
|
|
36
|
+
1.837,3.678a8.1472,8.1472,0,0,1-1.169,1.287c-.334.552,0,1.1-.5,\r
|
|
37
|
+
1.839-.334.552-1,.736-1.5,1.471-.5,1.1,0,1.655-.167,2.207,0,.368-.334.736-.5,\r
|
|
38
|
+
1.1-.167-.368-.668-1.471-1-1.471-.5-.184-1.169.736-.835,1.471s1.169.736,1.67,\r
|
|
39
|
+
1.1c.668.92.167,1.839,1.5,2.391.167-1.287-.668-2.207.167-2.759,1.169-.552,\r
|
|
40
|
+
2.84,1.839,3.341,2.023,1.5.552,1.336-.736.835-1.655a4.7548,4.7548,0,0,\r
|
|
41
|
+
1-.668-1.287c.334-.184.668-.368,1-.184.668.368.167,1.1,\r
|
|
42
|
+
1.336.736.167.368.167.552.5.7359a2.5229,2.5229,0,0,0,2,.368c.334,0,\r
|
|
43
|
+
.668-.552,1.169-.7359s1.336.184,1.67-.552c.5-.5521.167-1.8391,0-2.575,\r
|
|
44
|
+
1.5.7359,1.5.368,2.673.552.668.184,1.67.552,2.338.184.5-.184.5-.552,\r
|
|
45
|
+
1.336-1.287,2.171-1.655,4.51-3.862,7.015-4.6-.334-1.287-.835-1.287-1-2.023-.334-1.1,\r
|
|
46
|
+
1-2.207,1.837-2.575l-1-2.391-2.672-.92-2-1.1-1.5.3679c0,.552,0,\r
|
|
47
|
+
.92-.5,1.287-1.5.92-3.007-.7359-4.176-.92-.668,0-2.171.552-2.673-.368-.334-.368,\r
|
|
48
|
+
0-.736.334-.92.668-.368,1.336,0,2,.184l1.837.184.167-.552.835.368a2.3569,\r
|
|
49
|
+
2.3569,0,0,1,1.5-2.207c.334,0,.835.368,1.336.184l1.837-.736v-.368a5.49,\r
|
|
50
|
+
5.49,0,0,0-2.84-1.1l.334-.736-.668-.184c-.835,1.1-1.336.736-2.506,\r
|
|
51
|
+
1.1-.334,0-1,.184-1.336,0-.167-.184-.167-.368-.334-.736,2.171.368,\r
|
|
52
|
+
2.171-.92,3.508-1.287.668-.368,1,0,1.837,0a3.77,3.77,0,0,0,3.341-2.207,\r
|
|
53
|
+
5.2019,5.2019,0,0,1-1-.736c-.334-1.1,1.336-1.1,\r
|
|
54
|
+
1.5-1.287.334-.184.668-.92.835-1.1.334-.552,1.169-1.471,\r
|
|
55
|
+
1.336-1.839l.835-2.943.835-.92.668-1.839c.334-.552.668-.368,\r
|
|
56
|
+
1.169-1.471-1.336-1.288-.835-2.575-2-2.943s-2.505.736-4.176\r
|
|
57
|
+
.92-2.673-.92-3.341-.92l-1.837.368-2.338-.552c-1,\r
|
|
58
|
+
0-3.174,1.287-4.176,1.655l-1.169.552c-.334.184-.835.92-1.5,\r
|
|
59
|
+
1.471-.5.184-2.338.736-2.673.184-.334-.184-.167-.552,0-.736.5-.368,1,0,\r
|
|
60
|
+
1.5,0a8.5374,8.5374,0,0,0,2.171-2.207c-1.5-.552-1.336.736-3.007,\r
|
|
61
|
+
1.1l.5-1.839c1.67.184,1.336-.368,2.506-.552a4.4993,4.4993,0,0,1,1.5.368c0-1.471.5-.92,\r
|
|
62
|
+
1.169-2.207l-1.837.736c-1-.368-2.338.184-3.007-1.1h2.673l-.668-1.287a8.2712,\r
|
|
63
|
+
8.2712,0,0,0,2.506-1.1,6.33,6.33,0,0,0,1.837-1.1l.835-1.1,1.336-1.1c.835-.736,\r
|
|
64
|
+
2.171-1.2871,2-2.7591h.5c-.334-1.287-.668-1.287.167-2.0229l-1.67-.1841Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_14$2),vue.createElementVNode("path",{d:`M17.2225,46.4343c-.5-1.1-.835-1.1-1.837-.736l.167.736c-1.169.736-.835,\r
|
|
65
|
+
1.471.167,1.1l.334.92h-1l-.167.552a1.521,1.521,0,0,1,1.169,1.471l-1.339.555c.5.736,\r
|
|
66
|
+
1.336,1.287,2,.552.334-.184.5-.92.835-1.1.167-.184.835,0,1.169,0a3.0538,\r
|
|
67
|
+
3.0538,0,0,0-1.336-2.207l.835-.368a.8581.8581,0,0,0,.5.92c.835.736,1.67,0,\r
|
|
68
|
+
2.506-.368-.334-1.287-1.336-1.1-2.338-1.1l2.673-.736c-.5-2.023.5-1.839,\r
|
|
69
|
+
2-2.391l-.334-1.287c0-.368.334-1.1-.334-1.471-.5-.552-1.5.736-1.837,1.1-1.336,\r
|
|
70
|
+
1.287-1.837.92-2.506,1.471S18.5585,45.1463,17.2225,46.4343Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_15$2),vue.createElementVNode("path",{d:"M22.0665,45.33v.736c1-.368,1.5.184,2-.92Z",transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_16$2),vue.createElementVNode("path",{d:`M20.8965,52.8713l-1,.92.5,1.471c-1.5.184-1-.736-2.171-1.1l.334,\r
|
|
71
|
+
2.759-1.5-.92c-.167,1.1.334,1.655,1.169,2.391l.5-.552c1.5-.552.668,2.575,\r
|
|
72
|
+
1.67,2.943.835.552,1.169-1.1,2,.184.5-.184,1.5-.552,1.336.552-.167.368-.668.736-.835,\r
|
|
73
|
+
1.1,1.336,0,1.336-.736,1.837-1.655l.668-.92a3.848,3.848,0,0,\r
|
|
74
|
+
1-2.84-1.839l-.5-3.311A3.0591,3.0591,0,0,0,20.8965,52.8713Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_17$2),vue.createElementVNode("path",{d:`M12.5415,54.1593c-.5-.736-.668-.552-1.336-.736l-.167.736c.167,0,\r
|
|
75
|
+
.5.184.668.184,1.336.92,0,2.575-.167,3.678-.167.92.167,1.655-.334,\r
|
|
76
|
+
3.311h1.169a22.2511,22.2511,0,0,1,.334-3.311c.167-1.287,0-1.839,\r
|
|
77
|
+
1-2.759l-.167-1.1c.668-.184.835-.184,1.169-.92C13.38,53.0553,\r
|
|
78
|
+
13.2125,52.8713,12.5415,54.1593Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_18$1),vue.createElementVNode("path",{d:`M23.9035,55.8133c-.334.736-.5,1.1-1.169,1.287,0,2.023,1,\r
|
|
79
|
+
1.471,1.169,1.1A11.4313,11.4313,0,0,0,23.9035,55.8133Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_19$1),vue.createElementVNode("path",{d:`M10.5405,62.0673l-.835.736a4.3288,4.3288,0,0,\r
|
|
80
|
+
1-.835,2.942l.167.184,1.333-2.023.5-1.1Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_20),vue.createElementVNode("path",{d:"M19.8945,62.6193l-.334,1.1,1.837-.184Z",transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_21),vue.createElementVNode("path",{d:`M18.7255,67.5843c-1.169.92-1.837.92-2,2.207a5.2615,5.2615,0,0,\r
|
|
81
|
+
0-2.84.92c.167.184.167.368.5.368.835.184,2.84-1.471,3.508-2.023C18.3915,\r
|
|
82
|
+
68.6843,18.8925,68.32,18.7255,67.5843Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_22),vue.createElementVNode("path",{d:`M21.3975,68.1363c-1,1.1-1.336.368-1.5,1.655.668.184.668.368,1,\r
|
|
83
|
+
.92l1.336.184-1,.736,1.169.736-3.343.919c.167.184.167.368.334.552.5.184,\r
|
|
84
|
+
1.5.368,1.837,0a1.5054,1.5054,0,0,0,.167-.736c1.67.552.835-.552,\r
|
|
85
|
+
2.673-.184a1.6551,1.6551,0,0,1,1.67-.92c-.167-1.839-.835-1.287-1.837-2.023C23.0685,\r
|
|
86
|
+
69.4233,23.2355,69.0563,21.3975,68.1363Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_23),vue.createElementVNode("path",{d:`M22.4,80.4613c.5-1.1.668-1.1.167-2.207.334,0,.668.184,1,0,\r
|
|
87
|
+
.668-.184,1.336-1.839,1.5-2.391-1.169,0-2.171,1.1-2.84,2.0231C21.7315,\r
|
|
88
|
+
78.62,20.73,79.3563,22.4,80.4613Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_24),vue.createElementVNode("path",{d:`M26.0755,76.4133c-.835,1.287-.334,1.287-.5,\r
|
|
89
|
+
2.207-.334.92-.668.736-.835,2.207,1.169.184,1.169.184,2.171-.736-.167,\r
|
|
90
|
+
1.471-3.174,2.943-1.837,4.966l-.334.3681v.1839c2.171-.368,2-2.575,\r
|
|
91
|
+
2.506-3.4939.167-.736.835-.92.668-1.655,0-.552-.668-1.287-.835-1.839,\r
|
|
92
|
+
0-.552.167-.92.167-1.471Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_25),vue.createElementVNode("path",{d:"M20.5605,76.5973l-1,.736C20.0605,77.5173,20.73,77.3333,20.5605,76.5973Z",transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_26),vue.createElementVNode("path",{d:"M27.5785,78.9883c.668.92,2,2.391,3.174,2.207-.334-.552-.334-.92-1-1.1v-.736Z",transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_27),vue.createElementVNode("path",{d:`M18.7255,83.4023c.668-.1839.668-.1839.835-.92.167,0,\r
|
|
93
|
+
.334.184.668,0,1.5,0,.835-1.287.5-2.207l-.333-1.103c-1.169.552-.668.92-1,\r
|
|
94
|
+
2.023A6.64,6.64,0,0,0,18.7255,83.4023Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_28),vue.createElementVNode("path",{d:`M18.8885,79.3553l-1.336,1.1.167.736-.835.92.167.184C18.2245,\r
|
|
95
|
+
81.93,19.7285,81.01,18.8885,79.3553Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_29),vue.createElementVNode("path",{d:`M28.2465,82.1143c-.668.92-.5,1.287-.5,2.391,0,.552,0,\r
|
|
96
|
+
1.288.668,1.288C29.75,85.6083,29.2485,82.85,28.2465,82.1143Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_30),vue.createElementVNode("path",{d:`M23.2355,88.1793c1.5-.92.5-.736,2.506-.92C24.5725,\r
|
|
97
|
+
85.0573,23.0685,85.9793,23.2355,88.1793Z`,transform:"translate(-0.2662 -0.2662)",fill:"none",stroke:t.mapOutlineColor,"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"0.5","fill-rule":"evenodd"},null,8,_hoisted_31),vue.createElementVNode("rect",{width:r.mapWidth,height:r.mapHeight,fill:"none"},null,8,_hoisted_32),vue.createElementVNode("circle",{r:"4","data-test":"vs-caption-image-map__marker",fill:t.mapMarkerColor,cx:a.positionX,cy:a.positionY},null,8,_hoisted_33)],8,_hoisted_1$1E)}const VsCaptionImageMap=LoadingSpinner._export_sfc(_sfc_main$26,[["render",_sfc_render$1R]]),_sfc_main$25={name:"VsCaption",status:"deprecated",release:"0.0.1",components:{VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,VsContainer:LoadingSpinner.VsContainer,VsCaptionImageMap},props:{variant:{type:String,default:"fullwidth",validator:e=>e.match(/(fullwidth|large)/)},theme:{type:String,default:"bold",validator:e=>e.match(/(bold|subtle)/)},latitude:{type:String,default:""},longitude:{type:String,default:""},textAlign:{type:String,default:"left",validator:e=>e.match(/(left|right)/)}},data(){return{tokens:LoadingSpinner.designTokens}},computed:{showMap(){return!!(this.longitude&&this.latitude)},isLargeCaption(){return this.variant==="large"},captionClasses(){return[{"vs-caption--large":this.isLargeCaption,"vs-caption--fullwidth":!this.isLargeCaption},`vs-caption--${this.textAlign}`,`vs-caption--${this.theme}`]}}},_hoisted_1$1D={class:"vs-caption__caption-info"},_hoisted_2$19={key:0,class:"vs-caption__image-caption"},_hoisted_3$W={key:1,class:"vs-caption__image-credit"},_hoisted_4$G={class:"vs-caption__map-wrapper pt-075 pt-sm-050 pb-sm-050 mx-auto"};function _sfc_render$1Q(e,n,t,o,r,a){const s=vue.resolveComponent("VsCol"),i=vue.resolveComponent("VsCaptionImageMap"),l=vue.resolveComponent("VsRow"),u=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("div",{"data-test":"vs-caption",class:vue.normalizeClass(["vs-caption",a.captionClasses])},[vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(l,{class:"justify-content-center justify-content-sm-start"},{default:vue.withCtx(()=>[vue.createVNode(s,{class:vue.normalizeClass(["order-2 order-sm-1",[a.showMap?"":"align-self-center"]])},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$1D,[e.$slots.caption?(vue.openBlock(),vue.createElementBlock("p",_hoisted_2$19,[vue.renderSlot(e.$slots,"caption")])):vue.createCommentVNode("",!0),e.$slots.credit?(vue.openBlock(),vue.createElementBlock("p",_hoisted_3$W,[vue.renderSlot(e.$slots,"credit")])):vue.createCommentVNode("",!0)])]),_:3},8,["class"]),a.showMap&&a.isLargeCaption?(vue.openBlock(),vue.createBlock(s,{key:0,class:"col-12 col-sm-auto order-1 order-sm-2 ps-sm-0 align-self-end align-self-sm-start"},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_4$G,[vue.createVNode(i,{latitude:t.latitude,longitude:t.longitude,"map-outline-color":r.tokens["vs-color-icon-inverse"],"map-marker-color":r.tokens["vs-color-background-accent-tolsta-40"]},null,8,["latitude","longitude","map-outline-color","map-marker-color"])])]),_:1})):vue.createCommentVNode("",!0)]),_:3})]),_:3})],2)}const Caption=LoadingSpinner._export_sfc(_sfc_main$25,[["render",_sfc_render$1Q]]),_sfc_main$24={name:"VsProgressBar",status:"prototype",release:"0.1.0",components:{BProgress:LoadingSpinner.Zo,BProgressBar:LoadingSpinner.Yo},props:{max:{type:Number,required:!0},currentStep:{type:Number,required:!0},isStepped:{type:Boolean,required:!1},isFull:{type:Boolean,required:!1},progressLabel:{type:String,default:""}},data(){return{compId:null}},computed:{computedClasses(){let e="";return this.isFull&&(e+="vs-progress-bar--full "),this.isStepped&&(e+="vs-progress-bar--stepped "),e},interpolProgressLabel(){if(this.progressLabel){let e=this.progressLabel.replace("xxx",this.currentStep);return e=e.replace("yyy",this.max),e}return""}},mounted(){const e=vue.getCurrentInstance();this.compId=vue.ref(e.uid)}},_hoisted_1$1C={key:1,class:"vs-progress-bar__stepper"},_hoisted_2$18=["id"],_hoisted_3$V=["id"];function _sfc_render$1P(e,n,t,o,r,a){const s=vue.resolveComponent("BProgressBar"),i=vue.resolveComponent("BProgress");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-progress-bar",a.computedClasses]),"data-test":"vs-progress-bar"},[!t.isStepped||t.max>5?(vue.openBlock(),vue.createBlock(i,{key:0,max:t.max},{default:vue.withCtx(()=>[vue.createVNode(s,{value:t.currentStep,"aria-labelledBy":`progress-bar-${r.compId}`},null,8,["value","aria-labelledBy"])]),_:1},8,["max"])):vue.createCommentVNode("",!0),t.isStepped&&t.max<=5?(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1C,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(t.max,l=>(vue.openBlock(),vue.createBlock(i,{key:l,max:1},{default:vue.withCtx(()=>[vue.createVNode(s,{value:l<=t.currentStep?1:0,"aria-labelledBy":`progress-bar-${r.compId}`},null,8,["value","aria-labelledBy"])]),_:2},1024))),128))])):vue.createCommentVNode("",!0),a.interpolProgressLabel?(vue.openBlock(),vue.createElementBlock("p",{key:2,class:"vs-progress-bar__label",id:`progress-bar-${r.compId}`},vue.toDisplayString(a.interpolProgressLabel),9,_hoisted_2$18)):(vue.openBlock(),vue.createElementBlock("p",{key:3,class:"vs-progress-bar__label",id:`progress-bar-${r.compId}`},vue.toDisplayString(t.currentStep)+" / "+vue.toDisplayString(t.max),9,_hoisted_3$V))],2)}const VsProgressBar=LoadingSpinner._export_sfc(_sfc_main$24,[["render",_sfc_render$1P]]),_sfc_main$23={name:"VsCarbonCalculatorTip",status:"prototype",release:"0.0.1",components:{VsIcon:LoadingSpinner.VsIcon,VsHeading:LoadingSpinner.VsHeading},inject:["labelsMap"],props:{tip:{type:String,default:""},showingAllTips:{type:Boolean,default:!1}}},_hoisted_1$1B={class:"vs-carbon-calculator-tip","data-test":"vs-carbon-calculator-tip"},_hoisted_2$17={class:"vs-carbon-calculator-tip__icon-container"},_hoisted_3$U={class:"vs-carbon-calculator-tip__content"},_hoisted_4$F=["innerHTML"],_hoisted_5$u=["innerHTML"];function _sfc_render$1O(e,n,t,o,r,a){const s=vue.resolveComponent("VsIcon"),i=vue.resolveComponent("VsHeading");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1B,[vue.createElementVNode("div",_hoisted_2$17,[vue.createVNode(s,{icon:"fa-kit fa-vs-coo-head",size:"lg",variant:"highlight",class:"vs-carbon-calculator-tip__icon"})]),vue.createElementVNode("div",_hoisted_3$U,[vue.createVNode(i,{level:"3","heading-style":"heading-xs"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.labelsMap.topTip),1)]),_:1}),t.showingAllTips?(vue.openBlock(),vue.createElementBlock("p",{key:0,class:"vs-carbon-calculator-tip__content","data-test":"vs-carbon-calculator-tip__summary",innerHTML:a.labelsMap.allTips},null,8,_hoisted_4$F)):vue.createCommentVNode("",!0),t.showingAllTips?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createElementBlock("p",{key:1,class:"vs-carbon-calculator-tip__content","data-test":"vs-carbon-calculator-tip__content",innerHTML:t.tip},null,8,_hoisted_5$u))])])}const VsCarbonCalculatorTip=LoadingSpinner._export_sfc(_sfc_main$23,[["render",_sfc_render$1O]]);function _isPlaceholder(e){return e!=null&&typeof e=="object"&&e["@@functional/placeholder"]===!0}function _curry1(e){return function n(t){return arguments.length===0||_isPlaceholder(t)?n:e.apply(this,arguments)}}function _curry2(e){return function n(t,o){switch(arguments.length){case 0:return n;case 1:return _isPlaceholder(t)?n:_curry1(function(r){return e(t,r)});default:return _isPlaceholder(t)&&_isPlaceholder(o)?n:_isPlaceholder(t)?_curry1(function(r){return e(r,o)}):_isPlaceholder(o)?_curry1(function(r){return e(t,r)}):e(t,o)}}}function _arity(e,n){switch(e){case 0:return function(){return n.apply(this,arguments)};case 1:return function(t){return n.apply(this,arguments)};case 2:return function(t,o){return n.apply(this,arguments)};case 3:return function(t,o,r){return n.apply(this,arguments)};case 4:return function(t,o,r,a){return n.apply(this,arguments)};case 5:return function(t,o,r,a,s){return n.apply(this,arguments)};case 6:return function(t,o,r,a,s,i){return n.apply(this,arguments)};case 7:return function(t,o,r,a,s,i,l){return n.apply(this,arguments)};case 8:return function(t,o,r,a,s,i,l,u){return n.apply(this,arguments)};case 9:return function(t,o,r,a,s,i,l,u,c){return n.apply(this,arguments)};case 10:return function(t,o,r,a,s,i,l,u,c,d){return n.apply(this,arguments)};default:throw new Error("First argument to _arity must be a non-negative integer no greater than ten")}}function _curryN(e,n,t){return function(){for(var o=[],r=0,a=e,s=0;s<n.length||r<arguments.length;){var i;s<n.length&&(!_isPlaceholder(n[s])||r>=arguments.length)?i=n[s]:(i=arguments[r],r+=1),o[s]=i,_isPlaceholder(i)||(a-=1),s+=1}return a<=0?t.apply(this,o):_arity(a,_curryN(e,o,t))}}var curryN=_curry2(function(n,t){return n===1?_curry1(t):_arity(n,_curryN(n,[],t))});function _curry3(e){return function n(t,o,r){switch(arguments.length){case 0:return n;case 1:return _isPlaceholder(t)?n:_curry2(function(a,s){return e(t,a,s)});case 2:return _isPlaceholder(t)&&_isPlaceholder(o)?n:_isPlaceholder(t)?_curry2(function(a,s){return e(a,o,s)}):_isPlaceholder(o)?_curry2(function(a,s){return e(t,a,s)}):_curry1(function(a){return e(t,o,a)});default:return _isPlaceholder(t)&&_isPlaceholder(o)&&_isPlaceholder(r)?n:_isPlaceholder(t)&&_isPlaceholder(o)?_curry2(function(a,s){return e(a,s,r)}):_isPlaceholder(t)&&_isPlaceholder(r)?_curry2(function(a,s){return e(a,o,s)}):_isPlaceholder(o)&&_isPlaceholder(r)?_curry2(function(a,s){return e(t,a,s)}):_isPlaceholder(t)?_curry1(function(a){return e(a,o,r)}):_isPlaceholder(o)?_curry1(function(a){return e(t,a,r)}):_isPlaceholder(r)?_curry1(function(a){return e(t,o,a)}):e(t,o,r)}}}var _isArray=Array.isArray||function(n){return n!=null&&n.length>=0&&Object.prototype.toString.call(n)==="[object Array]"};function _isTransformer(e){return e!=null&&typeof e["@@transducer/step"]=="function"}function _dispatchable(e,n,t){return function(){if(arguments.length===0)return t();var o=arguments[arguments.length-1];if(!_isArray(o)){for(var r=0;r<e.length;){if(typeof o[e[r]]=="function")return o[e[r]].apply(o,Array.prototype.slice.call(arguments,0,-1));r+=1}if(_isTransformer(o)){var a=n.apply(null,Array.prototype.slice.call(arguments,0,-1));return a(o)}}return t.apply(this,arguments)}}var _xfBase={init:function(){return this.xf["@@transducer/init"]()},result:function(e){return this.xf["@@transducer/result"](e)}};function _map(e,n){for(var t=0,o=n.length,r=Array(o);t<o;)r[t]=e(n[t]),t+=1;return r}function _isString(e){return Object.prototype.toString.call(e)==="[object String]"}var _isArrayLike=_curry1(function(n){return _isArray(n)?!0:!n||typeof n!="object"||_isString(n)?!1:n.length===0?!0:n.length>0?n.hasOwnProperty(0)&&n.hasOwnProperty(n.length-1):!1}),XWrap=function(){function e(n){this.f=n}return e.prototype["@@transducer/init"]=function(){throw new Error("init not implemented on XWrap")},e.prototype["@@transducer/result"]=function(n){return n},e.prototype["@@transducer/step"]=function(n,t){return this.f(n,t)},e}();function _xwrap(e){return new XWrap(e)}var bind=_curry2(function(n,t){return _arity(n.length,function(){return n.apply(t,arguments)})});function _arrayReduce(e,n,t){for(var o=0,r=t.length;o<r;){if(n=e["@@transducer/step"](n,t[o]),n&&n["@@transducer/reduced"]){n=n["@@transducer/value"];break}o+=1}return e["@@transducer/result"](n)}function _iterableReduce(e,n,t){for(var o=t.next();!o.done;){if(n=e["@@transducer/step"](n,o.value),n&&n["@@transducer/reduced"]){n=n["@@transducer/value"];break}o=t.next()}return e["@@transducer/result"](n)}function _methodReduce(e,n,t,o){return e["@@transducer/result"](t[o](bind(e["@@transducer/step"],e),n))}var symIterator=typeof Symbol<"u"?Symbol.iterator:"@@iterator";function _reduce(e,n,t){if(typeof e=="function"&&(e=_xwrap(e)),_isArrayLike(t))return _arrayReduce(e,n,t);if(typeof t["fantasy-land/reduce"]=="function")return _methodReduce(e,n,t,"fantasy-land/reduce");if(t[symIterator]!=null)return _iterableReduce(e,n,t[symIterator]());if(typeof t.next=="function")return _iterableReduce(e,n,t);if(typeof t.reduce=="function")return _methodReduce(e,n,t,"reduce");throw new TypeError("reduce: list must be array or iterable")}var XMap=function(){function e(n,t){this.xf=t,this.f=n}return e.prototype["@@transducer/init"]=_xfBase.init,e.prototype["@@transducer/result"]=_xfBase.result,e.prototype["@@transducer/step"]=function(n,t){return this.xf["@@transducer/step"](n,this.f(t))},e}(),_xmap=_curry2(function(n,t){return new XMap(n,t)});function _has(e,n){return Object.prototype.hasOwnProperty.call(n,e)}var toString$1=Object.prototype.toString,_isArguments=function(){return toString$1.call(arguments)==="[object Arguments]"?function(n){return toString$1.call(n)==="[object Arguments]"}:function(n){return _has("callee",n)}}(),hasEnumBug=!{toString:null}.propertyIsEnumerable("toString"),nonEnumerableProps=["constructor","valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"],hasArgsEnumBug=function(){return arguments.propertyIsEnumerable("length")}(),contains=function(n,t){for(var o=0;o<n.length;){if(n[o]===t)return!0;o+=1}return!1},keys=_curry1(typeof Object.keys=="function"&&!hasArgsEnumBug?function(n){return Object(n)!==n?[]:Object.keys(n)}:function(n){if(Object(n)!==n)return[];var t,o,r=[],a=hasArgsEnumBug&&_isArguments(n);for(t in n)_has(t,n)&&(!a||t!=="length")&&(r[r.length]=t);if(hasEnumBug)for(o=nonEnumerableProps.length-1;o>=0;)t=nonEnumerableProps[o],_has(t,n)&&!contains(r,t)&&(r[r.length]=t),o-=1;return r}),map$1=_curry2(_dispatchable(["fantasy-land/map","map"],_xmap,function(n,t){switch(Object.prototype.toString.call(t)){case"[object Function]":return curryN(t.length,function(){return n.call(this,t.apply(this,arguments))});case"[object Object]":return _reduce(function(o,r){return o[r]=n(t[r]),o},{},keys(t));default:return _map(n,t)}})),map$2=map$1,_isInteger=Number.isInteger||function(n){return n<<0===n},nth=_curry2(function(n,t){var o=n<0?t.length+n:n;return _isString(t)?t.charAt(o):t[o]}),nth$1=nth,prop=_curry2(function(n,t){if(t!=null)return _isInteger(n)?nth$1(n,t):t[n]}),prop$1=prop,reduce=_curry3(_reduce),reduce$1=reduce,values=_curry1(function(n){for(var t=keys(n),o=t.length,r=[],a=0;a<o;)r[a]=n[t[a]],a+=1;return r}),values$1=values;function _isFunction(e){var n=Object.prototype.toString.call(e);return n==="[object Function]"||n==="[object AsyncFunction]"||n==="[object GeneratorFunction]"||n==="[object AsyncGeneratorFunction]"}var type=_curry1(function(n){return n===null?"Null":n===void 0?"Undefined":Object.prototype.toString.call(n).slice(8,-1)});function _pipe(e,n){return function(){return n.call(this,e.apply(this,arguments))}}function _checkForMethod(e,n){return function(){var t=arguments.length;if(t===0)return n();var o=arguments[t-1];return _isArray(o)||typeof o[e]!="function"?n.apply(this,arguments):o[e].apply(o,Array.prototype.slice.call(arguments,0,t-1))}}var slice=_curry3(_checkForMethod("slice",function(n,t,o){return Array.prototype.slice.call(o,n,t)})),tail=_curry1(_checkForMethod("tail",slice(1,1/0))),tail$1=tail;function pipe(){if(arguments.length===0)throw new Error("pipe requires at least one argument");return _arity(arguments[0].length,reduce$1(_pipe,arguments[0],tail$1(arguments)))}function _arrayFromIterator(e){for(var n=[],t;!(t=e.next()).done;)n.push(t.value);return n}function _includesWith(e,n,t){for(var o=0,r=t.length;o<r;){if(e(n,t[o]))return!0;o+=1}return!1}function _functionName(e){var n=String(e).match(/^function (\w*)/);return n==null?"":n[1]}function _objectIs(e,n){return e===n?e!==0||1/e===1/n:e!==e&&n!==n}var _objectIs$1=typeof Object.is=="function"?Object.is:_objectIs;function _uniqContentEquals(e,n,t,o){var r=_arrayFromIterator(e),a=_arrayFromIterator(n);function s(i,l){return _equals(i,l,t.slice(),o.slice())}return!_includesWith(function(i,l){return!_includesWith(s,l,i)},a,r)}function _equals(e,n,t,o){if(_objectIs$1(e,n))return!0;var r=type(e);if(r!==type(n))return!1;if(typeof e["fantasy-land/equals"]=="function"||typeof n["fantasy-land/equals"]=="function")return typeof e["fantasy-land/equals"]=="function"&&e["fantasy-land/equals"](n)&&typeof n["fantasy-land/equals"]=="function"&&n["fantasy-land/equals"](e);if(typeof e.equals=="function"||typeof n.equals=="function")return typeof e.equals=="function"&&e.equals(n)&&typeof n.equals=="function"&&n.equals(e);switch(r){case"Arguments":case"Array":case"Object":if(typeof e.constructor=="function"&&_functionName(e.constructor)==="Promise")return e===n;break;case"Boolean":case"Number":case"String":if(!(typeof e==typeof n&&_objectIs$1(e.valueOf(),n.valueOf())))return!1;break;case"Date":if(!_objectIs$1(e.valueOf(),n.valueOf()))return!1;break;case"Error":return e.name===n.name&&e.message===n.message;case"RegExp":if(!(e.source===n.source&&e.global===n.global&&e.ignoreCase===n.ignoreCase&&e.multiline===n.multiline&&e.sticky===n.sticky&&e.unicode===n.unicode))return!1;break}for(var a=t.length-1;a>=0;){if(t[a]===e)return o[a]===n;a-=1}switch(r){case"Map":return e.size!==n.size?!1:_uniqContentEquals(e.entries(),n.entries(),t.concat([e]),o.concat([n]));case"Set":return e.size!==n.size?!1:_uniqContentEquals(e.values(),n.values(),t.concat([e]),o.concat([n]));case"Arguments":case"Array":case"Object":case"Boolean":case"Number":case"String":case"Date":case"Error":case"RegExp":case"Int8Array":case"Uint8Array":case"Uint8ClampedArray":case"Int16Array":case"Uint16Array":case"Int32Array":case"Uint32Array":case"Float32Array":case"Float64Array":case"ArrayBuffer":break;default:return!1}var s=keys(e);if(s.length!==keys(n).length)return!1;var i=t.concat([e]),l=o.concat([n]);for(a=s.length-1;a>=0;){var u=s[a];if(!(_has(u,n)&&_equals(n[u],e[u],i,l)))return!1;a-=1}return!0}var equals=_curry2(function(n,t){return _equals(n,t,[],[])});function _indexOf(e,n,t){var o,r;if(typeof e.indexOf=="function")switch(typeof n){case"number":if(n===0){for(o=1/n;t<e.length;){if(r=e[t],r===0&&1/r===o)return t;t+=1}return-1}else if(n!==n){for(;t<e.length;){if(r=e[t],typeof r=="number"&&r!==r)return t;t+=1}return-1}return e.indexOf(n,t);case"string":case"boolean":case"function":case"undefined":return e.indexOf(n,t);case"object":if(n===null)return e.indexOf(n,t)}for(;t<e.length;){if(equals(e[t],n))return t;t+=1}return-1}function _includes(e,n){return _indexOf(n,e,0)>=0}function _quote(e){var n=e.replace(/\\/g,"\\\\").replace(/[\b]/g,"\\b").replace(/\f/g,"\\f").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\t/g,"\\t").replace(/\v/g,"\\v").replace(/\0/g,"\\0");return'"'+n.replace(/"/g,'\\"')+'"'}var pad=function(n){return(n<10?"0":"")+n},_toISOString=typeof Date.prototype.toISOString=="function"?function(n){return n.toISOString()}:function(n){return n.getUTCFullYear()+"-"+pad(n.getUTCMonth()+1)+"-"+pad(n.getUTCDate())+"T"+pad(n.getUTCHours())+":"+pad(n.getUTCMinutes())+":"+pad(n.getUTCSeconds())+"."+(n.getUTCMilliseconds()/1e3).toFixed(3).slice(2,5)+"Z"};function _complement(e){return function(){return!e.apply(this,arguments)}}function _filter(e,n){for(var t=0,o=n.length,r=[];t<o;)e(n[t])&&(r[r.length]=n[t]),t+=1;return r}function _isObject(e){return Object.prototype.toString.call(e)==="[object Object]"}var XFilter=function(){function e(n,t){this.xf=t,this.f=n}return e.prototype["@@transducer/init"]=_xfBase.init,e.prototype["@@transducer/result"]=_xfBase.result,e.prototype["@@transducer/step"]=function(n,t){return this.f(t)?this.xf["@@transducer/step"](n,t):n},e}(),_xfilter=_curry2(function(n,t){return new XFilter(n,t)}),filter$1=_curry2(_dispatchable(["fantasy-land/filter","filter"],_xfilter,function(e,n){return _isObject(n)?_reduce(function(t,o){return e(n[o])&&(t[o]=n[o]),t},{},keys(n)):_filter(e,n)})),reject=_curry2(function(n,t){return filter$1(_complement(n),t)});function _toString(e,n){var t=function(s){var i=n.concat([e]);return _includes(s,i)?"<Circular>":_toString(s,i)},o=function(a,s){return _map(function(i){return _quote(i)+": "+t(a[i])},s.slice().sort())};switch(Object.prototype.toString.call(e)){case"[object Arguments]":return"(function() { return arguments; }("+_map(t,e).join(", ")+"))";case"[object Array]":return"["+_map(t,e).concat(o(e,reject(function(a){return/^\d+$/.test(a)},keys(e)))).join(", ")+"]";case"[object Boolean]":return typeof e=="object"?"new Boolean("+t(e.valueOf())+")":e.toString();case"[object Date]":return"new Date("+(isNaN(e.valueOf())?t(NaN):_quote(_toISOString(e)))+")";case"[object Null]":return"null";case"[object Number]":return typeof e=="object"?"new Number("+t(e.valueOf())+")":1/e===-1/0?"-0":e.toString(10);case"[object String]":return typeof e=="object"?"new String("+t(e.valueOf())+")":_quote(e);case"[object Undefined]":return"undefined";default:if(typeof e.toString=="function"){var r=e.toString();if(r!=="[object Object]")return r}return"{"+o(e,keys(e)).join(", ")+"}"}}var toString=_curry1(function(n){return _toString(n,[])}),curry=_curry1(function(n){return curryN(n.length,n)}),curry$1=curry,invoker=_curry2(function(n,t){return curryN(n+1,function(){var o=arguments[n];if(o!=null&&_isFunction(o[t]))return o[t].apply(o,Array.prototype.slice.call(arguments,0,n));throw new TypeError(toString(o)+' does not have a method named "'+t+'"')})}),invoker$1=invoker,is=_curry2(function(n,t){return t instanceof n||t!=null&&(t.constructor===n||n.name==="Object"&&typeof t=="object")}),is$1=is,join=invoker$1(1,"join"),join$1=join,mergeWithKey=_curry3(function(n,t,o){var r={},a;for(a in t)_has(a,t)&&(r[a]=_has(a,o)?n(a,t[a],o[a]):t[a]);for(a in o)_has(a,o)&&!_has(a,r)&&(r[a]=o[a]);return r}),mergeDeepWithKey=_curry3(function e(n,t,o){return mergeWithKey(function(r,a,s){return _isObject(a)&&_isObject(s)?e(n,a,s):n(r,a,s)},t,o)}),mergeDeepLeft=_curry2(function(n,t){return mergeDeepWithKey(function(o,r,a){return r},n,t)}),mergeDeepLeft$1=mergeDeepLeft,omit=_curry2(function(n,t){for(var o={},r={},a=0,s=n.length;a<s;)r[n[a]]=1,a+=1;for(var i in t)r.hasOwnProperty(i)||(o[i]=t[i]);return o}),omit$1=omit,pickBy=_curry2(function(n,t){var o={};for(var r in t)n(t[r],r,t)&&(o[r]=t[r]);return o}),pickBy$1=pickBy,split=invoker$1(1,"split"),split$1=split,toLower=invoker$1(0,"toLowerCase"),toLower$1=toLower,zipObj=_curry2(function(n,t){for(var o=0,r=Math.min(n.length,t.length),a={};o<r;)a[n[o]]=t[o],o+=1;return a}),zipObj$1=zipObj;pipe(toLower$1,split$1(" "),join$1("-"));const getCol=curry$1((e,n)=>is$1(Number)?map$2(t=>nth$1(e,t)||"",n).filter(t=>t!==""):map$2(prop$1(e),n)),mapKeys=(e,n)=>zipObj$1(map$2(e,keys(n)),values$1(n)),kebabize=e=>e.split("").map((n,t)=>n.toUpperCase()===n?`${t!==0?"-":""}${n.toLowerCase()}`:n).join("");function ascending$1(e,n){return e==null||n==null?NaN:e<n?-1:e>n?1:e>=n?0:NaN}function descending$1(e,n){return e==null||n==null?NaN:n<e?-1:n>e?1:n>=e?0:NaN}function bisector(e){let n,t,o;e.length!==2?(n=ascending$1,t=(i,l)=>ascending$1(e(i),l),o=(i,l)=>e(i)-l):(n=e===ascending$1||e===descending$1?e:zero$1,t=e,o=e);function r(i,l,u=0,c=i.length){if(u<c){if(n(l,l)!==0)return c;do{const d=u+c>>>1;t(i[d],l)<0?u=d+1:c=d}while(u<c)}return u}function a(i,l,u=0,c=i.length){if(u<c){if(n(l,l)!==0)return c;do{const d=u+c>>>1;t(i[d],l)<=0?u=d+1:c=d}while(u<c)}return u}function s(i,l,u=0,c=i.length){const d=r(i,l,u,c-1);return d>u&&o(i[d-1],l)>-o(i[d],l)?d-1:d}return{left:r,center:s,right:a}}function zero$1(){return 0}function number$2(e){return e===null?NaN:+e}const ascendingBisect=bisector(ascending$1),bisectRight=ascendingBisect.right,bisectCenter=bisector(number$2).center;function extent(e,n){let t,o;for(const r of e)r!=null&&(t===void 0?r>=r&&(t=o=r):(t>r&&(t=r),o<r&&(o=r)));return[t,o]}class InternMap extends Map{constructor(n,t=keyof){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:t}}),n!=null)for(const[o,r]of n)this.set(o,r)}get(n){return super.get(intern_get(this,n))}has(n){return super.has(intern_get(this,n))}set(n,t){return super.set(intern_set(this,n),t)}delete(n){return super.delete(intern_delete(this,n))}}function intern_get({_intern:e,_key:n},t){const o=n(t);return e.has(o)?e.get(o):t}function intern_set({_intern:e,_key:n},t){const o=n(t);return e.has(o)?e.get(o):(e.set(o,t),t)}function intern_delete({_intern:e,_key:n},t){const o=n(t);return e.has(o)&&(t=e.get(o),e.delete(o)),t}function keyof(e){return e!==null&&typeof e=="object"?e.valueOf():e}const e10=Math.sqrt(50),e5=Math.sqrt(10),e2=Math.sqrt(2);function tickSpec(e,n,t){const o=(n-e)/Math.max(0,t),r=Math.floor(Math.log10(o)),a=o/Math.pow(10,r),s=a>=e10?10:a>=e5?5:a>=e2?2:1;let i,l,u;return r<0?(u=Math.pow(10,-r)/s,i=Math.round(e*u),l=Math.round(n*u),i/u<e&&++i,l/u>n&&--l,u=-u):(u=Math.pow(10,r)*s,i=Math.round(e/u),l=Math.round(n/u),i*u<e&&++i,l*u>n&&--l),l<i&&.5<=t&&t<2?tickSpec(e,n,t*2):[i,l,u]}function ticks(e,n,t){if(n=+n,e=+e,t=+t,!(t>0))return[];if(e===n)return[e];const o=n<e,[r,a,s]=o?tickSpec(n,e,t):tickSpec(e,n,t);if(!(a>=r))return[];const i=a-r+1,l=new Array(i);if(o)if(s<0)for(let u=0;u<i;++u)l[u]=(a-u)/-s;else for(let u=0;u<i;++u)l[u]=(a-u)*s;else if(s<0)for(let u=0;u<i;++u)l[u]=(r+u)/-s;else for(let u=0;u<i;++u)l[u]=(r+u)*s;return l}function tickIncrement(e,n,t){return n=+n,e=+e,t=+t,tickSpec(e,n,t)[2]}function tickStep(e,n,t){n=+n,e=+e,t=+t;const o=n<e,r=o?tickIncrement(n,e,t):tickIncrement(e,n,t);return(o?-1:1)*(r<0?1/-r:r)}function max$1(e,n){let t;if(n===void 0)for(const o of e)o!=null&&(t<o||t===void 0&&o>=o)&&(t=o);else{let o=-1;for(let r of e)(r=n(r,++o,e))!=null&&(t<r||t===void 0&&r>=r)&&(t=r)}return t}function min$1(e,n){let t;if(n===void 0)for(const o of e)o!=null&&(t>o||t===void 0&&o>=o)&&(t=o);else{let o=-1;for(let r of e)(r=n(r,++o,e))!=null&&(t>r||t===void 0&&r>=r)&&(t=r)}return t}function range(e,n,t){e=+e,n=+n,t=(r=arguments.length)<2?(n=e,e=0,1):r<3?1:+t;for(var o=-1,r=Math.max(0,Math.ceil((n-e)/t))|0,a=new Array(r);++o<r;)a[o]=e+o*t;return a}function initRange(e,n){switch(arguments.length){case 0:break;case 1:this.range(e);break;default:this.range(n).domain(e);break}return this}function initInterpolator(e,n){switch(arguments.length){case 0:break;case 1:{typeof e=="function"?this.interpolator(e):this.range(e);break}default:{this.domain(e),typeof n=="function"?this.interpolator(n):this.range(n);break}}return this}const implicit=Symbol("implicit");function ordinal(){var e=new InternMap,n=[],t=[],o=implicit;function r(a){let s=e.get(a);if(s===void 0){if(o!==implicit)return o;e.set(a,s=n.push(a)-1)}return t[s%t.length]}return r.domain=function(a){if(!arguments.length)return n.slice();n=[],e=new InternMap;for(const s of a)e.has(s)||e.set(s,n.push(s)-1);return r},r.range=function(a){return arguments.length?(t=Array.from(a),r):t.slice()},r.unknown=function(a){return arguments.length?(o=a,r):o},r.copy=function(){return ordinal(n,t).unknown(o)},initRange.apply(r,arguments),r}function band(){var e=ordinal().unknown(void 0),n=e.domain,t=e.range,o=0,r=1,a,s,i=!1,l=0,u=0,c=.5;delete e.unknown;function d(){var v=n().length,m=r<o,f=m?r:o,p=m?o:r;a=(p-f)/Math.max(1,v-l+u*2),i&&(a=Math.floor(a)),f+=(p-f-a*(v-l))*c,s=a*(1-l),i&&(f=Math.round(f),s=Math.round(s));var g=range(v).map(function(_){return f+a*_});return t(m?g.reverse():g)}return e.domain=function(v){return arguments.length?(n(v),d()):n()},e.range=function(v){return arguments.length?([o,r]=v,o=+o,r=+r,d()):[o,r]},e.rangeRound=function(v){return[o,r]=v,o=+o,r=+r,i=!0,d()},e.bandwidth=function(){return s},e.step=function(){return a},e.round=function(v){return arguments.length?(i=!!v,d()):i},e.padding=function(v){return arguments.length?(l=Math.min(1,u=+v),d()):l},e.paddingInner=function(v){return arguments.length?(l=Math.min(1,v),d()):l},e.paddingOuter=function(v){return arguments.length?(u=+v,d()):u},e.align=function(v){return arguments.length?(c=Math.max(0,Math.min(1,v)),d()):c},e.copy=function(){return band(n(),[o,r]).round(i).paddingInner(l).paddingOuter(u).align(c)},initRange.apply(d(),arguments)}function define(e,n,t){e.prototype=n.prototype=t,t.constructor=e}function extend(e,n){var t=Object.create(e.prototype);for(var o in n)t[o]=n[o];return t}function Color(){}var darker=.7,brighter=1/darker,reI="\\s*([+-]?\\d+)\\s*",reN="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",reP="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",reHex=/^#([0-9a-f]{3,8})$/,reRgbInteger=new RegExp(`^rgb\\(${reI},${reI},${reI}\\)$`),reRgbPercent=new RegExp(`^rgb\\(${reP},${reP},${reP}\\)$`),reRgbaInteger=new RegExp(`^rgba\\(${reI},${reI},${reI},${reN}\\)$`),reRgbaPercent=new RegExp(`^rgba\\(${reP},${reP},${reP},${reN}\\)$`),reHslPercent=new RegExp(`^hsl\\(${reN},${reP},${reP}\\)$`),reHslaPercent=new RegExp(`^hsla\\(${reN},${reP},${reP},${reN}\\)$`),named={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};define(Color,color,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:color_formatHex,formatHex:color_formatHex,formatHex8:color_formatHex8,formatHsl:color_formatHsl,formatRgb:color_formatRgb,toString:color_formatRgb});function color_formatHex(){return this.rgb().formatHex()}function color_formatHex8(){return this.rgb().formatHex8()}function color_formatHsl(){return hslConvert(this).formatHsl()}function color_formatRgb(){return this.rgb().formatRgb()}function color(e){var n,t;return e=(e+"").trim().toLowerCase(),(n=reHex.exec(e))?(t=n[1].length,n=parseInt(n[1],16),t===6?rgbn(n):t===3?new Rgb(n>>8&15|n>>4&240,n>>4&15|n&240,(n&15)<<4|n&15,1):t===8?rgba(n>>24&255,n>>16&255,n>>8&255,(n&255)/255):t===4?rgba(n>>12&15|n>>8&240,n>>8&15|n>>4&240,n>>4&15|n&240,((n&15)<<4|n&15)/255):null):(n=reRgbInteger.exec(e))?new Rgb(n[1],n[2],n[3],1):(n=reRgbPercent.exec(e))?new Rgb(n[1]*255/100,n[2]*255/100,n[3]*255/100,1):(n=reRgbaInteger.exec(e))?rgba(n[1],n[2],n[3],n[4]):(n=reRgbaPercent.exec(e))?rgba(n[1]*255/100,n[2]*255/100,n[3]*255/100,n[4]):(n=reHslPercent.exec(e))?hsla(n[1],n[2]/100,n[3]/100,1):(n=reHslaPercent.exec(e))?hsla(n[1],n[2]/100,n[3]/100,n[4]):named.hasOwnProperty(e)?rgbn(named[e]):e==="transparent"?new Rgb(NaN,NaN,NaN,0):null}function rgbn(e){return new Rgb(e>>16&255,e>>8&255,e&255,1)}function rgba(e,n,t,o){return o<=0&&(e=n=t=NaN),new Rgb(e,n,t,o)}function rgbConvert(e){return e instanceof Color||(e=color(e)),e?(e=e.rgb(),new Rgb(e.r,e.g,e.b,e.opacity)):new Rgb}function rgb$1(e,n,t,o){return arguments.length===1?rgbConvert(e):new Rgb(e,n,t,o??1)}function Rgb(e,n,t,o){this.r=+e,this.g=+n,this.b=+t,this.opacity=+o}define(Rgb,rgb$1,extend(Color,{brighter(e){return e=e==null?brighter:Math.pow(brighter,e),new Rgb(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?darker:Math.pow(darker,e),new Rgb(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new Rgb(clampi(this.r),clampi(this.g),clampi(this.b),clampa(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:rgb_formatHex,formatHex:rgb_formatHex,formatHex8:rgb_formatHex8,formatRgb:rgb_formatRgb,toString:rgb_formatRgb}));function rgb_formatHex(){return`#${hex(this.r)}${hex(this.g)}${hex(this.b)}`}function rgb_formatHex8(){return`#${hex(this.r)}${hex(this.g)}${hex(this.b)}${hex((isNaN(this.opacity)?1:this.opacity)*255)}`}function rgb_formatRgb(){const e=clampa(this.opacity);return`${e===1?"rgb(":"rgba("}${clampi(this.r)}, ${clampi(this.g)}, ${clampi(this.b)}${e===1?")":`, ${e})`}`}function clampa(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function clampi(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function hex(e){return e=clampi(e),(e<16?"0":"")+e.toString(16)}function hsla(e,n,t,o){return o<=0?e=n=t=NaN:t<=0||t>=1?e=n=NaN:n<=0&&(e=NaN),new Hsl(e,n,t,o)}function hslConvert(e){if(e instanceof Hsl)return new Hsl(e.h,e.s,e.l,e.opacity);if(e instanceof Color||(e=color(e)),!e)return new Hsl;if(e instanceof Hsl)return e;e=e.rgb();var n=e.r/255,t=e.g/255,o=e.b/255,r=Math.min(n,t,o),a=Math.max(n,t,o),s=NaN,i=a-r,l=(a+r)/2;return i?(n===a?s=(t-o)/i+(t<o)*6:t===a?s=(o-n)/i+2:s=(n-t)/i+4,i/=l<.5?a+r:2-a-r,s*=60):i=l>0&&l<1?0:s,new Hsl(s,i,l,e.opacity)}function hsl(e,n,t,o){return arguments.length===1?hslConvert(e):new Hsl(e,n,t,o??1)}function Hsl(e,n,t,o){this.h=+e,this.s=+n,this.l=+t,this.opacity=+o}define(Hsl,hsl,extend(Color,{brighter(e){return e=e==null?brighter:Math.pow(brighter,e),new Hsl(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?darker:Math.pow(darker,e),new Hsl(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,n=isNaN(e)||isNaN(this.s)?0:this.s,t=this.l,o=t+(t<.5?t:1-t)*n,r=2*t-o;return new Rgb(hsl2rgb(e>=240?e-240:e+120,r,o),hsl2rgb(e,r,o),hsl2rgb(e<120?e+240:e-120,r,o),this.opacity)},clamp(){return new Hsl(clamph(this.h),clampt(this.s),clampt(this.l),clampa(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=clampa(this.opacity);return`${e===1?"hsl(":"hsla("}${clamph(this.h)}, ${clampt(this.s)*100}%, ${clampt(this.l)*100}%${e===1?")":`, ${e})`}`}}));function clamph(e){return e=(e||0)%360,e<0?e+360:e}function clampt(e){return Math.max(0,Math.min(1,e||0))}function hsl2rgb(e,n,t){return(e<60?n+(t-n)*e/60:e<180?t:e<240?n+(t-n)*(240-e)/60:n)*255}const radians=Math.PI/180,degrees=180/Math.PI,K=18,Xn=.96422,Yn=1,Zn=.82521,t0=4/29,t1=6/29,t2=3*t1*t1,t3=t1*t1*t1;function labConvert(e){if(e instanceof Lab)return new Lab(e.l,e.a,e.b,e.opacity);if(e instanceof Hcl)return hcl2lab(e);e instanceof Rgb||(e=rgbConvert(e));var n=rgb2lrgb(e.r),t=rgb2lrgb(e.g),o=rgb2lrgb(e.b),r=xyz2lab((.2225045*n+.7168786*t+.0606169*o)/Yn),a,s;return n===t&&t===o?a=s=r:(a=xyz2lab((.4360747*n+.3850649*t+.1430804*o)/Xn),s=xyz2lab((.0139322*n+.0971045*t+.7141733*o)/Zn)),new Lab(116*r-16,500*(a-r),200*(r-s),e.opacity)}function lab(e,n,t,o){return arguments.length===1?labConvert(e):new Lab(e,n,t,o??1)}function Lab(e,n,t,o){this.l=+e,this.a=+n,this.b=+t,this.opacity=+o}define(Lab,lab,extend(Color,{brighter(e){return new Lab(this.l+K*(e??1),this.a,this.b,this.opacity)},darker(e){return new Lab(this.l-K*(e??1),this.a,this.b,this.opacity)},rgb(){var e=(this.l+16)/116,n=isNaN(this.a)?e:e+this.a/500,t=isNaN(this.b)?e:e-this.b/200;return n=Xn*lab2xyz(n),e=Yn*lab2xyz(e),t=Zn*lab2xyz(t),new Rgb(lrgb2rgb(3.1338561*n-1.6168667*e-.4906146*t),lrgb2rgb(-.9787684*n+1.9161415*e+.033454*t),lrgb2rgb(.0719453*n-.2289914*e+1.4052427*t),this.opacity)}}));function xyz2lab(e){return e>t3?Math.pow(e,1/3):e/t2+t0}function lab2xyz(e){return e>t1?e*e*e:t2*(e-t0)}function lrgb2rgb(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function rgb2lrgb(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function hclConvert(e){if(e instanceof Hcl)return new Hcl(e.h,e.c,e.l,e.opacity);if(e instanceof Lab||(e=labConvert(e)),e.a===0&&e.b===0)return new Hcl(NaN,0<e.l&&e.l<100?0:NaN,e.l,e.opacity);var n=Math.atan2(e.b,e.a)*degrees;return new Hcl(n<0?n+360:n,Math.sqrt(e.a*e.a+e.b*e.b),e.l,e.opacity)}function hcl$1(e,n,t,o){return arguments.length===1?hclConvert(e):new Hcl(e,n,t,o??1)}function Hcl(e,n,t,o){this.h=+e,this.c=+n,this.l=+t,this.opacity=+o}function hcl2lab(e){if(isNaN(e.h))return new Lab(e.l,0,0,e.opacity);var n=e.h*radians;return new Lab(e.l,Math.cos(n)*e.c,Math.sin(n)*e.c,e.opacity)}define(Hcl,hcl$1,extend(Color,{brighter(e){return new Hcl(this.h,this.c,this.l+K*(e??1),this.opacity)},darker(e){return new Hcl(this.h,this.c,this.l-K*(e??1),this.opacity)},rgb(){return hcl2lab(this).rgb()}}));var constant$3=e=>()=>e;function linear$1(e,n){return function(t){return e+t*n}}function exponential(e,n,t){return e=Math.pow(e,t),n=Math.pow(n,t)-e,t=1/t,function(o){return Math.pow(e+o*n,t)}}function hue(e,n){var t=n-e;return t?linear$1(e,t>180||t<-180?t-360*Math.round(t/360):t):constant$3(isNaN(e)?n:e)}function gamma(e){return(e=+e)==1?nogamma:function(n,t){return t-n?exponential(n,t,e):constant$3(isNaN(n)?t:n)}}function nogamma(e,n){var t=n-e;return t?linear$1(e,t):constant$3(isNaN(e)?n:e)}var rgb=function e(n){var t=gamma(n);function o(r,a){var s=t((r=rgb$1(r)).r,(a=rgb$1(a)).r),i=t(r.g,a.g),l=t(r.b,a.b),u=nogamma(r.opacity,a.opacity);return function(c){return r.r=s(c),r.g=i(c),r.b=l(c),r.opacity=u(c),r+""}}return o.gamma=e,o}(1);function numberArray(e,n){n||(n=[]);var t=e?Math.min(n.length,e.length):0,o=n.slice(),r;return function(a){for(r=0;r<t;++r)o[r]=e[r]*(1-a)+n[r]*a;return o}}function isNumberArray(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function genericArray(e,n){var t=n?n.length:0,o=e?Math.min(t,e.length):0,r=new Array(o),a=new Array(t),s;for(s=0;s<o;++s)r[s]=interpolate(e[s],n[s]);for(;s<t;++s)a[s]=n[s];return function(i){for(s=0;s<o;++s)a[s]=r[s](i);return a}}function date(e,n){var t=new Date;return e=+e,n=+n,function(o){return t.setTime(e*(1-o)+n*o),t}}function interpolateNumber(e,n){return e=+e,n=+n,function(t){return e*(1-t)+n*t}}function object(e,n){var t={},o={},r;(e===null||typeof e!="object")&&(e={}),(n===null||typeof n!="object")&&(n={});for(r in n)r in e?t[r]=interpolate(e[r],n[r]):o[r]=n[r];return function(a){for(r in t)o[r]=t[r](a);return o}}var reA=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,reB=new RegExp(reA.source,"g");function zero(e){return function(){return e}}function one(e){return function(n){return e(n)+""}}function string(e,n){var t=reA.lastIndex=reB.lastIndex=0,o,r,a,s=-1,i=[],l=[];for(e=e+"",n=n+"";(o=reA.exec(e))&&(r=reB.exec(n));)(a=r.index)>t&&(a=n.slice(t,a),i[s]?i[s]+=a:i[++s]=a),(o=o[0])===(r=r[0])?i[s]?i[s]+=r:i[++s]=r:(i[++s]=null,l.push({i:s,x:interpolateNumber(o,r)})),t=reB.lastIndex;return t<n.length&&(a=n.slice(t),i[s]?i[s]+=a:i[++s]=a),i.length<2?l[0]?one(l[0].x):zero(n):(n=l.length,function(u){for(var c=0,d;c<n;++c)i[(d=l[c]).i]=d.x(u);return i.join("")})}function interpolate(e,n){var t=typeof n,o;return n==null||t==="boolean"?constant$3(n):(t==="number"?interpolateNumber:t==="string"?(o=color(n))?(n=o,rgb):string:n instanceof color?rgb:n instanceof Date?date:isNumberArray(n)?numberArray:Array.isArray(n)?genericArray:typeof n.valueOf!="function"&&typeof n.toString!="function"||isNaN(n)?object:interpolateNumber)(e,n)}function interpolateRound(e,n){return e=+e,n=+n,function(t){return Math.round(e*(1-t)+n*t)}}function hcl(e){return function(n,t){var o=e((n=hcl$1(n)).h,(t=hcl$1(t)).h),r=nogamma(n.c,t.c),a=nogamma(n.l,t.l),s=nogamma(n.opacity,t.opacity);return function(i){return n.h=o(i),n.c=r(i),n.l=a(i),n.opacity=s(i),n+""}}}var interpolateHcl=hcl(hue);function constants(e){return function(){return e}}function number$1(e){return+e}var unit=[0,1];function identity$3(e){return e}function normalize$1(e,n){return(n-=e=+e)?function(t){return(t-e)/n}:constants(isNaN(n)?NaN:.5)}function clamper(e,n){var t;return e>n&&(t=e,e=n,n=t),function(o){return Math.max(e,Math.min(n,o))}}function bimap(e,n,t){var o=e[0],r=e[1],a=n[0],s=n[1];return r<o?(o=normalize$1(r,o),a=t(s,a)):(o=normalize$1(o,r),a=t(a,s)),function(i){return a(o(i))}}function polymap(e,n,t){var o=Math.min(e.length,n.length)-1,r=new Array(o),a=new Array(o),s=-1;for(e[o]<e[0]&&(e=e.slice().reverse(),n=n.slice().reverse());++s<o;)r[s]=normalize$1(e[s],e[s+1]),a[s]=t(n[s],n[s+1]);return function(i){var l=bisectRight(e,i,1,o)-1;return a[l](r[l](i))}}function copy$1(e,n){return n.domain(e.domain()).range(e.range()).interpolate(e.interpolate()).clamp(e.clamp()).unknown(e.unknown())}function transformer$1(){var e=unit,n=unit,t=interpolate,o,r,a,s=identity$3,i,l,u;function c(){var v=Math.min(e.length,n.length);return s!==identity$3&&(s=clamper(e[0],e[v-1])),i=v>2?polymap:bimap,l=u=null,d}function d(v){return v==null||isNaN(v=+v)?a:(l||(l=i(e.map(o),n,t)))(o(s(v)))}return d.invert=function(v){return s(r((u||(u=i(n,e.map(o),interpolateNumber)))(v)))},d.domain=function(v){return arguments.length?(e=Array.from(v,number$1),c()):e.slice()},d.range=function(v){return arguments.length?(n=Array.from(v),c()):n.slice()},d.rangeRound=function(v){return n=Array.from(v),t=interpolateRound,c()},d.clamp=function(v){return arguments.length?(s=v?!0:identity$3,c()):s!==identity$3},d.interpolate=function(v){return arguments.length?(t=v,c()):t},d.unknown=function(v){return arguments.length?(a=v,d):a},function(v,m){return o=v,r=m,c()}}function continuous(){return transformer$1()(identity$3,identity$3)}function formatDecimal(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)}function formatDecimalParts(e,n){if((t=(e=n?e.toExponential(n-1):e.toExponential()).indexOf("e"))<0)return null;var t,o=e.slice(0,t);return[o.length>1?o[0]+o.slice(2):o,+e.slice(t+1)]}function exponent(e){return e=formatDecimalParts(Math.abs(e)),e?e[1]:NaN}function formatGroup(e,n){return function(t,o){for(var r=t.length,a=[],s=0,i=e[0],l=0;r>0&&i>0&&(l+i+1>o&&(i=Math.max(1,o-l)),a.push(t.substring(r-=i,r+i)),!((l+=i+1)>o));)i=e[s=(s+1)%e.length];return a.reverse().join(n)}}function formatNumerals(e){return function(n){return n.replace(/[0-9]/g,function(t){return e[+t]})}}var re=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function formatSpecifier(e){if(!(n=re.exec(e)))throw new Error("invalid format: "+e);var n;return new FormatSpecifier({fill:n[1],align:n[2],sign:n[3],symbol:n[4],zero:n[5],width:n[6],comma:n[7],precision:n[8]&&n[8].slice(1),trim:n[9],type:n[10]})}formatSpecifier.prototype=FormatSpecifier.prototype;function FormatSpecifier(e){this.fill=e.fill===void 0?" ":e.fill+"",this.align=e.align===void 0?">":e.align+"",this.sign=e.sign===void 0?"-":e.sign+"",this.symbol=e.symbol===void 0?"":e.symbol+"",this.zero=!!e.zero,this.width=e.width===void 0?void 0:+e.width,this.comma=!!e.comma,this.precision=e.precision===void 0?void 0:+e.precision,this.trim=!!e.trim,this.type=e.type===void 0?"":e.type+""}FormatSpecifier.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function formatTrim(e){e:for(var n=e.length,t=1,o=-1,r;t<n;++t)switch(e[t]){case".":o=r=t;break;case"0":o===0&&(o=t),r=t;break;default:if(!+e[t])break e;o>0&&(o=0);break}return o>0?e.slice(0,o)+e.slice(r+1):e}var prefixExponent;function formatPrefixAuto(e,n){var t=formatDecimalParts(e,n);if(!t)return e+"";var o=t[0],r=t[1],a=r-(prefixExponent=Math.max(-8,Math.min(8,Math.floor(r/3)))*3)+1,s=o.length;return a===s?o:a>s?o+new Array(a-s+1).join("0"):a>0?o.slice(0,a)+"."+o.slice(a):"0."+new Array(1-a).join("0")+formatDecimalParts(e,Math.max(0,n+a-1))[0]}function formatRounded(e,n){var t=formatDecimalParts(e,n);if(!t)return e+"";var o=t[0],r=t[1];return r<0?"0."+new Array(-r).join("0")+o:o.length>r+1?o.slice(0,r+1)+"."+o.slice(r+1):o+new Array(r-o.length+2).join("0")}var formatTypes={"%":(e,n)=>(e*100).toFixed(n),b:e=>Math.round(e).toString(2),c:e=>e+"",d:formatDecimal,e:(e,n)=>e.toExponential(n),f:(e,n)=>e.toFixed(n),g:(e,n)=>e.toPrecision(n),o:e=>Math.round(e).toString(8),p:(e,n)=>formatRounded(e*100,n),r:formatRounded,s:formatPrefixAuto,X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function identity$2(e){return e}var map=Array.prototype.map,prefixes=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function formatLocale(e){var n=e.grouping===void 0||e.thousands===void 0?identity$2:formatGroup(map.call(e.grouping,Number),e.thousands+""),t=e.currency===void 0?"":e.currency[0]+"",o=e.currency===void 0?"":e.currency[1]+"",r=e.decimal===void 0?".":e.decimal+"",a=e.numerals===void 0?identity$2:formatNumerals(map.call(e.numerals,String)),s=e.percent===void 0?"%":e.percent+"",i=e.minus===void 0?"−":e.minus+"",l=e.nan===void 0?"NaN":e.nan+"";function u(d){d=formatSpecifier(d);var v=d.fill,m=d.align,f=d.sign,p=d.symbol,g=d.zero,_=d.width,h=d.comma,b=d.precision,V=d.trim,S=d.type;S==="n"?(h=!0,S="g"):formatTypes[S]||(b===void 0&&(b=12),V=!0,S="g"),(g||v==="0"&&m==="=")&&(g=!0,v="0",m="=");var $=p==="$"?t:p==="#"&&/[boxX]/.test(S)?"0"+S.toLowerCase():"",w=p==="$"?o:/[%p]/.test(S)?s:"",k=formatTypes[S],P=/[defgprs%]/.test(S);b=b===void 0?6:/[gprs]/.test(S)?Math.max(1,Math.min(21,b)):Math.max(0,Math.min(20,b));function O(B){var T=$,L=w,E,z,F;if(S==="c")L=k(B)+L,B="";else{B=+B;var A=B<0||1/B<0;if(B=isNaN(B)?l:k(Math.abs(B),b),V&&(B=formatTrim(B)),A&&+B==0&&f!=="+"&&(A=!1),T=(A?f==="("?f:i:f==="-"||f==="("?"":f)+T,L=(S==="s"?prefixes[8+prefixExponent/3]:"")+L+(A&&f==="("?")":""),P){for(E=-1,z=B.length;++E<z;)if(F=B.charCodeAt(E),48>F||F>57){L=(F===46?r+B.slice(E+1):B.slice(E))+L,B=B.slice(0,E);break}}}h&&!g&&(B=n(B,1/0));var C=T.length+B.length+L.length,D=C<_?new Array(_-C+1).join(v):"";switch(h&&g&&(B=n(D+B,D.length?_-L.length:1/0),D=""),m){case"<":B=T+B+L+D;break;case"=":B=T+D+B+L;break;case"^":B=D.slice(0,C=D.length>>1)+T+B+L+D.slice(C);break;default:B=D+T+B+L;break}return a(B)}return O.toString=function(){return d+""},O}function c(d,v){var m=u((d=formatSpecifier(d),d.type="f",d)),f=Math.max(-8,Math.min(8,Math.floor(exponent(v)/3)))*3,p=Math.pow(10,-f),g=prefixes[8+f/3];return function(_){return m(p*_)+g}}return{format:u,formatPrefix:c}}var locale,format,formatPrefix;defaultLocale({thousands:",",grouping:[3],currency:["$",""]});function defaultLocale(e){return locale=formatLocale(e),format=locale.format,formatPrefix=locale.formatPrefix,locale}function precisionFixed(e){return Math.max(0,-exponent(Math.abs(e)))}function precisionPrefix(e,n){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(exponent(n)/3)))*3-exponent(Math.abs(e)))}function precisionRound(e,n){return e=Math.abs(e),n=Math.abs(n)-e,Math.max(0,exponent(n)-exponent(e))+1}function tickFormat(e,n,t,o){var r=tickStep(e,n,t),a;switch(o=formatSpecifier(o??",f"),o.type){case"s":{var s=Math.max(Math.abs(e),Math.abs(n));return o.precision==null&&!isNaN(a=precisionPrefix(r,s))&&(o.precision=a),formatPrefix(o,s)}case"":case"e":case"g":case"p":case"r":{o.precision==null&&!isNaN(a=precisionRound(r,Math.max(Math.abs(e),Math.abs(n))))&&(o.precision=a-(o.type==="e"));break}case"f":case"%":{o.precision==null&&!isNaN(a=precisionFixed(r))&&(o.precision=a-(o.type==="%")*2);break}}return format(o)}function linearish(e){var n=e.domain;return e.ticks=function(t){var o=n();return ticks(o[0],o[o.length-1],t??10)},e.tickFormat=function(t,o){var r=n();return tickFormat(r[0],r[r.length-1],t??10,o)},e.nice=function(t){t==null&&(t=10);var o=n(),r=0,a=o.length-1,s=o[r],i=o[a],l,u,c=10;for(i<s&&(u=s,s=i,i=u,u=r,r=a,a=u);c-- >0;){if(u=tickIncrement(s,i,t),u===l)return o[r]=s,o[a]=i,n(o);if(u>0)s=Math.floor(s/u)*u,i=Math.ceil(i/u)*u;else if(u<0)s=Math.ceil(s*u)/u,i=Math.floor(i*u)/u;else break;l=u}return e},e}function linear(){var e=continuous();return e.copy=function(){return copy$1(e,linear())},initRange.apply(e,arguments),linearish(e)}function transformer(){var e=0,n=1,t,o,r,a,s=identity$3,i=!1,l;function u(d){return d==null||isNaN(d=+d)?l:s(r===0?.5:(d=(a(d)-t)*r,i?Math.max(0,Math.min(1,d)):d))}u.domain=function(d){return arguments.length?([e,n]=d,t=a(e=+e),o=a(n=+n),r=t===o?0:1/(o-t),u):[e,n]},u.clamp=function(d){return arguments.length?(i=!!d,u):i},u.interpolator=function(d){return arguments.length?(s=d,u):s};function c(d){return function(v){var m,f;return arguments.length?([m,f]=v,s=d(m,f),u):[s(0),s(1)]}}return u.range=c(interpolate),u.rangeRound=c(interpolateRound),u.unknown=function(d){return arguments.length?(l=d,u):l},function(d){return a=d,t=d(e),o=d(n),r=t===o?0:1/(o-t),u}}function copy(e,n){return n.domain(e.domain()).interpolator(e.interpolator()).clamp(e.clamp()).unknown(e.unknown())}function sequential(){var e=linearish(transformer()(identity$3));return e.copy=function(){return copy(e,sequential())},initInterpolator.apply(e,arguments)}class Scale{constructor(e){this.config=e,this.createScale(e.type)}createScale(e){switch(e){case"band":this.scale=band();break;case"linear":this.scale=linear();break}}changeConfig(e){this.createScale(e.type),this.config=e}get type(){return this.config.type}bandwidth(){return this.type==="band"?this.scale.bandwidth():0}updateRange(e){this.scale=this.scale.copy().range(e)}updateDomain(e,n,t){const o=this.config.type==="band"?this.categoryDomain(e,t):this.numericDomain(e,n,t);this.scale=this.scale.copy().domain(o)}map(e){return e.map(n=>this.mapOne(n))}mapOne(e){const{type:n}=this.config;return n==="band"?this.scale(e)+this.scale.bandwidth()/2:this.scale(e)}ticks(){const{type:e}=this.config;return this.config.tickValues!==void 0?this.config.tickValues:e==="band"?this.scale.domain():this.scale.ticks(this.config.ticks||5)}categoryDomain(e,n){const t=n.reduce((o,r)=>o.concat(getCol(r,e)),[]);return Array.from(new Set(t))}numericDomain(data,stackedData,keys){const{domain}=this.config,values=keys.reduce((e,n)=>e.concat(getCol(n,data)),[]),valueMax=max$1(stackedData,e=>max$1(e,n=>max$1(n)))||0,valueMin=min$1(stackedData,e=>min$1(e,n=>min$1(n)))||0,[dataMin,dataMax]=extent(Array.from(new Set(values.concat([valueMin,valueMax])))),yMin=eval(`
|
|
98
98
|
let dataMin = ${dataMin||0}
|
|
99
99
|
${domain[0]}
|
|
100
100
|
`),yMax=eval(`
|
|
101
101
|
let dataMax = ${dataMax||0}
|
|
102
102
|
${domain[1]}
|
|
103
|
-
`);return[yMin,yMax]}}class Scales{constructor(n){this.config=n,this.primary=new Scale(n.primary),this.secondary=new Scale(n.secondary)}changeConfig(n){this.config=n,this.primary.changeConfig(n.primary),this.secondary.changeConfig(n.secondary)}updateRange(n,t){t==="horizontal"?(this.primary.updateRange([n.x,n.width]),this.secondary.updateRange([n.height,n.y])):t==="vertical"&&(this.primary.updateRange([n.y,n.height]),this.secondary.updateRange([n.x,n.width]))}updateDomain(n,t,o){this.primary.updateDomain(n,t,getCol(0,o)),this.secondary.updateDomain(n,t,getCol(1,o))}}function constant$2(e){return function(){return e}}const abs=Math.abs,atan2=Math.atan2,cos=Math.cos,max=Math.max,min=Math.min,sin=Math.sin,sqrt=Math.sqrt,epsilon$2=1e-12,pi$1=Math.PI,halfPi=pi$1/2,tau$1=2*pi$1;function acos(e){return e>1?0:e<-1?pi$1:Math.acos(e)}function asin(e){return e>=1?halfPi:e<=-1?-halfPi:Math.asin(e)}const pi=Math.PI,tau=2*pi,epsilon$1=1e-6,tauEpsilon=tau-epsilon$1;function append(e){this._+=e[0];for(let n=1,t=e.length;n<t;++n)this._+=arguments[n]+e[n]}function appendRound(e){let n=Math.floor(e);if(!(n>=0))throw new Error(`invalid digits: ${e}`);if(n>15)return append;const t=10**n;return function(o){this._+=o[0];for(let a=1,r=o.length;a<r;++a)this._+=Math.round(arguments[a]*t)/t+o[a]}}class Path{constructor(n){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=n==null?append:appendRound(n)}moveTo(n,t){this._append`M${this._x0=this._x1=+n},${this._y0=this._y1=+t}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(n,t){this._append`L${this._x1=+n},${this._y1=+t}`}quadraticCurveTo(n,t,o,a){this._append`Q${+n},${+t},${this._x1=+o},${this._y1=+a}`}bezierCurveTo(n,t,o,a,r,s){this._append`C${+n},${+t},${+o},${+a},${this._x1=+r},${this._y1=+s}`}arcTo(n,t,o,a,r){if(n=+n,t=+t,o=+o,a=+a,r=+r,r<0)throw new Error(`negative radius: ${r}`);let s=this._x1,i=this._y1,l=o-n,u=a-t,c=s-n,d=i-t,v=c*c+d*d;if(this._x1===null)this._append`M${this._x1=n},${this._y1=t}`;else if(v>epsilon$1)if(!(Math.abs(d*l-u*c)>epsilon$1)||!r)this._append`L${this._x1=n},${this._y1=t}`;else{let m=o-s,f=a-i,p=l*l+u*u,g=m*m+f*f,_=Math.sqrt(p),h=Math.sqrt(v),b=r*Math.tan((pi-Math.acos((p+v-g)/(2*_*h)))/2),V=b/h,S=b/_;Math.abs(V-1)>epsilon$1&&this._append`L${n+V*c},${t+V*d}`,this._append`A${r},${r},0,0,${+(d*m>c*f)},${this._x1=n+S*l},${this._y1=t+S*u}`}}arc(n,t,o,a,r,s){if(n=+n,t=+t,o=+o,s=!!s,o<0)throw new Error(`negative radius: ${o}`);let i=o*Math.cos(a),l=o*Math.sin(a),u=n+i,c=t+l,d=1^s,v=s?a-r:r-a;this._x1===null?this._append`M${u},${c}`:(Math.abs(this._x1-u)>epsilon$1||Math.abs(this._y1-c)>epsilon$1)&&this._append`L${u},${c}`,o&&(v<0&&(v=v%tau+tau),v>tauEpsilon?this._append`A${o},${o},0,1,${d},${n-i},${t-l}A${o},${o},0,1,${d},${this._x1=u},${this._y1=c}`:v>epsilon$1&&this._append`A${o},${o},0,${+(v>=pi)},${d},${this._x1=n+o*Math.cos(r)},${this._y1=t+o*Math.sin(r)}`)}rect(n,t,o,a){this._append`M${this._x0=this._x1=+n},${this._y0=this._y1=+t}h${o=+o}v${+a}h${-o}Z`}toString(){return this._}}function withPath(e){let n=3;return e.digits=function(t){if(!arguments.length)return n;if(t==null)n=null;else{const o=Math.floor(t);if(!(o>=0))throw new RangeError(`invalid digits: ${t}`);n=o}return e},()=>new Path(n)}function arcInnerRadius(e){return e.innerRadius}function arcOuterRadius(e){return e.outerRadius}function arcStartAngle(e){return e.startAngle}function arcEndAngle(e){return e.endAngle}function arcPadAngle(e){return e&&e.padAngle}function intersect(e,n,t,o,a,r,s,i){var l=t-e,u=o-n,c=s-a,d=i-r,v=d*l-c*u;if(!(v*v<epsilon$2))return v=(c*(n-r)-d*(e-a))/v,[e+v*l,n+v*u]}function cornerTangents(e,n,t,o,a,r,s){var i=e-t,l=n-o,u=(s?r:-r)/sqrt(i*i+l*l),c=u*l,d=-u*i,v=e+c,m=n+d,f=t+c,p=o+d,g=(v+f)/2,_=(m+p)/2,h=f-v,b=p-m,V=h*h+b*b,S=a-r,$=v*p-f*m,w=(b<0?-1:1)*sqrt(max(0,S*S*V-$*$)),k=($*b-h*w)/V,P=(-$*h-b*w)/V,O=($*b+h*w)/V,B=(-$*h+b*w)/V,T=k-g,L=P-_,E=O-g,z=B-_;return T*T+L*L>E*E+z*z&&(k=O,P=B),{cx:k,cy:P,x01:-c,y01:-d,x11:k*(a/S-1),y11:P*(a/S-1)}}function arc(){var e=arcInnerRadius,n=arcOuterRadius,t=constant$2(0),o=null,a=arcStartAngle,r=arcEndAngle,s=arcPadAngle,i=null,l=withPath(u);function u(){var c,d,v=+e.apply(this,arguments),m=+n.apply(this,arguments),f=a.apply(this,arguments)-halfPi,p=r.apply(this,arguments)-halfPi,g=abs(p-f),_=p>f;if(i||(i=c=l()),m<v&&(d=m,m=v,v=d),!(m>epsilon$2))i.moveTo(0,0);else if(g>tau$1-epsilon$2)i.moveTo(m*cos(f),m*sin(f)),i.arc(0,0,m,f,p,!_),v>epsilon$2&&(i.moveTo(v*cos(p),v*sin(p)),i.arc(0,0,v,p,f,_));else{var h=f,b=p,V=f,S=p,$=g,w=g,k=s.apply(this,arguments)/2,P=k>epsilon$2&&(o?+o.apply(this,arguments):sqrt(v*v+m*m)),O=min(abs(m-v)/2,+t.apply(this,arguments)),B=O,T=O,L,E;if(P>epsilon$2){var z=asin(P/v*sin(k)),F=asin(P/m*sin(k));($-=z*2)>epsilon$2?(z*=_?1:-1,V+=z,S-=z):($=0,V=S=(f+p)/2),(w-=F*2)>epsilon$2?(F*=_?1:-1,h+=F,b-=F):(w=0,h=b=(f+p)/2)}var A=m*cos(h),C=m*sin(h),D=v*cos(S),R=v*sin(S);if(O>epsilon$2){var G=m*cos(b),U=m*sin(b),Y=v*cos(V),X=v*sin(V),W;if(g<pi$1)if(W=intersect(A,C,Y,X,G,U,D,R)){var Z=A-W[0],te=C-W[1],ee=G-W[0],oe=U-W[1],ae=1/sin(acos((Z*ee+te*oe)/(sqrt(Z*Z+te*te)*sqrt(ee*ee+oe*oe)))/2),ie=sqrt(W[0]*W[0]+W[1]*W[1]);B=min(O,(v-ie)/(ae-1)),T=min(O,(m-ie)/(ae+1))}else B=T=0}w>epsilon$2?T>epsilon$2?(L=cornerTangents(Y,X,A,C,m,T,_),E=cornerTangents(G,U,D,R,m,T,_),i.moveTo(L.cx+L.x01,L.cy+L.y01),T<O?i.arc(L.cx,L.cy,T,atan2(L.y01,L.x01),atan2(E.y01,E.x01),!_):(i.arc(L.cx,L.cy,T,atan2(L.y01,L.x01),atan2(L.y11,L.x11),!_),i.arc(0,0,m,atan2(L.cy+L.y11,L.cx+L.x11),atan2(E.cy+E.y11,E.cx+E.x11),!_),i.arc(E.cx,E.cy,T,atan2(E.y11,E.x11),atan2(E.y01,E.x01),!_))):(i.moveTo(A,C),i.arc(0,0,m,h,b,!_)):i.moveTo(A,C),!(v>epsilon$2)||!($>epsilon$2)?i.lineTo(D,R):B>epsilon$2?(L=cornerTangents(D,R,G,U,v,-B,_),E=cornerTangents(A,C,Y,X,v,-B,_),i.lineTo(L.cx+L.x01,L.cy+L.y01),B<O?i.arc(L.cx,L.cy,B,atan2(L.y01,L.x01),atan2(E.y01,E.x01),!_):(i.arc(L.cx,L.cy,B,atan2(L.y01,L.x01),atan2(L.y11,L.x11),!_),i.arc(0,0,v,atan2(L.cy+L.y11,L.cx+L.x11),atan2(E.cy+E.y11,E.cx+E.x11),_),i.arc(E.cx,E.cy,B,atan2(E.y11,E.x11),atan2(E.y01,E.x01),!_))):i.arc(0,0,v,S,V,_)}if(i.closePath(),c)return i=null,c+""||null}return u.centroid=function(){var c=(+e.apply(this,arguments)+ +n.apply(this,arguments))/2,d=(+a.apply(this,arguments)+ +r.apply(this,arguments))/2-pi$1/2;return[cos(d)*c,sin(d)*c]},u.innerRadius=function(c){return arguments.length?(e=typeof c=="function"?c:constant$2(+c),u):e},u.outerRadius=function(c){return arguments.length?(n=typeof c=="function"?c:constant$2(+c),u):n},u.cornerRadius=function(c){return arguments.length?(t=typeof c=="function"?c:constant$2(+c),u):t},u.padRadius=function(c){return arguments.length?(o=c==null?null:typeof c=="function"?c:constant$2(+c),u):o},u.startAngle=function(c){return arguments.length?(a=typeof c=="function"?c:constant$2(+c),u):a},u.endAngle=function(c){return arguments.length?(r=typeof c=="function"?c:constant$2(+c),u):r},u.padAngle=function(c){return arguments.length?(s=typeof c=="function"?c:constant$2(+c),u):s},u.context=function(c){return arguments.length?(i=c??null,u):i},u}function array$1(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function Linear(e){this._context=e}Linear.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,n){switch(e=+e,n=+n,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,n):this._context.moveTo(e,n);break;case 1:this._point=2;default:this._context.lineTo(e,n);break}}};function curveLinear(e){return new Linear(e)}function x(e){return e[0]}function y(e){return e[1]}function line(e,n){var t=constant$2(!0),o=null,a=curveLinear,r=null,s=withPath(i);e=typeof e=="function"?e:e===void 0?x:constant$2(e),n=typeof n=="function"?n:n===void 0?y:constant$2(n);function i(l){var u,c=(l=array$1(l)).length,d,v=!1,m;for(o==null&&(r=a(m=s())),u=0;u<=c;++u)!(u<c&&t(d=l[u],u,l))===v&&((v=!v)?r.lineStart():r.lineEnd()),v&&r.point(+e(d,u,l),+n(d,u,l));if(m)return r=null,m+""||null}return i.x=function(l){return arguments.length?(e=typeof l=="function"?l:constant$2(+l),i):e},i.y=function(l){return arguments.length?(n=typeof l=="function"?l:constant$2(+l),i):n},i.defined=function(l){return arguments.length?(t=typeof l=="function"?l:constant$2(!!l),i):t},i.curve=function(l){return arguments.length?(a=l,o!=null&&(r=a(o)),i):a},i.context=function(l){return arguments.length?(l==null?o=r=null:r=a(o=l),i):o},i}function area(e,n,t){var o=null,a=constant$2(!0),r=null,s=curveLinear,i=null,l=withPath(u);e=typeof e=="function"?e:e===void 0?x:constant$2(+e),n=typeof n=="function"?n:constant$2(n===void 0?0:+n),t=typeof t=="function"?t:t===void 0?y:constant$2(+t);function u(d){var v,m,f,p=(d=array$1(d)).length,g,_=!1,h,b=new Array(p),V=new Array(p);for(r==null&&(i=s(h=l())),v=0;v<=p;++v){if(!(v<p&&a(g=d[v],v,d))===_)if(_=!_)m=v,i.areaStart(),i.lineStart();else{for(i.lineEnd(),i.lineStart(),f=v-1;f>=m;--f)i.point(b[f],V[f]);i.lineEnd(),i.areaEnd()}_&&(b[v]=+e(g,v,d),V[v]=+n(g,v,d),i.point(o?+o(g,v,d):b[v],t?+t(g,v,d):V[v]))}if(h)return i=null,h+""||null}function c(){return line().defined(a).curve(s).context(r)}return u.x=function(d){return arguments.length?(e=typeof d=="function"?d:constant$2(+d),o=null,u):e},u.x0=function(d){return arguments.length?(e=typeof d=="function"?d:constant$2(+d),u):e},u.x1=function(d){return arguments.length?(o=d==null?null:typeof d=="function"?d:constant$2(+d),u):o},u.y=function(d){return arguments.length?(n=typeof d=="function"?d:constant$2(+d),t=null,u):n},u.y0=function(d){return arguments.length?(n=typeof d=="function"?d:constant$2(+d),u):n},u.y1=function(d){return arguments.length?(t=d==null?null:typeof d=="function"?d:constant$2(+d),u):t},u.lineX0=u.lineY0=function(){return c().x(e).y(n)},u.lineY1=function(){return c().x(e).y(t)},u.lineX1=function(){return c().x(o).y(n)},u.defined=function(d){return arguments.length?(a=typeof d=="function"?d:constant$2(!!d),u):a},u.curve=function(d){return arguments.length?(s=d,r!=null&&(i=s(r)),u):s},u.context=function(d){return arguments.length?(d==null?r=i=null:i=s(r=d),u):r},u}function descending(e,n){return n<e?-1:n>e?1:n>=e?0:NaN}function identity$1(e){return e}function pie(){var e=identity$1,n=descending,t=null,o=constant$2(0),a=constant$2(tau$1),r=constant$2(0);function s(i){var l,u=(i=array$1(i)).length,c,d,v=0,m=new Array(u),f=new Array(u),p=+o.apply(this,arguments),g=Math.min(tau$1,Math.max(-tau$1,a.apply(this,arguments)-p)),_,h=Math.min(Math.abs(g)/u,r.apply(this,arguments)),b=h*(g<0?-1:1),V;for(l=0;l<u;++l)(V=f[m[l]=l]=+e(i[l],l,i))>0&&(v+=V);for(n!=null?m.sort(function(S,$){return n(f[S],f[$])}):t!=null&&m.sort(function(S,$){return t(i[S],i[$])}),l=0,d=v?(g-u*b)/v:0;l<u;++l,p=_)c=m[l],V=f[c],_=p+(V>0?V*d:0)+b,f[c]={data:i[c],index:l,value:V,startAngle:p,endAngle:_,padAngle:h};return f}return s.value=function(i){return arguments.length?(e=typeof i=="function"?i:constant$2(+i),s):e},s.sortValues=function(i){return arguments.length?(n=i,t=null,s):n},s.sort=function(i){return arguments.length?(t=i,n=null,s):t},s.startAngle=function(i){return arguments.length?(o=typeof i=="function"?i:constant$2(+i),s):o},s.endAngle=function(i){return arguments.length?(a=typeof i=="function"?i:constant$2(+i),s):a},s.padAngle=function(i){return arguments.length?(r=typeof i=="function"?i:constant$2(+i),s):r},s}function sign(e){return e<0?-1:1}function slope3(e,n,t){var o=e._x1-e._x0,a=n-e._x1,r=(e._y1-e._y0)/(o||a<0&&-0),s=(t-e._y1)/(a||o<0&&-0),i=(r*a+s*o)/(o+a);return(sign(r)+sign(s))*Math.min(Math.abs(r),Math.abs(s),.5*Math.abs(i))||0}function slope2(e,n){var t=e._x1-e._x0;return t?(3*(e._y1-e._y0)/t-n)/2:n}function point(e,n,t){var o=e._x0,a=e._y0,r=e._x1,s=e._y1,i=(r-o)/3;e._context.bezierCurveTo(o+i,a+i*n,r-i,s-i*t,r,s)}function MonotoneX(e){this._context=e}MonotoneX.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:point(this,this._t0,slope2(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,n){var t=NaN;if(e=+e,n=+n,!(e===this._x1&&n===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,n):this._context.moveTo(e,n);break;case 1:this._point=2;break;case 2:this._point=3,point(this,slope2(this,t=slope3(this,e,n)),t);break;default:point(this,this._t0,t=slope3(this,e,n));break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=n,this._t0=t}}};function MonotoneY(e){this._context=new ReflectContext(e)}(MonotoneY.prototype=Object.create(MonotoneX.prototype)).point=function(e,n){MonotoneX.prototype.point.call(this,n,e)};function ReflectContext(e){this._context=e}ReflectContext.prototype={moveTo:function(e,n){this._context.moveTo(n,e)},closePath:function(){this._context.closePath()},lineTo:function(e,n){this._context.lineTo(n,e)},bezierCurveTo:function(e,n,t,o,a,r){this._context.bezierCurveTo(n,e,o,t,r,a)}};function monotoneX(e){return new MonotoneX(e)}function monotoneY(e){return new MonotoneY(e)}function Natural(e){this._context=e}Natural.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var e=this._x,n=this._y,t=e.length;if(t)if(this._line?this._context.lineTo(e[0],n[0]):this._context.moveTo(e[0],n[0]),t===2)this._context.lineTo(e[1],n[1]);else for(var o=controlPoints(e),a=controlPoints(n),r=0,s=1;s<t;++r,++s)this._context.bezierCurveTo(o[0][r],a[0][r],o[1][r],a[1][r],e[s],n[s]);(this._line||this._line!==0&&t===1)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},point:function(e,n){this._x.push(+e),this._y.push(+n)}};function controlPoints(e){var n,t=e.length-1,o,a=new Array(t),r=new Array(t),s=new Array(t);for(a[0]=0,r[0]=2,s[0]=e[0]+2*e[1],n=1;n<t-1;++n)a[n]=1,r[n]=4,s[n]=4*e[n]+2*e[n+1];for(a[t-1]=2,r[t-1]=7,s[t-1]=8*e[t-1]+e[t],n=1;n<t;++n)o=a[n]/r[n-1],r[n]-=o,s[n]-=o*s[n-1];for(a[t-1]=s[t-1]/r[t-1],n=t-2;n>=0;--n)a[n]=(s[n]-a[n+1])/r[n];for(r[t-1]=(e[t]+a[t-1])/2,n=0;n<t-1;++n)r[n]=2*e[n+1]-a[n+1];return[a,r]}function curveNatural(e){return new Natural(e)}function Step(e,n){this._context=e,this._t=n}Step.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0<this._t&&this._t<1&&this._point===2&&this._context.lineTo(this._x,this._y),(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line>=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,n){switch(e=+e,n=+n,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,n):this._context.moveTo(e,n);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,n),this._context.lineTo(e,n);else{var t=this._x*(1-this._t)+e*this._t;this._context.lineTo(t,this._y),this._context.lineTo(t,n)}break}}this._x=e,this._y=n}};function curveStep(e){return new Step(e,.5)}function stepAfter(e){return new Step(e,1)}function none$1(e,n){if((s=e.length)>1)for(var t=1,o,a,r=e[n[0]],s,i=r.length;t<s;++t)for(a=r,r=e[n[t]],o=0;o<i;++o)r[o][1]+=r[o][0]=isNaN(a[o][1])?a[o][0]:a[o][1]}function stackOrderNone(e){for(var n=e.length,t=new Array(n);--n>=0;)t[n]=n;return t}function stackValue(e,n){return e[n]}function stackSeries(e){const n=[];return n.key=e,n}function stack(){var e=constant$2([]),n=stackOrderNone,t=none$1,o=stackValue;function a(r){var s=Array.from(e.apply(this,arguments),stackSeries),i,l=s.length,u=-1,c;for(const d of r)for(i=0,++u;i<l;++i)(s[i][u]=[0,+o(d,s[i].key,u,r)]).data=d;for(i=0,c=array$1(n(s));i<l;++i)s[c[i]].index=i;return t(s,c),s}return a.keys=function(r){return arguments.length?(e=typeof r=="function"?r:constant$2(Array.from(r)),a):e},a.value=function(r){return arguments.length?(o=typeof r=="function"?r:constant$2(+r),a):o},a.order=function(r){return arguments.length?(n=r==null?stackOrderNone:typeof r=="function"?r:constant$2(Array.from(r)),a):n},a.offset=function(r){return arguments.length?(t=r??none$1,a):t},a}const defaultConfig={size:{width:500,height:400},margin:{top:0,right:0,bottom:0,left:0},direction:"horizontal",axis:{primary:{domain:["dataMin","dataMax"],type:"band"},secondary:{domain:["dataMin","dataMax"],type:"linear"}},axisSpace:{x:40,y:20}};class Chart{constructor(n,t){this.data=n,this.layers=[],this.config=mergeDeepLeft$1(pickBy$1(o=>o!==void 0,t),defaultConfig),this.scales=new Scales(this.config.axis),this.updates=vue.ref(0)}get bandScale(){return this.scales.primary.type==="band"?this.scales.primary:this.scales.secondary.type==="band"?this.scales.secondary:null}get canvas(){const{margin:n,size:t}=this.config,o=this.config.axisSpace;return this.config.axis.primary.hide&&(o.y=0),this.config.axis.secondary.hide&&(o.x=0),{x:n.left+o.x,y:n.top,width:t.width-n.right,height:t.height-n.bottom-o.y}}getStackedData(n){return stack().keys(n).order(stackOrderNone)(this.data)}changeData(n){this.data=n,this.update("data")}changeConfig(n){this.config=mergeDeepLeft$1(pickBy$1(t=>t!==void 0,n),this.config),this.scales.changeConfig(this.config.axis),this.update("config")}addLayer(n){this.layers.push(n),this.update("layers")}removeLayer(n){this.layers=this.layers.filter(t=>t.id!==n),this.update("layers")}getLayers(n){return n?this.layers.filter(t=>t.type===n):this.layers}getData(n){return n.reduce((t,o)=>t.concat(getCol(o,this.data)),[])}getKeys(n=-1,t=null){const o=this.layers.filter(a=>t?a.type===t:!0).map(a=>a.dataKeys);return n===-1?o:getCol(n,o)}getStackedKeys(n=-1,t=null){const o=this.layers.filter(a=>t?a.type===t&&a.props.stacked:a.props.stacked).map(a=>a.dataKeys);return n===-1?o:getCol(n,o)}update(n){const t=this.getStackedData(this.getStackedKeys(1));this.scales.updateRange(this.canvas,this.config.direction),this.scales.updateDomain(this.data,t,this.getKeys()),this.updates.value+=1}}var xhtml="http://www.w3.org/1999/xhtml",namespaces={svg:"http://www.w3.org/2000/svg",xhtml,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function namespace(e){var n=e+="",t=n.indexOf(":");return t>=0&&(n=e.slice(0,t))!=="xmlns"&&(e=e.slice(t+1)),namespaces.hasOwnProperty(n)?{space:namespaces[n],local:e}:e}function creatorInherit(e){return function(){var n=this.ownerDocument,t=this.namespaceURI;return t===xhtml&&n.documentElement.namespaceURI===xhtml?n.createElement(e):n.createElementNS(t,e)}}function creatorFixed(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function creator(e){var n=namespace(e);return(n.local?creatorFixed:creatorInherit)(n)}function none(){}function selector(e){return e==null?none:function(){return this.querySelector(e)}}function selection_select(e){typeof e!="function"&&(e=selector(e));for(var n=this._groups,t=n.length,o=new Array(t),a=0;a<t;++a)for(var r=n[a],s=r.length,i=o[a]=new Array(s),l,u,c=0;c<s;++c)(l=r[c])&&(u=e.call(l,l.__data__,c,r))&&("__data__"in l&&(u.__data__=l.__data__),i[c]=u);return new Selection(o,this._parents)}function array(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function empty(){return[]}function selectorAll(e){return e==null?empty:function(){return this.querySelectorAll(e)}}function arrayAll(e){return function(){return array(e.apply(this,arguments))}}function selection_selectAll(e){typeof e=="function"?e=arrayAll(e):e=selectorAll(e);for(var n=this._groups,t=n.length,o=[],a=[],r=0;r<t;++r)for(var s=n[r],i=s.length,l,u=0;u<i;++u)(l=s[u])&&(o.push(e.call(l,l.__data__,u,s)),a.push(l));return new Selection(o,a)}function matcher(e){return function(){return this.matches(e)}}function childMatcher(e){return function(n){return n.matches(e)}}var find=Array.prototype.find;function childFind(e){return function(){return find.call(this.children,e)}}function childFirst(){return this.firstElementChild}function selection_selectChild(e){return this.select(e==null?childFirst:childFind(typeof e=="function"?e:childMatcher(e)))}var filter=Array.prototype.filter;function children(){return Array.from(this.children)}function childrenFilter(e){return function(){return filter.call(this.children,e)}}function selection_selectChildren(e){return this.selectAll(e==null?children:childrenFilter(typeof e=="function"?e:childMatcher(e)))}function selection_filter(e){typeof e!="function"&&(e=matcher(e));for(var n=this._groups,t=n.length,o=new Array(t),a=0;a<t;++a)for(var r=n[a],s=r.length,i=o[a]=[],l,u=0;u<s;++u)(l=r[u])&&e.call(l,l.__data__,u,r)&&i.push(l);return new Selection(o,this._parents)}function sparse(e){return new Array(e.length)}function selection_enter(){return new Selection(this._enter||this._groups.map(sparse),this._parents)}function EnterNode(e,n){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=n}EnterNode.prototype={constructor:EnterNode,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,n){return this._parent.insertBefore(e,n)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};function constant$1(e){return function(){return e}}function bindIndex(e,n,t,o,a,r){for(var s=0,i,l=n.length,u=r.length;s<u;++s)(i=n[s])?(i.__data__=r[s],o[s]=i):t[s]=new EnterNode(e,r[s]);for(;s<l;++s)(i=n[s])&&(a[s]=i)}function bindKey(e,n,t,o,a,r,s){var i,l,u=new Map,c=n.length,d=r.length,v=new Array(c),m;for(i=0;i<c;++i)(l=n[i])&&(v[i]=m=s.call(l,l.__data__,i,n)+"",u.has(m)?a[i]=l:u.set(m,l));for(i=0;i<d;++i)m=s.call(e,r[i],i,r)+"",(l=u.get(m))?(o[i]=l,l.__data__=r[i],u.delete(m)):t[i]=new EnterNode(e,r[i]);for(i=0;i<c;++i)(l=n[i])&&u.get(v[i])===l&&(a[i]=l)}function datum(e){return e.__data__}function selection_data(e,n){if(!arguments.length)return Array.from(this,datum);var t=n?bindKey:bindIndex,o=this._parents,a=this._groups;typeof e!="function"&&(e=constant$1(e));for(var r=a.length,s=new Array(r),i=new Array(r),l=new Array(r),u=0;u<r;++u){var c=o[u],d=a[u],v=d.length,m=arraylike(e.call(c,c&&c.__data__,u,o)),f=m.length,p=i[u]=new Array(f),g=s[u]=new Array(f),_=l[u]=new Array(v);t(c,d,p,g,_,m,n);for(var h=0,b=0,V,S;h<f;++h)if(V=p[h]){for(h>=b&&(b=h+1);!(S=g[b])&&++b<f;);V._next=S||null}}return s=new Selection(s,o),s._enter=i,s._exit=l,s}function arraylike(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function selection_exit(){return new Selection(this._exit||this._groups.map(sparse),this._parents)}function selection_join(e,n,t){var o=this.enter(),a=this,r=this.exit();return typeof e=="function"?(o=e(o),o&&(o=o.selection())):o=o.append(e+""),n!=null&&(a=n(a),a&&(a=a.selection())),t==null?r.remove():t(r),o&&a?o.merge(a).order():a}function selection_merge(e){for(var n=e.selection?e.selection():e,t=this._groups,o=n._groups,a=t.length,r=o.length,s=Math.min(a,r),i=new Array(a),l=0;l<s;++l)for(var u=t[l],c=o[l],d=u.length,v=i[l]=new Array(d),m,f=0;f<d;++f)(m=u[f]||c[f])&&(v[f]=m);for(;l<a;++l)i[l]=t[l];return new Selection(i,this._parents)}function selection_order(){for(var e=this._groups,n=-1,t=e.length;++n<t;)for(var o=e[n],a=o.length-1,r=o[a],s;--a>=0;)(s=o[a])&&(r&&s.compareDocumentPosition(r)^4&&r.parentNode.insertBefore(s,r),r=s);return this}function selection_sort(e){e||(e=ascending);function n(d,v){return d&&v?e(d.__data__,v.__data__):!d-!v}for(var t=this._groups,o=t.length,a=new Array(o),r=0;r<o;++r){for(var s=t[r],i=s.length,l=a[r]=new Array(i),u,c=0;c<i;++c)(u=s[c])&&(l[c]=u);l.sort(n)}return new Selection(a,this._parents).order()}function ascending(e,n){return e<n?-1:e>n?1:e>=n?0:NaN}function selection_call(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function selection_nodes(){return Array.from(this)}function selection_node(){for(var e=this._groups,n=0,t=e.length;n<t;++n)for(var o=e[n],a=0,r=o.length;a<r;++a){var s=o[a];if(s)return s}return null}function selection_size(){let e=0;for(const n of this)++e;return e}function selection_empty(){return!this.node()}function selection_each(e){for(var n=this._groups,t=0,o=n.length;t<o;++t)for(var a=n[t],r=0,s=a.length,i;r<s;++r)(i=a[r])&&e.call(i,i.__data__,r,a);return this}function attrRemove(e){return function(){this.removeAttribute(e)}}function attrRemoveNS(e){return function(){this.removeAttributeNS(e.space,e.local)}}function attrConstant(e,n){return function(){this.setAttribute(e,n)}}function attrConstantNS(e,n){return function(){this.setAttributeNS(e.space,e.local,n)}}function attrFunction(e,n){return function(){var t=n.apply(this,arguments);t==null?this.removeAttribute(e):this.setAttribute(e,t)}}function attrFunctionNS(e,n){return function(){var t=n.apply(this,arguments);t==null?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,t)}}function selection_attr(e,n){var t=namespace(e);if(arguments.length<2){var o=this.node();return t.local?o.getAttributeNS(t.space,t.local):o.getAttribute(t)}return this.each((n==null?t.local?attrRemoveNS:attrRemove:typeof n=="function"?t.local?attrFunctionNS:attrFunction:t.local?attrConstantNS:attrConstant)(t,n))}function defaultView(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function styleRemove(e){return function(){this.style.removeProperty(e)}}function styleConstant(e,n,t){return function(){this.style.setProperty(e,n,t)}}function styleFunction(e,n,t){return function(){var o=n.apply(this,arguments);o==null?this.style.removeProperty(e):this.style.setProperty(e,o,t)}}function selection_style(e,n,t){return arguments.length>1?this.each((n==null?styleRemove:typeof n=="function"?styleFunction:styleConstant)(e,n,t??"")):styleValue(this.node(),e)}function styleValue(e,n){return e.style.getPropertyValue(n)||defaultView(e).getComputedStyle(e,null).getPropertyValue(n)}function propertyRemove(e){return function(){delete this[e]}}function propertyConstant(e,n){return function(){this[e]=n}}function propertyFunction(e,n){return function(){var t=n.apply(this,arguments);t==null?delete this[e]:this[e]=t}}function selection_property(e,n){return arguments.length>1?this.each((n==null?propertyRemove:typeof n=="function"?propertyFunction:propertyConstant)(e,n)):this.node()[e]}function classArray(e){return e.trim().split(/^|\s+/)}function classList(e){return e.classList||new ClassList(e)}function ClassList(e){this._node=e,this._names=classArray(e.getAttribute("class")||"")}ClassList.prototype={add:function(e){var n=this._names.indexOf(e);n<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){var n=this._names.indexOf(e);n>=0&&(this._names.splice(n,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};function classedAdd(e,n){for(var t=classList(e),o=-1,a=n.length;++o<a;)t.add(n[o])}function classedRemove(e,n){for(var t=classList(e),o=-1,a=n.length;++o<a;)t.remove(n[o])}function classedTrue(e){return function(){classedAdd(this,e)}}function classedFalse(e){return function(){classedRemove(this,e)}}function classedFunction(e,n){return function(){(n.apply(this,arguments)?classedAdd:classedRemove)(this,e)}}function selection_classed(e,n){var t=classArray(e+"");if(arguments.length<2){for(var o=classList(this.node()),a=-1,r=t.length;++a<r;)if(!o.contains(t[a]))return!1;return!0}return this.each((typeof n=="function"?classedFunction:n?classedTrue:classedFalse)(t,n))}function textRemove(){this.textContent=""}function textConstant(e){return function(){this.textContent=e}}function textFunction(e){return function(){var n=e.apply(this,arguments);this.textContent=n??""}}function selection_text(e){return arguments.length?this.each(e==null?textRemove:(typeof e=="function"?textFunction:textConstant)(e)):this.node().textContent}function htmlRemove(){this.innerHTML=""}function htmlConstant(e){return function(){this.innerHTML=e}}function htmlFunction(e){return function(){var n=e.apply(this,arguments);this.innerHTML=n??""}}function selection_html(e){return arguments.length?this.each(e==null?htmlRemove:(typeof e=="function"?htmlFunction:htmlConstant)(e)):this.node().innerHTML}function raise(){this.nextSibling&&this.parentNode.appendChild(this)}function selection_raise(){return this.each(raise)}function lower(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function selection_lower(){return this.each(lower)}function selection_append(e){var n=typeof e=="function"?e:creator(e);return this.select(function(){return this.appendChild(n.apply(this,arguments))})}function constantNull(){return null}function selection_insert(e,n){var t=typeof e=="function"?e:creator(e),o=n==null?constantNull:typeof n=="function"?n:selector(n);return this.select(function(){return this.insertBefore(t.apply(this,arguments),o.apply(this,arguments)||null)})}function remove(){var e=this.parentNode;e&&e.removeChild(this)}function selection_remove(){return this.each(remove)}function selection_cloneShallow(){var e=this.cloneNode(!1),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function selection_cloneDeep(){var e=this.cloneNode(!0),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function selection_clone(e){return this.select(e?selection_cloneDeep:selection_cloneShallow)}function selection_datum(e){return arguments.length?this.property("__data__",e):this.node().__data__}function contextListener(e){return function(n){e.call(this,n,this.__data__)}}function parseTypenames(e){return e.trim().split(/^|\s+/).map(function(n){var t="",o=n.indexOf(".");return o>=0&&(t=n.slice(o+1),n=n.slice(0,o)),{type:n,name:t}})}function onRemove(e){return function(){var n=this.__on;if(n){for(var t=0,o=-1,a=n.length,r;t<a;++t)r=n[t],(!e.type||r.type===e.type)&&r.name===e.name?this.removeEventListener(r.type,r.listener,r.options):n[++o]=r;++o?n.length=o:delete this.__on}}}function onAdd(e,n,t){return function(){var o=this.__on,a,r=contextListener(n);if(o){for(var s=0,i=o.length;s<i;++s)if((a=o[s]).type===e.type&&a.name===e.name){this.removeEventListener(a.type,a.listener,a.options),this.addEventListener(a.type,a.listener=r,a.options=t),a.value=n;return}}this.addEventListener(e.type,r,t),a={type:e.type,name:e.name,value:n,listener:r,options:t},o?o.push(a):this.__on=[a]}}function selection_on(e,n,t){var o=parseTypenames(e+""),a,r=o.length,s;if(arguments.length<2){var i=this.node().__on;if(i){for(var l=0,u=i.length,c;l<u;++l)for(a=0,c=i[l];a<r;++a)if((s=o[a]).type===c.type&&s.name===c.name)return c.value}return}for(i=n?onAdd:onRemove,a=0;a<r;++a)this.each(i(o[a],n,t));return this}function dispatchEvent(e,n,t){var o=defaultView(e),a=o.CustomEvent;typeof a=="function"?a=new a(n,t):(a=o.document.createEvent("Event"),t?(a.initEvent(n,t.bubbles,t.cancelable),a.detail=t.detail):a.initEvent(n,!1,!1)),e.dispatchEvent(a)}function dispatchConstant(e,n){return function(){return dispatchEvent(this,e,n)}}function dispatchFunction(e,n){return function(){return dispatchEvent(this,e,n.apply(this,arguments))}}function selection_dispatch(e,n){return this.each((typeof n=="function"?dispatchFunction:dispatchConstant)(e,n))}function*selection_iterator(){for(var e=this._groups,n=0,t=e.length;n<t;++n)for(var o=e[n],a=0,r=o.length,s;a<r;++a)(s=o[a])&&(yield s)}var root=[null];function Selection(e,n){this._groups=e,this._parents=n}function selection_selection(){return this}Selection.prototype={constructor:Selection,select:selection_select,selectAll:selection_selectAll,selectChild:selection_selectChild,selectChildren:selection_selectChildren,filter:selection_filter,data:selection_data,enter:selection_enter,exit:selection_exit,join:selection_join,merge:selection_merge,selection:selection_selection,order:selection_order,sort:selection_sort,call:selection_call,nodes:selection_nodes,node:selection_node,size:selection_size,empty:selection_empty,each:selection_each,attr:selection_attr,style:selection_style,property:selection_property,classed:selection_classed,text:selection_text,html:selection_html,raise:selection_raise,lower:selection_lower,append:selection_append,insert:selection_insert,remove:selection_remove,clone:selection_clone,datum:selection_datum,on:selection_on,dispatch:selection_dispatch,[Symbol.iterator]:selection_iterator};function select(e){return typeof e=="string"?new Selection([[document.querySelector(e)]],[document.documentElement]):new Selection([[e]],root)}function sourceEvent(e){let n;for(;n=e.sourceEvent;)e=n;return e}function pointer(e,n){if(e=sourceEvent(e),n===void 0&&(n=e.currentTarget),n){var t=n.ownerSVGElement||n;if(t.createSVGPoint){var o=t.createSVGPoint();return o.x=e.clientX,o.y=e.clientY,o=o.matrixTransform(n.getScreenCTM().inverse()),[o.x,o.y]}if(n.getBoundingClientRect){var a=n.getBoundingClientRect();return[e.clientX-a.left-n.clientLeft,e.clientY-a.top-n.clientTop]}}return[e.pageX,e.pageY]}function identity(e){return e}var top=1,right=2,bottom=3,left=4,epsilon=1e-6;function translateX(e){return"translate("+e+",0)"}function translateY(e){return"translate(0,"+e+")"}function number(e){return n=>+e(n)}function center(e,n){return n=Math.max(0,e.bandwidth()-n*2)/2,e.round()&&(n=Math.round(n)),t=>+e(t)+n}function entering(){return!this.__axis}function axis(e,n){var t=[],o=null,a=null,r=6,s=6,i=3,l=typeof window<"u"&&window.devicePixelRatio>1?0:.5,u=e===top||e===left?-1:1,c=e===left||e===right?"x":"y",d=e===top||e===bottom?translateX:translateY;function v(m){var f=o??(n.ticks?n.ticks.apply(n,t):n.domain()),p=a??(n.tickFormat?n.tickFormat.apply(n,t):identity),g=Math.max(r,0)+i,_=n.range(),h=+_[0]+l,b=+_[_.length-1]+l,V=(n.bandwidth?center:number)(n.copy(),l),S=m.selection?m.selection():m,$=S.selectAll(".domain").data([null]),w=S.selectAll(".tick").data(f,n).order(),k=w.exit(),P=w.enter().append("g").attr("class","tick"),O=w.select("line"),B=w.select("text");$=$.merge($.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),w=w.merge(P),O=O.merge(P.append("line").attr("stroke","currentColor").attr(c+"2",u*r)),B=B.merge(P.append("text").attr("fill","currentColor").attr(c,u*g).attr("dy",e===top?"0em":e===bottom?"0.71em":"0.32em")),m!==S&&($=$.transition(m),w=w.transition(m),O=O.transition(m),B=B.transition(m),k=k.transition(m).attr("opacity",epsilon).attr("transform",function(T){return isFinite(T=V(T))?d(T+l):this.getAttribute("transform")}),P.attr("opacity",epsilon).attr("transform",function(T){var L=this.parentNode.__axis;return d((L&&isFinite(L=L(T))?L:V(T))+l)})),k.remove(),$.attr("d",e===left||e===right?s?"M"+u*s+","+h+"H"+l+"V"+b+"H"+u*s:"M"+l+","+h+"V"+b:s?"M"+h+","+u*s+"V"+l+"H"+b+"V"+u*s:"M"+h+","+l+"H"+b),w.attr("opacity",1).attr("transform",function(T){return d(V(T)+l)}),O.attr(c+"2",u*r),B.attr(c,u*g).text(p),S.filter(entering).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",e===right?"start":e===left?"end":"middle"),S.each(function(){this.__axis=V})}return v.scale=function(m){return arguments.length?(n=m,v):n},v.ticks=function(){return t=Array.from(arguments),v},v.tickArguments=function(m){return arguments.length?(t=m==null?[]:Array.from(m),v):t.slice()},v.tickValues=function(m){return arguments.length?(o=m==null?null:Array.from(m),v):o&&o.slice()},v.tickFormat=function(m){return arguments.length?(a=m,v):a},v.tickSize=function(m){return arguments.length?(r=s=+m,v):r},v.tickSizeInner=function(m){return arguments.length?(r=+m,v):r},v.tickSizeOuter=function(m){return arguments.length?(s=+m,v):s},v.tickPadding=function(m){return arguments.length?(i=+m,v):i},v.offset=function(m){return arguments.length?(l=+m,v):l},v}function axisBottom(e){return axis(bottom,e)}function axisLeft(e){return axis(left,e)}var useChart=()=>vue.inject("chart"),usePoints=(e,n={stacked:!1,type:"line"})=>{const t=vue.ref([]),o=useChart(),{stacked:a,type:r}=n;function s(l,u){const{primary:c,secondary:d}=o.scales;return o.config.direction==="horizontal"?u.map(m=>({x:c.mapOne(m.data[l]),y:d.mapOne(m[1]),props:{values:[...m],data:m.data}})).filter(m=>!isNaN(m.x)&&!isNaN(m.y)):o.config.direction==="vertical"?u.map(v=>({x:d.mapOne(v[1]),y:c.mapOne(v.data[l]),props:{values:[...v],data:v.data}})).filter(v=>!isNaN(v.x)&&!isNaN(v.y)):[]}function i(){const l=o.getStackedKeys(1,r),[u,c]=e,v=o.getStackedData(a?l:[e[1]]).find(m=>m.key===c);v&&(t.value=s(u,v))}return vue.watch(o.updates,()=>{i()},{immediate:!0}),{points:t}},useMouse=()=>vue.inject("chartMouse",{index:-1,position:{x:0,y:0},hover:!1}),useBars=(e,n={maxWidth:-1,gap:5,stacked:!1,type:"bar"})=>{const t=vue.ref([]),o=useChart(),{stacked:a,type:r,gap:s}=n;function i(){const{primary:m,secondary:f}=o.scales,p=m.type==="band"?m:f,g=m.type==="band"?f:m;return{bandScale:p,linearScale:g}}function l(){if(a)return 0;const f=o.getLayers(r).findIndex(p=>p.dataKeys.join(",")===e.join(","));return f>-1?f:0}function u(){const{bandScale:m}=i(),f=n.maxWidth>-1?Math.min(m.bandwidth()-s,n.maxWidth):m.bandwidth()-s,p=o.getLayers(r);return p.length>0&&!a?f/p.length:f}function c(){if(a)return 0;const{bandScale:m}=i(),f=m.bandwidth()-s,p=o.getLayers(r).length*u();return(f-p)/2}function d(m,f){const{bandScale:p,linearScale:g}=i(),_=l(),h=u(),b=c();return f.map(V=>{const S={x:0,y:0,width:0,height:0,props:{values:[...V],data:V.data}},$=p.scale(V.data[m]),[w,k]=g.map(V);return o.config.direction==="horizontal"?(S.y=Math.min(w,k),S.height=Math.abs(w-k),S.x=b+$+_*h+s/2,S.width=h):o.config.direction==="vertical"&&(S.x=Math.min(w,k),S.width=Math.abs(w-k),S.y=b+$+_*h+s/2,S.height=h),S})}function v(){const m=a?o.getStackedKeys(1,r):[e[1]],[f,p]=e,_=o.getStackedData(m).find(h=>h.key===p);_&&(t.value=d(f,_))}return vue.watch(o.updates,()=>{v()}),{bars:t}},useTooltip=()=>{const e=useMouse(),n=useChart(),t=vue.computed(()=>e.hover),o=vue.ref({x:0,y:0}),a=vue.ref({});return vue.watch(e,()=>{const{primary:r}=n.scales,s=n.getKeys(0),i=n.getData(s),[l]=r.map([i[e.index]]);l&&(n.config.direction==="horizontal"?o.value={x:l,y:e.position.y}:n.config.direction==="vertical"?o.value={x:e.position.x,y:l}:o.value={x:e.position.x,y:e.position.y});const u=n.data[e.index];u&&(a.value=Object.assign(Object.assign({},u),{idx:e.index}))}),{position:o,payload:a,show:t}},useResize=e=>{const n=vue.ref(0),t=vue.ref(0);let o=null,a=null;function r(i,l){n.value=i,t.value=l,a&&a()}function s(i){a=i}return vue.onMounted(()=>{o=new window.ResizeObserver(i=>{const l=i[0].contentRect.width,u=i[0].contentRect.height;r(l,u)}),o.observe(e.value)}),vue.onUnmounted(()=>{o.disconnect()}),{width:n,height:t,onResize:s}},script$d=vue.defineComponent({name:"Axis",props:{position:{type:String,default:"bottom"},rotate:{type:Boolean,default:!1},isPrimary:{type:Boolean,default:!1}},setup(e){const n=vue.ref(),t=useChart(),o=vue.computed(()=>e.position==="bottom"?axisBottom:axisLeft),a=vue.ref(t.canvas),r={ticks:5};function s(){if(t.data.length>0){const{primary:i,secondary:l}=t.scales,u=e.isPrimary?i:l,c=Object.assign({},e.isPrimary?i.config:l.config,r),d=o.value(u.scale);c.format&&d.tickFormat(c.format),c.ticks!==void 0&&d.ticks(c.ticks),c.tickValues!==void 0&&d.tickValues(c.tickValues),c.useConfig&&c.useConfig(d);const v=select(n.value).call(d);return e.position==="bottom"&&e.rotate&&v.selectAll("text").attr("y",0).attr("x",9).attr("dy",".35em").attr("transform","rotate(90)").style("text-anchor","start"),d}return null}return vue.watch(()=>e.isPrimary,()=>{s()}),vue.watch(t.updates,()=>{a.value=t.canvas,s()}),{el:n,canvas:a}}});const _hoisted_1$b$1=["transform"],_hoisted_2$8$1=["transform"];function render$d(e,n,t,o,a,r){return e.position==="bottom"?(vue.openBlock(),vue.createElementBlock("g",{key:0,class:vue.normalizeClass("layer-axis-x"),ref:"el",transform:`translate(0, ${e.canvas.height})`},null,8,_hoisted_1$b$1)):(vue.openBlock(),vue.createElementBlock("g",{key:1,class:vue.normalizeClass("layer-axis-y"),ref:"el",transform:`translate(${e.canvas.x}, 0)`},null,8,_hoisted_2$8$1))}script$d.render=render$d;script$d.__file="src/components/Axis/index.vue";var script$c=vue.defineComponent({name:"Chart",components:{Axis:script$d},props:{data:{type:Array,default:()=>[]},margin:{type:Object,default:()=>({top:0,right:0,bottom:0,left:0}),required:!1},size:{type:Object,default:()=>({width:500,height:400}),required:!1},direction:{type:String,default:"horizontal",required:!1},axis:{type:Object,required:!1},config:{type:Object,default:()=>({})}},setup(e){const n=vue.ref(null),t=vue.ref(),o=vue.ref(),a=vue.reactive({x:40,y:20}),r=new Chart(e.data,e.config),s=vue.computed(()=>e.axis&&e.axis.primary&&e.axis.primary.rotate),i=vue.computed(()=>e.axis&&e.axis.primary&&e.axis.primary.hide),l=vue.computed(()=>e.axis&&e.axis.secondary&&e.axis.secondary.hide),u=vue.reactive({index:-1,position:{x:0,y:0},hover:!1});vue.provide("chart",r),vue.provide("chartMouse",u),vue.watch(()=>e.data,()=>{r&&r.changeData(e.data)},{immediate:!0}),vue.watch(()=>e.config,()=>{r&&r.changeConfig(e.config)}),vue.watch(()=>[Object.assign({},a),e.direction,e.size,e.margin,e.axis],()=>{r&&r.changeConfig({axisSpace:Object.assign({},a),direction:e.direction,size:e.size,margin:e.margin,axis:e.axis})},{immediate:!0});const c=new ResizeObserver(m=>{for(const f of m)o.value&&f.target===o.value.$el?a.y=f.contentRect.height:t.value&&f.target===t.value.$el&&(a.x=f.contentRect.width)});vue.onMounted(()=>{o.value&&c.observe(o.value.$el),t.value&&c.observe(t.value.$el)}),vue.onUnmounted(()=>{c.disconnect()});function d(){e.config.controlHover!==!1&&(u.index=-1,u.hover=!1)}function v(m){if(e.config.controlHover===!1)return;u.hover=!0,u.position={x:pointer(m)[0],y:pointer(m)[1]};const{primary:f}=r.scales,p=r.getKeys(0),g=r.getData(p);if(r.config.direction==="horizontal")if(f.type==="band"){const _=f.bandwidth(),h=u.position.x-r.canvas.x;u.index=Math.round((h+_/2)/_)-1}else u.index=bisectCenter(g,f.scale.invert(u.position.x));else if(r.config.direction==="vertical")if(f.type==="band"){const _=f.bandwidth(),h=u.position.y-r.canvas.y;u.index=Math.round((h+_/2)/_)-1}else u.index=bisectCenter(g,f.scale.invert(u.position.y))}return{axBottomEl:o,axLeftEl:t,chartEl:n,hideX:i,hideY:l,rotateX:s,onMouseMove:v,onMouseOut:d}}});const _hoisted_1$a$1={class:"chart",ref:"chartEl"},_hoisted_2$7$1=["width","height","viewBox"],_hoisted_3$6$1={class:"layers"},_hoisted_4$3$1={class:"axis"},_hoisted_5$3$1={class:"widgets"};function render$c(e,n,t,o,a,r){const s=vue.resolveComponent("axis");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$a$1,[(vue.openBlock(),vue.createElementBlock("svg",{width:e.size.width,height:e.size.height,viewBox:`0 0 ${e.size.width} ${e.size.height}`,onPointermove:n[0]||(n[0]=(...i)=>e.onMouseMove&&e.onMouseMove(...i)),onPointerleave:n[1]||(n[1]=(...i)=>e.onMouseOut&&e.onMouseOut(...i))},[vue.createElementVNode("g",_hoisted_3$6$1,[vue.renderSlot(e.$slots,"layers")]),vue.createElementVNode("g",_hoisted_4$3$1,[e.hideX?vue.createCommentVNode("v-if",!0):(vue.openBlock(),vue.createBlock(s,{key:0,position:"bottom",ref:"axBottomEl",rotate:e.rotateX,isPrimary:e.direction==="horizontal"},null,8,["rotate","isPrimary"])),e.hideY?vue.createCommentVNode("v-if",!0):(vue.openBlock(),vue.createBlock(s,{key:1,position:"left",ref:"axLeftEl",isPrimary:e.direction==="vertical"},null,8,["isPrimary"]))])],40,_hoisted_2$7$1)),vue.createElementVNode("div",_hoisted_5$3$1,[vue.renderSlot(e.$slots,"widgets")])],512)}function styleInject(e,n){n===void 0&&(n={});var t=n.insertAt;if(!(!e||typeof document>"u")){var o=document.head||document.getElementsByTagName("head")[0],a=document.createElement("style");a.type="text/css",t==="top"&&o.firstChild?o.insertBefore(a,o.firstChild):o.appendChild(a),a.styleSheet?a.styleSheet.cssText=e:a.appendChild(document.createTextNode(e))}}var css_248z$1=`
|
|
103
|
+
`);return[yMin,yMax]}}class Scales{constructor(n){this.config=n,this.primary=new Scale(n.primary),this.secondary=new Scale(n.secondary)}changeConfig(n){this.config=n,this.primary.changeConfig(n.primary),this.secondary.changeConfig(n.secondary)}updateRange(n,t){t==="horizontal"?(this.primary.updateRange([n.x,n.width]),this.secondary.updateRange([n.height,n.y])):t==="vertical"&&(this.primary.updateRange([n.y,n.height]),this.secondary.updateRange([n.x,n.width]))}updateDomain(n,t,o){this.primary.updateDomain(n,t,getCol(0,o)),this.secondary.updateDomain(n,t,getCol(1,o))}}function constant$2(e){return function(){return e}}const abs=Math.abs,atan2=Math.atan2,cos=Math.cos,max=Math.max,min=Math.min,sin=Math.sin,sqrt=Math.sqrt,epsilon$2=1e-12,pi$1=Math.PI,halfPi=pi$1/2,tau$1=2*pi$1;function acos(e){return e>1?0:e<-1?pi$1:Math.acos(e)}function asin(e){return e>=1?halfPi:e<=-1?-halfPi:Math.asin(e)}const pi=Math.PI,tau=2*pi,epsilon$1=1e-6,tauEpsilon=tau-epsilon$1;function append(e){this._+=e[0];for(let n=1,t=e.length;n<t;++n)this._+=arguments[n]+e[n]}function appendRound(e){let n=Math.floor(e);if(!(n>=0))throw new Error(`invalid digits: ${e}`);if(n>15)return append;const t=10**n;return function(o){this._+=o[0];for(let r=1,a=o.length;r<a;++r)this._+=Math.round(arguments[r]*t)/t+o[r]}}class Path{constructor(n){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=n==null?append:appendRound(n)}moveTo(n,t){this._append`M${this._x0=this._x1=+n},${this._y0=this._y1=+t}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(n,t){this._append`L${this._x1=+n},${this._y1=+t}`}quadraticCurveTo(n,t,o,r){this._append`Q${+n},${+t},${this._x1=+o},${this._y1=+r}`}bezierCurveTo(n,t,o,r,a,s){this._append`C${+n},${+t},${+o},${+r},${this._x1=+a},${this._y1=+s}`}arcTo(n,t,o,r,a){if(n=+n,t=+t,o=+o,r=+r,a=+a,a<0)throw new Error(`negative radius: ${a}`);let s=this._x1,i=this._y1,l=o-n,u=r-t,c=s-n,d=i-t,v=c*c+d*d;if(this._x1===null)this._append`M${this._x1=n},${this._y1=t}`;else if(v>epsilon$1)if(!(Math.abs(d*l-u*c)>epsilon$1)||!a)this._append`L${this._x1=n},${this._y1=t}`;else{let m=o-s,f=r-i,p=l*l+u*u,g=m*m+f*f,_=Math.sqrt(p),h=Math.sqrt(v),b=a*Math.tan((pi-Math.acos((p+v-g)/(2*_*h)))/2),V=b/h,S=b/_;Math.abs(V-1)>epsilon$1&&this._append`L${n+V*c},${t+V*d}`,this._append`A${a},${a},0,0,${+(d*m>c*f)},${this._x1=n+S*l},${this._y1=t+S*u}`}}arc(n,t,o,r,a,s){if(n=+n,t=+t,o=+o,s=!!s,o<0)throw new Error(`negative radius: ${o}`);let i=o*Math.cos(r),l=o*Math.sin(r),u=n+i,c=t+l,d=1^s,v=s?r-a:a-r;this._x1===null?this._append`M${u},${c}`:(Math.abs(this._x1-u)>epsilon$1||Math.abs(this._y1-c)>epsilon$1)&&this._append`L${u},${c}`,o&&(v<0&&(v=v%tau+tau),v>tauEpsilon?this._append`A${o},${o},0,1,${d},${n-i},${t-l}A${o},${o},0,1,${d},${this._x1=u},${this._y1=c}`:v>epsilon$1&&this._append`A${o},${o},0,${+(v>=pi)},${d},${this._x1=n+o*Math.cos(a)},${this._y1=t+o*Math.sin(a)}`)}rect(n,t,o,r){this._append`M${this._x0=this._x1=+n},${this._y0=this._y1=+t}h${o=+o}v${+r}h${-o}Z`}toString(){return this._}}function withPath(e){let n=3;return e.digits=function(t){if(!arguments.length)return n;if(t==null)n=null;else{const o=Math.floor(t);if(!(o>=0))throw new RangeError(`invalid digits: ${t}`);n=o}return e},()=>new Path(n)}function arcInnerRadius(e){return e.innerRadius}function arcOuterRadius(e){return e.outerRadius}function arcStartAngle(e){return e.startAngle}function arcEndAngle(e){return e.endAngle}function arcPadAngle(e){return e&&e.padAngle}function intersect(e,n,t,o,r,a,s,i){var l=t-e,u=o-n,c=s-r,d=i-a,v=d*l-c*u;if(!(v*v<epsilon$2))return v=(c*(n-a)-d*(e-r))/v,[e+v*l,n+v*u]}function cornerTangents(e,n,t,o,r,a,s){var i=e-t,l=n-o,u=(s?a:-a)/sqrt(i*i+l*l),c=u*l,d=-u*i,v=e+c,m=n+d,f=t+c,p=o+d,g=(v+f)/2,_=(m+p)/2,h=f-v,b=p-m,V=h*h+b*b,S=r-a,$=v*p-f*m,w=(b<0?-1:1)*sqrt(max(0,S*S*V-$*$)),k=($*b-h*w)/V,P=(-$*h-b*w)/V,O=($*b+h*w)/V,B=(-$*h+b*w)/V,T=k-g,L=P-_,E=O-g,z=B-_;return T*T+L*L>E*E+z*z&&(k=O,P=B),{cx:k,cy:P,x01:-c,y01:-d,x11:k*(r/S-1),y11:P*(r/S-1)}}function arc(){var e=arcInnerRadius,n=arcOuterRadius,t=constant$2(0),o=null,r=arcStartAngle,a=arcEndAngle,s=arcPadAngle,i=null,l=withPath(u);function u(){var c,d,v=+e.apply(this,arguments),m=+n.apply(this,arguments),f=r.apply(this,arguments)-halfPi,p=a.apply(this,arguments)-halfPi,g=abs(p-f),_=p>f;if(i||(i=c=l()),m<v&&(d=m,m=v,v=d),!(m>epsilon$2))i.moveTo(0,0);else if(g>tau$1-epsilon$2)i.moveTo(m*cos(f),m*sin(f)),i.arc(0,0,m,f,p,!_),v>epsilon$2&&(i.moveTo(v*cos(p),v*sin(p)),i.arc(0,0,v,p,f,_));else{var h=f,b=p,V=f,S=p,$=g,w=g,k=s.apply(this,arguments)/2,P=k>epsilon$2&&(o?+o.apply(this,arguments):sqrt(v*v+m*m)),O=min(abs(m-v)/2,+t.apply(this,arguments)),B=O,T=O,L,E;if(P>epsilon$2){var z=asin(P/v*sin(k)),F=asin(P/m*sin(k));($-=z*2)>epsilon$2?(z*=_?1:-1,V+=z,S-=z):($=0,V=S=(f+p)/2),(w-=F*2)>epsilon$2?(F*=_?1:-1,h+=F,b-=F):(w=0,h=b=(f+p)/2)}var A=m*cos(h),C=m*sin(h),D=v*cos(S),R=v*sin(S);if(O>epsilon$2){var G=m*cos(b),U=m*sin(b),Y=v*cos(V),X=v*sin(V),W;if(g<pi$1)if(W=intersect(A,C,Y,X,G,U,D,R)){var Z=A-W[0],te=C-W[1],ee=G-W[0],oe=U-W[1],ae=1/sin(acos((Z*ee+te*oe)/(sqrt(Z*Z+te*te)*sqrt(ee*ee+oe*oe)))/2),ie=sqrt(W[0]*W[0]+W[1]*W[1]);B=min(O,(v-ie)/(ae-1)),T=min(O,(m-ie)/(ae+1))}else B=T=0}w>epsilon$2?T>epsilon$2?(L=cornerTangents(Y,X,A,C,m,T,_),E=cornerTangents(G,U,D,R,m,T,_),i.moveTo(L.cx+L.x01,L.cy+L.y01),T<O?i.arc(L.cx,L.cy,T,atan2(L.y01,L.x01),atan2(E.y01,E.x01),!_):(i.arc(L.cx,L.cy,T,atan2(L.y01,L.x01),atan2(L.y11,L.x11),!_),i.arc(0,0,m,atan2(L.cy+L.y11,L.cx+L.x11),atan2(E.cy+E.y11,E.cx+E.x11),!_),i.arc(E.cx,E.cy,T,atan2(E.y11,E.x11),atan2(E.y01,E.x01),!_))):(i.moveTo(A,C),i.arc(0,0,m,h,b,!_)):i.moveTo(A,C),!(v>epsilon$2)||!($>epsilon$2)?i.lineTo(D,R):B>epsilon$2?(L=cornerTangents(D,R,G,U,v,-B,_),E=cornerTangents(A,C,Y,X,v,-B,_),i.lineTo(L.cx+L.x01,L.cy+L.y01),B<O?i.arc(L.cx,L.cy,B,atan2(L.y01,L.x01),atan2(E.y01,E.x01),!_):(i.arc(L.cx,L.cy,B,atan2(L.y01,L.x01),atan2(L.y11,L.x11),!_),i.arc(0,0,v,atan2(L.cy+L.y11,L.cx+L.x11),atan2(E.cy+E.y11,E.cx+E.x11),_),i.arc(E.cx,E.cy,B,atan2(E.y11,E.x11),atan2(E.y01,E.x01),!_))):i.arc(0,0,v,S,V,_)}if(i.closePath(),c)return i=null,c+""||null}return u.centroid=function(){var c=(+e.apply(this,arguments)+ +n.apply(this,arguments))/2,d=(+r.apply(this,arguments)+ +a.apply(this,arguments))/2-pi$1/2;return[cos(d)*c,sin(d)*c]},u.innerRadius=function(c){return arguments.length?(e=typeof c=="function"?c:constant$2(+c),u):e},u.outerRadius=function(c){return arguments.length?(n=typeof c=="function"?c:constant$2(+c),u):n},u.cornerRadius=function(c){return arguments.length?(t=typeof c=="function"?c:constant$2(+c),u):t},u.padRadius=function(c){return arguments.length?(o=c==null?null:typeof c=="function"?c:constant$2(+c),u):o},u.startAngle=function(c){return arguments.length?(r=typeof c=="function"?c:constant$2(+c),u):r},u.endAngle=function(c){return arguments.length?(a=typeof c=="function"?c:constant$2(+c),u):a},u.padAngle=function(c){return arguments.length?(s=typeof c=="function"?c:constant$2(+c),u):s},u.context=function(c){return arguments.length?(i=c??null,u):i},u}function array$1(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function Linear(e){this._context=e}Linear.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,n){switch(e=+e,n=+n,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,n):this._context.moveTo(e,n);break;case 1:this._point=2;default:this._context.lineTo(e,n);break}}};function curveLinear(e){return new Linear(e)}function x(e){return e[0]}function y(e){return e[1]}function line(e,n){var t=constant$2(!0),o=null,r=curveLinear,a=null,s=withPath(i);e=typeof e=="function"?e:e===void 0?x:constant$2(e),n=typeof n=="function"?n:n===void 0?y:constant$2(n);function i(l){var u,c=(l=array$1(l)).length,d,v=!1,m;for(o==null&&(a=r(m=s())),u=0;u<=c;++u)!(u<c&&t(d=l[u],u,l))===v&&((v=!v)?a.lineStart():a.lineEnd()),v&&a.point(+e(d,u,l),+n(d,u,l));if(m)return a=null,m+""||null}return i.x=function(l){return arguments.length?(e=typeof l=="function"?l:constant$2(+l),i):e},i.y=function(l){return arguments.length?(n=typeof l=="function"?l:constant$2(+l),i):n},i.defined=function(l){return arguments.length?(t=typeof l=="function"?l:constant$2(!!l),i):t},i.curve=function(l){return arguments.length?(r=l,o!=null&&(a=r(o)),i):r},i.context=function(l){return arguments.length?(l==null?o=a=null:a=r(o=l),i):o},i}function area(e,n,t){var o=null,r=constant$2(!0),a=null,s=curveLinear,i=null,l=withPath(u);e=typeof e=="function"?e:e===void 0?x:constant$2(+e),n=typeof n=="function"?n:constant$2(n===void 0?0:+n),t=typeof t=="function"?t:t===void 0?y:constant$2(+t);function u(d){var v,m,f,p=(d=array$1(d)).length,g,_=!1,h,b=new Array(p),V=new Array(p);for(a==null&&(i=s(h=l())),v=0;v<=p;++v){if(!(v<p&&r(g=d[v],v,d))===_)if(_=!_)m=v,i.areaStart(),i.lineStart();else{for(i.lineEnd(),i.lineStart(),f=v-1;f>=m;--f)i.point(b[f],V[f]);i.lineEnd(),i.areaEnd()}_&&(b[v]=+e(g,v,d),V[v]=+n(g,v,d),i.point(o?+o(g,v,d):b[v],t?+t(g,v,d):V[v]))}if(h)return i=null,h+""||null}function c(){return line().defined(r).curve(s).context(a)}return u.x=function(d){return arguments.length?(e=typeof d=="function"?d:constant$2(+d),o=null,u):e},u.x0=function(d){return arguments.length?(e=typeof d=="function"?d:constant$2(+d),u):e},u.x1=function(d){return arguments.length?(o=d==null?null:typeof d=="function"?d:constant$2(+d),u):o},u.y=function(d){return arguments.length?(n=typeof d=="function"?d:constant$2(+d),t=null,u):n},u.y0=function(d){return arguments.length?(n=typeof d=="function"?d:constant$2(+d),u):n},u.y1=function(d){return arguments.length?(t=d==null?null:typeof d=="function"?d:constant$2(+d),u):t},u.lineX0=u.lineY0=function(){return c().x(e).y(n)},u.lineY1=function(){return c().x(e).y(t)},u.lineX1=function(){return c().x(o).y(n)},u.defined=function(d){return arguments.length?(r=typeof d=="function"?d:constant$2(!!d),u):r},u.curve=function(d){return arguments.length?(s=d,a!=null&&(i=s(a)),u):s},u.context=function(d){return arguments.length?(d==null?a=i=null:i=s(a=d),u):a},u}function descending(e,n){return n<e?-1:n>e?1:n>=e?0:NaN}function identity$1(e){return e}function pie(){var e=identity$1,n=descending,t=null,o=constant$2(0),r=constant$2(tau$1),a=constant$2(0);function s(i){var l,u=(i=array$1(i)).length,c,d,v=0,m=new Array(u),f=new Array(u),p=+o.apply(this,arguments),g=Math.min(tau$1,Math.max(-tau$1,r.apply(this,arguments)-p)),_,h=Math.min(Math.abs(g)/u,a.apply(this,arguments)),b=h*(g<0?-1:1),V;for(l=0;l<u;++l)(V=f[m[l]=l]=+e(i[l],l,i))>0&&(v+=V);for(n!=null?m.sort(function(S,$){return n(f[S],f[$])}):t!=null&&m.sort(function(S,$){return t(i[S],i[$])}),l=0,d=v?(g-u*b)/v:0;l<u;++l,p=_)c=m[l],V=f[c],_=p+(V>0?V*d:0)+b,f[c]={data:i[c],index:l,value:V,startAngle:p,endAngle:_,padAngle:h};return f}return s.value=function(i){return arguments.length?(e=typeof i=="function"?i:constant$2(+i),s):e},s.sortValues=function(i){return arguments.length?(n=i,t=null,s):n},s.sort=function(i){return arguments.length?(t=i,n=null,s):t},s.startAngle=function(i){return arguments.length?(o=typeof i=="function"?i:constant$2(+i),s):o},s.endAngle=function(i){return arguments.length?(r=typeof i=="function"?i:constant$2(+i),s):r},s.padAngle=function(i){return arguments.length?(a=typeof i=="function"?i:constant$2(+i),s):a},s}function sign(e){return e<0?-1:1}function slope3(e,n,t){var o=e._x1-e._x0,r=n-e._x1,a=(e._y1-e._y0)/(o||r<0&&-0),s=(t-e._y1)/(r||o<0&&-0),i=(a*r+s*o)/(o+r);return(sign(a)+sign(s))*Math.min(Math.abs(a),Math.abs(s),.5*Math.abs(i))||0}function slope2(e,n){var t=e._x1-e._x0;return t?(3*(e._y1-e._y0)/t-n)/2:n}function point(e,n,t){var o=e._x0,r=e._y0,a=e._x1,s=e._y1,i=(a-o)/3;e._context.bezierCurveTo(o+i,r+i*n,a-i,s-i*t,a,s)}function MonotoneX(e){this._context=e}MonotoneX.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:point(this,this._t0,slope2(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,n){var t=NaN;if(e=+e,n=+n,!(e===this._x1&&n===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,n):this._context.moveTo(e,n);break;case 1:this._point=2;break;case 2:this._point=3,point(this,slope2(this,t=slope3(this,e,n)),t);break;default:point(this,this._t0,t=slope3(this,e,n));break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=n,this._t0=t}}};function MonotoneY(e){this._context=new ReflectContext(e)}(MonotoneY.prototype=Object.create(MonotoneX.prototype)).point=function(e,n){MonotoneX.prototype.point.call(this,n,e)};function ReflectContext(e){this._context=e}ReflectContext.prototype={moveTo:function(e,n){this._context.moveTo(n,e)},closePath:function(){this._context.closePath()},lineTo:function(e,n){this._context.lineTo(n,e)},bezierCurveTo:function(e,n,t,o,r,a){this._context.bezierCurveTo(n,e,o,t,a,r)}};function monotoneX(e){return new MonotoneX(e)}function monotoneY(e){return new MonotoneY(e)}function Natural(e){this._context=e}Natural.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var e=this._x,n=this._y,t=e.length;if(t)if(this._line?this._context.lineTo(e[0],n[0]):this._context.moveTo(e[0],n[0]),t===2)this._context.lineTo(e[1],n[1]);else for(var o=controlPoints(e),r=controlPoints(n),a=0,s=1;s<t;++a,++s)this._context.bezierCurveTo(o[0][a],r[0][a],o[1][a],r[1][a],e[s],n[s]);(this._line||this._line!==0&&t===1)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},point:function(e,n){this._x.push(+e),this._y.push(+n)}};function controlPoints(e){var n,t=e.length-1,o,r=new Array(t),a=new Array(t),s=new Array(t);for(r[0]=0,a[0]=2,s[0]=e[0]+2*e[1],n=1;n<t-1;++n)r[n]=1,a[n]=4,s[n]=4*e[n]+2*e[n+1];for(r[t-1]=2,a[t-1]=7,s[t-1]=8*e[t-1]+e[t],n=1;n<t;++n)o=r[n]/a[n-1],a[n]-=o,s[n]-=o*s[n-1];for(r[t-1]=s[t-1]/a[t-1],n=t-2;n>=0;--n)r[n]=(s[n]-r[n+1])/a[n];for(a[t-1]=(e[t]+r[t-1])/2,n=0;n<t-1;++n)a[n]=2*e[n+1]-r[n+1];return[r,a]}function curveNatural(e){return new Natural(e)}function Step(e,n){this._context=e,this._t=n}Step.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0<this._t&&this._t<1&&this._point===2&&this._context.lineTo(this._x,this._y),(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line>=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,n){switch(e=+e,n=+n,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,n):this._context.moveTo(e,n);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,n),this._context.lineTo(e,n);else{var t=this._x*(1-this._t)+e*this._t;this._context.lineTo(t,this._y),this._context.lineTo(t,n)}break}}this._x=e,this._y=n}};function curveStep(e){return new Step(e,.5)}function stepAfter(e){return new Step(e,1)}function none$1(e,n){if((s=e.length)>1)for(var t=1,o,r,a=e[n[0]],s,i=a.length;t<s;++t)for(r=a,a=e[n[t]],o=0;o<i;++o)a[o][1]+=a[o][0]=isNaN(r[o][1])?r[o][0]:r[o][1]}function stackOrderNone(e){for(var n=e.length,t=new Array(n);--n>=0;)t[n]=n;return t}function stackValue(e,n){return e[n]}function stackSeries(e){const n=[];return n.key=e,n}function stack(){var e=constant$2([]),n=stackOrderNone,t=none$1,o=stackValue;function r(a){var s=Array.from(e.apply(this,arguments),stackSeries),i,l=s.length,u=-1,c;for(const d of a)for(i=0,++u;i<l;++i)(s[i][u]=[0,+o(d,s[i].key,u,a)]).data=d;for(i=0,c=array$1(n(s));i<l;++i)s[c[i]].index=i;return t(s,c),s}return r.keys=function(a){return arguments.length?(e=typeof a=="function"?a:constant$2(Array.from(a)),r):e},r.value=function(a){return arguments.length?(o=typeof a=="function"?a:constant$2(+a),r):o},r.order=function(a){return arguments.length?(n=a==null?stackOrderNone:typeof a=="function"?a:constant$2(Array.from(a)),r):n},r.offset=function(a){return arguments.length?(t=a??none$1,r):t},r}const defaultConfig={size:{width:500,height:400},margin:{top:0,right:0,bottom:0,left:0},direction:"horizontal",axis:{primary:{domain:["dataMin","dataMax"],type:"band"},secondary:{domain:["dataMin","dataMax"],type:"linear"}},axisSpace:{x:40,y:20}};class Chart{constructor(n,t){this.data=n,this.layers=[],this.config=mergeDeepLeft$1(pickBy$1(o=>o!==void 0,t),defaultConfig),this.scales=new Scales(this.config.axis),this.updates=vue.ref(0)}get bandScale(){return this.scales.primary.type==="band"?this.scales.primary:this.scales.secondary.type==="band"?this.scales.secondary:null}get canvas(){const{margin:n,size:t}=this.config,o=this.config.axisSpace;return this.config.axis.primary.hide&&(o.y=0),this.config.axis.secondary.hide&&(o.x=0),{x:n.left+o.x,y:n.top,width:t.width-n.right,height:t.height-n.bottom-o.y}}getStackedData(n){return stack().keys(n).order(stackOrderNone)(this.data)}changeData(n){this.data=n,this.update("data")}changeConfig(n){this.config=mergeDeepLeft$1(pickBy$1(t=>t!==void 0,n),this.config),this.scales.changeConfig(this.config.axis),this.update("config")}addLayer(n){this.layers.push(n),this.update("layers")}removeLayer(n){this.layers=this.layers.filter(t=>t.id!==n),this.update("layers")}getLayers(n){return n?this.layers.filter(t=>t.type===n):this.layers}getData(n){return n.reduce((t,o)=>t.concat(getCol(o,this.data)),[])}getKeys(n=-1,t=null){const o=this.layers.filter(r=>t?r.type===t:!0).map(r=>r.dataKeys);return n===-1?o:getCol(n,o)}getStackedKeys(n=-1,t=null){const o=this.layers.filter(r=>t?r.type===t&&r.props.stacked:r.props.stacked).map(r=>r.dataKeys);return n===-1?o:getCol(n,o)}update(n){const t=this.getStackedData(this.getStackedKeys(1));this.scales.updateRange(this.canvas,this.config.direction),this.scales.updateDomain(this.data,t,this.getKeys()),this.updates.value+=1}}var xhtml="http://www.w3.org/1999/xhtml",namespaces={svg:"http://www.w3.org/2000/svg",xhtml,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function namespace(e){var n=e+="",t=n.indexOf(":");return t>=0&&(n=e.slice(0,t))!=="xmlns"&&(e=e.slice(t+1)),namespaces.hasOwnProperty(n)?{space:namespaces[n],local:e}:e}function creatorInherit(e){return function(){var n=this.ownerDocument,t=this.namespaceURI;return t===xhtml&&n.documentElement.namespaceURI===xhtml?n.createElement(e):n.createElementNS(t,e)}}function creatorFixed(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function creator(e){var n=namespace(e);return(n.local?creatorFixed:creatorInherit)(n)}function none(){}function selector(e){return e==null?none:function(){return this.querySelector(e)}}function selection_select(e){typeof e!="function"&&(e=selector(e));for(var n=this._groups,t=n.length,o=new Array(t),r=0;r<t;++r)for(var a=n[r],s=a.length,i=o[r]=new Array(s),l,u,c=0;c<s;++c)(l=a[c])&&(u=e.call(l,l.__data__,c,a))&&("__data__"in l&&(u.__data__=l.__data__),i[c]=u);return new Selection(o,this._parents)}function array(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function empty(){return[]}function selectorAll(e){return e==null?empty:function(){return this.querySelectorAll(e)}}function arrayAll(e){return function(){return array(e.apply(this,arguments))}}function selection_selectAll(e){typeof e=="function"?e=arrayAll(e):e=selectorAll(e);for(var n=this._groups,t=n.length,o=[],r=[],a=0;a<t;++a)for(var s=n[a],i=s.length,l,u=0;u<i;++u)(l=s[u])&&(o.push(e.call(l,l.__data__,u,s)),r.push(l));return new Selection(o,r)}function matcher(e){return function(){return this.matches(e)}}function childMatcher(e){return function(n){return n.matches(e)}}var find=Array.prototype.find;function childFind(e){return function(){return find.call(this.children,e)}}function childFirst(){return this.firstElementChild}function selection_selectChild(e){return this.select(e==null?childFirst:childFind(typeof e=="function"?e:childMatcher(e)))}var filter=Array.prototype.filter;function children(){return Array.from(this.children)}function childrenFilter(e){return function(){return filter.call(this.children,e)}}function selection_selectChildren(e){return this.selectAll(e==null?children:childrenFilter(typeof e=="function"?e:childMatcher(e)))}function selection_filter(e){typeof e!="function"&&(e=matcher(e));for(var n=this._groups,t=n.length,o=new Array(t),r=0;r<t;++r)for(var a=n[r],s=a.length,i=o[r]=[],l,u=0;u<s;++u)(l=a[u])&&e.call(l,l.__data__,u,a)&&i.push(l);return new Selection(o,this._parents)}function sparse(e){return new Array(e.length)}function selection_enter(){return new Selection(this._enter||this._groups.map(sparse),this._parents)}function EnterNode(e,n){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=n}EnterNode.prototype={constructor:EnterNode,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,n){return this._parent.insertBefore(e,n)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};function constant$1(e){return function(){return e}}function bindIndex(e,n,t,o,r,a){for(var s=0,i,l=n.length,u=a.length;s<u;++s)(i=n[s])?(i.__data__=a[s],o[s]=i):t[s]=new EnterNode(e,a[s]);for(;s<l;++s)(i=n[s])&&(r[s]=i)}function bindKey(e,n,t,o,r,a,s){var i,l,u=new Map,c=n.length,d=a.length,v=new Array(c),m;for(i=0;i<c;++i)(l=n[i])&&(v[i]=m=s.call(l,l.__data__,i,n)+"",u.has(m)?r[i]=l:u.set(m,l));for(i=0;i<d;++i)m=s.call(e,a[i],i,a)+"",(l=u.get(m))?(o[i]=l,l.__data__=a[i],u.delete(m)):t[i]=new EnterNode(e,a[i]);for(i=0;i<c;++i)(l=n[i])&&u.get(v[i])===l&&(r[i]=l)}function datum(e){return e.__data__}function selection_data(e,n){if(!arguments.length)return Array.from(this,datum);var t=n?bindKey:bindIndex,o=this._parents,r=this._groups;typeof e!="function"&&(e=constant$1(e));for(var a=r.length,s=new Array(a),i=new Array(a),l=new Array(a),u=0;u<a;++u){var c=o[u],d=r[u],v=d.length,m=arraylike(e.call(c,c&&c.__data__,u,o)),f=m.length,p=i[u]=new Array(f),g=s[u]=new Array(f),_=l[u]=new Array(v);t(c,d,p,g,_,m,n);for(var h=0,b=0,V,S;h<f;++h)if(V=p[h]){for(h>=b&&(b=h+1);!(S=g[b])&&++b<f;);V._next=S||null}}return s=new Selection(s,o),s._enter=i,s._exit=l,s}function arraylike(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function selection_exit(){return new Selection(this._exit||this._groups.map(sparse),this._parents)}function selection_join(e,n,t){var o=this.enter(),r=this,a=this.exit();return typeof e=="function"?(o=e(o),o&&(o=o.selection())):o=o.append(e+""),n!=null&&(r=n(r),r&&(r=r.selection())),t==null?a.remove():t(a),o&&r?o.merge(r).order():r}function selection_merge(e){for(var n=e.selection?e.selection():e,t=this._groups,o=n._groups,r=t.length,a=o.length,s=Math.min(r,a),i=new Array(r),l=0;l<s;++l)for(var u=t[l],c=o[l],d=u.length,v=i[l]=new Array(d),m,f=0;f<d;++f)(m=u[f]||c[f])&&(v[f]=m);for(;l<r;++l)i[l]=t[l];return new Selection(i,this._parents)}function selection_order(){for(var e=this._groups,n=-1,t=e.length;++n<t;)for(var o=e[n],r=o.length-1,a=o[r],s;--r>=0;)(s=o[r])&&(a&&s.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(s,a),a=s);return this}function selection_sort(e){e||(e=ascending);function n(d,v){return d&&v?e(d.__data__,v.__data__):!d-!v}for(var t=this._groups,o=t.length,r=new Array(o),a=0;a<o;++a){for(var s=t[a],i=s.length,l=r[a]=new Array(i),u,c=0;c<i;++c)(u=s[c])&&(l[c]=u);l.sort(n)}return new Selection(r,this._parents).order()}function ascending(e,n){return e<n?-1:e>n?1:e>=n?0:NaN}function selection_call(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function selection_nodes(){return Array.from(this)}function selection_node(){for(var e=this._groups,n=0,t=e.length;n<t;++n)for(var o=e[n],r=0,a=o.length;r<a;++r){var s=o[r];if(s)return s}return null}function selection_size(){let e=0;for(const n of this)++e;return e}function selection_empty(){return!this.node()}function selection_each(e){for(var n=this._groups,t=0,o=n.length;t<o;++t)for(var r=n[t],a=0,s=r.length,i;a<s;++a)(i=r[a])&&e.call(i,i.__data__,a,r);return this}function attrRemove(e){return function(){this.removeAttribute(e)}}function attrRemoveNS(e){return function(){this.removeAttributeNS(e.space,e.local)}}function attrConstant(e,n){return function(){this.setAttribute(e,n)}}function attrConstantNS(e,n){return function(){this.setAttributeNS(e.space,e.local,n)}}function attrFunction(e,n){return function(){var t=n.apply(this,arguments);t==null?this.removeAttribute(e):this.setAttribute(e,t)}}function attrFunctionNS(e,n){return function(){var t=n.apply(this,arguments);t==null?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,t)}}function selection_attr(e,n){var t=namespace(e);if(arguments.length<2){var o=this.node();return t.local?o.getAttributeNS(t.space,t.local):o.getAttribute(t)}return this.each((n==null?t.local?attrRemoveNS:attrRemove:typeof n=="function"?t.local?attrFunctionNS:attrFunction:t.local?attrConstantNS:attrConstant)(t,n))}function defaultView(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function styleRemove(e){return function(){this.style.removeProperty(e)}}function styleConstant(e,n,t){return function(){this.style.setProperty(e,n,t)}}function styleFunction(e,n,t){return function(){var o=n.apply(this,arguments);o==null?this.style.removeProperty(e):this.style.setProperty(e,o,t)}}function selection_style(e,n,t){return arguments.length>1?this.each((n==null?styleRemove:typeof n=="function"?styleFunction:styleConstant)(e,n,t??"")):styleValue(this.node(),e)}function styleValue(e,n){return e.style.getPropertyValue(n)||defaultView(e).getComputedStyle(e,null).getPropertyValue(n)}function propertyRemove(e){return function(){delete this[e]}}function propertyConstant(e,n){return function(){this[e]=n}}function propertyFunction(e,n){return function(){var t=n.apply(this,arguments);t==null?delete this[e]:this[e]=t}}function selection_property(e,n){return arguments.length>1?this.each((n==null?propertyRemove:typeof n=="function"?propertyFunction:propertyConstant)(e,n)):this.node()[e]}function classArray(e){return e.trim().split(/^|\s+/)}function classList(e){return e.classList||new ClassList(e)}function ClassList(e){this._node=e,this._names=classArray(e.getAttribute("class")||"")}ClassList.prototype={add:function(e){var n=this._names.indexOf(e);n<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){var n=this._names.indexOf(e);n>=0&&(this._names.splice(n,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};function classedAdd(e,n){for(var t=classList(e),o=-1,r=n.length;++o<r;)t.add(n[o])}function classedRemove(e,n){for(var t=classList(e),o=-1,r=n.length;++o<r;)t.remove(n[o])}function classedTrue(e){return function(){classedAdd(this,e)}}function classedFalse(e){return function(){classedRemove(this,e)}}function classedFunction(e,n){return function(){(n.apply(this,arguments)?classedAdd:classedRemove)(this,e)}}function selection_classed(e,n){var t=classArray(e+"");if(arguments.length<2){for(var o=classList(this.node()),r=-1,a=t.length;++r<a;)if(!o.contains(t[r]))return!1;return!0}return this.each((typeof n=="function"?classedFunction:n?classedTrue:classedFalse)(t,n))}function textRemove(){this.textContent=""}function textConstant(e){return function(){this.textContent=e}}function textFunction(e){return function(){var n=e.apply(this,arguments);this.textContent=n??""}}function selection_text(e){return arguments.length?this.each(e==null?textRemove:(typeof e=="function"?textFunction:textConstant)(e)):this.node().textContent}function htmlRemove(){this.innerHTML=""}function htmlConstant(e){return function(){this.innerHTML=e}}function htmlFunction(e){return function(){var n=e.apply(this,arguments);this.innerHTML=n??""}}function selection_html(e){return arguments.length?this.each(e==null?htmlRemove:(typeof e=="function"?htmlFunction:htmlConstant)(e)):this.node().innerHTML}function raise(){this.nextSibling&&this.parentNode.appendChild(this)}function selection_raise(){return this.each(raise)}function lower(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function selection_lower(){return this.each(lower)}function selection_append(e){var n=typeof e=="function"?e:creator(e);return this.select(function(){return this.appendChild(n.apply(this,arguments))})}function constantNull(){return null}function selection_insert(e,n){var t=typeof e=="function"?e:creator(e),o=n==null?constantNull:typeof n=="function"?n:selector(n);return this.select(function(){return this.insertBefore(t.apply(this,arguments),o.apply(this,arguments)||null)})}function remove(){var e=this.parentNode;e&&e.removeChild(this)}function selection_remove(){return this.each(remove)}function selection_cloneShallow(){var e=this.cloneNode(!1),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function selection_cloneDeep(){var e=this.cloneNode(!0),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function selection_clone(e){return this.select(e?selection_cloneDeep:selection_cloneShallow)}function selection_datum(e){return arguments.length?this.property("__data__",e):this.node().__data__}function contextListener(e){return function(n){e.call(this,n,this.__data__)}}function parseTypenames(e){return e.trim().split(/^|\s+/).map(function(n){var t="",o=n.indexOf(".");return o>=0&&(t=n.slice(o+1),n=n.slice(0,o)),{type:n,name:t}})}function onRemove(e){return function(){var n=this.__on;if(n){for(var t=0,o=-1,r=n.length,a;t<r;++t)a=n[t],(!e.type||a.type===e.type)&&a.name===e.name?this.removeEventListener(a.type,a.listener,a.options):n[++o]=a;++o?n.length=o:delete this.__on}}}function onAdd(e,n,t){return function(){var o=this.__on,r,a=contextListener(n);if(o){for(var s=0,i=o.length;s<i;++s)if((r=o[s]).type===e.type&&r.name===e.name){this.removeEventListener(r.type,r.listener,r.options),this.addEventListener(r.type,r.listener=a,r.options=t),r.value=n;return}}this.addEventListener(e.type,a,t),r={type:e.type,name:e.name,value:n,listener:a,options:t},o?o.push(r):this.__on=[r]}}function selection_on(e,n,t){var o=parseTypenames(e+""),r,a=o.length,s;if(arguments.length<2){var i=this.node().__on;if(i){for(var l=0,u=i.length,c;l<u;++l)for(r=0,c=i[l];r<a;++r)if((s=o[r]).type===c.type&&s.name===c.name)return c.value}return}for(i=n?onAdd:onRemove,r=0;r<a;++r)this.each(i(o[r],n,t));return this}function dispatchEvent(e,n,t){var o=defaultView(e),r=o.CustomEvent;typeof r=="function"?r=new r(n,t):(r=o.document.createEvent("Event"),t?(r.initEvent(n,t.bubbles,t.cancelable),r.detail=t.detail):r.initEvent(n,!1,!1)),e.dispatchEvent(r)}function dispatchConstant(e,n){return function(){return dispatchEvent(this,e,n)}}function dispatchFunction(e,n){return function(){return dispatchEvent(this,e,n.apply(this,arguments))}}function selection_dispatch(e,n){return this.each((typeof n=="function"?dispatchFunction:dispatchConstant)(e,n))}function*selection_iterator(){for(var e=this._groups,n=0,t=e.length;n<t;++n)for(var o=e[n],r=0,a=o.length,s;r<a;++r)(s=o[r])&&(yield s)}var root=[null];function Selection(e,n){this._groups=e,this._parents=n}function selection_selection(){return this}Selection.prototype={constructor:Selection,select:selection_select,selectAll:selection_selectAll,selectChild:selection_selectChild,selectChildren:selection_selectChildren,filter:selection_filter,data:selection_data,enter:selection_enter,exit:selection_exit,join:selection_join,merge:selection_merge,selection:selection_selection,order:selection_order,sort:selection_sort,call:selection_call,nodes:selection_nodes,node:selection_node,size:selection_size,empty:selection_empty,each:selection_each,attr:selection_attr,style:selection_style,property:selection_property,classed:selection_classed,text:selection_text,html:selection_html,raise:selection_raise,lower:selection_lower,append:selection_append,insert:selection_insert,remove:selection_remove,clone:selection_clone,datum:selection_datum,on:selection_on,dispatch:selection_dispatch,[Symbol.iterator]:selection_iterator};function select(e){return typeof e=="string"?new Selection([[document.querySelector(e)]],[document.documentElement]):new Selection([[e]],root)}function sourceEvent(e){let n;for(;n=e.sourceEvent;)e=n;return e}function pointer(e,n){if(e=sourceEvent(e),n===void 0&&(n=e.currentTarget),n){var t=n.ownerSVGElement||n;if(t.createSVGPoint){var o=t.createSVGPoint();return o.x=e.clientX,o.y=e.clientY,o=o.matrixTransform(n.getScreenCTM().inverse()),[o.x,o.y]}if(n.getBoundingClientRect){var r=n.getBoundingClientRect();return[e.clientX-r.left-n.clientLeft,e.clientY-r.top-n.clientTop]}}return[e.pageX,e.pageY]}function identity(e){return e}var top=1,right=2,bottom=3,left=4,epsilon=1e-6;function translateX(e){return"translate("+e+",0)"}function translateY(e){return"translate(0,"+e+")"}function number(e){return n=>+e(n)}function center(e,n){return n=Math.max(0,e.bandwidth()-n*2)/2,e.round()&&(n=Math.round(n)),t=>+e(t)+n}function entering(){return!this.__axis}function axis(e,n){var t=[],o=null,r=null,a=6,s=6,i=3,l=typeof window<"u"&&window.devicePixelRatio>1?0:.5,u=e===top||e===left?-1:1,c=e===left||e===right?"x":"y",d=e===top||e===bottom?translateX:translateY;function v(m){var f=o??(n.ticks?n.ticks.apply(n,t):n.domain()),p=r??(n.tickFormat?n.tickFormat.apply(n,t):identity),g=Math.max(a,0)+i,_=n.range(),h=+_[0]+l,b=+_[_.length-1]+l,V=(n.bandwidth?center:number)(n.copy(),l),S=m.selection?m.selection():m,$=S.selectAll(".domain").data([null]),w=S.selectAll(".tick").data(f,n).order(),k=w.exit(),P=w.enter().append("g").attr("class","tick"),O=w.select("line"),B=w.select("text");$=$.merge($.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),w=w.merge(P),O=O.merge(P.append("line").attr("stroke","currentColor").attr(c+"2",u*a)),B=B.merge(P.append("text").attr("fill","currentColor").attr(c,u*g).attr("dy",e===top?"0em":e===bottom?"0.71em":"0.32em")),m!==S&&($=$.transition(m),w=w.transition(m),O=O.transition(m),B=B.transition(m),k=k.transition(m).attr("opacity",epsilon).attr("transform",function(T){return isFinite(T=V(T))?d(T+l):this.getAttribute("transform")}),P.attr("opacity",epsilon).attr("transform",function(T){var L=this.parentNode.__axis;return d((L&&isFinite(L=L(T))?L:V(T))+l)})),k.remove(),$.attr("d",e===left||e===right?s?"M"+u*s+","+h+"H"+l+"V"+b+"H"+u*s:"M"+l+","+h+"V"+b:s?"M"+h+","+u*s+"V"+l+"H"+b+"V"+u*s:"M"+h+","+l+"H"+b),w.attr("opacity",1).attr("transform",function(T){return d(V(T)+l)}),O.attr(c+"2",u*a),B.attr(c,u*g).text(p),S.filter(entering).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",e===right?"start":e===left?"end":"middle"),S.each(function(){this.__axis=V})}return v.scale=function(m){return arguments.length?(n=m,v):n},v.ticks=function(){return t=Array.from(arguments),v},v.tickArguments=function(m){return arguments.length?(t=m==null?[]:Array.from(m),v):t.slice()},v.tickValues=function(m){return arguments.length?(o=m==null?null:Array.from(m),v):o&&o.slice()},v.tickFormat=function(m){return arguments.length?(r=m,v):r},v.tickSize=function(m){return arguments.length?(a=s=+m,v):a},v.tickSizeInner=function(m){return arguments.length?(a=+m,v):a},v.tickSizeOuter=function(m){return arguments.length?(s=+m,v):s},v.tickPadding=function(m){return arguments.length?(i=+m,v):i},v.offset=function(m){return arguments.length?(l=+m,v):l},v}function axisBottom(e){return axis(bottom,e)}function axisLeft(e){return axis(left,e)}var useChart=()=>vue.inject("chart"),usePoints=(e,n={stacked:!1,type:"line"})=>{const t=vue.ref([]),o=useChart(),{stacked:r,type:a}=n;function s(l,u){const{primary:c,secondary:d}=o.scales;return o.config.direction==="horizontal"?u.map(m=>({x:c.mapOne(m.data[l]),y:d.mapOne(m[1]),props:{values:[...m],data:m.data}})).filter(m=>!isNaN(m.x)&&!isNaN(m.y)):o.config.direction==="vertical"?u.map(v=>({x:d.mapOne(v[1]),y:c.mapOne(v.data[l]),props:{values:[...v],data:v.data}})).filter(v=>!isNaN(v.x)&&!isNaN(v.y)):[]}function i(){const l=o.getStackedKeys(1,a),[u,c]=e,v=o.getStackedData(r?l:[e[1]]).find(m=>m.key===c);v&&(t.value=s(u,v))}return vue.watch(o.updates,()=>{i()},{immediate:!0}),{points:t}},useMouse=()=>vue.inject("chartMouse",{index:-1,position:{x:0,y:0},hover:!1}),useBars=(e,n={maxWidth:-1,gap:5,stacked:!1,type:"bar"})=>{const t=vue.ref([]),o=useChart(),{stacked:r,type:a,gap:s}=n;function i(){const{primary:m,secondary:f}=o.scales,p=m.type==="band"?m:f,g=m.type==="band"?f:m;return{bandScale:p,linearScale:g}}function l(){if(r)return 0;const f=o.getLayers(a).findIndex(p=>p.dataKeys.join(",")===e.join(","));return f>-1?f:0}function u(){const{bandScale:m}=i(),f=n.maxWidth>-1?Math.min(m.bandwidth()-s,n.maxWidth):m.bandwidth()-s,p=o.getLayers(a);return p.length>0&&!r?f/p.length:f}function c(){if(r)return 0;const{bandScale:m}=i(),f=m.bandwidth()-s,p=o.getLayers(a).length*u();return(f-p)/2}function d(m,f){const{bandScale:p,linearScale:g}=i(),_=l(),h=u(),b=c();return f.map(V=>{const S={x:0,y:0,width:0,height:0,props:{values:[...V],data:V.data}},$=p.scale(V.data[m]),[w,k]=g.map(V);return o.config.direction==="horizontal"?(S.y=Math.min(w,k),S.height=Math.abs(w-k),S.x=b+$+_*h+s/2,S.width=h):o.config.direction==="vertical"&&(S.x=Math.min(w,k),S.width=Math.abs(w-k),S.y=b+$+_*h+s/2,S.height=h),S})}function v(){const m=r?o.getStackedKeys(1,a):[e[1]],[f,p]=e,_=o.getStackedData(m).find(h=>h.key===p);_&&(t.value=d(f,_))}return vue.watch(o.updates,()=>{v()}),{bars:t}},useTooltip=()=>{const e=useMouse(),n=useChart(),t=vue.computed(()=>e.hover),o=vue.ref({x:0,y:0}),r=vue.ref({});return vue.watch(e,()=>{const{primary:a}=n.scales,s=n.getKeys(0),i=n.getData(s),[l]=a.map([i[e.index]]);l&&(n.config.direction==="horizontal"?o.value={x:l,y:e.position.y}:n.config.direction==="vertical"?o.value={x:e.position.x,y:l}:o.value={x:e.position.x,y:e.position.y});const u=n.data[e.index];u&&(r.value=Object.assign(Object.assign({},u),{idx:e.index}))}),{position:o,payload:r,show:t}},useResize=e=>{const n=vue.ref(0),t=vue.ref(0);let o=null,r=null;function a(i,l){n.value=i,t.value=l,r&&r()}function s(i){r=i}return vue.onMounted(()=>{o=new window.ResizeObserver(i=>{const l=i[0].contentRect.width,u=i[0].contentRect.height;a(l,u)}),o.observe(e.value)}),vue.onUnmounted(()=>{o.disconnect()}),{width:n,height:t,onResize:s}},script$d=vue.defineComponent({name:"Axis",props:{position:{type:String,default:"bottom"},rotate:{type:Boolean,default:!1},isPrimary:{type:Boolean,default:!1}},setup(e){const n=vue.ref(),t=useChart(),o=vue.computed(()=>e.position==="bottom"?axisBottom:axisLeft),r=vue.ref(t.canvas),a={ticks:5};function s(){if(t.data.length>0){const{primary:i,secondary:l}=t.scales,u=e.isPrimary?i:l,c=Object.assign({},e.isPrimary?i.config:l.config,a),d=o.value(u.scale);c.format&&d.tickFormat(c.format),c.ticks!==void 0&&d.ticks(c.ticks),c.tickValues!==void 0&&d.tickValues(c.tickValues),c.useConfig&&c.useConfig(d);const v=select(n.value).call(d);return e.position==="bottom"&&e.rotate&&v.selectAll("text").attr("y",0).attr("x",9).attr("dy",".35em").attr("transform","rotate(90)").style("text-anchor","start"),d}return null}return vue.watch(()=>e.isPrimary,()=>{s()}),vue.watch(t.updates,()=>{r.value=t.canvas,s()}),{el:n,canvas:r}}});const _hoisted_1$b$1=["transform"],_hoisted_2$8$1=["transform"];function render$d(e,n,t,o,r,a){return e.position==="bottom"?(vue.openBlock(),vue.createElementBlock("g",{key:0,class:vue.normalizeClass("layer-axis-x"),ref:"el",transform:`translate(0, ${e.canvas.height})`},null,8,_hoisted_1$b$1)):(vue.openBlock(),vue.createElementBlock("g",{key:1,class:vue.normalizeClass("layer-axis-y"),ref:"el",transform:`translate(${e.canvas.x}, 0)`},null,8,_hoisted_2$8$1))}script$d.render=render$d;script$d.__file="src/components/Axis/index.vue";var script$c=vue.defineComponent({name:"Chart",components:{Axis:script$d},props:{data:{type:Array,default:()=>[]},margin:{type:Object,default:()=>({top:0,right:0,bottom:0,left:0}),required:!1},size:{type:Object,default:()=>({width:500,height:400}),required:!1},direction:{type:String,default:"horizontal",required:!1},axis:{type:Object,required:!1},config:{type:Object,default:()=>({})}},setup(e){const n=vue.ref(null),t=vue.ref(),o=vue.ref(),r=vue.reactive({x:40,y:20}),a=new Chart(e.data,e.config),s=vue.computed(()=>e.axis&&e.axis.primary&&e.axis.primary.rotate),i=vue.computed(()=>e.axis&&e.axis.primary&&e.axis.primary.hide),l=vue.computed(()=>e.axis&&e.axis.secondary&&e.axis.secondary.hide),u=vue.reactive({index:-1,position:{x:0,y:0},hover:!1});vue.provide("chart",a),vue.provide("chartMouse",u),vue.watch(()=>e.data,()=>{a&&a.changeData(e.data)},{immediate:!0}),vue.watch(()=>e.config,()=>{a&&a.changeConfig(e.config)}),vue.watch(()=>[Object.assign({},r),e.direction,e.size,e.margin,e.axis],()=>{a&&a.changeConfig({axisSpace:Object.assign({},r),direction:e.direction,size:e.size,margin:e.margin,axis:e.axis})},{immediate:!0});const c=new ResizeObserver(m=>{for(const f of m)o.value&&f.target===o.value.$el?r.y=f.contentRect.height:t.value&&f.target===t.value.$el&&(r.x=f.contentRect.width)});vue.onMounted(()=>{o.value&&c.observe(o.value.$el),t.value&&c.observe(t.value.$el)}),vue.onUnmounted(()=>{c.disconnect()});function d(){e.config.controlHover!==!1&&(u.index=-1,u.hover=!1)}function v(m){if(e.config.controlHover===!1)return;u.hover=!0,u.position={x:pointer(m)[0],y:pointer(m)[1]};const{primary:f}=a.scales,p=a.getKeys(0),g=a.getData(p);if(a.config.direction==="horizontal")if(f.type==="band"){const _=f.bandwidth(),h=u.position.x-a.canvas.x;u.index=Math.round((h+_/2)/_)-1}else u.index=bisectCenter(g,f.scale.invert(u.position.x));else if(a.config.direction==="vertical")if(f.type==="band"){const _=f.bandwidth(),h=u.position.y-a.canvas.y;u.index=Math.round((h+_/2)/_)-1}else u.index=bisectCenter(g,f.scale.invert(u.position.y))}return{axBottomEl:o,axLeftEl:t,chartEl:n,hideX:i,hideY:l,rotateX:s,onMouseMove:v,onMouseOut:d}}});const _hoisted_1$a$1={class:"chart",ref:"chartEl"},_hoisted_2$7$1=["width","height","viewBox"],_hoisted_3$6$1={class:"layers"},_hoisted_4$3$1={class:"axis"},_hoisted_5$3$1={class:"widgets"};function render$c(e,n,t,o,r,a){const s=vue.resolveComponent("axis");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$a$1,[(vue.openBlock(),vue.createElementBlock("svg",{width:e.size.width,height:e.size.height,viewBox:`0 0 ${e.size.width} ${e.size.height}`,onPointermove:n[0]||(n[0]=(...i)=>e.onMouseMove&&e.onMouseMove(...i)),onPointerleave:n[1]||(n[1]=(...i)=>e.onMouseOut&&e.onMouseOut(...i))},[vue.createElementVNode("g",_hoisted_3$6$1,[vue.renderSlot(e.$slots,"layers")]),vue.createElementVNode("g",_hoisted_4$3$1,[e.hideX?vue.createCommentVNode("v-if",!0):(vue.openBlock(),vue.createBlock(s,{key:0,position:"bottom",ref:"axBottomEl",rotate:e.rotateX,isPrimary:e.direction==="horizontal"},null,8,["rotate","isPrimary"])),e.hideY?vue.createCommentVNode("v-if",!0):(vue.openBlock(),vue.createBlock(s,{key:1,position:"left",ref:"axLeftEl",isPrimary:e.direction==="vertical"},null,8,["isPrimary"]))])],40,_hoisted_2$7$1)),vue.createElementVNode("div",_hoisted_5$3$1,[vue.renderSlot(e.$slots,"widgets")])],512)}function styleInject(e,n){n===void 0&&(n={});var t=n.insertAt;if(!(!e||typeof document>"u")){var o=document.head||document.getElementsByTagName("head")[0],r=document.createElement("style");r.type="text/css",t==="top"&&o.firstChild?o.insertBefore(r,o.firstChild):o.appendChild(r),r.styleSheet?r.styleSheet.cssText=e:r.appendChild(document.createTextNode(e))}}var css_248z$1=`
|
|
104
104
|
.chart {
|
|
105
105
|
position: relative;
|
|
106
106
|
}
|
|
107
|
-
`;styleInject(css_248z$1);script$c.render=render$c;script$c.__file="src/components/Chart/index.vue";var script$b=vue.defineComponent({name:"Layer",props:{type:{type:String,default:"custom"},dataKeys:{type:Object,required:!0}},setup(e){const n=useChart(),t=new Date().getTime().toString(),o=vue.inject("layerProps",{});return vue.onMounted(()=>{n.addLayer({id:t,type:e.type,dataKeys:e.dataKeys,props:o})}),vue.onUnmounted(()=>{n.removeLayer(t)}),{}}});function render$b(e,n,t,o,a
|
|
107
|
+
`;styleInject(css_248z$1);script$c.render=render$c;script$c.__file="src/components/Chart/index.vue";var script$b=vue.defineComponent({name:"Layer",props:{type:{type:String,default:"custom"},dataKeys:{type:Object,required:!0}},setup(e){const n=useChart(),t=new Date().getTime().toString(),o=vue.inject("layerProps",{});return vue.onMounted(()=>{n.addLayer({id:t,type:e.type,dataKeys:e.dataKeys,props:o})}),vue.onUnmounted(()=>{n.removeLayer(t)}),{}}});function render$b(e,n,t,o,r,a){return vue.openBlock(),vue.createElementBlock("g",{class:vue.normalizeClass(`layer-${e.type}`)},[vue.renderSlot(e.$slots,"default")],2)}script$b.render=render$b;script$b.__file="src/components/Layer/index.vue";var script$a=vue.defineComponent({name:"AreaComponent",components:{Layer:script$b},props:{areaStyle:{type:Object,required:!1},dataKeys:{type:Object,required:!0},type:{type:String,default:()=>"normal"},gap:{type:Number,default:0}},setup(e){const n=useChart(),{stacked:t}=vue.inject("layerProps",{stacked:!1}),{points:o}=usePoints(e.dataKeys,{stacked:!1,type:"area"}),{bars:r}=useBars(e.dataKeys,{stacked:t,type:"area",gap:e.gap,maxWidth:-1}),a=vue.ref(""),s=c=>({normal:curveLinear,natural:curveNatural,step:curveStep,monotone:n.config.direction==="horizontal"?monotoneX:monotoneY})[c],i=()=>{console.log(o.value);const{secondary:c}=n.scales;return t?area().curve(s(e.type)).x0(d=>d.x+d.width/2).y0(d=>d.y).x1(d=>d.x+d.width/2).y1(d=>d.y+d.height):n.config.direction==="vertical"?area().curve(s(e.type)).y0(d=>d.y).y1(d=>d.y).x0(d=>d.x).x1(()=>c.scale(0)):area().curve(s(e.type)).x0(d=>d.x).x1(d=>d.x).y0(d=>d.y).y1(()=>c.scale(0))},l=vue.computed(()=>()=>Object.assign({fill:"blue",fillOpacity:.25,stroke:"none"},e.areaStyle)),u=c=>mapKeys(kebabize,c);return vue.watch(o,()=>{a.value=t?i()(r.value):i()(o.value)}),{d:a,getStyle:l,toKebabCase:u}}});const _hoisted_1$9$1=["d"];function render$a(e,n,t,o,r,a){const s=vue.resolveComponent("Layer");return vue.openBlock(),vue.createBlock(s,{type:"area",dataKeys:e.dataKeys},{default:vue.withCtx(()=>[vue.createElementVNode("path",vue.mergeProps(e.toKebabCase(e.getStyle()),{d:e.d}),null,16,_hoisted_1$9$1)]),_:1},8,["dataKeys"])}script$a.render=render$a;script$a.__file="src/components/Area/index.vue";var script$9=vue.defineComponent({name:"LineComponent",components:{Layer:script$b},props:{lineStyle:{type:Object,required:!1},dotStyle:{type:Object,required:!1},hideDot:{type:Boolean,default:!1},dataKeys:{type:Object,required:!0},type:{type:String,default:()=>"normal"}},setup(e){const{stacked:n}=vue.inject("layerProps",{stacked:!1}),t=useMouse(),o=useChart(),r=vue.ref(""),{points:a}=usePoints(e.dataKeys,{stacked:n,type:"line"}),s={normal:curveLinear,natural:curveNatural,step:stepAfter,monotone:monotoneX};function i(){let v=s[e.type];e.type==="monotone"&&o.config.direction==="vertical"&&(v=monotoneY),r.value=line().x(m=>m.x).y(m=>m.y).curve(v)(a.value)}function l(v){const m=e.dotStyle,f=u.value();return Object.assign({r:v?5:3,stroke:f.stroke,strokeWidth:f.strokeWidth,fill:"white"},m)}const u=vue.computed(()=>is$1(Function,e.lineStyle)?e.lineStyle:()=>Object.assign({stroke:"#8884d8",strokeWidth:2},e.lineStyle)),c=vue.computed(()=>is$1(Function,e.dotStyle)?e.dotStyle:({active:v})=>l(v));return vue.watch(a,()=>i()),vue.watch(o.updates,()=>i()),{d:r,mouse:t,points:a,toKebabCase:v=>mapKeys(kebabize,v),getStyle:u,getDotStyle:c}}});const _hoisted_1$8$1=["d"],_hoisted_2$6$1={key:0},_hoisted_3$5$1=["cx","cy"];function render$9(e,n,t,o,r,a){const s=vue.resolveComponent("Layer");return vue.openBlock(),vue.createBlock(s,{dataKeys:e.dataKeys,type:"line"},{default:vue.withCtx(()=>[vue.createElementVNode("path",vue.mergeProps({class:"chart-line"},e.toKebabCase(e.getStyle()),{d:e.d,fill:"none"}),null,16,_hoisted_1$8$1),vue.createCommentVNode(` :stroke="stroke"
|
|
108
108
|
:stroke-width="strokeWidth"
|
|
109
109
|
stroke-linejoin="round"
|
|
110
|
-
stroke-linecap="round" `),e.hideDot?vue.createCommentVNode("v-if",!0):(vue.openBlock(),vue.createElementBlock("g",_hoisted_2$6$1,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.points,(i,l)=>(vue.openBlock(),vue.createElementBlock("circle",vue.mergeProps(e.toKebabCase(e.getDotStyle({active:l===e.mouse.index,index:l})),{key:l,cx:i.x,cy:i.y}),null,16,_hoisted_3$5$1))),128))]))]),_:1},8,["dataKeys"])}script$9.render=render$9;script$9.__file="src/components/Line/index.vue";var script$8=vue.defineComponent({name:"Bar",components:{Layer:script$b},props:{selectedBar:{type:Object,default:()=>null},barStyle:{type:[Function,Object],default:()=>({fill:"blue"})},barStyleSelected:{type:[Function,Object],default:()=>({fill:"darkblue"})},maxWidth:{type:Number,default:-1},dataKeys:{type:Object,required:!0},gap:{type:Number,default:5}},setup(e,{emit:n}){const t=useMouse(),{stacked:o,maxWidth:a}=vue.inject("layerProps",{stacked:!1,maxWidth:-1}),{bars:r}=useBars(e.dataKeys,{maxWidth:Math.max(e.maxWidth,a),stacked:o,gap:e.gap,type:"bar"}),s=vue.computed(()=>is$1(Function,e.barStyle)?e.barStyle:()=>e.barStyle),i=vue.computed(()=>is$1(Function,e.barStyleSelected)?e.barStyleSelected:()=>e.barStyleSelected),l=c=>mapKeys(kebabize,c);function u(c,d){n("barClick",Object.assign(Object.assign({},c),{idx:d}))}return{getStyle:s,getStyleSelected:i,toKebabCase:l,bars:r,mouse:t,onBarClick:u}}});const _hoisted_1$7$1={key:0},_hoisted_2$5$1=["x","y","width","height","onClick"],_hoisted_3$4$1=["x","y","width","height"];function render$8(e,n,t,o,a,r){const s=vue.resolveComponent("Layer");return vue.openBlock(),vue.createBlock(s,{dataKeys:e.dataKeys,type:"bar"},{default:vue.withCtx(()=>[e.bars.length===0?(vue.openBlock(),vue.createElementBlock("text",_hoisted_1$7$1,"No Data")):vue.createCommentVNode("v-if",!0),(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.bars,(i,l)=>(vue.openBlock(),vue.createElementBlock("rect",vue.mergeProps({class:"chart-bar"},e.toKebabCase(e.getStyle({...i.props,active:l===e.mouse.index})),{key:l,x:i.x,y:i.y,width:i.width>0?i.width:0,height:i.height>0?i.height:0,onClick:()=>e.onBarClick(i,l)}),null,16,_hoisted_2$5$1))),128)),e.selectedBar?(vue.openBlock(),vue.createElementBlock("rect",vue.mergeProps({key:1,class:"chart-bar"},e.toKebabCase(e.getStyleSelected({...e.selectedBar.props})),{x:e.selectedBar.x,y:e.selectedBar.y,width:e.selectedBar.width>0?e.selectedBar.width:0,height:e.selectedBar.height>0?e.selectedBar.height:0}),null,16,_hoisted_3$4$1)):vue.createCommentVNode("v-if",!0)]),_:1},8,["dataKeys"])}script$8.render=render$8;script$8.__file="src/components/Bar/index.vue";const PieSort=String;var script$7=vue.defineComponent({name:"PieLayer",components:{Layer:script$b},props:{pieStyle:{type:Object,required:!1},dataKeys:{type:Object,required:!0},sort:{type:PieSort,default:"desc",required:!1},sortFunc:{type:Function,required:!1}},setup(e){var n;const t=useChart(),o=useMouse(),a=vue.ref(Math.min(t.canvas.width-t.canvas.x,t.canvas.height-t.canvas.y)/2),r=vue.computed(()=>()=>Object.assign({colors:["#4daf4a","#377eb8","#ff7f00","#984ea3","#e41a1c"],innerRadius:2,cornerRadius:0,padAngle:.01},e.pieStyle)),s=r.value(),i=vue.ref([]),l=ordinal(r.value().colors),u=()=>arc().outerRadius(a.value).innerRadius(s.innerRadius).cornerRadius(s.cornerRadius).padAngle(s.padAngle),c=vue.ref(`translate(${a.value+t.canvas.x}, ${a.value+t.canvas.y})`);let d;switch(e.sort){case"desc":d=descending$1;break;case"asc":d=ascending$1;break;case"none":d=null;break;case"custom":d=(n=e.sortFunc)!==null&&n!==void 0?n:null;break;default:d=null}function v(){const _=t.getData([e.dataKeys[1]]);i.value=pie().sort(d)(_)}function m(_){return l(_.toString())}function f(_,h){o.hover=!0,o.index=h;const[b,V]=pointer(_);o.position={x:b+a.value,y:V+a.value}}function p(){o.hover=!1,o.index=-1}function g(_){mapKeys(kebabize,_)}return vue.watch(t.updates,()=>{a.value=Math.min(t.canvas.width-t.canvas.x,(t.canvas.height-t.canvas.y)/2),c.value=`translate(${a.value+t.canvas.x}, ${a.value+t.canvas.y})`,v()}),{arcs:i,arcGen:u,getStyle:r,transform:c,getColor:m,hideTooltip:p,toKebabCase:g,showTooltip:f}}});const _hoisted_1$6$1={key:0},_hoisted_2$4$1=["transform"],_hoisted_3$3$1=["id","fill","d","onMousemove"];function render$7(e,n,t,o,a,r){const s=vue.resolveComponent("Layer");return vue.openBlock(),vue.createBlock(s,{dataKeys:e.dataKeys,type:"pie"},{default:vue.withCtx(()=>[e.arcs.length===0?(vue.openBlock(),vue.createElementBlock("text",_hoisted_1$6$1,"No Data")):vue.createCommentVNode("v-if",!0),vue.createElementVNode("g",{transform:e.transform},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.arcs,(i,l)=>(vue.openBlock(),vue.createElementBlock("path",vue.mergeProps({key:l,id:`arc-${l}`,class:"chart-pie"},e.toKebabCase(e.getStyle()),{fill:e.getColor(l),d:e.arcGen()(i),onMousemove:u=>e.showTooltip(u,l),onMouseleave:n[0]||(n[0]=u=>e.hideTooltip())}),null,16,_hoisted_3$3$1))),128))],8,_hoisted_2$4$1)]),_:1},8,["dataKeys"])}script$7.render=render$7;script$7.__file="src/components/Pie/index.vue";var script$6=vue.defineComponent({name:"Responsive",setup(){const e=vue.ref(null),{width:n,height:t}=useResize(e);return{el:e,width:n,height:t}}});const _hoisted_1$5$1={ref:"el"};function render$6(e,n,t,o,a,r){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$5$1,[vue.renderSlot(e.$slots,"main",{width:e.width,height:e.height})],512)}script$6.render=render$6;script$6.__file="src/components/Responsive/index.vue";var script$5=vue.defineComponent({name:"Grid",props:{strokeDasharray:{type:String,default:()=>"3 3"},hideX:{type:Boolean,default:!1},hideY:{type:Boolean,default:!1},center:{type:Boolean,default:!0}},setup(e){const n=useChart(),t=vue.ref([]),o=vue.ref(null),a=vue.ref([]),r=vue.ref([]);function s(){const{primary:l,secondary:u}=n.scales,c=n.config.direction==="horizontal"?u:l;if(c.type==="band"&&!e.center){const d=c.map(n.getData(n.getKeys(0))).map(v=>v+c.bandwidth()/2);d.pop(),a.value=d}else{const d=c.ticks();a.value=c.map(d)}}function i(){const{primary:l,secondary:u}=n.scales,c=n.config.direction==="horizontal"?l:u;if(c.type==="band"&&!e.center){const d=c.map(n.getData(n.getKeys(0))).map(v=>v+c.bandwidth()/2);d.pop(),r.value=d}else{const d=c.ticks();r.value=c.map(d)}}return vue.watch(n.updates,()=>{t.value=n.data,o.value=n.canvas,s(),i()}),{data:t,canvas:o,xLines:a,yLines:r}}});const _hoisted_1$4$1=["stroke-dasharray"],_hoisted_2$3$1={key:0,class:"grid-x"},_hoisted_3$2$1=["x1","y1","x2","y2"],_hoisted_4$2$1={key:1,class:"grid-y"},_hoisted_5$2$1=["x1","y1","x2","y2"],_hoisted_6$2$1=["x1","y1","x2","y2"],_hoisted_7$g=["x1","y1","x2","y2"];function render$5(e,n,t,o,a,r){return e.data.length?(vue.openBlock(),vue.createElementBlock("g",{key:0,class:"layer-grid",stroke:"black","stroke-opacity":"0.15","stroke-width":"1","stroke-dasharray":e.strokeDasharray},[e.hideX?vue.createCommentVNode("v-if",!0):(vue.openBlock(),vue.createElementBlock("g",_hoisted_2$3$1,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.xLines,(s,i)=>(vue.openBlock(),vue.createElementBlock("line",{key:i,x1:e.canvas.x,y1:s,x2:e.canvas.width,y2:s},null,8,_hoisted_3$2$1))),128))])),e.hideY?vue.createCommentVNode("v-if",!0):(vue.openBlock(),vue.createElementBlock("g",_hoisted_4$2$1,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.yLines,(s,i)=>(vue.openBlock(),vue.createElementBlock("line",{key:i,x1:s,y1:e.canvas.y,x2:s,y2:e.canvas.height},null,8,_hoisted_5$2$1))),128))])),vue.createElementVNode("g",null,[vue.createElementVNode("line",{x1:e.canvas.x,y1:e.canvas.y,x2:e.canvas.width,y2:e.canvas.y},null,8,_hoisted_6$2$1),vue.createElementVNode("line",{x1:e.canvas.width-1,y1:e.canvas.y,x2:e.canvas.width-1,y2:e.canvas.height},null,8,_hoisted_7$g)])],8,_hoisted_1$4$1)):vue.createCommentVNode("v-if",!0)}script$5.render=render$5;script$5.__file="src/components/Grid/index.vue";var script$4=vue.defineComponent({name:"Tooltip",components:{},props:{format:{type:String,default:",.0f"},color:{type:String,default:"#7876ec"},hideLine:{type:Boolean,default:!1},config:{type:Object,default:()=>({})}},setup(e){const n=vue.ref(null),t=useChart(),o=vue.ref(t.canvas),a=vue.ref(t.config.direction),{position:r,payload:s,show:i}=useTooltip(),l=vue.computed(()=>r.value.x>=o.value.width/4*3),u=vue.computed(()=>a.value==="vertical"?{top:r.value.y-.5+"px",left:o.value.x+"px"}:a.value==="horizontal"?{top:o.value.y+"px",left:r.value.x-.5+"px"}:{top:o.value.y+"px",left:o.value.x+"px"}),c=vue.computed(()=>a.value==="vertical"?{top:"5px",left:r.value.x-30+"px"}:a.value==="horizontal"?{top:r.value.y+"px",transform:`translateX(${l.value?"-100%":0})`}:{top:r.value.y+"px",left:r.value.x+"px"}),d=(m,f)=>is$1(Function,f)?f(m):is$1(Number,m)?format(f)(m):m,v=vue.computed(()=>Object.keys(omit$1(["idx"],s.value)).map(m=>{const f=Object.assign({label:m,format:e.format,color:e.color,hide:!1},e.config[m]);return{key:m,label:f.label,value:s.value[m],valueFormatted:d(s.value[m],f.format),color:is$1(Function,f.color)?f.color(s.value):f.color,hide:f.hide}}).filter(m=>!m.hide));return vue.watch(t.updates,()=>{a.value=t.config.direction,o.value=t.canvas}),{el:n,show:i,canvas:o,direction:a,style:u,styleContent:c,position:r,items:v,isRight:l}}});const _hoisted_1$3$1={key:0};function render$4(e,n,t,o,a,r){return e.show?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:"v-tooltip",style:vue.normalizeStyle(e.style)},[vue.createElementVNode("div",{class:"v-tooltip-content",style:vue.normalizeStyle(e.styleContent),ref:"el"},[vue.renderSlot(e.$slots,"default",{payload:e.items},()=>[vue.createElementVNode("div",{style:vue.normalizeStyle({borderColor:e.color})},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.items,(s,i)=>(vue.openBlock(),vue.createElementBlock("div",{key:i,style:vue.normalizeStyle({color:s.color})},[vue.createElementVNode("b",null,vue.toDisplayString(s.label),1),vue.createTextVNode(": "+vue.toDisplayString(s.valueFormatted),1)],4))),128))],4)])],4),e.hideLine?vue.createCommentVNode("v-if",!0):(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$3$1,[e.direction==="horizontal"?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:"v-tooltip-line-vertical",style:vue.normalizeStyle({height:e.canvas.height+"px"})},null,4)):(vue.openBlock(),vue.createElementBlock("div",{key:1,class:"v-tooltip-line-horizontal",style:vue.normalizeStyle({width:e.canvas.width-40+"px"})},null,4))]))],4)):vue.createCommentVNode("v-if",!0)}var css_248z=`
|
|
110
|
+
stroke-linecap="round" `),e.hideDot?vue.createCommentVNode("v-if",!0):(vue.openBlock(),vue.createElementBlock("g",_hoisted_2$6$1,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.points,(i,l)=>(vue.openBlock(),vue.createElementBlock("circle",vue.mergeProps(e.toKebabCase(e.getDotStyle({active:l===e.mouse.index,index:l})),{key:l,cx:i.x,cy:i.y}),null,16,_hoisted_3$5$1))),128))]))]),_:1},8,["dataKeys"])}script$9.render=render$9;script$9.__file="src/components/Line/index.vue";var script$8=vue.defineComponent({name:"Bar",components:{Layer:script$b},props:{selectedBar:{type:Object,default:()=>null},barStyle:{type:[Function,Object],default:()=>({fill:"blue"})},barStyleSelected:{type:[Function,Object],default:()=>({fill:"darkblue"})},maxWidth:{type:Number,default:-1},dataKeys:{type:Object,required:!0},gap:{type:Number,default:5}},setup(e,{emit:n}){const t=useMouse(),{stacked:o,maxWidth:r}=vue.inject("layerProps",{stacked:!1,maxWidth:-1}),{bars:a}=useBars(e.dataKeys,{maxWidth:Math.max(e.maxWidth,r),stacked:o,gap:e.gap,type:"bar"}),s=vue.computed(()=>is$1(Function,e.barStyle)?e.barStyle:()=>e.barStyle),i=vue.computed(()=>is$1(Function,e.barStyleSelected)?e.barStyleSelected:()=>e.barStyleSelected),l=c=>mapKeys(kebabize,c);function u(c,d){n("barClick",Object.assign(Object.assign({},c),{idx:d}))}return{getStyle:s,getStyleSelected:i,toKebabCase:l,bars:a,mouse:t,onBarClick:u}}});const _hoisted_1$7$1={key:0},_hoisted_2$5$1=["x","y","width","height","onClick"],_hoisted_3$4$1=["x","y","width","height"];function render$8(e,n,t,o,r,a){const s=vue.resolveComponent("Layer");return vue.openBlock(),vue.createBlock(s,{dataKeys:e.dataKeys,type:"bar"},{default:vue.withCtx(()=>[e.bars.length===0?(vue.openBlock(),vue.createElementBlock("text",_hoisted_1$7$1,"No Data")):vue.createCommentVNode("v-if",!0),(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.bars,(i,l)=>(vue.openBlock(),vue.createElementBlock("rect",vue.mergeProps({class:"chart-bar"},e.toKebabCase(e.getStyle({...i.props,active:l===e.mouse.index})),{key:l,x:i.x,y:i.y,width:i.width>0?i.width:0,height:i.height>0?i.height:0,onClick:()=>e.onBarClick(i,l)}),null,16,_hoisted_2$5$1))),128)),e.selectedBar?(vue.openBlock(),vue.createElementBlock("rect",vue.mergeProps({key:1,class:"chart-bar"},e.toKebabCase(e.getStyleSelected({...e.selectedBar.props})),{x:e.selectedBar.x,y:e.selectedBar.y,width:e.selectedBar.width>0?e.selectedBar.width:0,height:e.selectedBar.height>0?e.selectedBar.height:0}),null,16,_hoisted_3$4$1)):vue.createCommentVNode("v-if",!0)]),_:1},8,["dataKeys"])}script$8.render=render$8;script$8.__file="src/components/Bar/index.vue";const PieSort=String;var script$7=vue.defineComponent({name:"PieLayer",components:{Layer:script$b},props:{pieStyle:{type:Object,required:!1},dataKeys:{type:Object,required:!0},sort:{type:PieSort,default:"desc",required:!1},sortFunc:{type:Function,required:!1}},setup(e){var n;const t=useChart(),o=useMouse(),r=vue.ref(Math.min(t.canvas.width-t.canvas.x,t.canvas.height-t.canvas.y)/2),a=vue.computed(()=>()=>Object.assign({colors:["#4daf4a","#377eb8","#ff7f00","#984ea3","#e41a1c"],innerRadius:2,cornerRadius:0,padAngle:.01},e.pieStyle)),s=a.value(),i=vue.ref([]),l=ordinal(a.value().colors),u=()=>arc().outerRadius(r.value).innerRadius(s.innerRadius).cornerRadius(s.cornerRadius).padAngle(s.padAngle),c=vue.ref(`translate(${r.value+t.canvas.x}, ${r.value+t.canvas.y})`);let d;switch(e.sort){case"desc":d=descending$1;break;case"asc":d=ascending$1;break;case"none":d=null;break;case"custom":d=(n=e.sortFunc)!==null&&n!==void 0?n:null;break;default:d=null}function v(){const _=t.getData([e.dataKeys[1]]);i.value=pie().sort(d)(_)}function m(_){return l(_.toString())}function f(_,h){o.hover=!0,o.index=h;const[b,V]=pointer(_);o.position={x:b+r.value,y:V+r.value}}function p(){o.hover=!1,o.index=-1}function g(_){mapKeys(kebabize,_)}return vue.watch(t.updates,()=>{r.value=Math.min(t.canvas.width-t.canvas.x,(t.canvas.height-t.canvas.y)/2),c.value=`translate(${r.value+t.canvas.x}, ${r.value+t.canvas.y})`,v()}),{arcs:i,arcGen:u,getStyle:a,transform:c,getColor:m,hideTooltip:p,toKebabCase:g,showTooltip:f}}});const _hoisted_1$6$1={key:0},_hoisted_2$4$1=["transform"],_hoisted_3$3$1=["id","fill","d","onMousemove"];function render$7(e,n,t,o,r,a){const s=vue.resolveComponent("Layer");return vue.openBlock(),vue.createBlock(s,{dataKeys:e.dataKeys,type:"pie"},{default:vue.withCtx(()=>[e.arcs.length===0?(vue.openBlock(),vue.createElementBlock("text",_hoisted_1$6$1,"No Data")):vue.createCommentVNode("v-if",!0),vue.createElementVNode("g",{transform:e.transform},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.arcs,(i,l)=>(vue.openBlock(),vue.createElementBlock("path",vue.mergeProps({key:l,id:`arc-${l}`,class:"chart-pie"},e.toKebabCase(e.getStyle()),{fill:e.getColor(l),d:e.arcGen()(i),onMousemove:u=>e.showTooltip(u,l),onMouseleave:n[0]||(n[0]=u=>e.hideTooltip())}),null,16,_hoisted_3$3$1))),128))],8,_hoisted_2$4$1)]),_:1},8,["dataKeys"])}script$7.render=render$7;script$7.__file="src/components/Pie/index.vue";var script$6=vue.defineComponent({name:"Responsive",setup(){const e=vue.ref(null),{width:n,height:t}=useResize(e);return{el:e,width:n,height:t}}});const _hoisted_1$5$1={ref:"el"};function render$6(e,n,t,o,r,a){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$5$1,[vue.renderSlot(e.$slots,"main",{width:e.width,height:e.height})],512)}script$6.render=render$6;script$6.__file="src/components/Responsive/index.vue";var script$5=vue.defineComponent({name:"Grid",props:{strokeDasharray:{type:String,default:()=>"3 3"},hideX:{type:Boolean,default:!1},hideY:{type:Boolean,default:!1},center:{type:Boolean,default:!0}},setup(e){const n=useChart(),t=vue.ref([]),o=vue.ref(null),r=vue.ref([]),a=vue.ref([]);function s(){const{primary:l,secondary:u}=n.scales,c=n.config.direction==="horizontal"?u:l;if(c.type==="band"&&!e.center){const d=c.map(n.getData(n.getKeys(0))).map(v=>v+c.bandwidth()/2);d.pop(),r.value=d}else{const d=c.ticks();r.value=c.map(d)}}function i(){const{primary:l,secondary:u}=n.scales,c=n.config.direction==="horizontal"?l:u;if(c.type==="band"&&!e.center){const d=c.map(n.getData(n.getKeys(0))).map(v=>v+c.bandwidth()/2);d.pop(),a.value=d}else{const d=c.ticks();a.value=c.map(d)}}return vue.watch(n.updates,()=>{t.value=n.data,o.value=n.canvas,s(),i()}),{data:t,canvas:o,xLines:r,yLines:a}}});const _hoisted_1$4$1=["stroke-dasharray"],_hoisted_2$3$1={key:0,class:"grid-x"},_hoisted_3$2$1=["x1","y1","x2","y2"],_hoisted_4$2$1={key:1,class:"grid-y"},_hoisted_5$2$1=["x1","y1","x2","y2"],_hoisted_6$2$1=["x1","y1","x2","y2"],_hoisted_7$g=["x1","y1","x2","y2"];function render$5(e,n,t,o,r,a){return e.data.length?(vue.openBlock(),vue.createElementBlock("g",{key:0,class:"layer-grid",stroke:"black","stroke-opacity":"0.15","stroke-width":"1","stroke-dasharray":e.strokeDasharray},[e.hideX?vue.createCommentVNode("v-if",!0):(vue.openBlock(),vue.createElementBlock("g",_hoisted_2$3$1,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.xLines,(s,i)=>(vue.openBlock(),vue.createElementBlock("line",{key:i,x1:e.canvas.x,y1:s,x2:e.canvas.width,y2:s},null,8,_hoisted_3$2$1))),128))])),e.hideY?vue.createCommentVNode("v-if",!0):(vue.openBlock(),vue.createElementBlock("g",_hoisted_4$2$1,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.yLines,(s,i)=>(vue.openBlock(),vue.createElementBlock("line",{key:i,x1:s,y1:e.canvas.y,x2:s,y2:e.canvas.height},null,8,_hoisted_5$2$1))),128))])),vue.createElementVNode("g",null,[vue.createElementVNode("line",{x1:e.canvas.x,y1:e.canvas.y,x2:e.canvas.width,y2:e.canvas.y},null,8,_hoisted_6$2$1),vue.createElementVNode("line",{x1:e.canvas.width-1,y1:e.canvas.y,x2:e.canvas.width-1,y2:e.canvas.height},null,8,_hoisted_7$g)])],8,_hoisted_1$4$1)):vue.createCommentVNode("v-if",!0)}script$5.render=render$5;script$5.__file="src/components/Grid/index.vue";var script$4=vue.defineComponent({name:"Tooltip",components:{},props:{format:{type:String,default:",.0f"},color:{type:String,default:"#7876ec"},hideLine:{type:Boolean,default:!1},config:{type:Object,default:()=>({})}},setup(e){const n=vue.ref(null),t=useChart(),o=vue.ref(t.canvas),r=vue.ref(t.config.direction),{position:a,payload:s,show:i}=useTooltip(),l=vue.computed(()=>a.value.x>=o.value.width/4*3),u=vue.computed(()=>r.value==="vertical"?{top:a.value.y-.5+"px",left:o.value.x+"px"}:r.value==="horizontal"?{top:o.value.y+"px",left:a.value.x-.5+"px"}:{top:o.value.y+"px",left:o.value.x+"px"}),c=vue.computed(()=>r.value==="vertical"?{top:"5px",left:a.value.x-30+"px"}:r.value==="horizontal"?{top:a.value.y+"px",transform:`translateX(${l.value?"-100%":0})`}:{top:a.value.y+"px",left:a.value.x+"px"}),d=(m,f)=>is$1(Function,f)?f(m):is$1(Number,m)?format(f)(m):m,v=vue.computed(()=>Object.keys(omit$1(["idx"],s.value)).map(m=>{const f=Object.assign({label:m,format:e.format,color:e.color,hide:!1},e.config[m]);return{key:m,label:f.label,value:s.value[m],valueFormatted:d(s.value[m],f.format),color:is$1(Function,f.color)?f.color(s.value):f.color,hide:f.hide}}).filter(m=>!m.hide));return vue.watch(t.updates,()=>{r.value=t.config.direction,o.value=t.canvas}),{el:n,show:i,canvas:o,direction:r,style:u,styleContent:c,position:a,items:v,isRight:l}}});const _hoisted_1$3$1={key:0};function render$4(e,n,t,o,r,a){return e.show?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:"v-tooltip",style:vue.normalizeStyle(e.style)},[vue.createElementVNode("div",{class:"v-tooltip-content",style:vue.normalizeStyle(e.styleContent),ref:"el"},[vue.renderSlot(e.$slots,"default",{payload:e.items},()=>[vue.createElementVNode("div",{style:vue.normalizeStyle({borderColor:e.color})},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.items,(s,i)=>(vue.openBlock(),vue.createElementBlock("div",{key:i,style:vue.normalizeStyle({color:s.color})},[vue.createElementVNode("b",null,vue.toDisplayString(s.label),1),vue.createTextVNode(": "+vue.toDisplayString(s.valueFormatted),1)],4))),128))],4)])],4),e.hideLine?vue.createCommentVNode("v-if",!0):(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$3$1,[e.direction==="horizontal"?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:"v-tooltip-line-vertical",style:vue.normalizeStyle({height:e.canvas.height+"px"})},null,4)):(vue.openBlock(),vue.createElementBlock("div",{key:1,class:"v-tooltip-line-horizontal",style:vue.normalizeStyle({width:e.canvas.width-40+"px"})},null,4))]))],4)):vue.createCommentVNode("v-if",!0)}var css_248z=`
|
|
111
111
|
.v-tooltip[data-v-43da20c6] {
|
|
112
112
|
position: absolute;
|
|
113
113
|
pointer-events: none;
|
|
@@ -147,8 +147,8 @@
|
|
|
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,o,a,r){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),o=vue.ref("horizontal"),a=vue.ref({});return vue.watch(n.updates,()=>{e.value!==void 0&&(t.value=n.scales.secondary.scale(e.value)),a.value=n.canvas,o.value=n.config.direction},{immediate:!0}),vue.watch(()=>e.value,()=>{t.value=n.scales.secondary.scale(e.value)},{immediate:!0}),{y:t,canvas:a,direction:o}}});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,o,a,r){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,o=t&&t.length;if(!o)n=1;else for(;--o>=0;)n+=t[o].value;e.value=n}function node_count(){return this.eachAfter(count)}function node_each(e,n){let t=-1;for(const o of this)e.call(n,o,++t,this);return this}function node_eachBefore(e,n){for(var t=this,o=[t],a,r,s=-1;t=o.pop();)if(e.call(n,t,++s,this),a=t.children)for(r=a.length-1;r>=0;--r)o.push(a[r]);return this}function node_eachAfter(e,n){for(var t=this,o=[t],a=[],r,s,i,l=-1;t=o.pop();)if(a.push(t),r=t.children)for(s=0,i=r.length;s<i;++s)o.push(r[s]);for(;t=a.pop();)e.call(n,t,++l,this);return this}function node_find(e,n){let t=-1;for(const o of this)if(e.call(n,o,++t,this))return o}function node_sum(e){return this.eachAfter(function(n){for(var t=+e(n.data)||0,o=n.children,a=o&&o.length;--a>=0;)t+=o[a].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),o=[n];n!==t;)n=n.parent,o.push(n);for(var a=o.length;e!==t;)o.splice(a,0,e),e=e.parent;return o}function leastCommonAncestor(e,n){if(e===n)return e;var t=e.ancestors(),o=n.ancestors(),a=null;for(e=t.pop(),n=o.pop();e===n;)a=e,e=t.pop(),n=o.pop();return a}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],o,a,r;do for(n=t.reverse(),t=[];e=n.pop();)if(yield e,o=e.children)for(a=0,r=o.length;a<r;++a)t.push(o[a]);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$1(e),o,a=[t],r,s,i,l;o=a.pop();)if((s=n(o.data))&&(l=(s=Array.from(s)).length))for(o.children=s,i=l-1;i>=0;--i)a.push(r=s[i]=new Node$1(s[i])),r.parent=o,r.depth=o.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$1(e){this.data=e,this.depth=this.height=0,this.parent=null}Node$1.prototype=hierarchy.prototype={constructor:Node$1,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,o,a){for(var r=e.children,s,i=-1,l=r.length,u=e.value&&(o-n)/e.value;++i<l;)s=r[i],s.y0=t,s.y1=a,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 o(a){var r=Array.from(a),s=e,i=n,l,u,c,d,v,m,f,p,g=new Map;if(t!=null){const _=r.map((V,S)=>normalize(t(V,S,a))),h=_.map(parentof),b=new Set(_).add("");for(const V of h)b.has(V)||(b.add(V),_.push(V),h.push(parentof(V)),r.push(imputed));s=(V,S)=>_[S],i=(V,S)=>h[S]}for(c=0,l=r.length;c<l;++c)u=r[c],m=r[c]=new Node$1(u),(f=s(u,c,a))!=null&&(f+="")&&(p=m.id=f,g.set(p,g.has(p)?ambiguous:m)),(f=i(u,c,a))!=null&&(f+="")&&(m.parent=f);for(c=0;c<l;++c)if(m=r[c],f=m.parent){if(v=g.get(f),!v)throw new Error("missing: "+f);if(v===ambiguous)throw new Error("ambiguous: "+f);v.children?v.children.push(m):v.children=[m],m.parent=v}else{if(d)throw new Error("multiple roots");d=m}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 _=r.length-1;_>=0&&(m=r[_],m.data===imputed);--_)m.data=null}if(d.parent=preroot,d.eachBefore(function(_){_.depth=_.parent.depth+1,--l}).eachBefore(computeHeight),d.parent=null,l>0)throw new Error("cycle");return d}return o.id=function(a){return arguments.length?(e=optional(a),o):e},o.parentId=function(a){return arguments.length?(n=optional(a),o):n},o.path=function(a){return arguments.length?(t=optional(a),o):t},o}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,o,a){for(var r=e.children,s,i=-1,l=r.length,u=e.value&&(a-t)/e.value;++i<l;)s=r[i],s.x0=n,s.x1=o,s.y0=t,s.y1=t+=s.value*u}var phi=(1+Math.sqrt(5))/2;function squarifyRatio(e,n,t,o,a,r){for(var s=[],i=n.children,l,u,c=0,d=0,v=i.length,m,f,p=n.value,g,_,h,b,V,S,$;c<v;){m=a-t,f=r-o;do g=i[d++].value;while(!g&&d<v);for(_=h=g,S=Math.max(f/m,m/f)/(p*e),$=g*g*S,V=Math.max(h/$,$/_);d<v;++d){if(g+=u=i[d].value,u<_&&(_=u),u>h&&(h=u),$=g*g*S,b=Math.max(h/$,$/_),b>V){g-=u;break}V=b}s.push(l={value:g,dice:m<f,children:i.slice(c,d)}),l.dice?treemapDice(l,t,o,a,p?o+=f*g/p:r):treemapSlice(l,t,o,p?t+=m*g/p:a,r),p-=g,c=d}return s}var squarify=function e(n){function t(o,a,r,s,i){squarifyRatio(n,o,a,r,s,i)}return t.ratio=function(o){return e((o=+o)>1?o:1)},t}(phi);function treemap(){var e=squarify,n=!1,t=1,o=1,a=[0],r=constantZero,s=constantZero,i=constantZero,l=constantZero,u=constantZero;function c(v){return v.x0=v.y0=0,v.x1=t,v.y1=o,v.eachBefore(d),a=[0],n&&v.eachBefore(roundNode),v}function d(v){var m=a[v.depth],f=v.x0+m,p=v.y0+m,g=v.x1-m,_=v.y1-m;g<f&&(f=g=(f+g)/2),_<p&&(p=_=(p+_)/2),v.x0=f,v.y0=p,v.x1=g,v.y1=_,v.children&&(m=a[v.depth+1]=r(v)/2,f+=u(v)-m,p+=s(v)-m,g-=i(v)-m,_-=l(v)-m,g<f&&(f=g=(f+g)/2),_<p&&(p=_=(p+_)/2),e(v,f,p,g,_))}return c.round=function(v){return arguments.length?(n=!!v,c):n},c.size=function(v){return arguments.length?(t=+v[0],o=+v[1],c):[t,o]},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?(r=typeof v=="function"?v:constant(+v),c):r},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),o=vue.ref(null),a=vue.ref({x:e.margin.left,y:e.margin.top,width:e.size.width-e.margin.right,height:e.size.height-e.margin.bottom}),r=vue.ref([]);function s(){const m=extent(t.value.map(g=>g[e.dataKeys[1]])),f=linear().domain(m).range([0,100]).nice(),p=sequential().domain(m).interpolator(e.colorFn());return{x:f,y:p}}function i(){const{y:m}=s();return l(t.value).leaves().map((p,g)=>({idx:g,x0:a.value.x+p.x0,x1:a.value.x+p.x1,y0:a.value.y+p.y0,y1:a.value.y+p.y1,width:p.x1-p.x0,height:p.y1-p.y0,data:p.data,color:m(p.value)}))}function l(m){const{x:f}=s(),p=treemap().size([a.value.width-a.value.x,a.value.height-a.value.y]).padding(e.padding),_=stratify().id(h=>h.name).parentId(h=>h.parent)([{name:"root"}].concat(m.map(h=>({name:h[e.dataKeys[0]],value:h[e.dataKeys[1]],parent:"root"}))));return _.sum(h=>f(h.value)),p(_),_}const u=m=>mapKeys(kebabize,m),c=m=>{const f={stroke:m.color,strokeWidth:5,fill:m.color,fillOpacity:.9};return e.rcStyle&&typeof e.rcStyle=="function"?Object.assign(Object.assign({},f),e.rcStyle(m)):f};function d(m){o.value=m}function v(){o.value=null}return vue.watch(e,()=>{t.value=e.data,a.value={x:e.margin.left,y:e.margin.top,width:e.size.width-e.margin.right,height:e.size.height-e.margin.bottom},r.value=i()},{immediate:!0}),{el:n,rectangles:r,selected:o,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$E=["transform","onMouseover"],_hoisted_5$t=["width","height"],_hoisted_6$k={x:10,y:20,"font-size":"15px",fill:"white","font-weight":"bold"};function render$1(e,n,t,o,a,r){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$t),vue.renderSlot(e.$slots,"text",{r:s,selected:e.selected===i},()=>[vue.createElementVNode("text",_hoisted_6$k,vue.toDisplayString(s.data.name),1)])])],42,_hoisted_4$E))),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}),o=vue.ref("horizontal"),a=vue.ref({x:0,y:0,width:0,height:0});return vue.watch(e.updates,()=>{a.value=e.canvas,o.value=e.config.direction},{immediate:!0}),vue.watch(n,()=>{if(e.bandScale){const r=e.getData(e.getKeys(0)),[s]=e.bandScale.map([r[n.index]]),i=e.bandScale.bandwidth();s&&(e.config.direction==="horizontal"?t.value={x:s-i/2,y:0,width:i,height:a.value.height}:t.value={x:40,y:s-i/2,width:a.value.width-40,height:i})}}),{bar:t,canvas:a,direction:o,mouse:n}}});const _hoisted_1$1A={key:0,class:"layer-hover-bar"},_hoisted_2$16=["x","y","width","height"];function render(e,n,t,o,a,r){return e.mouse.hover?(vue.openBlock(),vue.createElementBlock("g",_hoisted_1$1A,[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$16)])):vue.createCommentVNode("v-if",!0)}script.render=render;script.__file="src/components/HoverBar/index.vue";const _sfc_main$22={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$1z={class:"vs-carbon-calculator-results__headline"},_hoisted_2$15={class:"mb-050"},_hoisted_3$S={class:"vs-carbon-calculator-results__total"},_hoisted_4$D=["innerHTML"],_hoisted_5$s={class:"vs-carbon-calculator-results__unicorn-icon-container"},_hoisted_6$j={class:"vs-carbon-calculator-results__unicorn-content"};function _sfc_render$1N(e,n,t,o,a,r){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"),m=vue.resolveComponent("Responsive");return vue.openBlock(),vue.createBlock(l,{"data-test":"vs-carbon-calculator-results",style:vue.normalizeStyle(a.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(r.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$1z,[vue.createElementVNode("p",_hoisted_2$15,vue.toDisplayString(r.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(r.labelsMap.kgsOf),1)])])]),_:1}),vue.createVNode(i,{cols:"12",md:"6",class:"vs-carbon-calculator-results__comparison"},{default:vue.withCtx(()=>[vue.createElementVNode("p",{innerHTML:r.interpolComparison},null,8,_hoisted_4$D)]),_:1})]),_:1})]),_:1}),r.totalPerDay<=r.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$s,[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$j,[vue.createVNode(s,{level:"3","heading-style":"heading-xs"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.labelsMap.perDayCongratulations),1)]),_:1}),vue.createElementVNode("p",null,vue.toDisplayString(r.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(r.labelsMap.chartTitle),1)]),_:1})]),_:1}),vue.createVNode(i,{class:"vs-carbon-calculator-results__chart-wrapper",cols:"12"},{default:vue.withCtx(()=>[vue.createVNode(m,null,{main:vue.withCtx(({width:f})=>[vue.createVNode(v,{class:"vs-carbon-calculator-results__chart",size:{width:f,height:420},data:r.chartData,margin:r.responsiveMargin(f),direction:a.chartDirection,axis:a.chartAxis},{layers:vue.withCtx(()=>[vue.createVNode(c,{"stroke-dasharray":"2,2"}),vue.createVNode(d,{"data-keys":["name","emissions"],"bar-style":{fill:a.tokens["vs-color-background-highlight"]},gap:20},null,8,["bar-style"])]),_:1},8,["size","data","margin","direction","axis"])]),_:1})]),_:1})]),_:1},8,["style"])}const VsCarbonCalculatorResults=LoadingSpinner._export_sfc(_sfc_main$22,[["render",_sfc_render$1N]]),_sfc_main$21={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$1y={class:"vs-carbon-calculator-running-total","data-test":"vs-carbon-calculator-running-total"},_hoisted_2$14={class:"vs-carbon-calculator-running-total__icon"},_hoisted_3$R={class:"vs-carbon-calculator-running-total__content"},_hoisted_4$C={class:"vs-carbon-calculator-running-total__value"};function _sfc_render$1M(e,n,t,o,a,r){const s=vue.resolveComponent("VsIcon");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1y,[vue.createElementVNode("div",_hoisted_2$14,[vue.createVNode(s,{icon:"fa-regular fa-pen-field",size:"md"})]),vue.createElementVNode("div",_hoisted_3$R,[vue.createElementVNode("p",null,vue.toDisplayString(r.labelsMap.soFar),1),vue.createElementVNode("p",null,[vue.createElementVNode("span",_hoisted_4$C,vue.toDisplayString(t.totalKilos.toLocaleString(t.language,{minimumFractionDigits:3})),1),vue.createTextVNode(" "+vue.toDisplayString(r.labelsMap.kgsOf),1)])])])}const VsCarbonCalculatorRunningTotal=LoadingSpinner._export_sfc(_sfc_main$21,[["render",_sfc_render$1M]]),_sfc_main$20={name:"VsCarbonCalculatorIntro",status:"prototype",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading},inject:["labelsMap"]},_hoisted_1$1x={class:"vs-carbon-calculator-intro","data-test":"vs-carbon-calculator-intro"};function _sfc_render$1L(e,n,t,o,a,r){const s=vue.resolveComponent("VsHeading");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1x,[vue.createVNode(s,{level:"2","heading-style":"heading-l"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.labelsMap.introHeading),1)]),_:1}),vue.createElementVNode("p",null,vue.toDisplayString(r.labelsMap.introContent),1)])}const VsCarbonCalculatorIntro=LoadingSpinner._export_sfc(_sfc_main$20,[["render",_sfc_render$1L]]);function ownKeys$1(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),t.push.apply(t,o)}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(o){_defineProperty$1(e,o,t[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys$1(Object(t)).forEach(function(o){Object.defineProperty(e,o,Object.getOwnPropertyDescriptor(t,o))})}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 unwrapObj(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return Object.keys(e).reduce((t,o)=>(n.includes(o)||(t[o]=vue.unref(e[o])),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 o=e;const a=n.split(".");for(let r=0;r<a.length;r++){if(!o[a[r]])return t;o=o[a[r]]}return o}function gatherBooleanGroupProperties(e,n,t){return vue.computed(()=>e.some(o=>get(n,o,{[t]:!1})[t]))}function gatherArrayGroupProperties(e,n,t){return vue.computed(()=>e.reduce((o,a)=>{const r=get(n,a,{[t]:!1})[t]||[];return o.concat(r)},[]))}function callRule(e,n,t,o){return e.call(o,vue.unref(n),vue.unref(t),o)}function normalizeValidatorResponse(e){return e.$valid!==void 0?!e.$valid:!e}function createAsyncResult(e,n,t,o,a,r,s){let{$lazy:i,$rewardEarly:l}=a,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 m=vue.ref(!!o.value),f=vue.ref(0);t.value=!1;const p=vue.watch([n,o].concat(u,v),()=>{if(i&&!o.value||l&&!d.value&&!t.value)return;let g;try{g=callRule(e,n,c,s)}catch(_){g=Promise.reject(_)}f.value++,t.value=!!f.value,m.value=!1,Promise.resolve(g).then(_=>{f.value--,t.value=!!f.value,r.value=_,m.value=normalizeValidatorResponse(_)}).catch(_=>{f.value--,t.value=!!f.value,r.value=_,m.value=!0})},{immediate:!0,deep:typeof n=="object"});return{$invalid:m,$unwatch:p}}function createSyncResult(e,n,t,o,a,r,s,i){let{$lazy:l,$rewardEarly:u}=o;const c=()=>({}),d=vue.computed(()=>{if(l&&!t.value||u&&!i.value)return!1;let v=!0;try{const m=callRule(e,n,s,r);a.value=m,v=normalizeValidatorResponse(m)}catch(m){a.value=m}return v});return{$unwatch:c,$invalid:d}}function createValidatorResult(e,n,t,o,a,r,s,i,l,u,c){const d=vue.ref(!1),v=e.$params||{},m=vue.ref(null);let f,p;e.$async?{$invalid:f,$unwatch:p}=createAsyncResult(e.$validator,n,d,t,o,m,a,e.$watchTargets,l,u,c):{$invalid:f,$unwatch:p}=createSyncResult(e.$validator,n,t,o,m,a,l,u);const g=e.$message;return{$message:isFunction$2(g)?vue.computed(()=>g(unwrapObj({$pending:d,$invalid:f,$params:unwrapObj(v),$model:n,$response:m,$validator:r,$propertyPath:i,$property:s}))):g||"",$params:v,$pending:d,$invalid:f,$response:m,$unwatch:p}}function sortValidations(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};const n=vue.unref(e),t=Object.keys(n),o={},a={},r={};let s=null;return t.forEach(i=>{const l=n[i];switch(!0){case isFunction$2(l.$validator):o[i]=l;break;case isFunction$2(l):o[i]={$validator:l};break;case i==="$validationGroups":s=l;break;case i.startsWith("$"):r[i]=l;break;default:a[i]=l}}),{rules:o,nestedValidators:a,config:r,validationGroups:s}}const ROOT_PATH="__root";function createValidationResults(e,n,t,o,a,r,s,i,l){const u=Object.keys(e),c=o.get(a,e),d=vue.ref(!1),v=vue.ref(!1),m=vue.ref(0);if(c){if(!c.$partial)return c;c.$unwatch(),d.value=c.$dirty.value}const f={$dirty:d,$path:a,$touch:()=>{d.value||(d.value=!0)},$reset:()=>{d.value&&(d.value=!1)},$commit:()=>{}};return u.length?(u.forEach(p=>{f[p]=createValidatorResult(e[p],n,f.$dirty,r,s,p,t,a,l,v,m)}),f.$externalResults=vue.computed(()=>i.value?[].concat(i.value).map((p,g)=>({$propertyPath:a,$property:t,$validator:"$externalResults",$uid:`${a}-externalResult-${g}`,$message:p,$params:{},$response:null,$pending:!1})):[]),f.$invalid=vue.computed(()=>{const p=u.some(g=>vue.unref(f[g].$invalid));return v.value=p,!!f.$externalResults.value.length||p}),f.$pending=vue.computed(()=>u.some(p=>vue.unref(f[p].$pending))),f.$error=vue.computed(()=>f.$dirty.value?f.$pending.value||f.$invalid.value:!1),f.$silentErrors=vue.computed(()=>u.filter(p=>vue.unref(f[p].$invalid)).map(p=>{const g=f[p];return vue.reactive({$propertyPath:a,$property:t,$validator:p,$uid:`${a}-${p}`,$message:g.$message,$params:g.$params,$response:g.$response,$pending:g.$pending})}).concat(f.$externalResults.value)),f.$errors=vue.computed(()=>f.$dirty.value?f.$silentErrors.value:[]),f.$unwatch=()=>u.forEach(p=>{f[p].$unwatch()}),f.$commit=()=>{v.value=!0,m.value=Date.now()},o.set(a,e,f),f):(c&&o.set(a,e,f),f)}function collectNestedValidationResults(e,n,t,o,a,r,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:o,globalConfig:a,instance:r,externalResults:s}),l),{}):{}}function createMetaFields(e,n,t){const o=vue.computed(()=>[n,t].filter(f=>f).reduce((f,p)=>f.concat(Object.values(vue.unref(p))),[])),a=vue.computed({get(){return e.$dirty.value||(o.value.length?o.value.every(f=>f.$dirty):!1)},set(f){e.$dirty.value=f}}),r=vue.computed(()=>{const f=vue.unref(e.$silentErrors)||[],p=o.value.filter(g=>(vue.unref(g).$silentErrors||[]).length).reduce((g,_)=>g.concat(..._.$silentErrors),[]);return f.concat(p)}),s=vue.computed(()=>{const f=vue.unref(e.$errors)||[],p=o.value.filter(g=>(vue.unref(g).$errors||[]).length).reduce((g,_)=>g.concat(..._.$errors),[]);return f.concat(p)}),i=vue.computed(()=>o.value.some(f=>f.$invalid)||vue.unref(e.$invalid)||!1),l=vue.computed(()=>o.value.some(f=>vue.unref(f.$pending))||vue.unref(e.$pending)||!1),u=vue.computed(()=>o.value.some(f=>f.$dirty)||o.value.some(f=>f.$anyDirty)||a.value),c=vue.computed(()=>a.value?l.value||i.value:!1),d=()=>{e.$touch(),o.value.forEach(f=>{f.$touch()})},v=()=>{e.$commit(),o.value.forEach(f=>{f.$commit()})},m=()=>{e.$reset(),o.value.forEach(f=>{f.$reset()})};return o.value.length&&o.value.every(f=>f.$dirty)&&d(),{$dirty:a,$errors:s,$invalid:i,$anyDirty:u,$error:c,$pending:l,$touch:d,$reset:m,$silentErrors:r,$commit:v}}function setValidations(e){let{validations:n,state:t,key:o,parentKey:a,childResults:r,resultsCache:s,globalConfig:i={},instance:l,externalResults:u}=e;const c=a?`${a}.${o}`:o,{rules:d,nestedValidators:v,config:m,validationGroups:f}=sortValidations(n),p=_objectSpread2$1(_objectSpread2$1({},i),m),g=o?vue.computed(()=>{const R=vue.unref(t);return R?vue.unref(R[o]):void 0}):t,_=_objectSpread2$1({},vue.unref(u)||{}),h=vue.computed(()=>{const R=vue.unref(u);return o?R?vue.unref(R[o]):void 0:R}),b=createValidationResults(d,g,o,s,c,p,l,h,t),V=collectNestedValidationResults(v,g,c,s,p,l,h),S={};f&&Object.entries(f).forEach(R=>{let[G,U]=R;S[G]={$invalid:gatherBooleanGroupProperties(U,V,"$invalid"),$error:gatherBooleanGroupProperties(U,V,"$error"),$pending:gatherBooleanGroupProperties(U,V,"$pending"),$errors:gatherArrayGroupProperties(U,V,"$errors"),$silentErrors:gatherArrayGroupProperties(U,V,"$silentErrors")}});const{$dirty:$,$errors:w,$invalid:k,$anyDirty:P,$error:O,$pending:B,$touch:T,$reset:L,$silentErrors:E,$commit:z}=createMetaFields(b,V,r),F=o?vue.computed({get:()=>vue.unref(g),set:R=>{$.value=!0;const G=vue.unref(t),U=vue.unref(u);U&&(U[o]=_[o]),vue.isRef(G[o])?G[o].value=R:G[o]=R}}):null;o&&p.$autoDirty&&vue.watch(g,()=>{$.value||T();const R=vue.unref(u);R&&(R[o]=_[o])},{flush:"sync"});async function A(){return T(),p.$rewardEarly&&(z(),await vue.nextTick()),await vue.nextTick(),new Promise(R=>{if(!B.value)return R(!k.value);const G=vue.watch(B,()=>{R(!k.value),G()})})}function C(R){return(r.value||{})[R]}function D(){vue.isRef(u)?u.value=_:Object.keys(_).length===0?Object.keys(u).forEach(R=>{delete u[R]}):Object.assign(u,_)}return vue.reactive(_objectSpread2$1(_objectSpread2$1(_objectSpread2$1({},b),{},{$model:F,$dirty:$,$error:O,$errors:w,$invalid:k,$anyDirty:P,$pending:B,$touch:T,$reset:L,$path:c||ROOT_PATH,$silentErrors:E,$validate:A,$commit:z},r&&{$getResultsForChild:C,$clearExternalResults:D,$validationGroups:S}),V))}class ResultsStorage{constructor(){this.storage=new Map}set(n,t,o){this.storage.set(n,{rules:t,result:o})}checkRulesValidity(n,t,o){const a=Object.keys(o),r=Object.keys(t);return r.length!==a.length||!r.every(i=>a.includes(i))?!1:r.every(i=>t[i].$params?Object.keys(t[i].$params).every(l=>vue.unref(o[i].$params[l])===vue.unref(t[i].$params[l])):!0)}get(n,t){const o=this.storage.get(n);if(!o)return;const{rules:a,result:r}=o,s=this.checkRulesValidity(n,t,a),i=r.$unwatch?r.$unwatch:()=>({});return s?r:{$dirty:r.$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 o={},a=vue.ref([]),r=vue.computed(()=>a.value.reduce((c,d)=>(c[d]=vue.unref(o[d]),c),{}));function s(c,d){let{$registerAs:v,$scope:m,$stopPropagation:f}=d;f||n===CollectFlag.COLLECT_NONE||m===CollectFlag.COLLECT_NONE||n!==CollectFlag.COLLECT_ALL&&n!==m||(o[v]=c,a.value.push(v))}t.__vuelidateInjectInstances=[].concat(t.__vuelidateInjectInstances||[],s);function i(c){a.value=a.value.filter(d=>d!==c),delete o[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:r,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 o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};arguments.length===1&&(o=e,e=void 0,n=void 0);let{$registerAs:a,$scope:r=CollectFlag.COLLECT_ALL,$stopPropagation:s,$externalResults:i,currentVueInstance:l}=o;const u=l||((t=vue.getCurrentInstance())===null||t===void 0?void 0:t.proxy),c=u?u.$options:{};a||(uid+=1,a=`_vuelidate_${uid}`);const d=vue.ref({}),v=new ResultsStorage,{childResults:m,sendValidationResultsToParent:f,removeValidationResultsFromParent:p}=u?nestedValidations({$scope:r,instance:u}):{childResults:vue.ref({})};if(!e&&c.validations){const g=c.validations;n=vue.ref({}),vue.onBeforeMount(()=>{n.value=u,vue.watch(()=>isFunction$2(g)?g.call(n.value,new ComputedProxyFactory(n.value)):g,_=>{d.value=setValidations({validations:_,state:n,childResults:m,resultsCache:v,globalConfig:o,instance:u,externalResults:i||u.vuelidateExternalResults})},{immediate:!0})}),o=c.validationsConfig||o}else{const g=vue.isRef(e)||isProxy(e)?e:vue.reactive(e||{});vue.watch(g,_=>{d.value=setValidations({validations:_,state:n,childResults:m,resultsCache:v,globalConfig:o,instance:u??{},externalResults:i})},{immediate:!0})}return u&&(f.forEach(g=>g(d,{$registerAs:a,$scope:r,$stopPropagation:s})),vue.onBeforeUnmount(()=>p.forEach(g=>g(a)))),vue.computed(()=>_objectSpread2$1(_objectSpread2$1({},vue.unref(d.value)),m.value))}function ownKeys(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),t.push.apply(t,o)}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(o){_defineProperty(e,o,t[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(o){Object.defineProperty(e,o,Object.getOwnPropertyDescriptor(t,o))})}return e}function _defineProperty(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,o=new Array(t>1?t-1:0),a=1;a<t;a++)o[a-1]=arguments[a];return vue.unref(n).reduce((r,s,i)=>{const l=Object.entries(s).reduce((u,c)=>{let[d,v]=c;const m=e[d]||{},f=Object.entries(m).reduce((p,g)=>{let[_,h]=g;const V=unwrapNormalizedValidator(h).call(this,v,s,i,...o),S=unwrapValidatorResponse(V);if(p.$data[_]=V,p.$data.$invalid=!S||!!p.$data.$invalid,p.$data.$error=p.$data.$invalid,!S){let $=h.$message||"";const w=h.$params||{};typeof $=="function"&&($=$({$pending:!1,$invalid:!S,$params:w,$model:v,$response:V})),p.$errors.push({$property:d,$message:$,$params:w,$response:V,$model:v,$pending:!1,$validator:_})}return{$valid:p.$valid&&S,$data:p.$data,$errors:p.$errors}},{$valid:!0,$data:{},$errors:[]});return u.$data[d]=f.$data,u.$errors[d]=f.$errors,{$valid:u.$valid&&f.$valid,$data:u.$data,$errors:u.$errors}},{$valid:!0,$data:{},$errors:{}});return{$valid:r.$valid&&l.$valid,$data:r.$data.concat(l.$data),$errors:r.$errors.concat(l.$errors)}},{$valid:!0,$data:[],$errors:[]})},$message:n=>{let{$response:t}=n;return t?t.$errors.map(o=>Object.values(o).map(a=>a.map(r=>r.$message)).reduce((a,r)=>a.concat(r),[])):[]}}}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 o=>(o=vue.unref(o),!req(o)||n.every(a=>(a.lastIndex=0,a.test(o))))}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(o=>{o.$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$1$={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$1w={class:"vs-radio-button","data-test":"vs-radio-button"},_hoisted_2$13=["id"],_hoisted_3$Q={class:"visually-hidden"},_hoisted_4$B=["id"];function _sfc_render$1K(e,n,t,o,a,r){const s=vue.resolveComponent("BFormRadio"),i=vue.resolveComponent("BFormRadioGroup");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1w,[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&&!a.clearErrorsOnFocus]])),128))],8,_hoisted_2$13)):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:r.validateErrors,onChange:r.validateErrors,onFocus:r.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",[a.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=>r.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$B)):vue.createCommentVNode("",!0)])}const VsRadioButton=LoadingSpinner._export_sfc(_sfc_main$1$,[["render",_sfc_render$1K]]),_sfc_main$1_={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$1v={"data-test":"vs-number-input"},_hoisted_2$12=["id"],_hoisted_3$P=["id"],_hoisted_4$A={class:"visually-hidden"},_hoisted_5$r={class:"visually-hidden"};function _sfc_render$1J(e,n,t,o,a,r){const s=vue.resolveComponent("VsButton"),i=vue.resolveComponent("BFormInput");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1v,[t.hintText?(vue.openBlock(),vue.createElementBlock("p",{key:0,class:"hint-text",id:`hint-${t.fieldName}`},vue.toDisplayString(t.hintText),9,_hoisted_2$12)):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$A,vue.toDisplayString(t.fieldName),1),vue.createTextVNode(" "+vue.toDisplayString(t.validationMessages[l]||t.genericValidation[l]),1)])),[[vue.vShow,!t.reAlertErrors&&!a.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:a.inputVal<=t.minimumNumber?!0:null,onClick:r.decrementValue},{default:vue.withCtx(()=>[...n[2]||(n[2]=[vue.createTextVNode(" Remove 1 ",-1)])]),_:1},8,["disabled","onClick"]),vue.createVNode(i,{ref:"input",type:"Number",class:vue.normalizeClass(["vs-number-input",r.elementClass]),modelValue:a.inputVal,"onUpdate:modelValue":n[0]||(n[0]=l=>a.inputVal=l),id:t.fieldName,name:t.fieldName,required:e.isRequired,v:a.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:r.controlBlurred,onChange:r.validateErrors,onFocus:r.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:a.inputVal>=t.maximumNumber?!0:null,onClick:r.incrementValue},{default:vue.withCtx(()=>[...n[3]||(n[3]=[vue.createTextVNode(" Add 1 ",-1)])]),_:1},8,["disabled","onClick"]),r.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=>r.clearInputAndFocus(),["prevent"]))},{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_5$r,vue.toDisplayString(t.clearButtonText),1)]),_:1})):vue.createCommentVNode("",!0)])}const VsNumberInput=LoadingSpinner._export_sfc(_sfc_main$1_,[["render",_sfc_render$1J]]),_sfc_main$1Z={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$1u=["for"];function _sfc_render$1I(e,n,t,o,a,r){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$1u),t.fieldType==="radio"?(vue.openBlock(),vue.createBlock(s,{key:0,"field-name":t.fieldName,options:t.options,required:!0,"hint-text":t.hint,onUpdateFieldData:r.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:r.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$1Z,[["render",_sfc_render$1I]]),_sfc_main$1Y={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:o}=e;for(let a=0;a<o.length;a++)o[a].text=this.labelsMap[`question-${t+1}.option-${a+1}`];return o}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 a=0;a<this.formData.fields.length;a++)this.formData.fields[a].name===e&&(t=this.formData.fields[a]);const o=t.values[n];if(t.multiplyByNumber)return o*t.multiplyByNumber;if(t.multiplyByAnswer){let a=this.form[t.multiplyByAnswer.question]||0;return a=Math.max(a,t.multiplyByAnswer.minimum),o*a}if(t.multiplyByValue&&e!==t.multiplyByValue){let a=this.getNumberValue(t.multiplyByValue.question,this.form[t.multiplyByValue.question])||0;return a=Math.max(a,t.multiplyByValue.minimum),o*a}return o},getNumberValue(e,n){if(!n)return 0;let t;for(let o=0;o<this.formData.fields.length;o++)this.formData.fields[o].name===e&&(t=this.formData.fields[o]);if(t.multiplyByNumber)return parseInt(n,10)*t.multiplyByNumber;if(t.multiplyByAnswer){const o=this.form[t.multiplyByAnswer.question]||0;return parseInt(n,10)*o}if(t.multiplyByValue&&e!==t.multiplyByValue){const o=this.getNumberValue(t.multiplyByValue.question,this.form[t.multiplyByValue.question]);return parseInt(n,10)*o}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(o=>o.name===e);let t=!0;Object.keys(n.conditional).forEach(o=>{const a=n.conditional[o];Array.isArray(a)?a.indexOf(this.form[o])===-1&&(t=!1):this.form[o]!==a&&(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 o=this.formData.fields[t];if(o.stage===this.activeStage&&!o.isClone){const a=JSON.parse(JSON.stringify(o));a.isClone=!0;const r=`${o.name}${n}`;a.name=r,a.originalNumber=t,this.form[r]="",this.formData.fields.push(a)}}this.repeatableStages[this.activeStage].generations=n}}},_hoisted_1$1t={class:"vs-carbon-calculator__wrapper"},_hoisted_2$11={key:1};function _sfc_render$1H(e,n,t,o,a,r){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"),m=vue.resolveComponent("VsCarbonCalculatorRunningTotal"),f=vue.resolveComponent("VsCarbonCalculatorResults"),p=vue.resolveComponent("VsRow"),g=vue.resolveComponent("VsContainer"),_=vue.resolveComponent("VsWarning");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1t,[vue.createVNode(g,{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$11,[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,[r.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(r.currentCategory),1)]),_:1})):vue.createCommentVNode("",!0),(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.formData.fields,(h,b)=>vue.withDirectives((vue.openBlock(),vue.createBlock(u,{ref_for:!0,ref:"questions",tabindex:"0",key:h.name,label:r.getQuestionLabel(h,b),"label-for":h.name,hint:r.getQuestionHint(h,b),"field-class":r.conditionalElementClass(h.name),"field-type":h.element,"field-name":h.name,options:r.getQuestionOptions(h,b),minimum:h.element==="number"?h.validation.min:0,maximum:h.element==="number"?h.validation.max:0,onUpdateFieldData:r.updateFieldData},null,8,["label","label-for","hint","field-class","field-type","field-name","options","minimum","maximum","onUpdateFieldData"])),[[vue.vShow,h.stage===e.activeStage]])),128))],512),[[vue.vShow,e.activeStage<=e.formData.fields.length]])])])):vue.createCommentVNode("",!0),r.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]=h=>r.duplicateCurrentStage())},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.activeStageRepeatable),1)]),_:1})):vue.createCommentVNode("",!0),r.currentTip?(vue.openBlock(),vue.createBlock(d,{key:3,tip:r.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(m,{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(f,{key:1,"total-kilos":e.totalKilos,"transport-kilos":e.transportKilos,"food-kilos":e.foodKilos,"accommodation-kilos":e.accommodationKilos,"stay-duration":r.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]=h=>r.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]=h=>r.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]=h=>r.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]=h=>r.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]=h=>r.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(_,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.labelsMap.noJsMessage),1)]),_:1})])}const CarbonCalculator=LoadingSpinner._export_sfc(_sfc_main$1Y,[["render",_sfc_render$1H]]),_sfc_main$1X={name:"VsCard",status:"prototype",release:"0.1.0",provide(){return{registerMedia:e=>{this.mediaComponent=e}}},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,mediaComponent:null}},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}},methods:{toggle(){var e,n;this.mediaComponent&&((n=(e=this.mediaComponent)==null?void 0:e.toggleVideo)==null||n.call(e))}}},_hoisted_1$1s={key:0,class:"vs-card__header"},_hoisted_2$10={class:"vs-card__body"},_hoisted_3$O={key:1,class:"vs-card__footer"},_hoisted_4$z={key:2,class:"vs-card__media"},_hoisted_5$q={key:3,class:"vs-card__overlay-controls"};function _sfc_render$1G(e,n,t,o,a,r){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-card",r.cardClasses]),"data-test":"vs-card",style:vue.normalizeStyle(r.cardStyles)},[e.$slots["vs-card-header"]&&e.$slots["vs-card-header"]()?(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1s,[vue.renderSlot(e.$slots,"vs-card-header")])):vue.createCommentVNode("",!0),vue.createElementVNode("div",_hoisted_2$10,[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$z,[vue.renderSlot(e.$slots,"vs-card-image")])):vue.createCommentVNode("",!0),e.$slots["vs-card-overlay-controls"]&&e.$slots["vs-card-overlay-controls"]()?(vue.openBlock(),vue.createElementBlock("div",_hoisted_5$q,[vue.renderSlot(e.$slots,"vs-card-overlay-controls")])):vue.createCommentVNode("",!0)],6)}const VsCard=LoadingSpinner._export_sfc(_sfc_main$1X,[["render",_sfc_render$1G]]),_sfc_main$1W={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$1F(e,n,t,o,a,r){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(r.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$1W,[["render",_sfc_render$1F]]),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"&&this.requiredCookies&&(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],google_maps:[cookieCategories.analytical,cookieCategories.marketing]},cookieValues$4=cookieValues$5.youtube,_sfc_main$1V={name:"VsStretchedLinkCard",status:"deprecated",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$1r={key:0,class:"vs-stretched-link-card__video-btn-text"},_hoisted_2$$={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$y={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$1E(e,n,t,o,a,r){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",r.stretchedLinkCardClasses]),"data-test":"vs-stretched-link-card",onClick:n[0]||(n[0]=(...d)=>r.emitShowModal&&r.emitShowModal(...d)),onKeypress:n[1]||(n[1]=(...d)=>r.emitShowModal&&r.emitShowModal(...d))},[r.showWarning==="full"?(vue.openBlock(),vue.createBlock(s,{key:0,size:t.warningSize,type:r.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(r.warningMessage)+" ",1)]),_:2},[r.cookieLinkText!==""&&r.showCookieWarning?{name:"button-text",fn:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.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(r.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",r.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",r.isSvg?"vs-stretched-link-card__img--svg":""]),"data-test":"vs-stretched-link-card__img","data-chromatic":"ignore"},null,8,["src","alt","class"]),t.videoId&&r.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:r.emitShowModal},{default:vue.withCtx(()=>[t.videoBtnText?(vue.openBlock(),vue.createElementBlock("span",_hoisted_1$1r,vue.toDisplayString(r.formattedVideoBtnText),1)):vue.createCommentVNode("",!0),vue.createTextVNode(" "+vue.toDisplayString(r.formattedVideoDuration),1)]),_:1},8,["onClick"])):vue.createCommentVNode("",!0)],64)):vue.createCommentVNode("",!0),r.showWarning==="image"?(vue.openBlock(),vue.createBlock(s,{key:1,size:t.warningSize,type:r.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(r.warningMessage)+" ",1)]),_:2},[r.cookieLinkText!==""&&r.showCookieWarning?{name:"button-text",fn:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.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(r.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),r.showWarning!=="full"?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$$,[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:r.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$y,[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$1V,[["render",_sfc_render$1E]]),_sfc_main$1U={name:"VsStretchedLinkPanels",status:"deprecated",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$1q={class:"vs-stretched-link-panels"},_hoisted_2$_={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$x={class:"vs-stretched-link-panels__days"},_hoisted_5$o={class:"vs-stretched-link-panels__panel","data-test":"vs-stretched-link-panel"},_hoisted_6$i={"data-test":"vs-stretched-link-panel__icon"};function _sfc_render$1D(e,n,t,o,a,r){const s=vue.resolveComponent("VsIcon");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1q,[vue.createElementVNode("div",_hoisted_2$_,[vue.createElementVNode("p",_hoisted_3$M,[vue.createElementVNode("span",_hoisted_4$x,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$i,vue.toDisplayString(t.transportName),1)])])}const VsStretchedLinkPanels=LoadingSpinner._export_sfc(_sfc_main$1U,[["render",_sfc_render$1D]]),_sfc_main$1T={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$1p={class:"vs-carousel-slide"},_hoisted_2$Z={class:"visually-hidden"},_hoisted_3$L={class:"vs-carousel-slide__title","data-test":"vs-carousel-slide__title"};function _sfc_render$1C(e,n,t,o,a,r){const s=vue.resolveComponent("VsStretchedLinkPanels"),i=vue.resolveComponent("VsStretchedLinkCard"),l=vue.resolveComponent("VsCol");return vue.openBlock(),vue.createBlock(l,{cols:r.slideCols.xs,sm:r.slideCols.sm,lg:r.slideCols.md,xl:r.slideCols.lg,"data-test":"vs-carousel-slide","aria-disabled":!r.isVisible(t.slideIndex)},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$1p,[vue.createVNode(i,{link:t.linkUrl,type:t.linkType,"img-src":t.imgSrc,"img-alt":t.imgAlt,class:vue.normalizeClass([r.isVisible(t.slideIndex)?"vs-carousel-slide__card--active":"vs-carousel-slide__card--disabled","vs-carousel-slide__card"]),disabled:!r.isVisible(t.slideIndex),"data-test":"vs-carousel-card"},vue.createSlots({"stretched-card-category":vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_2$Z,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$1T,[["render",_sfc_render$1C]]),_sfc_main$1S={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$1o=["id"],_hoisted_2$Y=["innerHTML"],_hoisted_3$K=["id"],_hoisted_4$w={class:"visually-hidden"},_hoisted_5$n={class:"vs-checkbox__label"};function _sfc_render$1B(e,n,t,o,a,r){const s=vue.resolveComponent("BFormCheckbox");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(r.checkBoxClasses)},[vue.createElementVNode("p",{class:"hint-text",id:`hint-${t.fieldName}`},vue.toDisplayString(t.hintText),9,_hoisted_1$1o),t.infoText!==""?(vue.openBlock(),vue.createElementBlock("div",{key:0,innerHTML:t.infoText},null,8,_hoisted_2$Y)):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$w,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:a.inputVal,"onUpdate:modelValue":n[0]||(n[0]=i=>a.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$1S,[["render",_sfc_render$1B]]),_sfc_main$1R={name:"VsDescriptionList",status:"prototype",release:"0.0.1",provide(){return{inline:vue.computed(()=>this.inline)}},props:{inline:{type:Boolean,default:!1}}};function _sfc_render$1A(e,n,t,o,a,r){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$1R,[["render",_sfc_render$1A]]),_sfc_main$1Q={name:"VsDescriptionListItem",status:"prototype",release:"0.0.1",components:{VsCol:LoadingSpinner.VsCol},inject:["inline"],props:{title:{type:Boolean,default:!1}}};function _sfc_render$1z(e,n,t,o,a,r){const s=vue.resolveComponent("VsCol");return vue.openBlock(),vue.createBlock(s,{tag:t.title?"dt":"dd",class:vue.normalizeClass({"list-inline-item":r.inline,"vs-description-list__detail":!t.title,"vs-description-list__detail--styled":!r.inline&&!t.title,"vs-description-list__term":t.title,"vs-description-list__term--styled":!r.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$1Q,[["render",_sfc_render$1z],["__scopeId","data-v-46cd5138"]]),_sfc_main$1P={name:"VsDetail",status:"prototype",release:"0.0.1",components:{VsIcon:LoadingSpinner.VsIcon},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},icon:{type:String,default:""},iconVariant:{type:String,default:"primary",validator:e=>e.match(/(primary|secondary|tertiary|cta|inverse|disabled|highlight|error|warning|success)/)}},computed:{detailClasses(){return["vs-detail",`vs-detail--${this.size}`,`vs-detail--${this.color}`,...this.icon?["d-flex","align-items-baseline"]:[],...this.noMargins?[]:["vs-detail--with-margins"]]},iconSize(){return this.size==="small"?"xxs":"xs"}}};function _sfc_render$1y(e,n,t,o,a,r){const s=vue.resolveComponent("VsIcon");return vue.openBlock(),vue.createElementBlock("p",{class:vue.normalizeClass(r.detailClasses)},[t.icon?(vue.openBlock(),vue.createBlock(s,{key:0,class:"me-050 flex-shrink-0",icon:t.icon,size:r.iconSize,variant:t.iconVariant},null,8,["icon","size","variant"])):vue.createCommentVNode("",!0),vue.createElementVNode("span",null,[vue.renderSlot(e.$slots,"default")])],2)}const VsDetail=LoadingSpinner._export_sfc(_sfc_main$1P,[["render",_sfc_render$1y]]),_sfc_main$1O={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$1n={class:"dropdown-menu overflow-auto",role:"menu"};function _sfc_render$1x(e,n,t,o,a,r){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(r.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$1n,[vue.renderSlot(e.$slots,"default")])],2)],64)}const VsDropdown=LoadingSpinner._export_sfc(_sfc_main$1O,[["render",_sfc_render$1x]]),_sfc_main$1N={name:"VsDropdownItem",status:"prototype",release:"0.0.1",components:{BDropdownItem:LoadingSpinner.Xi}};function _sfc_render$1w(e,n,t,o,a,r){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$1N,[["render",_sfc_render$1w]]),cookieValues$3=cookieValues$5.embed,_sfc_main$1M={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}},mounted(){this.embeddedScript&&this.noCookiesRequired&&this.loadScript()},methods:{loadScript(){const e=document.createElement("script");e.src=this.embeddedScript,document.head.appendChild(e)},callbackOnUpdated(){this.embeddedScript&&this.cookiesLoaded&&this.requiredCookiesAllowed&&this.loadScript()}}},_hoisted_1$1m={"data-test":"vs-embed-wrapper",class:"vs-embed-wrapper"},_hoisted_2$X={class:"vs-embed-wrapper__container",key:"embeddedContent"},_hoisted_3$J={key:"fallback"},_hoisted_4$v=["innerHTML"];function _sfc_render$1v(e,n,t,o,a,r){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$1m,[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"]()&&!r.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$X,[vue.renderSlot(e.$slots,"embed-widget")])):vue.createCommentVNode("",!0),r.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(r.warningText)+" ",1)]),_:2},[t.extraContent?{name:"extra-content",fn:vue.withCtx(()=>[vue.createElementVNode("div",{innerHTML:t.extraContent},null,8,_hoisted_4$v)]),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$1M,[["render",_sfc_render$1v]]),_sfc_main$1L={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$1l={class:"card vs-event-card","data-test":"vs-event-card"},_hoisted_2$W={class:"card-body"},_hoisted_3$I={class:"vs-event-card__date"},_hoisted_4$u={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$1u(e,n,t,o,a,r){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$1l,[vue.createElementVNode("div",_hoisted_2$W,[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$u,[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$1L,[["render",_sfc_render$1u]]),_hoisted_1$1k=["id"],_hoisted_2$V={class:"vs-filter__panel-wrapper"},_hoisted_3$H={class:"vs-filter__legend"},_sfc_main$1K={__name:"VsFilter",props:{filterId:{type:String,required:!0},filterLabel:{type:String,required:!0}},emits:["filter-updated"],setup(e,{expose:n}){const t=e,o=vue.ref(),a=i=>{const l=i;l.type==="checkbox"?l.checked=!1:l.type==="date"&&(l.value="")};return n({clearFilter:a,resetAll:()=>{o.value.querySelectorAll('input[type="checkbox"], input[type="date"]').forEach(l=>{a(l)})},resetOne:i=>{const l=o.value.querySelector(`#${i}`);a(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:o},[vue.createElementVNode("div",_hoisted_2$V,[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$1k),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$1j={key:0,class:"vs-filter-section__details"},_hoisted_2$U={class:"vs-filter-section__summary"},_hoisted_3$G={key:1,class:"vs-filter-section__section"},_sfc_main$1J={__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(o,a)=>(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$1j,[vue.createElementVNode("summary",_hoisted_2$U,[vue.createTextVNode(vue.toDisplayString(n.sectionTitle)+" ",1),vue.createVNode(LoadingSpinner.VsIcon,{icon:"vs-icon-control-expand",variant:"highlight"})]),vue.renderSlot(o.$slots,"default")])):(vue.openBlock(),vue.createElementBlock("div",_hoisted_3$G,[vue.renderSlot(o.$slots,"default")]))],2))}};function createHydrationCleanup(){let e=[];return{cleanup:()=>{e=e.filter(o=>(o(),!1))},onCleanup:o=>{e.push(o)}}}function createHydrationPromise(e){let n=()=>{};const t=new Promise(a=>{n=()=>{e(),a()}});return{promise:t,resolvePromise:n,onResolvedPromise:a=>{t.then(a)}}}function trackDepsOnRender(e){const n=e.effect.fn,t=e.render;e.render=(...o)=>{e.effect.fn=()=>t(...o);const a=e.effect.run();return e.effect.fn=n,e.render=t,a}}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 o=e.children[t]();if(Array.isArray(o)){o.forEach(a=>traverseChildren(a,n));return}traverseChildren(o,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,o=>{isAsyncWrapper(o)&&t.push(o.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:o}=createHydrationCleanup(),{promise:a,resolvePromise:r,onResolvedPromise:s}=createHydrationPromise(t),i=l=>s(()=>vue.nextTick(()=>waitForAsyncComponents(e,l)));return e.type.__asyncLoader=()=>a,ensureParentHasSubTreeEl(e.parent),vue.onBeforeMount(()=>{e.asyncDep=new Promise(l=>{l(!0)})}),s(()=>{trackDepsOnRender(e),e.asyncDep=null}),vue.onUnmounted(t),{willPerformHydration:n,hydrate:r,onHydrated:i,onCleanup:o}}function useHydrateWhenIdle({willPerformHydration:e,hydrate:n,onCleanup:t},o=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 a=requestIdleCallback(()=>{n()},{timeout:o});t(()=>{cancelIdleCallback(a)})}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 o=e.el.nextSibling;for(;o;){if(o&&isElement(o)&&t.push(o),o===n.anchor)return t;o=o.nextSibling}}return t}function useHydrateOnInteraction({willPerformHydration:e,hydrate:n,onCleanup:t},o=["focus"]){if(!e)return;const a=vue.getCurrentInstance();if(!a||a.isMounted)throw new Error("useHydrateOnInteraction must be called from the setup method.");const r=vue.unref(o);vue.onMounted(()=>{const s=getRootElements(a),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()})};r.forEach(c=>{i.addEventListener(c,u,l)}),t(()=>{r.forEach(c=>{i.removeEventListener(c,u,l)})})})}function useHydrateWhenTriggered({willPerformHydration:e,hydrate:n,onCleanup:t},o){if(!e)return;if(!vue.getCurrentInstance())throw new Error("useHydrateWhenTriggered must be called from the setup or lifecycle hook methods.");const a=vue.watch(vue.isRef(o)?o:()=>o,r=>{r&&n()},{immediate:!0});t(a)}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 o=new IntersectionObserver(a=>{a.forEach(r=>{!(r.isIntersecting||r.intersectionRatio>0)||!r.target.hydrate||r.target.hydrate()})},e);return observers.set(t,o),{supported:n,observer:o}}function useHydrateWhenVisible({willPerformHydration:e,hydrate:n,onCleanup:t},o){if(!e)return;const a=vue.getCurrentInstance();if(!a||a.isMounted)throw new Error("useHydrateWhenVisible must be called from the setup method.");const{supported:r,observer:s}=createHydrationObserver(o);if(!r){n();return}vue.onMounted(()=>{const i=getRootElements(a);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 o=useLazyHydration();if(!o.willPerformHydration)return()=>normalizeSlot(n.default());if(o.onHydrated(()=>t("hydrated")),e.whenIdle&&useHydrateWhenIdle(o,e.whenIdle!==!0?e.whenIdle:void 0),e.whenVisible&&useHydrateWhenVisible(o,e.whenVisible!==!0?e.whenVisible:void 0),e.onInteraction){let a;e.onInteraction!==!0&&(a=vue.computed(()=>Array.isArray(e.onInteraction)?e.onInteraction:[e.onInteraction]).value),useHydrateOnInteraction(o,a)}return e.whenTriggered!==void 0&&useHydrateWhenTriggered(o,vue.toRef(e,"whenTriggered")),()=>normalizeSlot(n.default())}}),LazyHydrationWrapper$1=vue.markRaw(LazyHydrationWrapper),_sfc_main$1I={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$1i={class:"vs-footer-nav-list"};function _sfc_render$1t(e,n,t,o,a,r){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$1i,[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$1I,[["render",_sfc_render$1t]]),_sfc_main$1H={name:"VsFooter",status:"prototype",release:"0.1.0",components:{VsFooterNavList,VsCol:LoadingSpinner.VsCol,VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow}},_hoisted_1$1h={class:"vs-footer pt-150 pt-md-300","data-unique-id":"vs-footer",id:"site-footer"},_hoisted_2$T={class:"vs-footer__social-menu-wrapper"};function _sfc_render$1s(e,n,t,o,a,r){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$1h,[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$T,[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$1H,[["render",_sfc_render$1s]]),_sfc_main$1G={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$1r(e,n,t,o,a,r){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":r.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$1G,[["render",_sfc_render$1r]]),_sfc_main$1F={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$1g={class:"vs-footer-nav-list-item","data-test":"vs-footer-nav-list-item",role:"menuitem"};function _sfc_render$1q(e,n,t,o,a,r){const s=vue.resolveComponent("VsLink");return vue.openBlock(),vue.createElementBlock("li",_hoisted_1$1g,[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$1F,[["render",_sfc_render$1q]]),_sfc_main$1E={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$1p(e,n,t,o,a,r){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$1E,[["render",_sfc_render$1p]]),_sfc_main$1D={name:"VsFooterSocialMenu",status:"prototype",release:"0.0.1",components:{VsList,VsHeading:LoadingSpinner.VsHeading}},_hoisted_1$1f={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$1o(e,n,t,o,a,r){const s=vue.resolveComponent("VsHeading"),i=vue.resolveComponent("VsList");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1f,[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$1D,[["render",_sfc_render$1o]]),_sfc_main$1C={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$1e={class:"vs-footer-social-item","data-test":"vs-footer-social-item"};function _sfc_render$1n(e,n,t,o,a,r){const s=vue.resolveComponent("VsIcon"),i=vue.resolveComponent("VsLink");return vue.openBlock(),vue.createElementBlock("li",_hoisted_1$1e,[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$1C,[["render",_sfc_render$1n]]),_sfc_main$1B={name:"VsFooterUtilityList",status:"prototype",release:"0.0.1",components:{VsList,VsRow:LoadingSpinner.VsRow,VsContainer:LoadingSpinner.VsContainer,VsCol:LoadingSpinner.VsCol}},_hoisted_1$1d={class:"vs-footer-utility-list","data-test":"vs-footer-utility-list","data-unique-id":"vs-footer-utility_links"};function _sfc_render$1m(e,n,t,o,a,r){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$1d,[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$1B,[["render",_sfc_render$1m]]),files=Object.assign({"../assets/svg/brandscotland-logo.svg":()=>Promise.resolve().then(()=>require("./brandscotland-logo-BbDMkgti.js")).then(e=>e.default),"../assets/svg/cookie-coo.svg":()=>Promise.resolve().then(()=>require("./cookie-coo-Bc1O8aR_.js")).then(e=>e.default),"../assets/svg/highland-cow.svg":()=>Promise.resolve().then(()=>require("./highland-cow-CRm5ANrL.js")).then(e=>e.default),"../assets/svg/iCentre.svg":()=>Promise.resolve().then(()=>require("./iCentre-BeepnBTk.js")).then(e=>e.default),"../assets/svg/icons/docs/deprecated.svg":()=>Promise.resolve().then(()=>require("./deprecated-Cl9osRH8.js")).then(e=>e.default),"../assets/svg/icons/docs/prototype.svg":()=>Promise.resolve().then(()=>require("./prototype-ggLuAMuB.js")).then(e=>e.default),"../assets/svg/icons/docs/ready.svg":()=>Promise.resolve().then(()=>require("./ready-DSUouF6L.js")).then(e=>e.default),"../assets/svg/icons/docs/review.svg":()=>Promise.resolve().then(()=>require("./review-Bi0lAugE.js")).then(e=>e.default),"../assets/svg/icons/instagram-filled.svg":()=>Promise.resolve().then(()=>require("./instagram-filled-CvF3WA5q.js")).then(e=>e.default),"../assets/svg/no-js-coo.svg":()=>Promise.resolve().then(()=>require("./no-js-coo-BEt1aICD.js")).then(e=>e.default),"../assets/svg/os-logo-maps-white.svg":()=>Promise.resolve().then(()=>require("./os-logo-maps-white-DOUatF7F.js")).then(e=>e.default),"../assets/svg/os-logo-maps.svg":()=>Promise.resolve().then(()=>require("./os-logo-maps-CF9QEvIX.js")).then(e=>e.default),"../assets/svg/visitscotland-logo.svg":()=>Promise.resolve().then(()=>require("./visitscotland-logo-yAzNpi5x.js")).then(e=>e.default)}),newFiles={};for(const[e,n]of Object.entries(files)){const t=e.replace("../assets/svg",".");newFiles[t]=n}const output=newFiles,_sfc_main$1A={name:"VsSvg",release:"0.1.1",status:"prototype",props:{path:{type:String,required:!0},fill:{type:String,default:""},height:{type:[Number,String],default:""},width:{type:[Number,String],default:""}},data(){return{svg:null}},computed:{nativeAttrs(){if(this.svg){const n=LoadingSpinner.lodashExports.first(this.svg.match(/<svg[^>]+.*?>/)).match(/(\S+)=["']?((?:.(?!["']?\s+(?:\S+)=|[>"']))+.)["']?/g),t=LoadingSpinner.lodashExports.fromPairs(LoadingSpinner.lodashExports.map(n,LoadingSpinner.lodashExports.partial(LoadingSpinner.lodashExports.split,LoadingSpinner.lodashExports.partial.placeholder,"=",2)));return LoadingSpinner.lodashExports.mapValues(t,LoadingSpinner.lodashExports.partial(LoadingSpinner.lodashExports.replace,LoadingSpinner.lodashExports.partial.placeholder,/"/g,""))}return null},attributes(){if(this.svg){const e={};let n={};return this.fill&&(LoadingSpinner.lodashExports.has(this.nativeAttrs,"style")?(n=this.nativeStyleAttrMap,n.fill=this.fill):n={fill:this.fill},e.style=LoadingSpinner.lodashExports.join(LoadingSpinner.lodashExports.map(LoadingSpinner.lodashExports.toPairs(n),LoadingSpinner.lodashExports.partial(LoadingSpinner.lodashExports.join,LoadingSpinner.lodashExports.partial.placeholder,":")),";")),this.height&&(e.height=this.height),this.width&&(e.width=this.width),LoadingSpinner.lodashExports.extend({},this.nativeAttrs,e)}return null},nativeStyleAttrMap(){if(this.svg){const e=LoadingSpinner.lodashExports.map(LoadingSpinner.lodashExports.split(this.nativeAttrs.style,";"),LoadingSpinner.lodashExports.ary(LoadingSpinner.lodashExports.partial(LoadingSpinner.lodashExports.split,LoadingSpinner.lodashExports.partial.placeholder,":"),1));return LoadingSpinner.lodashExports.fromPairs(e)}return null},children(){return this.svg?LoadingSpinner.lodashExports.nth(this.svg.match(/(<svg[^>]+.*?>)([\s\S]*)(<\/svg>)/),2):null}},mounted(){typeof output=="function"?this.svg=output(`./${this.path}.svg`):output[`./${this.path}.svg`]().then(e=>{this.svg=e})}},_hoisted_1$1c=["innerHTML"];function _sfc_render$1l(e,n,t,o,a,r){return a.svg?(vue.openBlock(),vue.createElementBlock("svg",vue.mergeProps({key:0},r.attributes,{innerHTML:r.children,focusable:"false"}),null,16,_hoisted_1$1c)):vue.createCommentVNode("",!0)}const VsSvg=LoadingSpinner._export_sfc(_sfc_main$1A,[["render",_sfc_render$1l]]),_sfc_main$1z={name:"VsSvgLink",status:"prototype",release:"0.0.1",components:{VsSvg,VsLink},props:{linkAltText:{type:String,required:!0},href:{type:String,required:!0},svgFill:{type:String,default:""},svgPath:{type:String,required:!0},svgHeight:{type:[Number,String],default:""},svgWidth:{type:[Number,String],default:""},dataLayerValue:{type:String,default:null},linkVariant:{type:String,default:"primary",validator:e=>e.match(/(primary|on-dark)/)}}},_hoisted_1$1b={class:"visually-hidden","data-test":"link-alt-text"};function _sfc_render$1k(e,n,t,o,a,r){const s=vue.resolveComponent("VsSvg"),i=vue.resolveComponent("VsLink");return vue.openBlock(),vue.createBlock(i,{class:"vs-svg-link","data-test":"vs-svg-link",href:t.href,"data-layer-value":t.dataLayerValue,variant:t.linkVariant},{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_1$1b,vue.toDisplayString(t.linkAltText),1),vue.createVNode(s,{"data-test":"vs-svg-link__svg",focusable:"false",path:t.svgPath,fill:t.svgFill,width:t.svgWidth,height:t.svgHeight},null,8,["path","fill","width","height"])]),_:1},8,["href","data-layer-value","variant"])}const VsSvgLink=LoadingSpinner._export_sfc(_sfc_main$1z,[["render",_sfc_render$1k]]),_sfc_main$1y={name:"VsFooterCopyright",status:"prototype",release:"0.0.1",components:{VsSvgLink,VsRow:LoadingSpinner.VsRow,VsContainer:LoadingSpinner.VsContainer,VsCol:LoadingSpinner.VsCol},props:{linkAltText:{type:String,required:!0},href:{type:String,required:!0}},data(){return{currentYear:""}},computed:{getCurrentYear(){return new Date().getFullYear()}}},_hoisted_1$1a={class:"vs-footer-copyright","data-unique-id":"vs-footer-sub_footer","data-test":"vs-footer-copyright"},_hoisted_2$S={class:"vs-footer-copyright__text"};function _sfc_render$1j(e,n,t,o,a,r){const s=vue.resolveComponent("VsSvgLink"),i=vue.resolveComponent("VsCol"),l=vue.resolveComponent("VsRow"),u=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1a,[vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.createVNode(i,{cols:"12",class:"text-center"},{default:vue.withCtx(()=>[vue.createVNode(s,{class:"vs-footer-copyright__logo mb-100","data-test":"vs-footer-copyright-logo","link-alt-text":t.linkAltText,href:t.href,"svg-fill":"#ffffff","svg-path":"brandscotland-logo","link-variant":"on-dark"},null,8,["link-alt-text","href"]),vue.createElementVNode("p",_hoisted_2$S,[vue.createTextVNode(" © "+vue.toDisplayString(r.getCurrentYear)+" ",1),vue.renderSlot(e.$slots,"copyright")])]),_:3})]),_:3})]),_:3})])}const FooterCopyright=LoadingSpinner._export_sfc(_sfc_main$1y,[["render",_sfc_render$1j]]),_sfc_main$1x={name:"VsGlobalMenu",status:"deprecated",release:"0.1.0",components:{VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,LazyHydrationWrapper:LazyHydrationWrapper$1},props:{dropdownLabel:{type:String,default:"Our Websites"}},data(){return{websites:[{siteName:"VisitScotland",siteUrl:"https://www.visitscotland.com/"},{siteName:"Business Events",siteUrl:"https://businessevents.visitscotland.com/"},{siteName:"Travel Trade",siteUrl:"https://traveltrade.visitscotland.org/"},{siteName:"Toolkit",siteUrl:"https://toolkit.visitscotland.org/"},{siteName:"Corporate",siteUrl:"https://www.visitscotland.org/"}]}}},_hoisted_1$19={class:"vs-global-menu"};function _sfc_render$1i(e,n,t,o,a,r){const s=vue.resolveComponent("VsCol"),i=vue.resolveComponent("VsRow"),l=vue.resolveComponent("VsContainer"),u=vue.resolveComponent("LazyHydrationWrapper");return vue.openBlock(),vue.createElementBlock("nav",_hoisted_1$19,[vue.createVNode(u,{"on-interaction":["focus","click"]},{default:vue.withCtx(()=>[vue.createVNode(l,{fluid:"lg",class:"px-025 px-sm-075"},{default:vue.withCtx(()=>[vue.createVNode(i,null,{default:vue.withCtx(()=>[vue.createVNode(s,{cols:"12",class:"vs-global-menu__wrapper"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"third-menu-item")]),_:3})]),_:3})]),_:3})]),_:3})])}const GlobalMenu=LoadingSpinner._export_sfc(_sfc_main$1x,[["render",_sfc_render$1i]]),_sfc_main$1w={name:"VsGlobalMenuLanguage",status:"prototype",release:"0.1.0",components:{VsDropdown,VsIcon:LoadingSpinner.VsIcon},mixins:[cookieMixin],props:{languageLabel:{type:String,default:"Language"},language:{type:String,default:"en"}},mounted(){this.cookieExists("vs_locale")||this.setCookie("vs_locale",this.localeCookie,!0),this.cookieExists("googtrans")||this.setCookie("googtrans",this.translationCookie,!0)}},_hoisted_1$18={class:"vs-global-menu__languages__text"},_hoisted_2$R={class:"vs-global-menu__languages__selected"},_hoisted_3$F={class:"vs-global-menu__languages__label",role:"menuitem"};function _sfc_render$1h(e,n,t,o,a,r){const s=vue.resolveComponent("VsIcon"),i=vue.resolveComponent("VsDropdown");return vue.openBlock(),vue.createBlock(i,{variant:"primary",class:"vs-global-menu__languages"},{"button-content":vue.withCtx(()=>[vue.createVNode(s,{class:"vs-global-menu__languages__icon",icon:"fa-regular fa-globe",variant:"inverse",size:"xxs",focusable:"false"}),vue.createElementVNode("span",_hoisted_1$18,vue.toDisplayString(t.languageLabel),1),vue.createElementVNode("span",_hoisted_2$R,vue.toDisplayString(e.selectedLanguage),1)]),default:vue.withCtx(()=>[vue.createElementVNode("li",_hoisted_3$F,[vue.createVNode(s,{icon:"fa-regular fa-globe",variant:"inverse",size:"xxs",focusable:"false"}),vue.createTextVNode(" "+vue.toDisplayString(t.languageLabel),1)]),vue.renderSlot(e.$slots,"default")]),_:3})}const GlobalMenuLanguage=LoadingSpinner._export_sfc(_sfc_main$1w,[["render",_sfc_render$1h]]),_sfc_main$1v={name:"VsGlobalMenuLanguageItem",status:"prototype",release:"0.1.0",components:{VsDropdownItem},mixins:[cookieMixin],props:{languageName:{type:String,default:null},languageLink:{type:String,default:null},language:{type:String,default:null}},methods:{setLanguage(){const e=this.cookieExists("vs_locale"),n=this.cookieExists("googtrans");this.setCookie("vs_locale",this.localeCookie,!e),this.setCookie("googtrans",this.translationCookie,!n)}}};function _sfc_render$1g(e,n,t,o,a,r){const s=vue.resolveComponent("VsDropdownItem");return vue.openBlock(),vue.createBlock(s,{class:"vs-global-menu__languages__item",href:t.languageLink,onClick:n[0]||(n[0]=i=>r.setLanguage())},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.languageName),1)]),_:1},8,["href"])}const GlobalMenuLanguageItem=LoadingSpinner._export_sfc(_sfc_main$1v,[["render",_sfc_render$1g]]),_sfc_main$1u={name:"VsMediaCaption",status:"prototype",release:"0.0.1",components:{VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,VsContainer:LoadingSpinner.VsContainer},props:{videoId:{type:String,default:""},rightAlign:{type:Boolean,default:!1}},setup(){return{videoStore:useVideoStore()}},computed:{videoDetails(){var e,n;return(n=(e=this.videoStore)==null?void 0:e.videos)==null?void 0:n[this.videoId]},captionClasses(){return[{"text-end":this.rightAlign}]}}},_hoisted_1$17={key:0,class:"vs-media-caption__image-caption"},_hoisted_2$Q={key:1,class:"vs-media-caption__image-credit"},_hoisted_3$E={key:0};function _sfc_render$1f(e,n,t,o,a,r){const s=vue.resolveComponent("VsCol"),i=vue.resolveComponent("VsRow"),l=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("div",{"data-test":"vs-media-caption",class:vue.normalizeClass(["vs-media-caption",r.captionClasses])},[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.createVNode(i,null,{default:vue.withCtx(()=>[vue.createVNode(s,null,{default:vue.withCtx(()=>{var u,c;return[e.$slots.caption?(vue.openBlock(),vue.createElementBlock("p",_hoisted_1$17,[vue.renderSlot(e.$slots,"caption")])):vue.createCommentVNode("",!0),e.$slots.credit||t.videoId&&((u=r.videoDetails)!=null&&u.videoDurationMsg)?(vue.openBlock(),vue.createElementBlock("p",_hoisted_2$Q,[t.videoId&&((c=r.videoDetails)!=null&&c.videoDurationMsg)?(vue.openBlock(),vue.createElementBlock("span",_hoisted_3$E,vue.toDisplayString(r.videoDetails.videoDurationMsg),1)):vue.createCommentVNode("",!0),e.$slots.credit&&!t.videoId?vue.renderSlot(e.$slots,"credit",{key:1}):vue.createCommentVNode("",!0)])):vue.createCommentVNode("",!0)]}),_:3})]),_:3})]),_:3})],2)}const VsMediaCaption=LoadingSpinner._export_sfc(_sfc_main$1u,[["render",_sfc_render$1f]]),_sfc_main$1t={name:"VsHeroSectionImage",status:"prototype",release:"0.0.1",components:{VsMediaCaption,VsImg:LoadingSpinner.VsImg},props:{src:{type:String,required:!0},imgAlt:{type:String,default:""},imgCaption:{type:String,default:""},imgCredit:{type:String,default:""},split:{type:Boolean,default:!1}},computed:{isSplit(){return this.split?"vs-hero-section-image--split":""}}};function _sfc_render$1e(e,n,t,o,a,r){const s=vue.resolveComponent("VsImg"),i=vue.resolveComponent("VsMediaCaption");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-hero-section-image",r.isSplit]),"data-test":"vs-hero-section-image"},[vue.createVNode(s,{class:"vs-hero-section-image__img",src:t.src,alt:t.imgAlt},null,8,["src","alt"]),t.imgCaption||t.imgCredit?(vue.openBlock(),vue.createBlock(i,{key:0,"data-test":"vs-hero-section-image__caption","right-align":t.split},vue.createSlots({credit:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.imgCredit),1)]),_:2},[t.split?void 0:{name:"caption",fn:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.imgCaption),1)]),key:"0"}]),1032,["right-align"])):vue.createCommentVNode("",!0)],2)}const VsHeroSectionImage=LoadingSpinner._export_sfc(_sfc_main$1t,[["render",_sfc_render$1e]]);var dist={exports:{}},Sister;/**
|
|
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,o,r,a){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),o=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,o.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:o}}});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,o,r,a){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,o=t&&t.length;if(!o)n=1;else for(;--o>=0;)n+=t[o].value;e.value=n}function node_count(){return this.eachAfter(count)}function node_each(e,n){let t=-1;for(const o of this)e.call(n,o,++t,this);return this}function node_eachBefore(e,n){for(var t=this,o=[t],r,a,s=-1;t=o.pop();)if(e.call(n,t,++s,this),r=t.children)for(a=r.length-1;a>=0;--a)o.push(r[a]);return this}function node_eachAfter(e,n){for(var t=this,o=[t],r=[],a,s,i,l=-1;t=o.pop();)if(r.push(t),a=t.children)for(s=0,i=a.length;s<i;++s)o.push(a[s]);for(;t=r.pop();)e.call(n,t,++l,this);return this}function node_find(e,n){let t=-1;for(const o of this)if(e.call(n,o,++t,this))return o}function node_sum(e){return this.eachAfter(function(n){for(var t=+e(n.data)||0,o=n.children,r=o&&o.length;--r>=0;)t+=o[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),o=[n];n!==t;)n=n.parent,o.push(n);for(var r=o.length;e!==t;)o.splice(r,0,e),e=e.parent;return o}function leastCommonAncestor(e,n){if(e===n)return e;var t=e.ancestors(),o=n.ancestors(),r=null;for(e=t.pop(),n=o.pop();e===n;)r=e,e=t.pop(),n=o.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],o,r,a;do for(n=t.reverse(),t=[];e=n.pop();)if(yield e,o=e.children)for(r=0,a=o.length;r<a;++r)t.push(o[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$1(e),o,r=[t],a,s,i,l;o=r.pop();)if((s=n(o.data))&&(l=(s=Array.from(s)).length))for(o.children=s,i=l-1;i>=0;--i)r.push(a=s[i]=new Node$1(s[i])),a.parent=o,a.depth=o.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$1(e){this.data=e,this.depth=this.height=0,this.parent=null}Node$1.prototype=hierarchy.prototype={constructor:Node$1,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,o,r){for(var a=e.children,s,i=-1,l=a.length,u=e.value&&(o-n)/e.value;++i<l;)s=a[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 o(r){var a=Array.from(r),s=e,i=n,l,u,c,d,v,m,f,p,g=new Map;if(t!=null){const _=a.map((V,S)=>normalize(t(V,S,r))),h=_.map(parentof),b=new Set(_).add("");for(const V of h)b.has(V)||(b.add(V),_.push(V),h.push(parentof(V)),a.push(imputed));s=(V,S)=>_[S],i=(V,S)=>h[S]}for(c=0,l=a.length;c<l;++c)u=a[c],m=a[c]=new Node$1(u),(f=s(u,c,r))!=null&&(f+="")&&(p=m.id=f,g.set(p,g.has(p)?ambiguous:m)),(f=i(u,c,r))!=null&&(f+="")&&(m.parent=f);for(c=0;c<l;++c)if(m=a[c],f=m.parent){if(v=g.get(f),!v)throw new Error("missing: "+f);if(v===ambiguous)throw new Error("ambiguous: "+f);v.children?v.children.push(m):v.children=[m],m.parent=v}else{if(d)throw new Error("multiple roots");d=m}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 _=a.length-1;_>=0&&(m=a[_],m.data===imputed);--_)m.data=null}if(d.parent=preroot,d.eachBefore(function(_){_.depth=_.parent.depth+1,--l}).eachBefore(computeHeight),d.parent=null,l>0)throw new Error("cycle");return d}return o.id=function(r){return arguments.length?(e=optional(r),o):e},o.parentId=function(r){return arguments.length?(n=optional(r),o):n},o.path=function(r){return arguments.length?(t=optional(r),o):t},o}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,o,r){for(var a=e.children,s,i=-1,l=a.length,u=e.value&&(r-t)/e.value;++i<l;)s=a[i],s.x0=n,s.x1=o,s.y0=t,s.y1=t+=s.value*u}var phi=(1+Math.sqrt(5))/2;function squarifyRatio(e,n,t,o,r,a){for(var s=[],i=n.children,l,u,c=0,d=0,v=i.length,m,f,p=n.value,g,_,h,b,V,S,$;c<v;){m=r-t,f=a-o;do g=i[d++].value;while(!g&&d<v);for(_=h=g,S=Math.max(f/m,m/f)/(p*e),$=g*g*S,V=Math.max(h/$,$/_);d<v;++d){if(g+=u=i[d].value,u<_&&(_=u),u>h&&(h=u),$=g*g*S,b=Math.max(h/$,$/_),b>V){g-=u;break}V=b}s.push(l={value:g,dice:m<f,children:i.slice(c,d)}),l.dice?treemapDice(l,t,o,r,p?o+=f*g/p:a):treemapSlice(l,t,o,p?t+=m*g/p:r,a),p-=g,c=d}return s}var squarify=function e(n){function t(o,r,a,s,i){squarifyRatio(n,o,r,a,s,i)}return t.ratio=function(o){return e((o=+o)>1?o:1)},t}(phi);function treemap(){var e=squarify,n=!1,t=1,o=1,r=[0],a=constantZero,s=constantZero,i=constantZero,l=constantZero,u=constantZero;function c(v){return v.x0=v.y0=0,v.x1=t,v.y1=o,v.eachBefore(d),r=[0],n&&v.eachBefore(roundNode),v}function d(v){var m=r[v.depth],f=v.x0+m,p=v.y0+m,g=v.x1-m,_=v.y1-m;g<f&&(f=g=(f+g)/2),_<p&&(p=_=(p+_)/2),v.x0=f,v.y0=p,v.x1=g,v.y1=_,v.children&&(m=r[v.depth+1]=a(v)/2,f+=u(v)-m,p+=s(v)-m,g-=i(v)-m,_-=l(v)-m,g<f&&(f=g=(f+g)/2),_<p&&(p=_=(p+_)/2),e(v,f,p,g,_))}return c.round=function(v){return arguments.length?(n=!!v,c):n},c.size=function(v){return arguments.length?(t=+v[0],o=+v[1],c):[t,o]},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?(a=typeof v=="function"?v:constant(+v),c):a},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),o=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}),a=vue.ref([]);function s(){const m=extent(t.value.map(g=>g[e.dataKeys[1]])),f=linear().domain(m).range([0,100]).nice(),p=sequential().domain(m).interpolator(e.colorFn());return{x:f,y:p}}function i(){const{y:m}=s();return l(t.value).leaves().map((p,g)=>({idx:g,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:m(p.value)}))}function l(m){const{x:f}=s(),p=treemap().size([r.value.width-r.value.x,r.value.height-r.value.y]).padding(e.padding),_=stratify().id(h=>h.name).parentId(h=>h.parent)([{name:"root"}].concat(m.map(h=>({name:h[e.dataKeys[0]],value:h[e.dataKeys[1]],parent:"root"}))));return _.sum(h=>f(h.value)),p(_),_}const u=m=>mapKeys(kebabize,m),c=m=>{const f={stroke:m.color,strokeWidth:5,fill:m.color,fillOpacity:.9};return e.rcStyle&&typeof e.rcStyle=="function"?Object.assign(Object.assign({},f),e.rcStyle(m)):f};function d(m){o.value=m}function v(){o.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},a.value=i()},{immediate:!0}),{el:n,rectangles:a,selected:o,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$E=["transform","onMouseover"],_hoisted_5$t=["width","height"],_hoisted_6$k={x:10,y:20,"font-size":"15px",fill:"white","font-weight":"bold"};function render$1(e,n,t,o,r,a){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$t),vue.renderSlot(e.$slots,"text",{r:s,selected:e.selected===i},()=>[vue.createElementVNode("text",_hoisted_6$k,vue.toDisplayString(s.data.name),1)])])],42,_hoisted_4$E))),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}),o=vue.ref("horizontal"),r=vue.ref({x:0,y:0,width:0,height:0});return vue.watch(e.updates,()=>{r.value=e.canvas,o.value=e.config.direction},{immediate:!0}),vue.watch(n,()=>{if(e.bandScale){const a=e.getData(e.getKeys(0)),[s]=e.bandScale.map([a[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:o,mouse:n}}});const _hoisted_1$1A={key:0,class:"layer-hover-bar"},_hoisted_2$16=["x","y","width","height"];function render(e,n,t,o,r,a){return e.mouse.hover?(vue.openBlock(),vue.createElementBlock("g",_hoisted_1$1A,[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$16)])):vue.createCommentVNode("v-if",!0)}script.render=render;script.__file="src/components/HoverBar/index.vue";const _sfc_main$22={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$1z={class:"vs-carbon-calculator-results__headline"},_hoisted_2$15={class:"mb-050"},_hoisted_3$S={class:"vs-carbon-calculator-results__total"},_hoisted_4$D=["innerHTML"],_hoisted_5$s={class:"vs-carbon-calculator-results__unicorn-icon-container"},_hoisted_6$j={class:"vs-carbon-calculator-results__unicorn-content"};function _sfc_render$1N(e,n,t,o,r,a){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"),m=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(a.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$1z,[vue.createElementVNode("p",_hoisted_2$15,vue.toDisplayString(a.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(a.labelsMap.kgsOf),1)])])]),_:1}),vue.createVNode(i,{cols:"12",md:"6",class:"vs-carbon-calculator-results__comparison"},{default:vue.withCtx(()=>[vue.createElementVNode("p",{innerHTML:a.interpolComparison},null,8,_hoisted_4$D)]),_:1})]),_:1})]),_:1}),a.totalPerDay<=a.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$s,[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$j,[vue.createVNode(s,{level:"3","heading-style":"heading-xs"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.labelsMap.perDayCongratulations),1)]),_:1}),vue.createElementVNode("p",null,vue.toDisplayString(a.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(a.labelsMap.chartTitle),1)]),_:1})]),_:1}),vue.createVNode(i,{class:"vs-carbon-calculator-results__chart-wrapper",cols:"12"},{default:vue.withCtx(()=>[vue.createVNode(m,null,{main:vue.withCtx(({width:f})=>[vue.createVNode(v,{class:"vs-carbon-calculator-results__chart",size:{width:f,height:420},data:a.chartData,margin:a.responsiveMargin(f),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"])]),_:1},8,["size","data","margin","direction","axis"])]),_:1})]),_:1})]),_:1},8,["style"])}const VsCarbonCalculatorResults=LoadingSpinner._export_sfc(_sfc_main$22,[["render",_sfc_render$1N]]),_sfc_main$21={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$1y={class:"vs-carbon-calculator-running-total","data-test":"vs-carbon-calculator-running-total"},_hoisted_2$14={class:"vs-carbon-calculator-running-total__icon"},_hoisted_3$R={class:"vs-carbon-calculator-running-total__content"},_hoisted_4$C={class:"vs-carbon-calculator-running-total__value"};function _sfc_render$1M(e,n,t,o,r,a){const s=vue.resolveComponent("VsIcon");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1y,[vue.createElementVNode("div",_hoisted_2$14,[vue.createVNode(s,{icon:"fa-regular fa-pen-field",size:"md"})]),vue.createElementVNode("div",_hoisted_3$R,[vue.createElementVNode("p",null,vue.toDisplayString(a.labelsMap.soFar),1),vue.createElementVNode("p",null,[vue.createElementVNode("span",_hoisted_4$C,vue.toDisplayString(t.totalKilos.toLocaleString(t.language,{minimumFractionDigits:3})),1),vue.createTextVNode(" "+vue.toDisplayString(a.labelsMap.kgsOf),1)])])])}const VsCarbonCalculatorRunningTotal=LoadingSpinner._export_sfc(_sfc_main$21,[["render",_sfc_render$1M]]),_sfc_main$20={name:"VsCarbonCalculatorIntro",status:"prototype",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading},inject:["labelsMap"]},_hoisted_1$1x={class:"vs-carbon-calculator-intro","data-test":"vs-carbon-calculator-intro"};function _sfc_render$1L(e,n,t,o,r,a){const s=vue.resolveComponent("VsHeading");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1x,[vue.createVNode(s,{level:"2","heading-style":"heading-l"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.labelsMap.introHeading),1)]),_:1}),vue.createElementVNode("p",null,vue.toDisplayString(a.labelsMap.introContent),1)])}const VsCarbonCalculatorIntro=LoadingSpinner._export_sfc(_sfc_main$20,[["render",_sfc_render$1L]]);function ownKeys$1(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),t.push.apply(t,o)}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(o){_defineProperty$1(e,o,t[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys$1(Object(t)).forEach(function(o){Object.defineProperty(e,o,Object.getOwnPropertyDescriptor(t,o))})}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 unwrapObj(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return Object.keys(e).reduce((t,o)=>(n.includes(o)||(t[o]=vue.unref(e[o])),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 o=e;const r=n.split(".");for(let a=0;a<r.length;a++){if(!o[r[a]])return t;o=o[r[a]]}return o}function gatherBooleanGroupProperties(e,n,t){return vue.computed(()=>e.some(o=>get(n,o,{[t]:!1})[t]))}function gatherArrayGroupProperties(e,n,t){return vue.computed(()=>e.reduce((o,r)=>{const a=get(n,r,{[t]:!1})[t]||[];return o.concat(a)},[]))}function callRule(e,n,t,o){return e.call(o,vue.unref(n),vue.unref(t),o)}function normalizeValidatorResponse(e){return e.$valid!==void 0?!e.$valid:!e}function createAsyncResult(e,n,t,o,r,a,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 m=vue.ref(!!o.value),f=vue.ref(0);t.value=!1;const p=vue.watch([n,o].concat(u,v),()=>{if(i&&!o.value||l&&!d.value&&!t.value)return;let g;try{g=callRule(e,n,c,s)}catch(_){g=Promise.reject(_)}f.value++,t.value=!!f.value,m.value=!1,Promise.resolve(g).then(_=>{f.value--,t.value=!!f.value,a.value=_,m.value=normalizeValidatorResponse(_)}).catch(_=>{f.value--,t.value=!!f.value,a.value=_,m.value=!0})},{immediate:!0,deep:typeof n=="object"});return{$invalid:m,$unwatch:p}}function createSyncResult(e,n,t,o,r,a,s,i){let{$lazy:l,$rewardEarly:u}=o;const c=()=>({}),d=vue.computed(()=>{if(l&&!t.value||u&&!i.value)return!1;let v=!0;try{const m=callRule(e,n,s,a);r.value=m,v=normalizeValidatorResponse(m)}catch(m){r.value=m}return v});return{$unwatch:c,$invalid:d}}function createValidatorResult(e,n,t,o,r,a,s,i,l,u,c){const d=vue.ref(!1),v=e.$params||{},m=vue.ref(null);let f,p;e.$async?{$invalid:f,$unwatch:p}=createAsyncResult(e.$validator,n,d,t,o,m,r,e.$watchTargets,l,u,c):{$invalid:f,$unwatch:p}=createSyncResult(e.$validator,n,t,o,m,r,l,u);const g=e.$message;return{$message:isFunction$2(g)?vue.computed(()=>g(unwrapObj({$pending:d,$invalid:f,$params:unwrapObj(v),$model:n,$response:m,$validator:a,$propertyPath:i,$property:s}))):g||"",$params:v,$pending:d,$invalid:f,$response:m,$unwatch:p}}function sortValidations(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};const n=vue.unref(e),t=Object.keys(n),o={},r={},a={};let s=null;return t.forEach(i=>{const l=n[i];switch(!0){case isFunction$2(l.$validator):o[i]=l;break;case isFunction$2(l):o[i]={$validator:l};break;case i==="$validationGroups":s=l;break;case i.startsWith("$"):a[i]=l;break;default:r[i]=l}}),{rules:o,nestedValidators:r,config:a,validationGroups:s}}const ROOT_PATH="__root";function createValidationResults(e,n,t,o,r,a,s,i,l){const u=Object.keys(e),c=o.get(r,e),d=vue.ref(!1),v=vue.ref(!1),m=vue.ref(0);if(c){if(!c.$partial)return c;c.$unwatch(),d.value=c.$dirty.value}const f={$dirty:d,$path:r,$touch:()=>{d.value||(d.value=!0)},$reset:()=>{d.value&&(d.value=!1)},$commit:()=>{}};return u.length?(u.forEach(p=>{f[p]=createValidatorResult(e[p],n,f.$dirty,a,s,p,t,r,l,v,m)}),f.$externalResults=vue.computed(()=>i.value?[].concat(i.value).map((p,g)=>({$propertyPath:r,$property:t,$validator:"$externalResults",$uid:`${r}-externalResult-${g}`,$message:p,$params:{},$response:null,$pending:!1})):[]),f.$invalid=vue.computed(()=>{const p=u.some(g=>vue.unref(f[g].$invalid));return v.value=p,!!f.$externalResults.value.length||p}),f.$pending=vue.computed(()=>u.some(p=>vue.unref(f[p].$pending))),f.$error=vue.computed(()=>f.$dirty.value?f.$pending.value||f.$invalid.value:!1),f.$silentErrors=vue.computed(()=>u.filter(p=>vue.unref(f[p].$invalid)).map(p=>{const g=f[p];return vue.reactive({$propertyPath:r,$property:t,$validator:p,$uid:`${r}-${p}`,$message:g.$message,$params:g.$params,$response:g.$response,$pending:g.$pending})}).concat(f.$externalResults.value)),f.$errors=vue.computed(()=>f.$dirty.value?f.$silentErrors.value:[]),f.$unwatch=()=>u.forEach(p=>{f[p].$unwatch()}),f.$commit=()=>{v.value=!0,m.value=Date.now()},o.set(r,e,f),f):(c&&o.set(r,e,f),f)}function collectNestedValidationResults(e,n,t,o,r,a,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:o,globalConfig:r,instance:a,externalResults:s}),l),{}):{}}function createMetaFields(e,n,t){const o=vue.computed(()=>[n,t].filter(f=>f).reduce((f,p)=>f.concat(Object.values(vue.unref(p))),[])),r=vue.computed({get(){return e.$dirty.value||(o.value.length?o.value.every(f=>f.$dirty):!1)},set(f){e.$dirty.value=f}}),a=vue.computed(()=>{const f=vue.unref(e.$silentErrors)||[],p=o.value.filter(g=>(vue.unref(g).$silentErrors||[]).length).reduce((g,_)=>g.concat(..._.$silentErrors),[]);return f.concat(p)}),s=vue.computed(()=>{const f=vue.unref(e.$errors)||[],p=o.value.filter(g=>(vue.unref(g).$errors||[]).length).reduce((g,_)=>g.concat(..._.$errors),[]);return f.concat(p)}),i=vue.computed(()=>o.value.some(f=>f.$invalid)||vue.unref(e.$invalid)||!1),l=vue.computed(()=>o.value.some(f=>vue.unref(f.$pending))||vue.unref(e.$pending)||!1),u=vue.computed(()=>o.value.some(f=>f.$dirty)||o.value.some(f=>f.$anyDirty)||r.value),c=vue.computed(()=>r.value?l.value||i.value:!1),d=()=>{e.$touch(),o.value.forEach(f=>{f.$touch()})},v=()=>{e.$commit(),o.value.forEach(f=>{f.$commit()})},m=()=>{e.$reset(),o.value.forEach(f=>{f.$reset()})};return o.value.length&&o.value.every(f=>f.$dirty)&&d(),{$dirty:r,$errors:s,$invalid:i,$anyDirty:u,$error:c,$pending:l,$touch:d,$reset:m,$silentErrors:a,$commit:v}}function setValidations(e){let{validations:n,state:t,key:o,parentKey:r,childResults:a,resultsCache:s,globalConfig:i={},instance:l,externalResults:u}=e;const c=r?`${r}.${o}`:o,{rules:d,nestedValidators:v,config:m,validationGroups:f}=sortValidations(n),p=_objectSpread2$1(_objectSpread2$1({},i),m),g=o?vue.computed(()=>{const R=vue.unref(t);return R?vue.unref(R[o]):void 0}):t,_=_objectSpread2$1({},vue.unref(u)||{}),h=vue.computed(()=>{const R=vue.unref(u);return o?R?vue.unref(R[o]):void 0:R}),b=createValidationResults(d,g,o,s,c,p,l,h,t),V=collectNestedValidationResults(v,g,c,s,p,l,h),S={};f&&Object.entries(f).forEach(R=>{let[G,U]=R;S[G]={$invalid:gatherBooleanGroupProperties(U,V,"$invalid"),$error:gatherBooleanGroupProperties(U,V,"$error"),$pending:gatherBooleanGroupProperties(U,V,"$pending"),$errors:gatherArrayGroupProperties(U,V,"$errors"),$silentErrors:gatherArrayGroupProperties(U,V,"$silentErrors")}});const{$dirty:$,$errors:w,$invalid:k,$anyDirty:P,$error:O,$pending:B,$touch:T,$reset:L,$silentErrors:E,$commit:z}=createMetaFields(b,V,a),F=o?vue.computed({get:()=>vue.unref(g),set:R=>{$.value=!0;const G=vue.unref(t),U=vue.unref(u);U&&(U[o]=_[o]),vue.isRef(G[o])?G[o].value=R:G[o]=R}}):null;o&&p.$autoDirty&&vue.watch(g,()=>{$.value||T();const R=vue.unref(u);R&&(R[o]=_[o])},{flush:"sync"});async function A(){return T(),p.$rewardEarly&&(z(),await vue.nextTick()),await vue.nextTick(),new Promise(R=>{if(!B.value)return R(!k.value);const G=vue.watch(B,()=>{R(!k.value),G()})})}function C(R){return(a.value||{})[R]}function D(){vue.isRef(u)?u.value=_:Object.keys(_).length===0?Object.keys(u).forEach(R=>{delete u[R]}):Object.assign(u,_)}return vue.reactive(_objectSpread2$1(_objectSpread2$1(_objectSpread2$1({},b),{},{$model:F,$dirty:$,$error:O,$errors:w,$invalid:k,$anyDirty:P,$pending:B,$touch:T,$reset:L,$path:c||ROOT_PATH,$silentErrors:E,$validate:A,$commit:z},a&&{$getResultsForChild:C,$clearExternalResults:D,$validationGroups:S}),V))}class ResultsStorage{constructor(){this.storage=new Map}set(n,t,o){this.storage.set(n,{rules:t,result:o})}checkRulesValidity(n,t,o){const r=Object.keys(o),a=Object.keys(t);return a.length!==r.length||!a.every(i=>r.includes(i))?!1:a.every(i=>t[i].$params?Object.keys(t[i].$params).every(l=>vue.unref(o[i].$params[l])===vue.unref(t[i].$params[l])):!0)}get(n,t){const o=this.storage.get(n);if(!o)return;const{rules:r,result:a}=o,s=this.checkRulesValidity(n,t,r),i=a.$unwatch?a.$unwatch:()=>({});return s?a:{$dirty:a.$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 o={},r=vue.ref([]),a=vue.computed(()=>r.value.reduce((c,d)=>(c[d]=vue.unref(o[d]),c),{}));function s(c,d){let{$registerAs:v,$scope:m,$stopPropagation:f}=d;f||n===CollectFlag.COLLECT_NONE||m===CollectFlag.COLLECT_NONE||n!==CollectFlag.COLLECT_ALL&&n!==m||(o[v]=c,r.value.push(v))}t.__vuelidateInjectInstances=[].concat(t.__vuelidateInjectInstances||[],s);function i(c){r.value=r.value.filter(d=>d!==c),delete o[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:a,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 o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};arguments.length===1&&(o=e,e=void 0,n=void 0);let{$registerAs:r,$scope:a=CollectFlag.COLLECT_ALL,$stopPropagation:s,$externalResults:i,currentVueInstance:l}=o;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:m,sendValidationResultsToParent:f,removeValidationResultsFromParent:p}=u?nestedValidations({$scope:a,instance:u}):{childResults:vue.ref({})};if(!e&&c.validations){const g=c.validations;n=vue.ref({}),vue.onBeforeMount(()=>{n.value=u,vue.watch(()=>isFunction$2(g)?g.call(n.value,new ComputedProxyFactory(n.value)):g,_=>{d.value=setValidations({validations:_,state:n,childResults:m,resultsCache:v,globalConfig:o,instance:u,externalResults:i||u.vuelidateExternalResults})},{immediate:!0})}),o=c.validationsConfig||o}else{const g=vue.isRef(e)||isProxy(e)?e:vue.reactive(e||{});vue.watch(g,_=>{d.value=setValidations({validations:_,state:n,childResults:m,resultsCache:v,globalConfig:o,instance:u??{},externalResults:i})},{immediate:!0})}return u&&(f.forEach(g=>g(d,{$registerAs:r,$scope:a,$stopPropagation:s})),vue.onBeforeUnmount(()=>p.forEach(g=>g(r)))),vue.computed(()=>_objectSpread2$1(_objectSpread2$1({},vue.unref(d.value)),m.value))}function ownKeys(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),t.push.apply(t,o)}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(o){_defineProperty(e,o,t[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(o){Object.defineProperty(e,o,Object.getOwnPropertyDescriptor(t,o))})}return e}function _defineProperty(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,o=new Array(t>1?t-1:0),r=1;r<t;r++)o[r-1]=arguments[r];return vue.unref(n).reduce((a,s,i)=>{const l=Object.entries(s).reduce((u,c)=>{let[d,v]=c;const m=e[d]||{},f=Object.entries(m).reduce((p,g)=>{let[_,h]=g;const V=unwrapNormalizedValidator(h).call(this,v,s,i,...o),S=unwrapValidatorResponse(V);if(p.$data[_]=V,p.$data.$invalid=!S||!!p.$data.$invalid,p.$data.$error=p.$data.$invalid,!S){let $=h.$message||"";const w=h.$params||{};typeof $=="function"&&($=$({$pending:!1,$invalid:!S,$params:w,$model:v,$response:V})),p.$errors.push({$property:d,$message:$,$params:w,$response:V,$model:v,$pending:!1,$validator:_})}return{$valid:p.$valid&&S,$data:p.$data,$errors:p.$errors}},{$valid:!0,$data:{},$errors:[]});return u.$data[d]=f.$data,u.$errors[d]=f.$errors,{$valid:u.$valid&&f.$valid,$data:u.$data,$errors:u.$errors}},{$valid:!0,$data:{},$errors:{}});return{$valid:a.$valid&&l.$valid,$data:a.$data.concat(l.$data),$errors:a.$errors.concat(l.$errors)}},{$valid:!0,$data:[],$errors:[]})},$message:n=>{let{$response:t}=n;return t?t.$errors.map(o=>Object.values(o).map(r=>r.map(a=>a.$message)).reduce((r,a)=>r.concat(a),[])):[]}}}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 o=>(o=vue.unref(o),!req(o)||n.every(r=>(r.lastIndex=0,r.test(o))))}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(o=>{o.$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$1$={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$1w={class:"vs-radio-button","data-test":"vs-radio-button"},_hoisted_2$13=["id"],_hoisted_3$Q={class:"visually-hidden"},_hoisted_4$B=["id"];function _sfc_render$1K(e,n,t,o,r,a){const s=vue.resolveComponent("BFormRadio"),i=vue.resolveComponent("BFormRadioGroup");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1w,[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$13)):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:a.validateErrors,onChange:a.validateErrors,onFocus:a.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=>a.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$B)):vue.createCommentVNode("",!0)])}const VsRadioButton=LoadingSpinner._export_sfc(_sfc_main$1$,[["render",_sfc_render$1K]]),_sfc_main$1_={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$1v={"data-test":"vs-number-input"},_hoisted_2$12=["id"],_hoisted_3$P=["id"],_hoisted_4$A={class:"visually-hidden"},_hoisted_5$r={class:"visually-hidden"};function _sfc_render$1J(e,n,t,o,r,a){const s=vue.resolveComponent("VsButton"),i=vue.resolveComponent("BFormInput");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1v,[t.hintText?(vue.openBlock(),vue.createElementBlock("p",{key:0,class:"hint-text",id:`hint-${t.fieldName}`},vue.toDisplayString(t.hintText),9,_hoisted_2$12)):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$A,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:a.decrementValue},{default:vue.withCtx(()=>[...n[2]||(n[2]=[vue.createTextVNode(" Remove 1 ",-1)])]),_:1},8,["disabled","onClick"]),vue.createVNode(i,{ref:"input",type:"Number",class:vue.normalizeClass(["vs-number-input",a.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:a.controlBlurred,onChange:a.validateErrors,onFocus:a.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:a.incrementValue},{default:vue.withCtx(()=>[...n[3]||(n[3]=[vue.createTextVNode(" Add 1 ",-1)])]),_:1},8,["disabled","onClick"]),a.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=>a.clearInputAndFocus(),["prevent"]))},{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_5$r,vue.toDisplayString(t.clearButtonText),1)]),_:1})):vue.createCommentVNode("",!0)])}const VsNumberInput=LoadingSpinner._export_sfc(_sfc_main$1_,[["render",_sfc_render$1J]]),_sfc_main$1Z={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$1u=["for"];function _sfc_render$1I(e,n,t,o,r,a){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$1u),t.fieldType==="radio"?(vue.openBlock(),vue.createBlock(s,{key:0,"field-name":t.fieldName,options:t.options,required:!0,"hint-text":t.hint,onUpdateFieldData:a.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:a.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$1Z,[["render",_sfc_render$1I]]),_sfc_main$1Y={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:o}=e;for(let r=0;r<o.length;r++)o[r].text=this.labelsMap[`question-${t+1}.option-${r+1}`];return o}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 o=t.values[n];if(t.multiplyByNumber)return o*t.multiplyByNumber;if(t.multiplyByAnswer){let r=this.form[t.multiplyByAnswer.question]||0;return r=Math.max(r,t.multiplyByAnswer.minimum),o*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),o*r}return o},getNumberValue(e,n){if(!n)return 0;let t;for(let o=0;o<this.formData.fields.length;o++)this.formData.fields[o].name===e&&(t=this.formData.fields[o]);if(t.multiplyByNumber)return parseInt(n,10)*t.multiplyByNumber;if(t.multiplyByAnswer){const o=this.form[t.multiplyByAnswer.question]||0;return parseInt(n,10)*o}if(t.multiplyByValue&&e!==t.multiplyByValue){const o=this.getNumberValue(t.multiplyByValue.question,this.form[t.multiplyByValue.question]);return parseInt(n,10)*o}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(o=>o.name===e);let t=!0;Object.keys(n.conditional).forEach(o=>{const r=n.conditional[o];Array.isArray(r)?r.indexOf(this.form[o])===-1&&(t=!1):this.form[o]!==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 o=this.formData.fields[t];if(o.stage===this.activeStage&&!o.isClone){const r=JSON.parse(JSON.stringify(o));r.isClone=!0;const a=`${o.name}${n}`;r.name=a,r.originalNumber=t,this.form[a]="",this.formData.fields.push(r)}}this.repeatableStages[this.activeStage].generations=n}}},_hoisted_1$1t={class:"vs-carbon-calculator__wrapper"},_hoisted_2$11={key:1};function _sfc_render$1H(e,n,t,o,r,a){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"),m=vue.resolveComponent("VsCarbonCalculatorRunningTotal"),f=vue.resolveComponent("VsCarbonCalculatorResults"),p=vue.resolveComponent("VsRow"),g=vue.resolveComponent("VsContainer"),_=vue.resolveComponent("VsWarning");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1t,[vue.createVNode(g,{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$11,[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,[a.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(a.currentCategory),1)]),_:1})):vue.createCommentVNode("",!0),(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.formData.fields,(h,b)=>vue.withDirectives((vue.openBlock(),vue.createBlock(u,{ref_for:!0,ref:"questions",tabindex:"0",key:h.name,label:a.getQuestionLabel(h,b),"label-for":h.name,hint:a.getQuestionHint(h,b),"field-class":a.conditionalElementClass(h.name),"field-type":h.element,"field-name":h.name,options:a.getQuestionOptions(h,b),minimum:h.element==="number"?h.validation.min:0,maximum:h.element==="number"?h.validation.max:0,onUpdateFieldData:a.updateFieldData},null,8,["label","label-for","hint","field-class","field-type","field-name","options","minimum","maximum","onUpdateFieldData"])),[[vue.vShow,h.stage===e.activeStage]])),128))],512),[[vue.vShow,e.activeStage<=e.formData.fields.length]])])])):vue.createCommentVNode("",!0),a.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]=h=>a.duplicateCurrentStage())},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.activeStageRepeatable),1)]),_:1})):vue.createCommentVNode("",!0),a.currentTip?(vue.openBlock(),vue.createBlock(d,{key:3,tip:a.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(m,{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(f,{key:1,"total-kilos":e.totalKilos,"transport-kilos":e.transportKilos,"food-kilos":e.foodKilos,"accommodation-kilos":e.accommodationKilos,"stay-duration":a.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]=h=>a.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]=h=>a.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]=h=>a.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]=h=>a.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]=h=>a.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(_,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.labelsMap.noJsMessage),1)]),_:1})])}const CarbonCalculator=LoadingSpinner._export_sfc(_sfc_main$1Y,[["render",_sfc_render$1H]]),_sfc_main$1X={name:"VsCard",status:"prototype",release:"0.1.0",provide(){return{registerMedia:e=>{this.mediaComponent=e}}},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,mediaComponent:null}},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}},methods:{toggle(){var e,n;this.mediaComponent&&((n=(e=this.mediaComponent)==null?void 0:e.toggleVideo)==null||n.call(e))}}},_hoisted_1$1s={key:0,class:"vs-card__header"},_hoisted_2$10={class:"vs-card__body"},_hoisted_3$O={key:1,class:"vs-card__footer"},_hoisted_4$z={key:2,class:"vs-card__media"},_hoisted_5$q={key:3,class:"vs-card__overlay-controls"};function _sfc_render$1G(e,n,t,o,r,a){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-card",a.cardClasses]),"data-test":"vs-card",style:vue.normalizeStyle(a.cardStyles)},[e.$slots["vs-card-header"]&&e.$slots["vs-card-header"]()?(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1s,[vue.renderSlot(e.$slots,"vs-card-header")])):vue.createCommentVNode("",!0),vue.createElementVNode("div",_hoisted_2$10,[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$z,[vue.renderSlot(e.$slots,"vs-card-image")])):vue.createCommentVNode("",!0),e.$slots["vs-card-overlay-controls"]&&e.$slots["vs-card-overlay-controls"]()?(vue.openBlock(),vue.createElementBlock("div",_hoisted_5$q,[vue.renderSlot(e.$slots,"vs-card-overlay-controls")])):vue.createCommentVNode("",!0)],6)}const VsCard=LoadingSpinner._export_sfc(_sfc_main$1X,[["render",_sfc_render$1G]]),_sfc_main$1W={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$1F(e,n,t,o,r,a){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(a.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$1W,[["render",_sfc_render$1F]]),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"&&this.requiredCookies&&(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],google_maps:[cookieCategories.analytical,cookieCategories.marketing]},cookieValues$4=cookieValues$5.youtube,_sfc_main$1V={name:"VsStretchedLinkCard",status:"deprecated",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$1r={key:0,class:"vs-stretched-link-card__video-btn-text"},_hoisted_2$$={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$y={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$1E(e,n,t,o,r,a){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",a.stretchedLinkCardClasses]),"data-test":"vs-stretched-link-card",onClick:n[0]||(n[0]=(...d)=>a.emitShowModal&&a.emitShowModal(...d)),onKeypress:n[1]||(n[1]=(...d)=>a.emitShowModal&&a.emitShowModal(...d))},[a.showWarning==="full"?(vue.openBlock(),vue.createBlock(s,{key:0,size:t.warningSize,type:a.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(a.warningMessage)+" ",1)]),_:2},[a.cookieLinkText!==""&&a.showCookieWarning?{name:"button-text",fn:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.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(a.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",a.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",a.isSvg?"vs-stretched-link-card__img--svg":""]),"data-test":"vs-stretched-link-card__img","data-chromatic":"ignore"},null,8,["src","alt","class"]),t.videoId&&a.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:a.emitShowModal},{default:vue.withCtx(()=>[t.videoBtnText?(vue.openBlock(),vue.createElementBlock("span",_hoisted_1$1r,vue.toDisplayString(a.formattedVideoBtnText),1)):vue.createCommentVNode("",!0),vue.createTextVNode(" "+vue.toDisplayString(a.formattedVideoDuration),1)]),_:1},8,["onClick"])):vue.createCommentVNode("",!0)],64)):vue.createCommentVNode("",!0),a.showWarning==="image"?(vue.openBlock(),vue.createBlock(s,{key:1,size:t.warningSize,type:a.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(a.warningMessage)+" ",1)]),_:2},[a.cookieLinkText!==""&&a.showCookieWarning?{name:"button-text",fn:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.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(a.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),a.showWarning!=="full"?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$$,[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:a.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$y,[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$1V,[["render",_sfc_render$1E]]),_sfc_main$1U={name:"VsStretchedLinkPanels",status:"deprecated",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$1q={class:"vs-stretched-link-panels"},_hoisted_2$_={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$x={class:"vs-stretched-link-panels__days"},_hoisted_5$o={class:"vs-stretched-link-panels__panel","data-test":"vs-stretched-link-panel"},_hoisted_6$i={"data-test":"vs-stretched-link-panel__icon"};function _sfc_render$1D(e,n,t,o,r,a){const s=vue.resolveComponent("VsIcon");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1q,[vue.createElementVNode("div",_hoisted_2$_,[vue.createElementVNode("p",_hoisted_3$M,[vue.createElementVNode("span",_hoisted_4$x,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$i,vue.toDisplayString(t.transportName),1)])])}const VsStretchedLinkPanels=LoadingSpinner._export_sfc(_sfc_main$1U,[["render",_sfc_render$1D]]),_sfc_main$1T={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$1p={class:"vs-carousel-slide"},_hoisted_2$Z={class:"visually-hidden"},_hoisted_3$L={class:"vs-carousel-slide__title","data-test":"vs-carousel-slide__title"};function _sfc_render$1C(e,n,t,o,r,a){const s=vue.resolveComponent("VsStretchedLinkPanels"),i=vue.resolveComponent("VsStretchedLinkCard"),l=vue.resolveComponent("VsCol");return vue.openBlock(),vue.createBlock(l,{cols:a.slideCols.xs,sm:a.slideCols.sm,lg:a.slideCols.md,xl:a.slideCols.lg,"data-test":"vs-carousel-slide","aria-disabled":!a.isVisible(t.slideIndex)},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$1p,[vue.createVNode(i,{link:t.linkUrl,type:t.linkType,"img-src":t.imgSrc,"img-alt":t.imgAlt,class:vue.normalizeClass([a.isVisible(t.slideIndex)?"vs-carousel-slide__card--active":"vs-carousel-slide__card--disabled","vs-carousel-slide__card"]),disabled:!a.isVisible(t.slideIndex),"data-test":"vs-carousel-card"},vue.createSlots({"stretched-card-category":vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_2$Z,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$1T,[["render",_sfc_render$1C]]),_sfc_main$1S={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$1o=["id"],_hoisted_2$Y=["innerHTML"],_hoisted_3$K=["id"],_hoisted_4$w={class:"visually-hidden"},_hoisted_5$n={class:"vs-checkbox__label"};function _sfc_render$1B(e,n,t,o,r,a){const s=vue.resolveComponent("BFormCheckbox");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(a.checkBoxClasses)},[vue.createElementVNode("p",{class:"hint-text",id:`hint-${t.fieldName}`},vue.toDisplayString(t.hintText),9,_hoisted_1$1o),t.infoText!==""?(vue.openBlock(),vue.createElementBlock("div",{key:0,innerHTML:t.infoText},null,8,_hoisted_2$Y)):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$w,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$1S,[["render",_sfc_render$1B]]),_sfc_main$1R={name:"VsDescriptionList",status:"prototype",release:"0.0.1",provide(){return{inline:vue.computed(()=>this.inline)}},props:{inline:{type:Boolean,default:!1}}};function _sfc_render$1A(e,n,t,o,r,a){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$1R,[["render",_sfc_render$1A]]),_sfc_main$1Q={name:"VsDescriptionListItem",status:"prototype",release:"0.0.1",components:{VsCol:LoadingSpinner.VsCol},inject:["inline"],props:{title:{type:Boolean,default:!1}}};function _sfc_render$1z(e,n,t,o,r,a){const s=vue.resolveComponent("VsCol");return vue.openBlock(),vue.createBlock(s,{tag:t.title?"dt":"dd",class:vue.normalizeClass({"list-inline-item":a.inline,"vs-description-list__detail":!t.title,"vs-description-list__detail--styled":!a.inline&&!t.title,"vs-description-list__term":t.title,"vs-description-list__term--styled":!a.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$1Q,[["render",_sfc_render$1z],["__scopeId","data-v-cf7a6cc3"]]),_sfc_main$1P={name:"VsDetail",status:"prototype",release:"0.0.1",components:{VsIcon:LoadingSpinner.VsIcon},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},icon:{type:String,default:""},iconVariant:{type:String,default:"primary",validator:e=>e.match(/(primary|secondary|tertiary|cta|inverse|disabled|highlight|error|warning|success)/)}},computed:{detailClasses(){return["vs-detail",`vs-detail--${this.size}`,`vs-detail--${this.color}`,...this.icon?["d-flex","align-items-baseline"]:[],...this.noMargins?[]:["vs-detail--with-margins"]]},iconSize(){return this.size==="small"?"xxs":"xs"}}};function _sfc_render$1y(e,n,t,o,r,a){const s=vue.resolveComponent("VsIcon");return vue.openBlock(),vue.createElementBlock("p",{class:vue.normalizeClass(a.detailClasses)},[t.icon?(vue.openBlock(),vue.createBlock(s,{key:0,class:"me-050 flex-shrink-0",icon:t.icon,size:a.iconSize,variant:t.iconVariant},null,8,["icon","size","variant"])):vue.createCommentVNode("",!0),vue.createElementVNode("span",null,[vue.renderSlot(e.$slots,"default")])],2)}const VsDetail=LoadingSpinner._export_sfc(_sfc_main$1P,[["render",_sfc_render$1y]]),_sfc_main$1O={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$1n={class:"dropdown-menu overflow-auto",role:"menu"};function _sfc_render$1x(e,n,t,o,r,a){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(a.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$1n,[vue.renderSlot(e.$slots,"default")])],2)],64)}const VsDropdown=LoadingSpinner._export_sfc(_sfc_main$1O,[["render",_sfc_render$1x]]),_sfc_main$1N={name:"VsDropdownItem",status:"prototype",release:"0.0.1",components:{BDropdownItem:LoadingSpinner.Xi}};function _sfc_render$1w(e,n,t,o,r,a){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$1N,[["render",_sfc_render$1w]]),cookieValues$3=cookieValues$5.embed,_sfc_main$1M={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}},mounted(){this.embeddedScript&&this.noCookiesRequired&&this.loadScript()},methods:{loadScript(){const e=document.createElement("script");e.src=this.embeddedScript,document.head.appendChild(e)},callbackOnUpdated(){this.embeddedScript&&this.cookiesLoaded&&this.requiredCookiesAllowed&&this.loadScript()}}},_hoisted_1$1m={"data-test":"vs-embed-wrapper",class:"vs-embed-wrapper"},_hoisted_2$X={class:"vs-embed-wrapper__container",key:"embeddedContent"},_hoisted_3$J={key:"fallback"},_hoisted_4$v=["innerHTML"];function _sfc_render$1v(e,n,t,o,r,a){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$1m,[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"]()&&!a.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$X,[vue.renderSlot(e.$slots,"embed-widget")])):vue.createCommentVNode("",!0),a.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(a.warningText)+" ",1)]),_:2},[t.extraContent?{name:"extra-content",fn:vue.withCtx(()=>[vue.createElementVNode("div",{innerHTML:t.extraContent},null,8,_hoisted_4$v)]),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$1M,[["render",_sfc_render$1v]]),_sfc_main$1L={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$1l={class:"card vs-event-card","data-test":"vs-event-card"},_hoisted_2$W={class:"card-body"},_hoisted_3$I={class:"vs-event-card__date"},_hoisted_4$u={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$1u(e,n,t,o,r,a){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$1l,[vue.createElementVNode("div",_hoisted_2$W,[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$u,[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$1L,[["render",_sfc_render$1u]]),_hoisted_1$1k=["id"],_hoisted_2$V={class:"vs-filter__panel-wrapper"},_hoisted_3$H={class:"vs-filter__legend"},_sfc_main$1K={__name:"VsFilter",props:{filterId:{type:String,required:!0},filterLabel:{type:String,required:!0}},emits:["filter-updated"],setup(e,{expose:n}){const t=e,o=vue.ref(),r=i=>{const l=i;l.type==="checkbox"?l.checked=!1:l.type==="date"&&(l.value="")};return n({clearFilter:r,resetAll:()=>{o.value.querySelectorAll('input[type="checkbox"], input[type="date"]').forEach(l=>{r(l)})},resetOne:i=>{const l=o.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:o},[vue.createElementVNode("div",_hoisted_2$V,[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$1k),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$1j={key:0,class:"vs-filter-section__details"},_hoisted_2$U={class:"vs-filter-section__summary"},_hoisted_3$G={key:1,class:"vs-filter-section__section"},_sfc_main$1J={__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(o,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$1j,[vue.createElementVNode("summary",_hoisted_2$U,[vue.createTextVNode(vue.toDisplayString(n.sectionTitle)+" ",1),vue.createVNode(LoadingSpinner.VsIcon,{icon:"vs-icon-control-expand",variant:"highlight"})]),vue.renderSlot(o.$slots,"default")])):(vue.openBlock(),vue.createElementBlock("div",_hoisted_3$G,[vue.renderSlot(o.$slots,"default")]))],2))}};function createHydrationCleanup(){let e=[];return{cleanup:()=>{e=e.filter(o=>(o(),!1))},onCleanup:o=>{e.push(o)}}}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=(...o)=>{e.effect.fn=()=>t(...o);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 o=e.children[t]();if(Array.isArray(o)){o.forEach(r=>traverseChildren(r,n));return}traverseChildren(o,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,o=>{isAsyncWrapper(o)&&t.push(o.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:o}=createHydrationCleanup(),{promise:r,resolvePromise:a,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:a,onHydrated:i,onCleanup:o}}function useHydrateWhenIdle({willPerformHydration:e,hydrate:n,onCleanup:t},o=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:o});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 o=e.el.nextSibling;for(;o;){if(o&&isElement(o)&&t.push(o),o===n.anchor)return t;o=o.nextSibling}}return t}function useHydrateOnInteraction({willPerformHydration:e,hydrate:n,onCleanup:t},o=["focus"]){if(!e)return;const r=vue.getCurrentInstance();if(!r||r.isMounted)throw new Error("useHydrateOnInteraction must be called from the setup method.");const a=vue.unref(o);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()})};a.forEach(c=>{i.addEventListener(c,u,l)}),t(()=>{a.forEach(c=>{i.removeEventListener(c,u,l)})})})}function useHydrateWhenTriggered({willPerformHydration:e,hydrate:n,onCleanup:t},o){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(o)?o:()=>o,a=>{a&&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 o=new IntersectionObserver(r=>{r.forEach(a=>{!(a.isIntersecting||a.intersectionRatio>0)||!a.target.hydrate||a.target.hydrate()})},e);return observers.set(t,o),{supported:n,observer:o}}function useHydrateWhenVisible({willPerformHydration:e,hydrate:n,onCleanup:t},o){if(!e)return;const r=vue.getCurrentInstance();if(!r||r.isMounted)throw new Error("useHydrateWhenVisible must be called from the setup method.");const{supported:a,observer:s}=createHydrationObserver(o);if(!a){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 o=useLazyHydration();if(!o.willPerformHydration)return()=>normalizeSlot(n.default());if(o.onHydrated(()=>t("hydrated")),e.whenIdle&&useHydrateWhenIdle(o,e.whenIdle!==!0?e.whenIdle:void 0),e.whenVisible&&useHydrateWhenVisible(o,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(o,r)}return e.whenTriggered!==void 0&&useHydrateWhenTriggered(o,vue.toRef(e,"whenTriggered")),()=>normalizeSlot(n.default())}}),LazyHydrationWrapper$1=vue.markRaw(LazyHydrationWrapper),_sfc_main$1I={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$1i={class:"vs-footer-nav-list"};function _sfc_render$1t(e,n,t,o,r,a){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$1i,[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$1I,[["render",_sfc_render$1t]]),_sfc_main$1H={name:"VsFooter",status:"prototype",release:"0.1.0",components:{VsFooterNavList,VsCol:LoadingSpinner.VsCol,VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow}},_hoisted_1$1h={class:"vs-footer pt-150 pt-md-300","data-unique-id":"vs-footer",id:"site-footer"},_hoisted_2$T={class:"vs-footer__social-menu-wrapper"};function _sfc_render$1s(e,n,t,o,r,a){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$1h,[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$T,[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$1H,[["render",_sfc_render$1s]]),_sfc_main$1G={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$1r(e,n,t,o,r,a){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":a.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$1G,[["render",_sfc_render$1r]]),_sfc_main$1F={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$1g={class:"vs-footer-nav-list-item","data-test":"vs-footer-nav-list-item",role:"menuitem"};function _sfc_render$1q(e,n,t,o,r,a){const s=vue.resolveComponent("VsLink");return vue.openBlock(),vue.createElementBlock("li",_hoisted_1$1g,[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$1F,[["render",_sfc_render$1q]]),_sfc_main$1E={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$1p(e,n,t,o,r,a){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$1E,[["render",_sfc_render$1p]]),_sfc_main$1D={name:"VsFooterSocialMenu",status:"prototype",release:"0.0.1",components:{VsList,VsHeading:LoadingSpinner.VsHeading}},_hoisted_1$1f={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$1o(e,n,t,o,r,a){const s=vue.resolveComponent("VsHeading"),i=vue.resolveComponent("VsList");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1f,[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$1D,[["render",_sfc_render$1o]]),_sfc_main$1C={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$1e={class:"vs-footer-social-item","data-test":"vs-footer-social-item"};function _sfc_render$1n(e,n,t,o,r,a){const s=vue.resolveComponent("VsIcon"),i=vue.resolveComponent("VsLink");return vue.openBlock(),vue.createElementBlock("li",_hoisted_1$1e,[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$1C,[["render",_sfc_render$1n]]),_sfc_main$1B={name:"VsFooterUtilityList",status:"prototype",release:"0.0.1",components:{VsList,VsRow:LoadingSpinner.VsRow,VsContainer:LoadingSpinner.VsContainer,VsCol:LoadingSpinner.VsCol}},_hoisted_1$1d={class:"vs-footer-utility-list","data-test":"vs-footer-utility-list","data-unique-id":"vs-footer-utility_links"};function _sfc_render$1m(e,n,t,o,r,a){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$1d,[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$1B,[["render",_sfc_render$1m]]),files=Object.assign({"../assets/svg/brandscotland-logo.svg":()=>Promise.resolve().then(()=>require("./brandscotland-logo-BbDMkgti.js")).then(e=>e.default),"../assets/svg/cookie-coo.svg":()=>Promise.resolve().then(()=>require("./cookie-coo-Bc1O8aR_.js")).then(e=>e.default),"../assets/svg/highland-cow.svg":()=>Promise.resolve().then(()=>require("./highland-cow-DlMGnebG.js")).then(e=>e.default),"../assets/svg/iCentre.svg":()=>Promise.resolve().then(()=>require("./iCentre-BnLcpIw8.js")).then(e=>e.default),"../assets/svg/icons/docs/deprecated.svg":()=>Promise.resolve().then(()=>require("./deprecated-BJ2e68Yo.js")).then(e=>e.default),"../assets/svg/icons/docs/prototype.svg":()=>Promise.resolve().then(()=>require("./prototype-DQocvgQh.js")).then(e=>e.default),"../assets/svg/icons/docs/ready.svg":()=>Promise.resolve().then(()=>require("./ready-D9pdKFkx.js")).then(e=>e.default),"../assets/svg/icons/docs/review.svg":()=>Promise.resolve().then(()=>require("./review-7L3On10m.js")).then(e=>e.default),"../assets/svg/icons/instagram-filled.svg":()=>Promise.resolve().then(()=>require("./instagram-filled-CvF3WA5q.js")).then(e=>e.default),"../assets/svg/no-js-coo.svg":()=>Promise.resolve().then(()=>require("./no-js-coo-BEt1aICD.js")).then(e=>e.default),"../assets/svg/os-logo-maps-white.svg":()=>Promise.resolve().then(()=>require("./os-logo-maps-white-BTtf_Eki.js")).then(e=>e.default),"../assets/svg/os-logo-maps.svg":()=>Promise.resolve().then(()=>require("./os-logo-maps-QXAuept_.js")).then(e=>e.default),"../assets/svg/visitscotland-logo.svg":()=>Promise.resolve().then(()=>require("./visitscotland-logo-NoymCLtN.js")).then(e=>e.default)}),newFiles={};for(const[e,n]of Object.entries(files)){const t=e.replace("../assets/svg",".");newFiles[t]=n}const output=newFiles,_sfc_main$1A={name:"VsSvg",release:"0.1.1",status:"prototype",props:{path:{type:String,required:!0},fill:{type:String,default:""},height:{type:[Number,String],default:""},width:{type:[Number,String],default:""}},data(){return{svg:null}},computed:{nativeAttrs(){if(this.svg){const n=LoadingSpinner.lodashExports.first(this.svg.match(/<svg[^>]+.*?>/)).match(/(\S+)=["']?((?:.(?!["']?\s+(?:\S+)=|[>"']))+.)["']?/g),t=LoadingSpinner.lodashExports.fromPairs(LoadingSpinner.lodashExports.map(n,LoadingSpinner.lodashExports.partial(LoadingSpinner.lodashExports.split,LoadingSpinner.lodashExports.partial.placeholder,"=",2)));return LoadingSpinner.lodashExports.mapValues(t,LoadingSpinner.lodashExports.partial(LoadingSpinner.lodashExports.replace,LoadingSpinner.lodashExports.partial.placeholder,/"/g,""))}return null},attributes(){if(this.svg){const e={};let n={};return this.fill&&(LoadingSpinner.lodashExports.has(this.nativeAttrs,"style")?(n=this.nativeStyleAttrMap,n.fill=this.fill):n={fill:this.fill},e.style=LoadingSpinner.lodashExports.join(LoadingSpinner.lodashExports.map(LoadingSpinner.lodashExports.toPairs(n),LoadingSpinner.lodashExports.partial(LoadingSpinner.lodashExports.join,LoadingSpinner.lodashExports.partial.placeholder,":")),";")),this.height&&(e.height=this.height),this.width&&(e.width=this.width),LoadingSpinner.lodashExports.extend({},this.nativeAttrs,e)}return null},nativeStyleAttrMap(){if(this.svg){const e=LoadingSpinner.lodashExports.map(LoadingSpinner.lodashExports.split(this.nativeAttrs.style,";"),LoadingSpinner.lodashExports.ary(LoadingSpinner.lodashExports.partial(LoadingSpinner.lodashExports.split,LoadingSpinner.lodashExports.partial.placeholder,":"),1));return LoadingSpinner.lodashExports.fromPairs(e)}return null},children(){return this.svg?LoadingSpinner.lodashExports.nth(this.svg.match(/(<svg[^>]+.*?>)([\s\S]*)(<\/svg>)/),2):null}},mounted(){typeof output=="function"?this.svg=output(`./${this.path}.svg`):output[`./${this.path}.svg`]().then(e=>{this.svg=e})}},_hoisted_1$1c=["innerHTML"];function _sfc_render$1l(e,n,t,o,r,a){return r.svg?(vue.openBlock(),vue.createElementBlock("svg",vue.mergeProps({key:0},a.attributes,{innerHTML:a.children,focusable:"false"}),null,16,_hoisted_1$1c)):vue.createCommentVNode("",!0)}const VsSvg=LoadingSpinner._export_sfc(_sfc_main$1A,[["render",_sfc_render$1l]]),_sfc_main$1z={name:"VsSvgLink",status:"prototype",release:"0.0.1",components:{VsSvg,VsLink},props:{linkAltText:{type:String,required:!0},href:{type:String,required:!0},svgFill:{type:String,default:""},svgPath:{type:String,required:!0},svgHeight:{type:[Number,String],default:""},svgWidth:{type:[Number,String],default:""},dataLayerValue:{type:String,default:null},linkVariant:{type:String,default:"primary",validator:e=>e.match(/(primary|on-dark)/)}}},_hoisted_1$1b={class:"visually-hidden","data-test":"link-alt-text"};function _sfc_render$1k(e,n,t,o,r,a){const s=vue.resolveComponent("VsSvg"),i=vue.resolveComponent("VsLink");return vue.openBlock(),vue.createBlock(i,{class:"vs-svg-link","data-test":"vs-svg-link",href:t.href,"data-layer-value":t.dataLayerValue,variant:t.linkVariant},{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_1$1b,vue.toDisplayString(t.linkAltText),1),vue.createVNode(s,{"data-test":"vs-svg-link__svg",focusable:"false",path:t.svgPath,fill:t.svgFill,width:t.svgWidth,height:t.svgHeight},null,8,["path","fill","width","height"])]),_:1},8,["href","data-layer-value","variant"])}const VsSvgLink=LoadingSpinner._export_sfc(_sfc_main$1z,[["render",_sfc_render$1k]]),_sfc_main$1y={name:"VsFooterCopyright",status:"prototype",release:"0.0.1",components:{VsSvgLink,VsRow:LoadingSpinner.VsRow,VsContainer:LoadingSpinner.VsContainer,VsCol:LoadingSpinner.VsCol},props:{linkAltText:{type:String,required:!0},href:{type:String,required:!0}},data(){return{currentYear:""}},computed:{getCurrentYear(){return new Date().getFullYear()}}},_hoisted_1$1a={class:"vs-footer-copyright","data-unique-id":"vs-footer-sub_footer","data-test":"vs-footer-copyright"},_hoisted_2$S={class:"vs-footer-copyright__text"};function _sfc_render$1j(e,n,t,o,r,a){const s=vue.resolveComponent("VsSvgLink"),i=vue.resolveComponent("VsCol"),l=vue.resolveComponent("VsRow"),u=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1a,[vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.createVNode(i,{cols:"12",class:"text-center"},{default:vue.withCtx(()=>[vue.createVNode(s,{class:"vs-footer-copyright__logo mb-100","data-test":"vs-footer-copyright-logo","link-alt-text":t.linkAltText,href:t.href,"svg-fill":"#ffffff","svg-path":"brandscotland-logo","link-variant":"on-dark"},null,8,["link-alt-text","href"]),vue.createElementVNode("p",_hoisted_2$S,[vue.createTextVNode(" © "+vue.toDisplayString(a.getCurrentYear)+" ",1),vue.renderSlot(e.$slots,"copyright")])]),_:3})]),_:3})]),_:3})])}const FooterCopyright=LoadingSpinner._export_sfc(_sfc_main$1y,[["render",_sfc_render$1j]]),_sfc_main$1x={name:"VsGlobalMenu",status:"deprecated",release:"0.1.0",components:{VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,LazyHydrationWrapper:LazyHydrationWrapper$1},props:{dropdownLabel:{type:String,default:"Our Websites"}},data(){return{websites:[{siteName:"VisitScotland",siteUrl:"https://www.visitscotland.com/"},{siteName:"Business Events",siteUrl:"https://businessevents.visitscotland.com/"},{siteName:"Travel Trade",siteUrl:"https://traveltrade.visitscotland.org/"},{siteName:"Toolkit",siteUrl:"https://toolkit.visitscotland.org/"},{siteName:"Corporate",siteUrl:"https://www.visitscotland.org/"}]}}},_hoisted_1$19={class:"vs-global-menu"};function _sfc_render$1i(e,n,t,o,r,a){const s=vue.resolveComponent("VsCol"),i=vue.resolveComponent("VsRow"),l=vue.resolveComponent("VsContainer"),u=vue.resolveComponent("LazyHydrationWrapper");return vue.openBlock(),vue.createElementBlock("nav",_hoisted_1$19,[vue.createVNode(u,{"on-interaction":["focus","click"]},{default:vue.withCtx(()=>[vue.createVNode(l,{fluid:"lg",class:"px-025 px-sm-075"},{default:vue.withCtx(()=>[vue.createVNode(i,null,{default:vue.withCtx(()=>[vue.createVNode(s,{cols:"12",class:"vs-global-menu__wrapper"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"third-menu-item")]),_:3})]),_:3})]),_:3})]),_:3})])}const GlobalMenu=LoadingSpinner._export_sfc(_sfc_main$1x,[["render",_sfc_render$1i]]),_sfc_main$1w={name:"VsGlobalMenuLanguage",status:"prototype",release:"0.1.0",components:{VsDropdown,VsIcon:LoadingSpinner.VsIcon},mixins:[cookieMixin],props:{languageLabel:{type:String,default:"Language"},language:{type:String,default:"en"}},mounted(){this.cookieExists("vs_locale")||this.setCookie("vs_locale",this.localeCookie,!0),this.cookieExists("googtrans")||this.setCookie("googtrans",this.translationCookie,!0)}},_hoisted_1$18={class:"vs-global-menu__languages__text"},_hoisted_2$R={class:"vs-global-menu__languages__selected"},_hoisted_3$F={class:"vs-global-menu__languages__label",role:"menuitem"};function _sfc_render$1h(e,n,t,o,r,a){const s=vue.resolveComponent("VsIcon"),i=vue.resolveComponent("VsDropdown");return vue.openBlock(),vue.createBlock(i,{variant:"primary",class:"vs-global-menu__languages"},{"button-content":vue.withCtx(()=>[vue.createVNode(s,{class:"vs-global-menu__languages__icon",icon:"fa-regular fa-globe",variant:"inverse",size:"xxs",focusable:"false"}),vue.createElementVNode("span",_hoisted_1$18,vue.toDisplayString(t.languageLabel),1),vue.createElementVNode("span",_hoisted_2$R,vue.toDisplayString(e.selectedLanguage),1)]),default:vue.withCtx(()=>[vue.createElementVNode("li",_hoisted_3$F,[vue.createVNode(s,{icon:"fa-regular fa-globe",variant:"inverse",size:"xxs",focusable:"false"}),vue.createTextVNode(" "+vue.toDisplayString(t.languageLabel),1)]),vue.renderSlot(e.$slots,"default")]),_:3})}const GlobalMenuLanguage=LoadingSpinner._export_sfc(_sfc_main$1w,[["render",_sfc_render$1h]]),_sfc_main$1v={name:"VsGlobalMenuLanguageItem",status:"prototype",release:"0.1.0",components:{VsDropdownItem},mixins:[cookieMixin],props:{languageName:{type:String,default:null},languageLink:{type:String,default:null},language:{type:String,default:null}},methods:{setLanguage(){const e=this.cookieExists("vs_locale"),n=this.cookieExists("googtrans");this.setCookie("vs_locale",this.localeCookie,!e),this.setCookie("googtrans",this.translationCookie,!n)}}};function _sfc_render$1g(e,n,t,o,r,a){const s=vue.resolveComponent("VsDropdownItem");return vue.openBlock(),vue.createBlock(s,{class:"vs-global-menu__languages__item",href:t.languageLink,onClick:n[0]||(n[0]=i=>a.setLanguage())},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.languageName),1)]),_:1},8,["href"])}const GlobalMenuLanguageItem=LoadingSpinner._export_sfc(_sfc_main$1v,[["render",_sfc_render$1g]]),_sfc_main$1u={name:"VsMediaCaption",status:"prototype",release:"0.0.1",components:{VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,VsContainer:LoadingSpinner.VsContainer},props:{videoId:{type:String,default:""},rightAlign:{type:Boolean,default:!1}},setup(){return{videoStore:useVideoStore()}},computed:{videoDetails(){var e,n;return(n=(e=this.videoStore)==null?void 0:e.videos)==null?void 0:n[this.videoId]},captionClasses(){return[{"text-end":this.rightAlign}]}}},_hoisted_1$17={key:0,class:"vs-media-caption__image-caption"},_hoisted_2$Q={key:1,class:"vs-media-caption__image-credit"},_hoisted_3$E={key:0};function _sfc_render$1f(e,n,t,o,r,a){const s=vue.resolveComponent("VsCol"),i=vue.resolveComponent("VsRow"),l=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("div",{"data-test":"vs-media-caption",class:vue.normalizeClass(["vs-media-caption",a.captionClasses])},[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.createVNode(i,null,{default:vue.withCtx(()=>[vue.createVNode(s,null,{default:vue.withCtx(()=>{var u,c;return[e.$slots.caption?(vue.openBlock(),vue.createElementBlock("p",_hoisted_1$17,[vue.renderSlot(e.$slots,"caption")])):vue.createCommentVNode("",!0),e.$slots.credit||t.videoId&&((u=a.videoDetails)!=null&&u.videoDurationMsg)?(vue.openBlock(),vue.createElementBlock("p",_hoisted_2$Q,[t.videoId&&((c=a.videoDetails)!=null&&c.videoDurationMsg)?(vue.openBlock(),vue.createElementBlock("span",_hoisted_3$E,vue.toDisplayString(a.videoDetails.videoDurationMsg),1)):vue.createCommentVNode("",!0),e.$slots.credit&&!t.videoId?vue.renderSlot(e.$slots,"credit",{key:1}):vue.createCommentVNode("",!0)])):vue.createCommentVNode("",!0)]}),_:3})]),_:3})]),_:3})],2)}const VsMediaCaption=LoadingSpinner._export_sfc(_sfc_main$1u,[["render",_sfc_render$1f]]),_sfc_main$1t={name:"VsHeroSectionImage",status:"prototype",release:"0.0.1",components:{VsMediaCaption,VsImg:LoadingSpinner.VsImg},props:{src:{type:String,required:!0},imgAlt:{type:String,default:""},imgCaption:{type:String,default:""},imgCredit:{type:String,default:""},split:{type:Boolean,default:!1}},computed:{isSplit(){return this.split?"vs-hero-section-image--split":""}}};function _sfc_render$1e(e,n,t,o,r,a){const s=vue.resolveComponent("VsImg"),i=vue.resolveComponent("VsMediaCaption");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-hero-section-image",a.isSplit]),"data-test":"vs-hero-section-image"},[vue.createVNode(s,{class:"vs-hero-section-image__img",src:t.src,alt:t.imgAlt},null,8,["src","alt"]),t.imgCaption||t.imgCredit?(vue.openBlock(),vue.createBlock(i,{key:0,"data-test":"vs-hero-section-image__caption","right-align":t.split},vue.createSlots({credit:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.imgCredit),1)]),_:2},[t.split?void 0:{name:"caption",fn:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.imgCaption),1)]),key:"0"}]),1032,["right-align"])):vue.createCommentVNode("",!0)],2)}const VsHeroSectionImage=LoadingSpinner._export_sfc(_sfc_main$1t,[["render",_sfc_render$1e]]);var dist={exports:{}},Sister;/**
|
|
151
151
|
* @link https://github.com/gajus/sister for the canonical source repository
|
|
152
152
|
* @license https://github.com/gajus/sister/blob/master/LICENSE BSD 3-Clause
|
|
153
|
-
*/Sister=function(){var e={},n={};return e.on=function(t,o){var a={name:t,handler:o};return n[t]=n[t]||[],n[t].unshift(a),a},e.off=function(t){var o=n[t.name].indexOf(t);o!==-1&&n[t.name].splice(o,1)},e.trigger=function(t,o){var a=n[t],r;if(a)for(r=a.length;r--;)a[r].handler(o)},e};var sister=Sister,YouTubePlayer={exports:{}},browser={exports:{}},ms,hasRequiredMs;function requireMs(){if(hasRequiredMs)return ms;hasRequiredMs=1;var e=1e3,n=e*60,t=n*60,o=t*24,a=o*7,r=o*365.25;ms=function(c,d){d=d||{};var v=typeof c;if(v==="string"&&c.length>0)return s(c);if(v==="number"&&isFinite(c))return d.long?l(c):i(c);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(c))};function s(c){if(c=String(c),!(c.length>100)){var d=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(c);if(d){var v=parseFloat(d[1]),m=(d[2]||"ms").toLowerCase();switch(m){case"years":case"year":case"yrs":case"yr":case"y":return v*r;case"weeks":case"week":case"w":return v*a;case"days":case"day":case"d":return v*o;case"hours":case"hour":case"hrs":case"hr":case"h":return v*t;case"minutes":case"minute":case"mins":case"min":case"m":return v*n;case"seconds":case"second":case"secs":case"sec":case"s":return v*e;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return v;default:return}}}}function i(c){var d=Math.abs(c);return d>=o?Math.round(c/o)+"d":d>=t?Math.round(c/t)+"h":d>=n?Math.round(c/n)+"m":d>=e?Math.round(c/e)+"s":c+"ms"}function l(c){var d=Math.abs(c);return d>=o?u(c,d,o,"day"):d>=t?u(c,d,t,"hour"):d>=n?u(c,d,n,"minute"):d>=e?u(c,d,e,"second"):c+" ms"}function u(c,d,v,m){var f=d>=v*1.5;return Math.round(c/v)+" "+m+(f?"s":"")}return ms}function setup(e){t.debug=t,t.default=t,t.coerce=l,t.disable=s,t.enable=a,t.enabled=i,t.humanize=requireMs(),t.destroy=u,Object.keys(e).forEach(c=>{t[c]=e[c]}),t.names=[],t.skips=[],t.formatters={};function n(c){let d=0;for(let v=0;v<c.length;v++)d=(d<<5)-d+c.charCodeAt(v),d|=0;return t.colors[Math.abs(d)%t.colors.length]}t.selectColor=n;function t(c){let d,v=null,m,f;function p(...g){if(!p.enabled)return;const _=p,h=Number(new Date),b=h-(d||h);_.diff=b,_.prev=d,_.curr=h,d=h,g[0]=t.coerce(g[0]),typeof g[0]!="string"&&g.unshift("%O");let V=0;g[0]=g[0].replace(/%([a-zA-Z%])/g,($,w)=>{if($==="%%")return"%";V++;const k=t.formatters[w];if(typeof k=="function"){const P=g[V];$=k.call(_,P),g.splice(V,1),V--}return $}),t.formatArgs.call(_,g),(_.log||t.log).apply(_,g)}return p.namespace=c,p.useColors=t.useColors(),p.color=t.selectColor(c),p.extend=o,p.destroy=t.destroy,Object.defineProperty(p,"enabled",{enumerable:!0,configurable:!1,get:()=>v!==null?v:(m!==t.namespaces&&(m=t.namespaces,f=t.enabled(c)),f),set:g=>{v=g}}),typeof t.init=="function"&&t.init(p),p}function o(c,d){const v=t(this.namespace+(typeof d>"u"?":":d)+c);return v.log=this.log,v}function a(c){t.save(c),t.namespaces=c,t.names=[],t.skips=[];const d=(typeof c=="string"?c:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(const v of d)v[0]==="-"?t.skips.push(v.slice(1)):t.names.push(v)}function r(c,d){let v=0,m=0,f=-1,p=0;for(;v<c.length;)if(m<d.length&&(d[m]===c[v]||d[m]==="*"))d[m]==="*"?(f=m,p=v,m++):(v++,m++);else if(f!==-1)m=f+1,p++,v=p;else return!1;for(;m<d.length&&d[m]==="*";)m++;return m===d.length}function s(){const c=[...t.names,...t.skips.map(d=>"-"+d)].join(",");return t.enable(""),c}function i(c){for(const d of t.skips)if(r(c,d))return!1;for(const d of t.names)if(r(c,d))return!0;return!1}function l(c){return c instanceof Error?c.stack||c.message:c}function u(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return t.enable(t.load()),t}var common=setup;(function(e,n){var t={};n.formatArgs=a,n.save=r,n.load=s,n.useColors=o,n.storage=i(),n.destroy=(()=>{let u=!1;return()=>{u||(u=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})(),n.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function o(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let u;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(u=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(u[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function a(u){if(u[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+u[0]+(this.useColors?"%c ":" ")+"+"+e.exports.humanize(this.diff),!this.useColors)return;const c="color: "+this.color;u.splice(1,0,c,"color: inherit");let d=0,v=0;u[0].replace(/%[a-zA-Z%]/g,m=>{m!=="%%"&&(d++,m==="%c"&&(v=d))}),u.splice(v,0,c)}n.log=console.debug||console.log||(()=>{});function r(u){try{u?n.storage.setItem("debug",u):n.storage.removeItem("debug")}catch{}}function s(){let u;try{u=n.storage.getItem("debug")||n.storage.getItem("DEBUG")}catch{}return!u&&typeof process<"u"&&"env"in process&&(u=t.DEBUG),u}function i(){try{return localStorage}catch{}}e.exports=common(n);const{formatters:l}=e.exports;l.j=function(u){try{return JSON.stringify(u)}catch(c){return"[UnexpectedJSONParseError]: "+c.message}}})(browser,browser.exports);var browserExports=browser.exports,FunctionStateMap={exports:{}},PlayerStates={exports:{}};(function(e,n){Object.defineProperty(n,"__esModule",{value:!0}),n.default={BUFFERING:3,ENDED:0,PAUSED:2,PLAYING:1,UNSTARTED:-1,VIDEO_CUED:5},e.exports=n.default})(PlayerStates,PlayerStates.exports);var PlayerStatesExports=PlayerStates.exports;(function(e,n){Object.defineProperty(n,"__esModule",{value:!0});var t=PlayerStatesExports,o=a(t);function a(r){return r&&r.__esModule?r:{default:r}}n.default={pauseVideo:{acceptableStates:[o.default.ENDED,o.default.PAUSED],stateChangeRequired:!1},playVideo:{acceptableStates:[o.default.ENDED,o.default.PLAYING],stateChangeRequired:!1},seekTo:{acceptableStates:[o.default.ENDED,o.default.PLAYING,o.default.PAUSED],stateChangeRequired:!0,timeout:3e3}},e.exports=n.default})(FunctionStateMap,FunctionStateMap.exports);var FunctionStateMapExports=FunctionStateMap.exports,eventNames={exports:{}};(function(e,n){Object.defineProperty(n,"__esModule",{value:!0}),n.default=["ready","stateChange","playbackQualityChange","playbackRateChange","error","apiChange","volumeChange"],e.exports=n.default})(eventNames,eventNames.exports);var eventNamesExports=eventNames.exports,functionNames={exports:{}};(function(e,n){Object.defineProperty(n,"__esModule",{value:!0}),n.default=["cueVideoById","loadVideoById","cueVideoByUrl","loadVideoByUrl","playVideo","pauseVideo","stopVideo","getVideoLoadedFraction","cuePlaylist","loadPlaylist","nextVideo","previousVideo","playVideoAt","setShuffle","setLoop","getPlaylist","getPlaylistIndex","setOption","mute","unMute","isMuted","setVolume","getVolume","seekTo","getPlayerState","getPlaybackRate","setPlaybackRate","getAvailablePlaybackRates","getPlaybackQuality","setPlaybackQuality","getAvailableQualityLevels","getCurrentTime","getDuration","removeEventListener","getVideoUrl","getVideoEmbedCode","getOptions","getOption","addEventListener","destroy","setSize","getIframe","getSphericalProperties","setSphericalProperties"],e.exports=n.default})(functionNames,functionNames.exports);var functionNamesExports=functionNames.exports;(function(e,n){Object.defineProperty(n,"__esModule",{value:!0});var t=browserExports,o=c(t),a=FunctionStateMapExports,r=c(a),s=eventNamesExports,i=c(s),l=functionNamesExports,u=c(l);function c(m){return m&&m.__esModule?m:{default:m}}const d=(0,o.default)("youtube-player"),v={};v.proxyEvents=m=>{const f={};for(const p of i.default){const g="on"+p.slice(0,1).toUpperCase()+p.slice(1);f[g]=_=>{d('event "%s"',g,_),m.trigger(p,_)}}return f},v.promisifyPlayer=(m,f=!1)=>{const p={};for(const g of u.default)f&&r.default[g]?p[g]=(..._)=>m.then(h=>{const b=r.default[g],V=h.getPlayerState(),S=h[g].apply(h,_);return b.stateChangeRequired||Array.isArray(b.acceptableStates)&&!b.acceptableStates.includes(V)?new Promise($=>{const w=()=>{const k=h.getPlayerState();let P;typeof b.timeout=="number"&&(P=setTimeout(()=>{h.removeEventListener("onStateChange",w),$()},b.timeout)),Array.isArray(b.acceptableStates)&&b.acceptableStates.includes(k)&&(h.removeEventListener("onStateChange",w),clearTimeout(P),$())};h.addEventListener("onStateChange",w)}).then(()=>S):S}):p[g]=(..._)=>m.then(h=>h[g].apply(h,_));return p},n.default=v,e.exports=n.default})(YouTubePlayer,YouTubePlayer.exports);var YouTubePlayerExports=YouTubePlayer.exports,loadYouTubeIframeApi={exports:{}},loadScript=function e(n,t,o){var a=document.head||document.getElementsByTagName("head")[0],r=document.createElement("script");typeof t=="function"&&(o=t,t={}),t=t||{},o=o||function(){},r.type=t.type||"text/javascript",r.charset=t.charset||"utf8",r.async="async"in t?!!t.async:!0,r.src=n,t.attrs&&setAttributes(r,t.attrs),t.text&&(r.text=""+t.text);var s="onload"in r?stdOnEnd:ieOnEnd;s(r,o),r.onload||stdOnEnd(r,o),a.appendChild(r)};function setAttributes(e,n){for(var t in n)e.setAttribute(t,n[t])}function stdOnEnd(e,n){e.onload=function(){this.onerror=this.onload=null,n(null,e)},e.onerror=function(){this.onerror=this.onload=null,n(new Error("Failed to load "+this.src),e)}}function ieOnEnd(e,n){e.onreadystatechange=function(){this.readyState!="complete"&&this.readyState!="loaded"||(this.onreadystatechange=null,n(null,e))}}(function(e,n){Object.defineProperty(n,"__esModule",{value:!0});var t=loadScript,o=a(t);function a(r){return r&&r.__esModule?r:{default:r}}n.default=r=>new Promise(i=>{if(window.YT&&window.YT.Player&&window.YT.Player instanceof Function){i(window.YT);return}else{const u=window.location.protocol==="http:"?"http:":"https:";(0,o.default)(u+"//www.youtube.com/iframe_api",c=>{c&&r.trigger("error",c)})}const l=window.onYouTubeIframeAPIReady;window.onYouTubeIframeAPIReady=()=>{l&&l(),i(window.YT)}}),e.exports=n.default})(loadYouTubeIframeApi,loadYouTubeIframeApi.exports);var loadYouTubeIframeApiExports=loadYouTubeIframeApi.exports;(function(e,n){Object.defineProperty(n,"__esModule",{value:!0});var t=sister,o=l(t),a=YouTubePlayerExports,r=l(a),s=loadYouTubeIframeApiExports,i=l(s);function l(c){return c&&c.__esModule?c:{default:c}}let u;n.default=(c,d={},v=!1)=>{const m=(0,o.default)();if(u||(u=(0,i.default)(m)),d.events)throw new Error("Event handlers cannot be overwritten.");if(typeof c=="string"&&!document.getElementById(c))throw new Error('Element "'+c+'" does not exist.');d.events=r.default.proxyEvents(m);const f=new Promise(g=>{typeof c=="object"&&c.playVideo instanceof Function?g(c):u.then(_=>{const h=new _.Player(c,d);return m.on("ready",()=>{g(h)}),null})}),p=r.default.promisifyPlayer(f,v);return p.on=m.on,p.off=m.off,p},e.exports=n.default})(dist,dist.exports);var distExports=dist.exports;const player=LoadingSpinner.getDefaultExportFromCjs(distExports),UNSTARTED=-1,ENDED=0,PLAYING=1,PAUSED=2,BUFFERING=3,CUED=5,VueYoutube={name:"Youtube",props:{videoId:String,playerVars:{type:Object,default:()=>({})},height:{type:[Number,String],default:360},width:{type:[Number,String],default:640},resize:{type:Boolean,default:!1},resizeDelay:{type:Number,default:100},nocookie:{type:Boolean,default:!1},fitParent:{type:Boolean,default:!1}},data(){return{player:{},events:{[UNSTARTED]:"unstarted",[PLAYING]:"playing",[PAUSED]:"paused",[ENDED]:"ended",[BUFFERING]:"buffering",[CUED]:"cued"},resizeTimeout:null}},computed:{aspectRatio(){return this.width/this.height}},methods:{playerReady(e){this.$emit("ready",e.target)},playerStateChange(e){e.data!==null&&e.data!==UNSTARTED&&this.$emit(this.events[e.data],e.target)},playerError(e){this.$emit("error",e.target)},updatePlayer(e){if(!e){this.player.stopVideo();return}const n={videoId:e};if(typeof this.playerVars.start=="number"&&(n.startSeconds=this.playerVars.start),typeof this.playerVars.end=="number"&&(n.endSeconds=this.playerVars.end),this.playerVars.autoplay===1){this.player.loadVideoById(n);return}this.player.cueVideoById(n)},resizeProportionally(){this.player.getIframe().then(e=>{const n=this.fitParent?e.parentElement.offsetWidth:e.offsetWidth,t=n/this.aspectRatio;this.player.setSize(n,t)})},onResize(){clearTimeout(this.resizeTimeout),this.resizeTimeout=setTimeout(this.resizeProportionally,this.resizeDelay)}},watch:{videoId:"updatePlayer",resize(e){e?(window.addEventListener("resize",this.onResize),this.resizeProportionally()):(window.removeEventListener("resize",this.onResize),this.player.setSize(this.width,this.height))},width(e){this.player.setSize(e,this.height)},height(e){this.player.setSize(this.width,e)}},beforeUnmount(){this.player!==null&&this.player.destroy&&(this.player.destroy(),delete this.player),this.resize&&window.removeEventListener("resize",this.onResize)},mounted(){window.YTConfig={host:"https://www.youtube.com/iframe_api"};const e=this.nocookie?"https://www.youtube-nocookie.com":"https://www.youtube.com";this.player=player(this.$el,{host:e,width:this.width,height:this.height,videoId:this.videoId,playerVars:this.playerVars}),this.player.on("ready",this.playerReady),this.player.on("stateChange",this.playerStateChange),this.player.on("error",this.playerError),this.resize&&window.addEventListener("resize",this.onResize),this.fitParent&&this.resizeProportionally()},render(){return vue.h("div")}},cookieValues$2=cookieValues$5.youtube;let videoStore=null;const _sfc_main$1s={name:"VsVideoYoutube",components:{VueYoutube,VsWarning:LoadingSpinner.VsWarning},mixins:[LoadingSpinner.dataLayerMixin,cookieCheckerMixin],props:{videoId:{type:String,required:!0},videoTitle:{type:String,default:""},language:{type:String,default:"en"},singleMinuteDescriptor:{type:String,default:"%s minute video"},pluralMinuteDescriptor:{type:String,default:"%s minute video"},noCookiesMessage:{type:String,required:!0},cookieBtnText:{type:String,required:!0},noJsMessage:{type:String,required:!0},lazyLoad:{type:Boolean,default:!1}},data(){return{playerVars:{hl:this.language},requiredCookies:cookieValues$2,duration:{minutes:0,seconds:0,roundedMinutes:""},jsDisabled:!0,isLoaded:!1,observer:null}},computed:{player(){return this.$refs.youtube?this.$refs.youtube.player:null},showError(){return!this.cookiesAllowed&&this.cookiesLoaded===!0||this.cookiesLoaded===!1},warningText(){let e="";return this.videoId&&this.jsDisabled&&(e=this.noJsMessage),!this.cookiesAllowed&&this.cookiesLoaded===!0&&(e=this.noCookiesMessage),e}},mounted(){this.jsDisabled=jsIsDisabled(),videoStore=useVideoStore(),this.setEventListeners(),this.lazyLoad?this.setupIntersectionObserver():this.isLoaded=!0},beforeUnmount(){this.observer&&this.observer.disconnect()},methods:{async playerReady(){await this.getPlayerDetails(),this.shouldAutoPlay&&(this.shouldAutoPlay=!1,this.playVideo())},async playVideo(){this.player&&await this.player.playVideo()},async pauseVideo(){this.player&&await this.player.pauseVideo()},async toggleVideo(){if(!this.player)return;await this.player.getPlayerState()===1?this.pauseVideo():this.playVideo()},async stopVideo(){this.player&&await this.player.stopVideo()},youtubePlaying(){this.analyticsEvent("play")},youtubePaused(){this.analyticsEvent("pause")},youtubeEnded(){this.analyticsEvent("ended")},analyticsEvent(e){let n=0,t=0;this.player.getCurrentTime().then(o=>(n=o,this.player?this.player.getDuration():null)).then(o=>{t=o}).then(()=>{const o=n/t*100;this.createDataLayerObject("videoTrackingDataEvent",{title:this.videoTitle,status:e,percent:Math.round(o)})})},async getPlayerDetails(){this.player&&await this.player.getDuration().then(e=>{this.formatTime(e),this.storeVideoDetails()})},formatTime(e){const n=Math.floor(e/60),t=Math.round(e-n*60);this.duration.minutes=n,this.duration.seconds=t;const o=this.getRoundedMinutes(n,t);this.duration.roundedMinutes=this.formatSingularOrPlural(o)},getRoundedMinutes(e,n){return n<30&&e!==0?e:e+1},formatSingularOrPlural(e){return e===1?this.singleMinuteDescriptor.replace("%s",e):this.pluralMinuteDescriptor.replace("%s",e)},pad(e){return e>=10?e:`0${e}`},storeVideoDetails(){videoStore.addVideo({videoId:this.videoId,videoDurationMsg:this.duration.roundedMinutes,videoDuration:this.duration.minutes*60+this.duration.seconds,videoFullDuration:this.duration})},setEventListeners(){this.emitter&&this.emitter.on("video-controls",e=>{e.id===this.videoId&&(e.action==="modal-opened"&&this.playVideo(),e.action==="modal-closed"&&this.stopVideo(),e.action==="play"?this.playVideo():e.action==="pause"&&this.pauseVideo())})},setupIntersectionObserver(){if(!("IntersectionObserver"in window)){this.isLoaded=!0;return}this.observer=new IntersectionObserver(e=>{e[0].intersectionRatio>0&&(this.observer.unobserve(this.$el),this.isLoaded=!0,this.$nextTick(()=>{this.playVideo()}))},{rootMargin:"50px",threshold:0}),this.observer.observe(this.$el)}}},_hoisted_1$16={class:"vs-video-youtube","data-test":"vs-video-youtube"},_hoisted_2$P={key:0};function _sfc_render$1d(e,n,t,o,a,r){const s=vue.resolveComponent("VueYoutube"),i=vue.resolveComponent("VsWarning");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$16,[e.cookiesAllowed&&(!t.lazyLoad||a.isLoaded)?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$P,[vue.createVNode(s,{autoplay:0,"video-id":t.videoId,vars:a.playerVars,ref:"youtube",nocookie:!0,class:"vs-video-youtube__player",onPlaying:r.youtubePlaying,onPaused:r.youtubePaused,onEnded:r.youtubeEnded,onReady:r.playerReady},null,8,["video-id","vars","onPlaying","onPaused","onEnded","onReady"])])):vue.createCommentVNode("",!0),r.showError?(vue.openBlock(),vue.createBlock(i,{key:1,type:e.cookiesLoaded===!0?"cookie":"normal",class:"vs-video-youtube__warning","data-test":"vs-video-youtube__warning"},vue.createSlots({default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.warningText)+" ",1)]),_:2},[!e.cookiesAllowed&&e.cookiesLoaded===!0?{name:"button-text",fn:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.cookieBtnText),1)]),key:"0"}:void 0]),1032,["type"])):vue.createCommentVNode("",!0),vue.createVNode(i,{class:"vs-video-youtube__warning vs-video-youtube__warning--no-js","data-test":"vs-video-youtube__warning--no-js"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.noJsMessage),1)]),_:1})])}const VsVideoYoutube=LoadingSpinner._export_sfc(_sfc_main$1s,[["render",_sfc_render$1d]]),_sfc_main$1r={name:"VsToggleButton",status:"prototype",release:"0.0.1",components:{VsButton:LoadingSpinner.VsButton,BButton:LoadingSpinner.vt,VsIcon:LoadingSpinner.VsIcon},props:{toggleId:{type:String,default:""},variant:{type:String,default:"default",validator:e=>e.match(/(default|overlay|overlay-strong)/)},icon:{type:String,default:""},pressedIcon:{type:String,default:null},modelValue:{type:Boolean,default:void 0},label:{type:String,default:""},pressedLabel:{type:String,default:""},labelBreakpoint:{type:String,default:null,validator:e=>e===null||/^(xs|sm|md|lg|xl|xxl)$/.test(e)}},emits:["toggleAction","update:modelValue","click"],data(){return{show:!1,internalPressed:!1}},computed:{isLegacyMode(){return!this.icon&&!this.pressedIcon},isPressed(){return this.modelValue!==void 0?this.modelValue:this.internalPressed},buttonClasses(){return{"vs-toggle-button--pressed":this.isPressed,[`vs-toggle-button--label-${this.labelBreakpoint}-up`]:this.labelBreakpoint}},buttonLabelClasses(){return{[`visible-${this.labelBreakpoint}-up`]:this.labelBreakpoint}},currentIcon(){return this.isPressed&&this.pressedIcon?this.pressedIcon:this.icon},computedLabel(){return this.isPressed&&this.pressedLabel?this.pressedLabel:this.label}},methods:{toggleLegacy(e){this.show=!this.show,this.$emit("toggleAction",this.show),this.$emit("click",e)},handleClick(e){const n=!this.isPressed;this.modelValue!==void 0?this.$emit("update:modelValue",n):this.internalPressed=n,this.$emit("click",e)}}};function _sfc_render$1c(e,n,t,o,a,r){const s=vue.resolveComponent("VsIcon"),i=vue.resolveComponent("BButton"),l=vue.resolveComponent("VsButton");return r.isLegacyMode?(vue.openBlock(),vue.createBlock(l,{key:1,class:"vs-toggle-btn","data-test":"vs-toggle-btn",variant:"subtle","aria-controls":t.toggleId,"aria-expanded":a.show?"true":"false",onClick:r.toggleLegacy},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default"),a.show?(vue.openBlock(),vue.createBlock(s,{key:0,class:"fa-icon-colours fa-icon-colours--white",icon:"fa-duotone fa-solid fa-circle-xmark"})):vue.renderSlot(e.$slots,"toggle-icon",{key:1},()=>[vue.createVNode(s,{class:"fa-icon-colours",icon:"fa-duotone fa-solid fa-circle-info"})])]),_:3},8,["aria-controls","aria-expanded","onClick"])):(vue.openBlock(),vue.createBlock(i,{key:0,variant:t.variant,class:vue.normalizeClass(["vs-toggle-button",r.buttonClasses]),size:"sm","aria-label":r.computedLabel,onClick:r.handleClick},{default:vue.withCtx(()=>[vue.createVNode(s,{icon:r.currentIcon,size:"xs",padding:0},null,8,["icon"]),t.label?(vue.openBlock(),vue.createElementBlock("span",{key:0,class:vue.normalizeClass(["visually-hidden",r.buttonLabelClasses])},vue.toDisplayString(r.computedLabel),3)):vue.createCommentVNode("",!0)]),_:1},8,["variant","class","aria-label","onClick"]))}const VsToggleButton=LoadingSpinner._export_sfc(_sfc_main$1r,[["render",_sfc_render$1c]]),prefersReducedMotion=()=>window&&window.matchMedia("(prefers-reduced-motion: reduce)").matches,_sfc_main$1q={name:"VsVideoHtml5",status:"prototype",release:"0.0.1",components:{VsToggleButton,VsImg:LoadingSpinner.VsImg},inject:{registerMedia:{default:null}},props:{videoSrc:{type:String,required:!0},videoId:{type:String,required:!0},posterImageSrc:{type:String,default:""},lazyLoad:{type:Boolean,default:!1},playButtonLabel:{type:String,default:""},pauseButtonLabel:{type:String,default:""},showToggle:{type:Boolean,default:!0}},data(){return{isLoaded:!1,isPlaying:!1,observer:null,isReducedMotion:prefersReducedMotion()}},mounted(){var e;(e=this.registerMedia)==null||e.call(this,this),this.lazyLoad?this.setupIntersectionObserver():(this.isLoaded=!0,this.isPlaying=!0)},beforeUnmount(){this.observer&&this.observer.disconnect()},methods:{playVideo(){const e=this.$refs.videoRef;e&&e.play()},pauseVideo(){const e=this.$refs.videoRef;e&&e.pause()},stopVideo(){const e=this.$refs.videoRef;e&&(e.pause(),e.currentTime=0)},toggleVideo(){const e=this.$refs.videoRef;e&&(e.paused?e.play():e.pause())},setupIntersectionObserver(){if(!("IntersectionObserver"in window)){this.isLoaded=!0;return}this.observer=new IntersectionObserver(e=>{e[0].intersectionRatio>0&&(this.observer.unobserve(this.$el),this.isLoaded=!0,this.$nextTick(()=>{var n;(n=this.$refs.videoRef)==null||n.play()}))},{rootMargin:"50px",threshold:0}),this.observer.observe(this.$el)}}},_hoisted_1$15={class:"vs-video-html5","data-test":"vs-video-html5"},_hoisted_2$O=["id","poster","loop","muted","autoplay","preload","fetchpriority"],_hoisted_3$D=["src"];function _sfc_render$1b(e,n,t,o,a,r){const s=vue.resolveComponent("VsImg"),i=vue.resolveComponent("VsToggleButton");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$15,[a.isReducedMotion||!t.videoSrc?(vue.openBlock(),vue.createBlock(s,{key:0,class:"vs-video-html5__fallback-image",src:t.posterImageSrc},null,8,["src"])):(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[vue.createElementVNode("video",{ref:"videoRef",onPlay:n[0]||(n[0]=l=>a.isPlaying=!0),onPause:n[1]||(n[1]=l=>a.isPlaying=!1),onEnded:n[2]||(n[2]=l=>a.isPlaying=!1),id:t.videoId,class:"vs-video-html5__player img-zoom-on-hover",poster:t.posterImageSrc,"aria-hidden":"true",loop:!t.lazyLoad||a.isLoaded,muted:!t.lazyLoad||a.isLoaded,autoplay:!t.lazyLoad||a.isLoaded,playsinline:"",preload:t.lazyLoad?"none":"auto",fetchpriority:t.lazyLoad?"low":"high"},[vue.createElementVNode("source",{src:t.videoSrc,type:"video/mp4"},null,8,_hoisted_3$D)],40,_hoisted_2$O),t.showToggle?(vue.openBlock(),vue.createBlock(i,{key:0,class:"vs-video-html5__toggle-video",variant:"overlay",icon:"vs-icon-control-pause","pressed-icon":"vs-icon-control-play",label:t.pauseButtonLabel,"pressed-label":t.playButtonLabel,"aria-controls":t.videoId,"model-value":!a.isPlaying,onClick:r.toggleVideo},null,8,["label","pressed-label","aria-controls","model-value","onClick"])):vue.createCommentVNode("",!0)],64))])}const VsVideoHtml5=LoadingSpinner._export_sfc(_sfc_main$1q,[["render",_sfc_render$1b]]),_sfc_main$1p={name:"VsVideo",props:{videoType:{type:String,default:"youtube",validator:e=>["youtube","html5"].includes(e)},videoSrc:{type:String,default:""},posterImageSrc:{type:String,default:""},videoId:{type:String,default:""},videoTitle:{type:String,default:""},language:{type:String,default:"en"},singleMinuteDescriptor:{type:String,default:"%s minute video"},pluralMinuteDescriptor:{type:String,default:"%s minute video"},noCookiesMessage:{type:String,default:""},cookieBtnText:{type:String,default:""},noJsMessage:{type:String,default:""},playButtonLabel:{type:String,default:"Play video"},pauseButtonLabel:{type:String,default:"Pause video"},showToggle:{type:Boolean,default:!0},lazyLoad:{type:Boolean,default:!1}},data(){return{reRendering:!1}},computed:{playerComponent(){return this.videoType==="html5"?VsVideoHtml5:VsVideoYoutube}},methods:{playVideo(){var e,n;(n=(e=this.$refs.player)==null?void 0:e.playVideo)==null||n.call(e)},pauseVideo(){var e,n;(n=(e=this.$refs.player)==null?void 0:e.pauseVideo)==null||n.call(e)},stopVideo(){var e,n;(n=(e=this.$refs.player)==null?void 0:e.stopVideo)==null||n.call(e)},toggleVideo(){var e,n;(n=(e=this.$refs.player)==null?void 0:e.toggleVideo)==null||n.call(e)}}},_hoisted_1$14={key:0,class:"vs-video","data-test":"vs-video"};function _sfc_render$1a(e,n,t,o,a,r){return a.reRendering?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$14,[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(r.playerComponent),vue.mergeProps({ref:"player"},e.$props,{"lazy-load":t.lazyLoad}),null,16,["lazy-load"]))]))}const VsVideo=LoadingSpinner._export_sfc(_sfc_main$1p,[["render",_sfc_render$1a]]),_sfc_main$1o={name:"VsHeroSection",status:"prototype",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading,VsBody:LoadingSpinner.VsBody,VsHeroSectionImage,VsVideo},provide(){return{videoPlayingStatus:this.videoPlayingStatus,videoPausedStatus:this.videoPausedStatus}},props:{heading:{type:String,default:"",required:!0},lede:{type:String,default:"",required:!0},imgSrc:{type:String,default:""},imgAlt:{type:String,default:""},imgCaption:{type:String,default:""},imgCredit:{type:String,default:""},inset:{type:Boolean,default:!1},split:{type:Boolean,default:!1},videoSrc:{type:String,default:""},videoBtnText:{type:String,default:""},videoPlayingStatus:{type:String,default:""},videoPausedStatus:{type:String,default:""},playButtonLabel:{type:String,default:""},pauseButtonLabel:{type:String,default:""}},computed:{imageClasses(){return{"vs-hero-section__image--inset":this.inset}},textContainerClasses(){return[{"vs-hero-section__text-container--video":this.videoSrc},"vs-hero-section__text-container"]}}},_hoisted_1$13={class:"vs-hero-section__grid"},_hoisted_2$N={key:1,class:"vs-hero-section__video-wrapper"},_hoisted_3$C={key:2,class:"vs-hero-section__divider"},_hoisted_4$t={class:"vs-hero-section__text"},_hoisted_5$l=["innerHTML"],_hoisted_6$h={class:"mb-0"},_hoisted_7$f={key:1,class:"vs-hero-section__article-details","data-test":"vs-hero-section__article-details"};function _sfc_render$19(e,n,t,o,a,r){const s=vue.resolveComponent("VsHeroSectionImage"),i=vue.resolveComponent("VsVideo"),l=vue.resolveComponent("VsHeading"),u=vue.resolveComponent("VsBody");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-hero-section",{"vs-hero-section--split":t.split}]),"data-test":"vs-hero-section"},[vue.createElementVNode("div",_hoisted_1$13,[t.imgSrc&&!t.videoSrc?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(["vs-hero-section__image",r.imageClasses])},[vue.createVNode(s,{"img-alt":t.imgAlt,src:t.imgSrc,"img-caption":t.imgCaption,"img-credit":t.imgCredit,split:t.split},null,8,["img-alt","src","img-caption","img-credit","split"])],2)):t.videoSrc?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$N,[vue.createVNode(i,{"video-type":"html5","video-id":"hero-video","poster-image-src":t.imgSrc,"video-src":t.videoSrc,"play-button-label":t.videoPlayingStatus?t.videoPlayingStatus:t.playButtonLabel,"pause-button-label":t.videoPausedStatus?t.videoPausedStatus:t.pauseButtonLabel,class:"vs-hero-section__video"},null,8,["poster-image-src","video-src","play-button-label","pause-button-label"]),n[0]||(n[0]=vue.createElementVNode("div",{class:"vs-hero-section__video-overlay"},null,-1))])):(vue.openBlock(),vue.createElementBlock("hr",_hoisted_3$C)),vue.createElementVNode("div",{class:vue.normalizeClass(r.textContainerClasses)},[vue.createElementVNode("div",_hoisted_4$t,[vue.createVNode(l,{class:"vs-hero-section__heading","data-test":"vs-hero-section__heading",level:"1","heading-style":"display-s",id:"main-heading"},{default:vue.withCtx(()=>[vue.createElementVNode("span",{innerHTML:t.heading},null,8,_hoisted_5$l)]),_:1}),t.lede?(vue.openBlock(),vue.createBlock(u,{key:0,class:"vs-hero-section__lede","data-test":"vs-hero-section__lede",variant:"lead"},{default:vue.withCtx(()=>[vue.createElementVNode("p",_hoisted_6$h,vue.toDisplayString(t.lede),1)]),_:1})):vue.createCommentVNode("",!0),e.$slots["hero-section-article-details"]?(vue.openBlock(),vue.createElementBlock("div",_hoisted_7$f,[vue.renderSlot(e.$slots,"hero-section-article-details")])):vue.createCommentVNode("",!0)])],2)])],2)}const HeroSection=LoadingSpinner._export_sfc(_sfc_main$1o,[["render",_sfc_render$19]]),_sfc_main$1n={name:"VsHtmlError",status:"prototype",release:"0.1.0",mixins:[LoadingSpinner.dataLayerMixin],props:{statusCode:{type:String,required:!0}},mounted(){this.createDataLayerObject("errorDataEvent",{error_type:"System Error",error_details:this.statusCode})}},_hoisted_1$12={class:"d-none"};function _sfc_render$18(e,n,t,o,a,r){return vue.openBlock(),vue.createElementBlock("span",_hoisted_1$12)}const HtmlError=LoadingSpinner._export_sfc(_sfc_main$1n,[["render",_sfc_render$18]]),_sfc_main$1m={name:"VsTourismInfo",status:"prototype",release:"0.0.1",components:{VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol}},_hoisted_1$11={class:"vs-tourism-info","data-test":"vs-tourism-info"},_hoisted_2$M={key:0,class:"vs-tourism-info__links","data-test":"vs-tourism-info__standalone-links"},_hoisted_3$B={class:"vs-tourism-info__quote-block"},_hoisted_4$s={key:0,class:"vs-tourism-info__links-contained","data-test":"vs-tourism-info__embedded-links"};function _sfc_render$17(e,n,t,o,a,r){const s=vue.resolveComponent("VsCol"),i=vue.resolveComponent("VsRow"),l=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$11,[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.createVNode(i,null,{default:vue.withCtx(()=>[vue.createVNode(s,{cols:"10",offset:"1",md:"8","offset-md":"2",lg:"6","offset-lg":"3",class:"vs-tourism-info__intro-content"},{default:vue.withCtx(()=>[e.$slots["tourism-info-links"]&&e.$slots["tourism-info-links"]()&&!(e.$slots["tourism-info-quote"]&&e.$slots["tourism-info-quote"]())?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$M,[vue.renderSlot(e.$slots,"tourism-info-links")])):vue.createCommentVNode("",!0)]),_:3}),vue.createVNode(s,{cols:"12",md:"10","offset-md":"1",class:vue.normalizeClass({"vs-tourism-info__image-offset":e.$slots["tourism-info-quote"]&&e.$slots["tourism-info-quote"]()})},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"tourism-info-image-with-caption")]),_:3},8,["class"]),e.$slots["tourism-info-quote"]&&e.$slots["tourism-info-quote"]()?(vue.openBlock(),vue.createBlock(s,{key:0,cols:"12",md:"10","offset-md":"1",lg:"7","offset-lg":"5",class:"vs-tourism-info__quote-block-container"},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_3$B,[vue.renderSlot(e.$slots,"tourism-info-quote"),e.$slots["tourism-info-links"]?(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$s,[vue.renderSlot(e.$slots,"tourism-info-links")])):vue.createCommentVNode("",!0)])]),_:3})):vue.createCommentVNode("",!0)]),_:3})]),_:3})])}const TourismInfo=LoadingSpinner._export_sfc(_sfc_main$1m,[["render",_sfc_render$17]]),_sfc_main$1l={name:"VsIconList",status:"prototype",release:"0.0.1",props:{title:{type:String,default:""}}},_hoisted_1$10={class:"vs-icon-list","data-test":"vs-icon-list"},_hoisted_2$L={key:0,class:"vs-icon-list__title"},_hoisted_3$A={class:"vs-icon-list__list mb-0"};function _sfc_render$16(e,n,t,o,a,r){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$10,[t.title?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$L,vue.toDisplayString(t.title),1)):vue.createCommentVNode("",!0),vue.createElementVNode("ul",_hoisted_3$A,[vue.renderSlot(e.$slots,"default")])])}const IconList=LoadingSpinner._export_sfc(_sfc_main$1l,[["render",_sfc_render$16]]),_sfc_main$1k={name:"VsIconListItem",status:"prototype",release:"0.0.1",components:{VsIcon:LoadingSpinner.VsIcon},props:{label:{type:String,required:!0},icon:{type:String,required:!0}}},_hoisted_1$$={class:"vs-icon-list__item","data-test":"vs-icon-list__item"};function _sfc_render$15(e,n,t,o,a,r){const s=vue.resolveComponent("VsIcon");return vue.openBlock(),vue.createElementBlock("li",_hoisted_1$$,[vue.createVNode(s,{icon:t.icon,size:"md",class:"d-block mx-auto"},null,8,["icon"]),vue.createTextVNode(" "+vue.toDisplayString(t.label),1)])}const IconListItem=LoadingSpinner._export_sfc(_sfc_main$1k,[["render",_sfc_render$15]]),cookieValues$1=cookieValues$5.youtube,_sfc_main$1j={name:"VsVideoCaption",status:"deprecated",release:"0.0.1",components:{VsButton:LoadingSpinner.VsButton,VsToggleButton,VsWarning:LoadingSpinner.VsWarning},mixins:[cookieCheckerMixin],inject:{noJsMessage:{default:""},noCookiesMessage:{default:""},cookieLinkText:{default:""},errorMessage:{default:""}},props:{videoBtnText:{type:String,default:""},withToggleBtn:{type:Boolean,default:!1},videoId:{type:String,required:!0},variant:{type:String,default:"wide",validator:e=>e.match(/(wide|narrow)/)}},emits:["toggleAction"],setup(){return{videoStore:useVideoStore()}},data(){return{showErrorMessage:!1,requiredCookies:cookieValues$1}},computed:{videoDetails(){return this.videoStore.videos[this.videoId]},videoLoaded(){return typeof this.videoDetails<"u"&&this.videoDetails.videoDuration>0},showCookieMessage(){return!!(!this.cookiesAllowed&&this.noCookiesMessage)}},methods:{emitToggle(){this.$emit("toggleAction")},emitShowModal(){this.emitter&&this.emitter.emit("showModal",this.videoId,"#videoShow")}}},_hoisted_1$_={key:0,class:"vs-video-caption__buttons-container"},_hoisted_2$K={class:"container"},_hoisted_3$z={key:1,class:"vs-video-caption__details"},_hoisted_4$r={class:"vs-video-caption__title"},_hoisted_5$k={class:"vs-video-caption__duration"},_hoisted_6$g={key:1,class:"vs-video-caption vs-video-caption--warning"},_hoisted_7$e={key:2,class:"vs-video-caption vs-video-caption--no-js vs-video-caption--warning","data-test":"video-caption-nojs"};function _sfc_render$14(e,n,t,o,a,r){const s=vue.resolveComponent("VsButton"),i=vue.resolveComponent("VsToggleButton"),l=vue.resolveComponent("VsWarning");return vue.openBlock(),vue.createElementBlock("div",{"data-test":"video-caption",class:vue.normalizeClass(["vs-video-caption__wrapper",`vs-video-caption__wrapper--${t.variant}`])},[r.videoLoaded&&e.cookiesAllowed?(vue.openBlock(),vue.createElementBlock("div",{"data-test":"video-caption-variants",class:vue.normalizeClass(["vs-video-caption",`vs-video-caption--${t.variant}`]),key:"video-caption"},[t.videoBtnText?(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$_,[vue.createElementVNode("div",_hoisted_2$K,[vue.createVNode(s,{class:"vs-video-caption__button",icon:"vs-icon-control-play","icon-position":"left",size:"md",ref:"videoShow",rounded:!1,onClick:r.emitShowModal},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.videoBtnText),1)]),_:1},8,["onClick"])]),t.withToggleBtn?(vue.openBlock(),vue.createBlock(i,{key:0,onToggleAction:r.emitToggle},{default:vue.withCtx(()=>[...n[0]||(n[0]=[vue.createElementVNode("span",{class:"visually-hidden"}," Toggle caption ",-1)])]),_:1},8,["onToggleAction"])):vue.createCommentVNode("",!0)])):vue.createCommentVNode("",!0),e.cookiesAllowed?(vue.openBlock(),vue.createElementBlock("div",_hoisted_3$z,[vue.createElementVNode("p",_hoisted_4$r,[vue.renderSlot(e.$slots,"video-title")]),vue.createElementVNode("p",_hoisted_5$k,vue.toDisplayString(r.videoDetails.videoDurationMsg),1)])):vue.createCommentVNode("",!0)],2)):vue.createCommentVNode("",!0),!(r.videoLoaded&&e.cookiesAllowed)&&r.showCookieMessage?(vue.openBlock(),vue.createElementBlock("div",_hoisted_6$g,[vue.createVNode(l,{size:"small",type:"cookie"},{"button-text":vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.cookieLinkText),1)]),default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.noCookiesMessage)+" ",1)]),_:1})])):vue.createCommentVNode("",!0),r.noJsMessage?(vue.openBlock(),vue.createElementBlock("div",_hoisted_7$e,[vue.createVNode(l,{size:"small"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.noJsMessage),1)]),_:1})])):vue.createCommentVNode("",!0)],2)}const VsVideoCaption=LoadingSpinner._export_sfc(_sfc_main$1j,[["render",_sfc_render$14]]),cookieValues=cookieValues$5.youtube,_sfc_main$1i={name:"VsImageWithCaption",status:"prototype",release:"0.0.1",components:{VsImg:LoadingSpinner.VsImg,VsToggleButton,VsVideoCaption},mixins:[cookieCheckerMixin],provide(){return{noJsMessage:this.noJsMessage,errorMessage:this.errorMessage,noCookiesMessage:this.noCookiesMessage,cookieLinkText:this.cookieLinkText}},props:{altText:{type:String,default:""},closedDefaultCaption:{type:Boolean,default:!1},imageSrc:{type:String,default:""},isHeroImage:{type:Boolean,default:!1},isVideo:{type:Boolean,default:!1},mobileOverlap:{type:Boolean,default:!1},toggleButtonText:{type:String,default:""},playButtonText:{type:String,default:""},videoId:{type:String,default:""},smallPlayButton:{type:Boolean,default:!1},noCookiesMessage:{type:String,default:""},cookieLinkText:{type:String,default:""},noJsMessage:{type:String,default:""},useLazyLoading:{type:Boolean,default:!0},errorMessage:{type:String,default:""},showToggle:{type:Boolean,default:!0}},data(){return{showCaption:!1,uniqueCaptionId:"",requiredCookies:cookieValues}},computed:{isSvg(){return this.imageSrc.endsWith(".svg")},imageWithCaptionClasses(){return{"vs-image-with-caption--closed-default":this.closedDefaultCaption,"vs-image-with-caption--hero":this.isHeroImage,"vs-image-with-caption--show-caption":!this.cookiesAllowed&&this.cookiesLoaded,"vs-image-with-caption--video":this.isVideo,"vs-image-with-caption--svg":this.isSvg}},captionWrapperClasses(){return{"d-block":this.showCaption&&!this.isHeroImage,"d-flex":this.showCaption&&this.isHeroImage||this.showCaption&&this.isVideo,container:this.isHeroImage}}},mounted(){this.uniqueCaptionId=this._uid},methods:{toggleCaption(){this.showCaption=!this.showCaption}}},_hoisted_1$Z={class:"visually-hidden"},_hoisted_2$J={class:"vs-image-with-caption__captions"},_hoisted_3$y=["id"];function _sfc_render$13(e,n,t,o,a,r){const s=vue.resolveComponent("VsImg"),i=vue.resolveComponent("VsToggleButton"),l=vue.resolveComponent("VsVideoCaption");return vue.openBlock(),vue.createElementBlock("figure",{class:vue.normalizeClass(["vs-image-with-caption",r.imageWithCaptionClasses]),"data-test":"vs-image-with-caption"},[vue.createElementVNode("div",{class:vue.normalizeClass(["vs-image-with-caption__image-wrapper",t.mobileOverlap?"vs-image-with-caption--overlapped":""])},[vue.renderSlot(e.$slots,"default",{},()=>[t.imageSrc?(vue.openBlock(),vue.createBlock(s,{key:0,src:t.imageSrc,alt:t.altText,"use-lazy-loading":t.useLazyLoading},null,8,["src","alt","use-lazy-loading"])):vue.createCommentVNode("",!0)]),t.showToggle?(vue.openBlock(),vue.createBlock(i,{key:0,"img-src":t.imageSrc,"toggle-id":a.uniqueCaptionId,onToggleAction:r.toggleCaption},{"toggle-icon":vue.withCtx(()=>[vue.renderSlot(e.$slots,"toggle-icon")]),default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_1$Z,vue.toDisplayString(t.toggleButtonText),1)]),_:3},8,["img-src","toggle-id","onToggleAction"])):vue.createCommentVNode("",!0)],2),vue.createElementVNode("figcaption",_hoisted_2$J,[t.isVideo?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(["vs-image-with-caption__video-caption-wrapper",t.isHeroImage?"container-lg":""])},[vue.createVNode(l,{"video-btn-text":t.playButtonText,"with-toggle-btn":t.showToggle,onToggleAction:r.toggleCaption,"video-id":t.videoId,"cookie-link-text":t.cookieLinkText,"error-message":t.errorMessage,variant:t.smallPlayButton?"narrow":"wide"},{"video-title":vue.withCtx(()=>[vue.renderSlot(e.$slots,"video-title")]),_:3},8,["video-btn-text","with-toggle-btn","onToggleAction","video-id","cookie-link-text","error-message","variant"])],2)):vue.createCommentVNode("",!0),vue.createElementVNode("div",{class:vue.normalizeClass(["vs-image-with-caption__caption-wrapper",r.captionWrapperClasses]),id:a.uniqueCaptionId},[vue.renderSlot(e.$slots,"img-caption")],10,_hoisted_3$y)])],2)}const ImageWithCaption=LoadingSpinner._export_sfc(_sfc_main$1i,[["render",_sfc_render$13]]),_sfc_main$1h={name:"VsIllustratedMap",props:{highlightedRegions:{type:Array,default:()=>[],validator:e=>e.every(n=>/^(borders|dumfries|highlands|outerhebs|shetland|orkney|edinburgh|glasgow|fife|dundee|aberdeen|perth|lomond|arranayr|argyll)$/.test(n))},ariaLabel:{type:String,default:()=>"Illustrated map of Scotland showing regions"},title:{type:String,default:()=>"Map of Scotland"},width:{type:String,default:null}},methods:{isHighlighted(e){return this.highlightedRegions.includes(e)}}},_hoisted_1$Y=["aria-label","width"];function _sfc_render$12(e,n,t,o,a,r){return vue.openBlock(),vue.createElementBlock("svg",{class:"vs-illustrated-map",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 147 259",fill:"none","aria-label":t.ariaLabel,width:t.width},[vue.createElementVNode("title",null,vue.toDisplayString(t.title),1),vue.createElementVNode("path",{id:"region-borders",d:"M94.8908 215.531L93.0078 228.835L107.675 235.709V243.242L113.032 241.534L128.139 211.014L120.114 207.334L105.422 215.196L94.8908 215.531Z",class:vue.normalizeClass({"is-highlighted":r.isHighlighted("borders")})},null,2),vue.createElementVNode("path",{id:"region-dumfries",d:"M107.678 243.242V235.709L93.0105 228.835L82.3684 227.947L56.8945 246.364L61.8447 258.049L107.678 243.242Z",class:vue.normalizeClass({"is-highlighted":r.isHighlighted("dumfries")})},null,2),vue.createElementVNode("path",{id:"region-highlands",d:"M76.3875 143.097L95.2198 133.991L113.324 133.608L97.0838 160.469L75.7941 169.254L55.0816 173.951L39.152 171.715L42.8855 166.308L22.8906 149.472L26.9695 134.771L40.5413 142.884L40.5683 128.034L58.977 94.2952L75.2383 98.8575L103.725 94.2952L103.831 105.06L76.3875 143.097Z",class:vue.normalizeClass({"is-highlighted":r.isHighlighted("highlands")})},null,2),vue.createElementVNode("path",{id:"region-outerhebs",d:"M32.2773 100.625L28.2335 123.863L12.5575 138.325L6.67127 161.517L0 166.276L2.87299 130.376L15.7839 111.868L32.2773 100.625Z",class:vue.normalizeClass({"is-highlighted":r.isHighlighted("outerhebs")})},null,2),vue.createElementVNode("path",{id:"region-shetland",d:"M137.044 28.8822L146.094 6.08942L143.526 0L123.234 20.1191L130.38 32.3789L137.044 28.8822Z",class:vue.normalizeClass({"is-highlighted":r.isHighlighted("shetland")})},null,2),vue.createElementVNode("path",{id:"region-orkney",d:"M122.546 56.7442L104.383 67.0074L102.082 77.7078L110.938 85.416L123.687 65.4372L122.546 56.7442Z",class:vue.normalizeClass({"is-highlighted":r.isHighlighted("orkney")})},null,2),vue.createElementVNode("path",{id:"region-edinburgh",d:"M91.4266 205.144L85.8047 209.876L88.6156 214.643L94.893 215.531L105.425 215.196L120.116 207.334L109.493 202.467L96.7193 207.453L91.4266 205.144Z",class:vue.normalizeClass({"is-highlighted":r.isHighlighted("edinburgh")})},null,2),vue.createElementVNode("path",{id:"region-glasgow",d:"M82.3716 227.947L61.3516 207.458L69.5119 201.782L85.8084 209.876L88.6193 214.643L94.8967 215.531L93.0138 228.835L82.3716 227.947Z",class:vue.normalizeClass({"is-highlighted":r.isHighlighted("glasgow")})},null,2),vue.createElementVNode("path",{id:"region-fife",d:"M87.6797 202.205L92.2306 196.904L96.9973 195.69L98.0602 189.406L110.434 188.702L114.378 195.922L98.7427 203.034L87.6797 202.205Z",class:vue.normalizeClass({"is-highlighted":r.isHighlighted("fife")})},null,2),vue.createElementVNode("path",{id:"region-dundee",d:"M104.384 186.969L95.3438 167.854L109.865 163.084L113.858 171.955L120.915 172.433L116.269 182.388L104.384 186.969Z",class:vue.normalizeClass({"is-highlighted":r.isHighlighted("dundee")})},null,2),vue.createElementVNode("path",{id:"region-aberdeen",d:"M113.318 133.608L126.213 133.333L135.806 140.523L120.907 172.433L113.85 171.955L109.857 163.084L95.336 167.854L83.0078 166.276L97.0787 160.47L113.318 133.608Z",class:vue.normalizeClass({"is-highlighted":r.isHighlighted("aberdeen")})},null,2),vue.createElementVNode("path",{id:"region-perth",d:"M75.7936 169.255L69.8615 170.601L65.6289 186.368L73.8324 183.044L78.7125 185.704L76.1605 192.023L92.2357 196.904L97.0025 195.69L98.0653 189.406L104.381 186.97L95.3407 167.854L83.0125 166.276L75.7936 169.255Z",class:vue.normalizeClass({"is-highlighted":r.isHighlighted("perth")})},null,2),vue.createElementVNode("path",{id:"region-lomond",d:"M62.4171 188.701L65.63 186.368L73.8335 183.044L78.7136 185.704L76.1616 192.023L92.2368 196.903L87.6859 202.205H85.0072L91.4303 205.143L85.8084 209.875L69.5119 201.781L61.3516 207.458L61.5296 202.467L63.1914 194.13L62.4171 188.701Z",class:vue.normalizeClass({"is-highlighted":r.isHighlighted("lomond")})},null,2),vue.createElementVNode("path",{id:"region-arran",d:"M51.7287 220.725L49.1875 231.015C49.1875 231.015 54.9712 233.435 55.1709 233.168C55.3732 232.898 61.1542 222.611 60.9546 222.543C60.755 222.476 51.7287 220.728 51.7287 220.728V220.725Z",class:vue.normalizeClass({"is-highlighted":r.isHighlighted("arranayr")})},null,2),vue.createElementVNode("path",{id:"region-ayrshire",d:"M61.3483 207.458L60.9653 218.253L66.8434 223.663L56.8945 246.364L82.3684 227.947L61.3483 207.458Z",class:vue.normalizeClass({"is-highlighted":r.isHighlighted("arranayr")})},null,2),vue.createElementVNode("path",{id:"region-argyll",d:"M42.2625 231.565L48.5831 221.483L52.2519 210.237L60.9598 218.253L61.521 202.467L63.1827 194.13L62.4085 188.702L65.6214 186.368L69.854 170.601L55.0736 173.952L39.144 171.715L27.6386 179.013L26.6485 193.901L39.2061 192.377L52.0981 177.832L42.8937 196.909L25.9768 208.276L23.9023 213.801L28.5207 221.82L43.2148 204.755L44.364 206.684L37.396 224.232L42.2625 231.565Z",class:vue.normalizeClass({"is-highlighted":r.isHighlighted("argyll")})},null,2)],8,_hoisted_1$Y)}const IllustratedMap=LoadingSpinner._export_sfc(_sfc_main$1h,[["render",_sfc_render$12],["__scopeId","data-v-b671fd04"]]),_sfc_main$1g={name:"VsInput",status:"prototype",release:"0.0.1",components:{BFormInput:LoadingSpinner.Tu,VsButton:LoadingSpinner.VsButton},mixins:[validateFormElementMixin,ariaDescriptionMixin],props:{value:{type:String,default:""},fieldName:{type:String,required:!0},name:{type:String,default:""},type:{type:String,default:"text"},autoComplete:{type:Boolean,default:!0},validationRules:{type:Object,default(){return{}}},invalid:{type:Boolean,default:!1},ariaLabel:{type:String,default:""},disabled:{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:""},placeholder:{type:String,default:""},reAlertErrors:{type:Boolean,default:!1}},emits:["updated"],setup:()=>({v$:useVuelidate()}),data(){return{inputVal:this.value,clearErrorsOnFocus:!1}},computed:{elementClass(){let e="";return(this.isInvalid||this.errorsList.length)&&(e="vs-input--error"),`${`vs-input--${this.fieldName}`} ${e}`},showClearButton(){return!!(this.inputVal.length&&this.clearButtonText!=="")}},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()})},clearInputAndFocus(){this.clearInput(),this.focusOnInput()},autocompleteValue(e){let n;switch(e){case"firstName":n="given-name";break;case"lastName":n="family-name";break;case"Email":n="email";break;case"PostalCode":n="postal-code";break;default:n=this.autoComplete?"on":"off";break}return n},validateErrors(){this.clearErrorsOnFocus=!1,this.emitStatus()},resetErrors(){this.clearErrorsOnFocus=!0}},validations(){return this.rules}},_hoisted_1$X={"data-test":"vs-input"},_hoisted_2$I=["id"],_hoisted_3$x=["id"],_hoisted_4$q={class:"visually-hidden"};function _sfc_render$11(e,n,t,o,a,r){const s=vue.resolveComponent("BFormInput"),i=vue.resolveComponent("VsButton");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$X,[t.hintText?(vue.openBlock(),vue.createElementBlock("p",{key:0,class:"hint-text",id:`hint-${t.fieldName}`},vue.toDisplayString(t.hintText),9,_hoisted_2$I)):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$q,vue.toDisplayString(t.fieldName),1),vue.createTextVNode(" "+vue.toDisplayString(t.validationMessages[l]||t.genericValidation[l]),1)])),[[vue.vShow,!t.reAlertErrors&&!a.clearErrorsOnFocus]])),128))],8,_hoisted_3$x)):vue.createCommentVNode("",!0),vue.createVNode(s,{ref:"input",type:t.type,class:vue.normalizeClass(["vs-input",[a.inputVal?"show-cancel":"",r.elementClass]]),modelValue:a.inputVal,"onUpdate:modelValue":n[0]||(n[0]=l=>a.inputVal=l),id:t.fieldName,name:t.name?t.name:t.fieldName,placeholder:t.placeholder,required:e.isRequired,autocomplete:r.autocompleteValue(t.fieldName),v:a.inputVal,"aria-invalid":e.v$.inputVal&&e.v$.inputVal.$anyError||t.invalid,"aria-label":t.ariaLabel?t.ariaLabel:null,"aria-describedby":e.ariaDescription,maxlength:t.validationRules.maxLength?t.validationRules.maxLength:null,minlength:t.validationRules.minLength?t.validationRules.minLength:null,min:t.validationRules.min!==void 0?t.validationRules.min:null,max:t.validationRules.max!==void 0?t.validationRules.max:null,disabled:t.disabled,onBlur:r.validateErrors,onChange:r.validateErrors,onFocus:r.resetErrors},null,8,["type","modelValue","class","id","name","placeholder","required","autocomplete","v","aria-invalid","aria-label","aria-describedby","maxlength","minlength","min","max","disabled","onBlur","onChange","onFocus"]),r.showClearButton?(vue.openBlock(),vue.createBlock(i,{key:2,class:"vs-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=>r.clearInputAndFocus(),["prevent"]))},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.clearButtonText),1)]),_:1})):vue.createCommentVNode("",!0)])}const VsInput=LoadingSpinner._export_sfc(_sfc_main$1g,[["render",_sfc_render$11]]),_sfc_main$1f={name:"VsItinerary",status:"prototype",release:"0.0.1",components:{VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,VsAccordion,VsButton:LoadingSpinner.VsButton},props:{listViewText:{type:String,default:"List view"},mapViewText:{type:String,default:"Map view"}},data(){return{showMap:!1,isDesktop:!1,withinItineraryMain:!1}},mounted(){const e=document.querySelector(".vds-example");window.addEventListener("resize",this.resizeWidth),e===null?window.addEventListener("scroll",this.onScroll):e.addEventListener("scroll",this.onScroll),this.resizeWidth()},unmounted(){window.removeEventListener("resize",this.resizeWidth)},methods:{resizeWidth(){this.isDesktop=window.innerWidth>=1200,this.showMap=window.innerWidth>=1200},onScroll(){const e=this.$el.getBoundingClientRect(),n=e.top<=(window.innerHeight||document.documentElement.clientHeight),t=e.bottom<=(window.innerHeight||document.documentElement.clientHeight);this.withinItineraryMain=!!(n&&!t)},toggleShowMap(){this.showMap=!this.showMap}}},_hoisted_1$W={class:"vs-itinerary","data-test":"vs-itinerary"},_hoisted_2$H={class:"fixed-bottom"},_hoisted_3$w={class:"d-flex justify-content-center pb-050"},_hoisted_4$p={key:0,class:"vs-itinerary__map-container","data-chromatic":"ignore"};function _sfc_render$10(e,n,t,o,a,r){const s=vue.resolveComponent("VsButton"),i=vue.resolveComponent("VsAccordion"),l=vue.resolveComponent("VsCol"),u=vue.resolveComponent("VsRow"),c=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("section",_hoisted_1$W,[vue.withDirectives(vue.createElementVNode("div",_hoisted_2$H,[vue.createElementVNode("div",_hoisted_3$w,[vue.createVNode(s,{class:"vs-itinerary__map-toggle-button",onClick:n[0]||(n[0]=d=>r.toggleShowMap()),icon:a.showMap?"fa-regular fa-list":"fa-regular fa-map","data-test":"vs-itinerary-btn"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.showMap?t.listViewText:t.mapViewText),1)]),_:1},8,["icon"])])],512),[[vue.vShow,!a.isDesktop&&a.withinItineraryMain]]),a.isDesktop||a.showMap?(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$p,[vue.renderSlot(e.$slots,"map")])):vue.createCommentVNode("",!0),vue.createVNode(c,{class:"vs-itinerary__outer-container"},{default:vue.withCtx(()=>[vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(l,{cols:"12",class:"p-0 vs-itinerary__accordion-container"},{default:vue.withCtx(()=>[vue.createVNode(i,{"break-point":"lg"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"list")]),_:3})]),_:3})]),_:3})]),_:3})])}const Itinerary=LoadingSpinner._export_sfc(_sfc_main$1f,[["render",_sfc_render$10]]),_sfc_main$1e={name:"VsItineraryDay",status:"prototype",release:"0.0.1",components:{VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,VsIcon:LoadingSpinner.VsIcon,VsAccordionItem},props:{defaultShow:{type:Boolean,default:!0},dayLabel:{type:String,required:!0},dayNumber:{type:String,required:!0},dayTitle:{type:String,required:!0}},data(){return{show:this.defaultShow}}},_hoisted_1$V={class:"vs-itinerary-day"},_hoisted_2$G={class:"vs-itinerary-day__header"},_hoisted_3$v={class:"vs-itinerary-day__title"},_hoisted_4$o={class:"vs-itinerary-day__sub-heading"},_hoisted_5$j=["id"],_hoisted_6$f={class:"vs-itinerary-day__intro-content"},_hoisted_7$d={class:"list-unstyled"};function _sfc_render$$(e,n,t,o,a,r){const s=vue.resolveComponent("VsIcon"),i=vue.resolveComponent("VsAccordionItem"),l=vue.resolveComponent("VsCol"),u=vue.resolveComponent("VsRow"),c=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$V,[vue.createVNode(c,null,{default:vue.withCtx(()=>[vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.createVNode(i,{"open-by-default":a.show,"control-id":`itinerary-day-${t.dayNumber}`,variant:"subtle","item-break-point":"lg",class:"vs-itinerary-day__list-item"},{title:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_2$G,[vue.createElementVNode("span",_hoisted_3$v,vue.toDisplayString(t.dayLabel)+" "+vue.toDisplayString(t.dayNumber),1),vue.createElementVNode("span",_hoisted_4$o,vue.toDisplayString(t.dayTitle),1)])]),"icon-open":vue.withCtx(()=>[vue.createVNode(s,{icon:"vs-icon-control-collapse",size:"lg",padding:3,class:"vs-itinerary-day__toggle-button"})]),"icon-closed":vue.withCtx(()=>[vue.createVNode(s,{icon:"vs-icon-control-expand",size:"lg",padding:3,class:"vs-itinerary-day__toggle-button"})]),default:vue.withCtx(()=>[vue.createElementVNode("div",{id:`dayPanel_${t.dayNumber}`,class:"vs-itinerary-day__panel"},[vue.createElementVNode("div",_hoisted_6$f,[vue.renderSlot(e.$slots,"day-transport"),vue.renderSlot(e.$slots,"day-introduction")]),vue.createElementVNode("ul",_hoisted_7$d,[vue.renderSlot(e.$slots,"stops")])],8,_hoisted_5$j)]),_:3},8,["open-by-default","control-id"])]),_:3})]),_:3})]),_:3})])}const ItineraryDay=LoadingSpinner._export_sfc(_sfc_main$1e,[["render",_sfc_render$$]]),_sfc_main$1d={name:"VsItineraryStop",status:"prototype",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading,VsIcon:LoadingSpinner.VsIcon,VsBody:LoadingSpinner.VsBody,VsDetail},props:{stopLabel:{type:String,required:!0},stopNumber:{type:String,required:!0},stopTitle:{type:String,required:!0}}},_hoisted_1$U={class:"vs-itinerary-stop","data-test":"vs-itinerary-stop"},_hoisted_2$F={class:"vs-itinerary-stop__border"},_hoisted_3$u={class:"vs-itinerary-stop__header","data-test":"vs-itinerary-stop-heading"},_hoisted_4$n={class:"vs-itinerary-stop__marker"},_hoisted_5$i={class:"vs-itinerary-stop__count","aria-hidden":"true","data-test":"vs-itinerary-stop-marker"},_hoisted_6$e={class:"vs-itinerary-stop__details-container","data-chromatic":"ignore"},_hoisted_7$c={key:0,class:"vs-itinerary-stop__address","data-test":"vs-itinerary-stop-address"};function _sfc_render$_(e,n,t,o,a,r){const s=vue.resolveComponent("VsIcon"),i=vue.resolveComponent("VsHeading"),l=vue.resolveComponent("VsDetail"),u=vue.resolveComponent("VsBody");return vue.openBlock(),vue.createElementBlock("li",_hoisted_1$U,[vue.createElementVNode("div",_hoisted_2$F,[vue.createElementVNode("div",_hoisted_3$u,[vue.createElementVNode("div",_hoisted_4$n,[vue.createVNode(s,{icon:"fa-solid fa-location-pin",variant:"highlight",size:"xl"}),vue.createElementVNode("span",_hoisted_5$i,vue.toDisplayString(t.stopNumber),1)]),vue.createVNode(i,{level:"3","heading-style":"heading-s",class:"vs-itinerary-stop__title mb-025","no-margins":""},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.stopLabel),1)]),_:1}),vue.createVNode(l,{class:"vs-itinerary-stop__detail","no-margins":""},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.stopTitle),1)]),_:1})]),vue.renderSlot(e.$slots,"default"),vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"stop-description")]),_:3}),vue.renderSlot(e.$slots,"stop-time-to-explore"),vue.renderSlot(e.$slots,"stop-tips"),vue.createElementVNode("div",_hoisted_6$e,[e.$slots["stop-address"]?(vue.openBlock(),vue.createElementBlock("div",_hoisted_7$c,[vue.renderSlot(e.$slots,"stop-address")])):vue.createCommentVNode("",!0),vue.renderSlot(e.$slots,"stop-info")]),vue.renderSlot(e.$slots,"stop-facilities")]),e.$slots["stop-buttons"]?vue.renderSlot(e.$slots,"stop-buttons",{key:0}):vue.createCommentVNode("",!0)])}const ItineraryStop=LoadingSpinner._export_sfc(_sfc_main$1d,[["render",_sfc_render$_]]),_sfc_main$1c={name:"VsItineraryStopInfo",status:"prototype",release:"0.0.1",components:{VsIcon:LoadingSpinner.VsIcon,VsLink},props:{openingHours:{type:[String,Object],required:!1,default:null},openingTimesLink:{type:String,required:!1,default:null},closedText:{type:String,required:!0},closingSoonText:{type:String,required:!0},openText:{type:String,required:!0},usualText:{type:String,required:!0},provisionalText:{type:String,required:!0},temporarilyClosedText:{type:String,required:!0},toText:{type:String,required:!0},andText:{type:String,required:!0}},data(){return{openingMessage:"",currentDayData:{},currentTime:{},dayDataIndex:0,closedLongTerm:!1,ukDate:"",isCurrentTimeframe:!1,parsedHours:{}}},computed:{hoursMessage(){let e="";if(this.closedLongTerm)e=this.temporarilyClosedText;else if(this.currentDayData.length>0)switch(this.openingMessage){case"closed":e=this.closedText;break;case"closing soon":e=this.closingSoonText;break;case"open":e=this.openText;break;default:e=""}return e},provisionalMessage(){let e="";if(typeof this.currentDayData[0]<"u"){const n=this.currentDayData[0].state==="open"?this.openText:this.closedText;this.currentDayData[0].provisional?e=`${this.provisionalText} ${n.toLowerCase()} ${this.currentDayData[0].day}`:e=`${this.usualText} ${n.toLowerCase()} ${this.currentDayData[0].day}`,this.currentDayData[0].state!=="closed"&&typeof this.currentDayData[this.dayDataIndex]<"u"&&typeof this.currentDayData[this.dayDataIndex].startTime<"u"&&typeof this.currentDayData[this.dayDataIndex].endTime<"u"&&this.currentDayData[this.dayDataIndex].startTime!==""&&this.currentDayData[this.dayDataIndex].endTime!==""&&this.currentDayData.forEach((t,o)=>{e+=` ${t.startTime} ${this.toText} ${t.endTime}`,o+1<this.currentDayData.length&&(e+=` ${this.andText} `)})}return e}},created(){this.parseIncomingData(),this.getCurrentTime(),this.isActiveDate(),this.getCurrentHoursInfo()},methods:{parseIncomingData(){if(typeof this.openingHours!="object"){const e=this.openingHours.replace(/'/g,'"');this.parsedHours=JSON.parse(e)}else this.parsedHours=this.openingHours;this.parsedHours.closedLongTerm&&(this.closedLongTerm=!0)},getCurrentTime(){const e=new Date,n=e.toLocaleTimeString("en-GB",{timeZone:"Europe/London"});this.ukDate=e.toLocaleDateString("en-GB",{timeZone:"Europe/London"});const t=n.substring(0,2),o=n.substring(3,6),a=e.getDay();this.currentTime.hours=parseInt(t,10),this.currentTime.minutes=parseInt(o,10),this.currentTime.day=a},isActiveDate(){if(typeof this.parsedHours.period<"u"){const e=`${this.ukDate.substring(3,5)}/${this.ukDate.substring(0,2)}/${this.ukDate.substring(6,10)}`,n=new Date(this.parsedHours.period.startDay),t=new Date(this.parsedHours.period.endDay),o=new Date(e);o<t&&o>n?this.isCurrentTimeframe=!0:this.isCurrentTimeframe=!1}else this.isCurrentTimeframe=!0},getCurrentHoursInfo(){const e=this.returnDayName(this.currentTime.day);if(typeof this.parsedHours.days<"u"){const n=this.parsedHours.days.filter(t=>t.key===e);typeof n<"u"&&(this.currentDayData=n,this.compareTimes(this.currentTime,this.currentDayData,this.dayDataIndex))}},compareTimes(e,n,t){if(typeof n[t].startTime<"u"&&typeof n[t].endTime<"u"&&n[t].startTime.length>0&&n[t].endTime.length>0){const o=n[t].startTime,a=n[t].endTime,r=parseInt(o.substring(0,o.indexOf(":")),10),s=parseInt(o.substring(o.indexOf(":")+1,o.length),10),i=parseInt(a.substring(0,a.indexOf(":")),10),l=parseInt(a.substring(a.indexOf(":")+1,a.length),10),u=this.calculateClosingSoon(i,l);n[t].state==="closed"?this.openingMessage="closed":r>e.hours||r===e.hours&&s>e.minutes||i<e.hours||i===e.hours&&l<e.minutes?this.openingMessage="closed":this.withinClosingSoonTime(e,u)?this.openingMessage="closing soon":this.openingMessage="open",this.openingMessage==="closed"&&n.length>t+1&&(this.dayDataIndex+=1,this.compareTimes(this.currentTime,this.currentDayData,this.dayDataIndex))}else n[t].state==="closed"&&(this.openingMessage="closed")},returnDayName(e){let n="";switch(e){case 1:n="monday";break;case 2:n="tuesday";break;case 3:n="wednesday";break;case 4:n="thursday";break;case 5:n="friday";break;case 6:n="saturday";break;case 7:n="sunday";break;default:n=""}return n},calculateClosingSoon(e,n){let t,o;return n<30?(t=e-1,o=60+(n-30)):(t=e,o=n-30),{hours:t,mins:o}},withinClosingSoonTime(e,n){return!(n.hours>e.hours||n.hours===e.hours&&n.mins>e.minutes)}}},_hoisted_1$T={class:"vs-itinerary-stop-info","data-test":"vs-itinerary-stop-info"},_hoisted_2$E={key:0,class:"itinerary-stop-info__times mb-0","data-test":"vs-itinerary-stop-status"},_hoisted_3$t={key:1,"data-test":"vs-itinerary-stop-hours"},_hoisted_4$m={key:1,"data-test":"vs-stop-link"},_hoisted_5$h={key:2,"data-test":"vs-stop-charge-text"};function _sfc_render$Z(e,n,t,o,a,r){const s=vue.resolveComponent("VsIcon"),i=vue.resolveComponent("VsLink");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$T,[vue.createVNode(s,{icon:"vs-icon-feedback-information",class:"vs-address__map-marker me-050"}),vue.createElementVNode("div",null,[a.isCurrentTimeframe?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[r.hoursMessage.length>0?(vue.openBlock(),vue.createElementBlock("p",_hoisted_2$E,[vue.createTextVNode(vue.toDisplayString(r.hoursMessage),1),n[0]||(n[0]=vue.createElementVNode("br",null,null,-1))])):vue.createCommentVNode("",!0),!a.closedLongTerm&&typeof a.currentDayData[0]<"u"&&typeof a.currentDayData[0].state<"u"&&r.provisionalMessage.length>0?(vue.openBlock(),vue.createElementBlock("p",_hoisted_3$t,vue.toDisplayString(r.provisionalMessage)+". ",1)):vue.createCommentVNode("",!0)],64)):vue.createCommentVNode("",!0),e.$slots["stop-link-text"]&&t.openingTimesLink!==null?(vue.openBlock(),vue.createElementBlock("p",_hoisted_4$m,[vue.createVNode(i,{href:t.openingTimesLink},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"stop-link-text")]),_:3},8,["href"])])):vue.createCommentVNode("",!0),e.$slots["stop-charge-text"]?(vue.openBlock(),vue.createElementBlock("p",_hoisted_5$h,[vue.renderSlot(e.$slots,"stop-charge-text")])):vue.createCommentVNode("",!0)])])}const ItineraryStopInfo=LoadingSpinner._export_sfc(_sfc_main$1c,[["render",_sfc_render$Z]]),_sfc_main$1b={name:"VsItineraryTips",status:"prototype",release:"0.0.1",components:{},props:{}},_hoisted_1$S={class:"vs-itinerary-tips position-relative my-175"},_hoisted_2$D={class:"vs-itinerary-tips__text"},_hoisted_3$s={class:"vs-itinerary-tips__svg position-absolute"};function _sfc_render$Y(e,n,t,o,a,r){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$S,[vue.createElementVNode("div",_hoisted_2$D,[vue.renderSlot(e.$slots,"text")]),vue.createElementVNode("div",_hoisted_3$s,[vue.renderSlot(e.$slots,"svg")])])}const ItineraryTips=LoadingSpinner._export_sfc(_sfc_main$1b,[["render",_sfc_render$Y]]),_sfc_main$1a={name:"VsItineraryBorderOverlapWrapper",status:"prototype",release:"0.0.1",components:{},props:{}},_hoisted_1$R={class:"vs-itinerary-border-overlap__wrapper d-flex d-sm-inline-flex flex-column justify-content-start border-left"};function _sfc_render$X(e,n,t,o,a,r){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$R,[vue.renderSlot(e.$slots,"default")])}const ItineraryBorderOverlapWrapper=LoadingSpinner._export_sfc(_sfc_main$1a,[["render",_sfc_render$X]]),_sfc_main$19={name:"VsLinkList",status:"prototype",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading},props:{toc:{type:Boolean,default:!1}},computed:{classes(){return{"link-list":!0,"link-list--toc":this.toc}},dataTest(){return this.toc?"link-list--toc":"link-list"},hasHeadingSlot(){return!!this.$slots.heading}}},_hoisted_1$Q=["data-test"],_hoisted_2$C={class:"link-list__list"};function _sfc_render$W(e,n,t,o,a,r){const s=vue.resolveComponent("VsHeading");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(r.classes),"data-test":r.dataTest},[vue.createElementVNode("nav",null,[r.hasHeadingSlot?(vue.openBlock(),vue.createBlock(s,{key:0,level:"2","no-margins":"","heading-style":"heading-m"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"heading")]),_:3})):vue.createCommentVNode("",!0),vue.createElementVNode("ul",_hoisted_2$C,[vue.renderSlot(e.$slots,"default")])])],10,_hoisted_1$Q)}const VsLinkList=LoadingSpinner._export_sfc(_sfc_main$19,[["render",_sfc_render$W]]),_sfc_main$18={name:"VsLinkListItem",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|video)/)},videoId:{type:String,default:null},videoDescriptor:{type:String,default:null}},setup(){return{videoStore:useVideoStore()}},computed:{formattedVideoDuration(){if(this.videoDetails){let e=`${this.videoDetails.videoFullDuration.seconds}`;return e.length===1&&(e=`0${e}`),`${this.videoDetails.videoFullDuration.minutes}:${e}`}return""},videoDetails(){return this.videoStore.videos[this.videoId]},videoLoaded(){return typeof this.videoDetails<"u"&&this.videoDetails.videoDuration>0}},methods:{emitShowModal(){this.videoId&&this.emitter&&this.emitter.emit("showModal",this.videoId,"#videoShow")}}},_hoisted_1$P={class:"link-list-item"};function _sfc_render$V(e,n,t,o,a,r){const s=vue.resolveComponent("VsLink");return vue.openBlock(),vue.createElementBlock("li",_hoisted_1$P,[vue.createVNode(s,{href:t.href,type:t.type==="video"?"default":t.type,role:t.type==="video"?"button":null,onClick:r.emitShowModal},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default"),t.type==="video"&&r.videoLoaded?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createTextVNode(" | "+vue.toDisplayString(t.videoDescriptor)+" "+vue.toDisplayString(r.formattedVideoDuration),1)],64)):vue.createCommentVNode("",!0)]),_:3},8,["href","type","role","onClick"])])}const LinkListItem=LoadingSpinner._export_sfc(_sfc_main$18,[["render",_sfc_render$V]]),_sfc_main$17={name:"VsListicleItem",status:"prototype",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,VsBody:LoadingSpinner.VsBody,VsDetail},props:{index:{type:String,default:""},title:{type:String,default:""},subTitle:{type:String,default:""}},computed:{hasKeyFacilitiesSlot(){return!!this.$slots["facilities-slot"]}}},_hoisted_1$O={class:"vs-listicle-item border","data-test":"vs-listicle-item"},_hoisted_2$B={class:"vs-listicle-item__header","data-test":"vs-listicle-item-heading"},_hoisted_3$r={class:"count__bg"},_hoisted_4$l={class:"count","aria-hidden":"true"};function _sfc_render$U(e,n,t,o,a,r){const s=vue.resolveComponent("VsHeading"),i=vue.resolveComponent("VsDetail"),l=vue.resolveComponent("VsBody"),u=vue.resolveComponent("VsCol"),c=vue.resolveComponent("VsRow");return vue.openBlock(),vue.createElementBlock("li",_hoisted_1$O,[vue.renderSlot(e.$slots,"hippo-details"),vue.createElementVNode("div",_hoisted_2$B,[vue.createElementVNode("div",_hoisted_3$r,[vue.createElementVNode("span",_hoisted_4$l,vue.toDisplayString(t.index),1)]),vue.createVNode(s,{level:"2","heading-style":"heading-s",class:"vs-listicle-item__title mb-025","no-margins":""},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.title),1)]),_:1}),vue.createVNode(i,{class:"vs-listicle-item__detail","no-margins":""},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.subTitle),1)]),_:1})]),vue.renderSlot(e.$slots,"image-slot"),vue.createVNode(c,null,{default:vue.withCtx(()=>[vue.createVNode(u,{cols:"12",lg:"8",class:"mt-050 mt-sm-300 mb-100 mt-lg-050 pe-lg-300"},{default:vue.withCtx(()=>[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"description-slot")]),_:3})]),_:3}),vue.createVNode(u,{cols:"12",lg:"4",class:vue.normalizeClass(["key-facilities-list mt-lg-400",[r.hasKeyFacilitiesSlot?"has-facilities":""]])},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"facilities-slot")]),_:3},8,["class"])]),_:3})])}const ListicleItem=LoadingSpinner._export_sfc(_sfc_main$17,[["render",_sfc_render$U]]),__vite_import_meta_env__={BASE_URL:"/",DEV:!1,MODE:"production",PROD:!0,SSR:!1};var define_process_env_default$2={};const getEnvValue=e=>define_process_env_default$2?define_process_env_default$2[e]:__vite_import_meta_env__[e],_sfc_main$16={name:"VsSelect",status:"prototype",release:"0.0.1",components:{BFormSelect:LoadingSpinner.Lu},mixins:[validateFormElementMixin,ariaDescriptionMixin],props:{options:{type:Array,required:!0},fieldName:{type:String,required:!0},value:{type:String,default:""},validationRules:{type:Object,default(){return{}}},triggerValidate:{type:Boolean,default:!1},invalid:{type:Boolean,default:!1},validationMessages:{type:Object,default(){return{}}},countryListUrl:{type:String,default:""},hintText:{type:String,default:""},countries:{type:Boolean,default:!1},genericValidation:{type:Object,default(){return{}}},reAlertErrors:{type:Boolean,default:!1}},emits:["toggleAction","updated"],setup:()=>({v$:useVuelidate()}),data(){return{inputVal:this.value,touched:!1,countryList:[]}},computed:{errorClass(){return this.errorsList.length>0&&this.v$.inputVal&&this.v$.inputVal.$anyDirty||this.invalid?"vs-select__element--error":""},fieldOptions(){return this.countries?this.countryList:this.options}},watch:{inputVal(e){this.emitStatus(),this.$emit("updated",{field:this.fieldName,value:e})},value(e){this.inputVal=e},triggerValidate(){this.manualValidate()}},beforeMount(){this.countries&&LoadingSpinner.axios.get(this.countryListUrl).then(e=>{this.countryList=e.data.countries})},methods:{autocompleteValue(e){let n;switch(e){case"Country":n="country-name";break;default:n="on";break}return n}},validations(){return this.rules}},_hoisted_1$N={class:"vs-select"},_hoisted_2$A=["id"],_hoisted_3$q=["id"],_hoisted_4$k={class:"visually-hidden"},_hoisted_5$g={class:"vs-select__container mt-050"};function _sfc_render$T(e,n,t,o,a,r){const s=vue.resolveComponent("BFormSelect");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$N,[vue.createElementVNode("p",{class:"hint-text",id:`hint-${t.fieldName}`},vue.toDisplayString(t.hintText),9,_hoisted_2$A),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,i=>vue.withDirectives((vue.openBlock(),vue.createElementBlock("p",{key:i,class:"error mb-0"},[vue.createElementVNode("span",_hoisted_4$k,vue.toDisplayString(t.fieldName),1),vue.createTextVNode(" "+vue.toDisplayString(t.validationMessages[i]||t.genericValidation[i]),1)])),[[vue.vShow,!t.reAlertErrors]])),128))],8,_hoisted_3$q)):vue.createCommentVNode("",!0),vue.createElementVNode("div",_hoisted_5$g,[vue.createVNode(s,vue.mergeProps({modelValue:a.inputVal,"onUpdate:modelValue":n[0]||(n[0]=i=>a.inputVal=i)},e.$attrs,{options:r.fieldOptions,name:t.fieldName,id:t.fieldName,onChange:e.emitStatus,onBlur:e.emitStatus,"data-test":"vs-select","data-testid":"vs-select",class:["vs-select__element",r.errorClass],required:e.isRequired,"aria-invalid":e.v$.inputVal&&e.v$.inputVal.$anyError||t.invalid,"aria-describedby":e.ariaDescription,autocomplete:r.autocompleteValue(t.fieldName)}),null,16,["modelValue","options","name","id","onChange","onBlur","required","aria-invalid","aria-describedby","class","autocomplete"]),n[1]||(n[1]=vue.createElementVNode("span",{class:"vs-select__focus"},null,-1))])])}const VsSelect=LoadingSpinner._export_sfc(_sfc_main$16,[["render",_sfc_render$T]]);function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e},_extends.apply(this,arguments)}var defer=function e(){var n=!1,t=[],o=function(){if(!n){n=!0;for(var i=0,l=t.length;i<l;i++)t[i]()}},a=function(i){if(!n){t.push(i);return}i()},r={resolved:function(){return n},resolve:o,promise:{then:a}};return r},ownProp=Object.prototype.hasOwnProperty;function createRecaptcha(){var e=defer();return{notify:function(){e.resolve()},wait:function(){return e.promise},render:function(t,o,a){this.wait().then(function(){a(window.grecaptcha.render(t,o))})},reset:function(t){typeof t>"u"||(this.assertLoaded(),this.wait().then(function(){return window.grecaptcha.reset(t)}))},execute:function(t){typeof t>"u"||(this.assertLoaded(),this.wait().then(function(){return window.grecaptcha.execute(t)}))},checkRecaptchaLoad:function(){ownProp.call(window,"grecaptcha")&&ownProp.call(window.grecaptcha,"render")&&this.notify()},assertLoaded:function(){if(!e.resolved())throw new Error("ReCAPTCHA has not been loaded")}}}var recaptcha=createRecaptcha();typeof window<"u"&&(window.vueRecaptchaApiLoaded=recaptcha.notify);var Recaptcha=vue.defineComponent({name:"VueRecaptcha",props:{sitekey:{type:String,required:!0},theme:{type:String},badge:{type:String},type:{type:String},size:{type:String},tabindex:{type:String},loadRecaptchaScript:{type:Boolean,default:!0},recaptchaScriptId:{type:String,default:"__RECAPTCHA_SCRIPT"},recaptchaHost:{type:String,default:"www.google.com"},language:{type:String,default:""}},emits:["render","verify","expired","error"],setup:function e(n,t){var o=t.slots,a=t.emit,r=vue.ref(null),s=vue.ref(null),i=function(d){a("verify",d)},l=function(){a("expired")},u=function(){a("error")};return vue.onMounted(function(){if(recaptcha.checkRecaptchaLoad(),n.loadRecaptchaScript&&!document.getElementById(n.recaptchaScriptId)){var c=document.createElement("script");c.id=n.recaptchaScriptId,c.src="https://"+n.recaptchaHost+"/recaptcha/api.js?onload=vueRecaptchaApiLoaded&render=explicit&hl="+n.language,c.async=!0,c.defer=!0,document.head.appendChild(c)}var d=_extends({},n,{callback:i,"expired-callback":l,"error-callback":u}),v=r.value,m=o.default?v.children[0]:v;recaptcha.render(m,d,function(f){s.value=f,a("render",f)})}),{root:r,widgetId:s,reset:function(){recaptcha.reset(s.value)},execute:function(){recaptcha.execute(s.value)}}},render:function e(){var n=this.$slots.default,t;return typeof n=="function"?t=n():t=n,vue.h("div",{ref:"root"},t)}});const _sfc_main$15={name:"VsRecaptcha",status:"prototype",release:"0.0.1",components:{VueRecaptcha:Recaptcha},props:{siteKey:{type:String,default:""},invalid:{type:Boolean,default:!1},language:{type:String,default:"en"},errorMsg:{type:String,default:""},textareaLabel:{type:String,default:"Does not need any text"},reAlertErrors:{type:Boolean,default:!1}},emits:["verified"],data(){return{response:null,recaptchaSiteKey:""}},created(){this.siteKey?this.recaptchaSiteKey=this.siteKey:this.recaptchaSiteKey=getEnvValue("RECAPTCHA_TOKEN")},methods:{verified(e){this.$emit("verified",e)},render(){const e=document.querySelectorAll('[id^="g-recaptcha-response"]');if(e.length){const n=e[0].parentNode,t=document.querySelector('label[for="g-recaptcha-response"]'),o=document.createElement("label");o.setAttribute("for","g-recaptcha-response"),o.setAttribute("class","visually-hidden"),o.textContent=this.textareaLabel,t||n.insertBefore(o,e[0])}}}},_hoisted_1$M={class:"vs-recaptcha","aria-live":"assertive"},_hoisted_2$z={key:0,class:"error"};function _sfc_render$S(e,n,t,o,a,r){const s=vue.resolveComponent("VueRecaptcha");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$M,[t.invalid&&!t.reAlertErrors?(vue.openBlock(),vue.createElementBlock("span",_hoisted_2$z,vue.toDisplayString(t.errorMsg),1)):vue.createCommentVNode("",!0),a.recaptchaSiteKey?(vue.openBlock(),vue.createBlock(s,{key:1,sitekey:a.recaptchaSiteKey,onVerify:r.verified,onRender:r.render,class:vue.normalizeClass(["vs-recaptcha__embed",t.invalid?"vs-recaptcha__embed--error":""]),language:t.language},null,8,["sitekey","onVerify","onRender","class","language"])):vue.createCommentVNode("",!0)])}const VsRecaptcha=LoadingSpinner._export_sfc(_sfc_main$15,[["render",_sfc_render$S]]),_sfc_main$14={name:"VsTextarea",status:"prototype",release:"0.0.1",components:{BFormTextarea:LoadingSpinner.ld},mixins:[validateFormElementMixin,ariaDescriptionMixin],props:{value:{type:String,default:""},fieldName:{type:String,required:!0},name:{type:String,default:""},autoComplete:{type:Boolean,default:!0},validationRules:{type:Object,default(){return{}}},invalid:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},triggerValidate:{type:Boolean,default:!1},validationMessages:{type:Object,default(){return{}}},genericValidation:{type:Object,default(){return{}}},hintText:{type:String,default:""},placeholder:{type:String,default:""},reAlertErrors:{type:Boolean,default:!1},rows:{type:Number||String,default:2}},emits:["updated"],setup:()=>({v$:useVuelidate()}),data(){return{inputVal:this.value,clearErrorsOnFocus:!1}},computed:{elementClass(){let e="";return(this.isInvalid||this.errorsList.length)&&(e="vs-input--error"),`${`vs-input--${this.fieldName}`} ${e}`}},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()})},clearInputAndFocus(){this.clearInput(),this.focusOnInput()},autocompleteValue(){return this.autoComplete?"on":"off"},validateErrors(){this.clearErrorsOnFocus=!1,this.emitStatus()},resetErrors(){this.clearErrorsOnFocus=!0}},validations(){return this.rules}},_hoisted_1$L={"data-test":"vs-textarea"},_hoisted_2$y=["id"],_hoisted_3$p=["id"],_hoisted_4$j={class:"visually-hidden"};function _sfc_render$R(e,n,t,o,a,r){const s=vue.resolveComponent("BFormTextarea");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$L,[t.hintText?(vue.openBlock(),vue.createElementBlock("p",{key:0,class:"hint-text",id:`hint-${t.fieldName}`},vue.toDisplayString(t.hintText),9,_hoisted_2$y)):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$j,vue.toDisplayString(t.fieldName),1),vue.createTextVNode(" "+vue.toDisplayString(t.validationMessages[i]||t.genericValidation[i]),1)])),[[vue.vShow,!t.reAlertErrors&&!a.clearErrorsOnFocus]])),128))],8,_hoisted_3$p)):vue.createCommentVNode("",!0),vue.createVNode(s,{ref:"input",class:vue.normalizeClass(["vs-textarea",r.elementClass]),modelValue:a.inputVal,"onUpdate:modelValue":n[0]||(n[0]=i=>a.inputVal=i),id:t.fieldName,name:t.name?t.name:t.fieldName,placeholder:t.placeholder,required:e.isRequired,autocomplete:r.autocompleteValue(t.fieldName),v:a.inputVal,"aria-invalid":e.v$.inputVal&&e.v$.inputVal.$anyError||t.invalid,"aria-describedby":e.ariaDescription,disabled:t.disabled,rows:t.rows,onBlur:r.validateErrors,onChange:r.validateErrors,onFocus:r.resetErrors},null,8,["class","modelValue","id","name","placeholder","required","autocomplete","v","aria-invalid","aria-describedby","disabled","rows","onBlur","onChange","onFocus"])])}const VsTextarea=LoadingSpinner._export_sfc(_sfc_main$14,[["render",_sfc_render$R]]),_sfc_main$13={name:"VsForm",status:"prototype",release:"0.0.1",components:{VsInput,VsSelect,VsCheckbox,BFormGroup:LoadingSpinner.ku,VsRecaptcha,VsButton:LoadingSpinner.VsButton,VsHeading:LoadingSpinner.VsHeading,VsWarning:LoadingSpinner.VsWarning,VsTextarea},mixins:[LoadingSpinner.dataLayerMixin],props:{isMarketo:{type:Boolean,default:!0},submissionType:{type:String,default:"breg"},submitUrl:{type:String,default:""},dataUrl:{type:String,required:!0},usesRecaptcha:{type:Boolean,default:!0},recaptchaKey:{type:String,default:getEnvValue("RECAPTCHA_TOKEN")},recaptchaTextareaLabel:{type:String,default:"Does not need any text"},isProd:{type:Boolean,default:!1},munchkinId:{type:String,default:""},marketoInstance:{type:String,default:""},language:{type:String,default:"en"},messagingUrl:{type:String,required:!0},countryListUrl:{type:String,default:""},isTest:{type:Boolean,default:!0},consentList:{type:Array,required:!1,default:null}},data(){return{submitted:!1,submitting:!1,submitError:!1,formData:{},messagingData:{},form:{},formIsInvalid:!1,showErrorMessage:!1,errorFields:[],triggerValidate:!1,recaptchaVerified:!1,conditionalFields:{},inputVal:"",reAlertErrors:!1,emailFieldName:""}},computed:{formId(){return this.isProd?this.formData.formLiveId:this.formData.formSandboxId},showFormHeading(){return!this.isUndefined(this.getTranslatedContent)&&!this.isUndefined(this.getTranslatedContent("heading"))}},created(){this.getFormData(),this.getGlobalMessaging()},methods:{getFormData(){LoadingSpinner.axios.get(this.dataUrl).then(e=>{this.formData=e.data,this.isMarketo&&window.MktoForms2&&window.MktoForms2.loadForm(this.marketoInstance,this.munchkinId,this.formId),e.data.fields.forEach(n=>{this.form[n.name]="",n.conditional&&(this.conditionalFields[n.name]=!1)}),this.checkConditionalFields()}).catch(()=>{})},getGlobalMessaging(){LoadingSpinner.axios.get(this.messagingUrl).then(e=>{this.messagingData=e.data}).catch(()=>{})},getLanguageObj(){let e;return this.isUndefined(this.formData[this.language])?e={}:e=this.formData[this.language]||void 0,e},getTranslatedLabel(e,n){const t=this.getLanguageObj();let o="";return this.language!=="en"&&!this.isUndefined(t[e])&&!this.isUndefined(t[e].label)?o=t[e].label:o=this.formData.fields[n].label,this.showOptionalText(this.formData.fields[n])&&!this.isUndefined(this.getMessagingData("optional",this.language))&&(o=`${o} (${this.getMessagingData("optional",this.language)})`),o},getTranslatedLegend(e,n){const t=this.getLanguageObj();let o="";return this.language!=="en"&&!this.isUndefined(t[e])&&!this.isUndefined(t[e].descriptor)?o=t[e].descriptor:o=this.formData.fields[n].descriptor,o},getTranslatedInfo(e,n){const t=this.getLanguageObj();let o="";return this.language!=="en"&&!this.isUndefined(t[e])&&!this.isUndefined(t[e].info)?o=t[e].info:o=this.formData.fields[n].info,o},getTranslatedValidation(e,n){const t=this.getLanguageObj();let o;return this.language==="en"&&!this.isUndefined(this.formData.fields[n].validationMessages)?o=this.formData.fields[n].validationMessages:!this.isUndefined(t[e])&&!this.isUndefined(t[e].validationMessages)?o=t[e].validationMessages:this.language==="en"&&(o=this.formData.fields[n].validationMessages),o},getTranslatedOptions(e,n){const t=this.getLanguageObj();let o=[];return this.language!=="en"&&!this.isUndefined(t[e])&&!this.isUndefined([e].options)?o=t[e].options:o=this.formData.fields[n].options,typeof o>"u"&&(o=[]),o},getTranslatedHint(e,n){const t=this.getLanguageObj();let o="";return this.language!=="en"&&!this.isUndefined(t[e])&&!this.isUndefined(t[e].hint)?o=t[e].hint:this.isUndefined(this.formData.fields[n].hint)?o="":o=this.formData.fields[n].hint,o},getTranslatedContent(e){let n;const t=this.getLanguageObj();return this.language==="en"&&!this.isUndefined(this.formData.content)&&!this.isUndefined(this.formData.content[e])?n=this.formData.content[e]:!this.isUndefined(t.content)&&!this.isUndefined(t.content[e])?n=t.content[e]:n=this.getMessagingData(e,this.language),n},getMessagingData(e,n){return Object.keys(this.messagingData).length>0?this.messagingData[n][e]:e==="validation"?{}:""},getHiddenFields(){return[...this.$el.querySelectorAll("input[type=hidden]")].map(this.parseBooleanStringsFromInputField).reduce((e,n)=>(e[n.name]=n.value,e),{})},parseBooleanStringsFromInputField(e){let n=e.value;return n==="true"?n=!0:n==="false"&&(n=!1),{name:e.name,value:n}},isUndefined(e){return typeof e>"u"},updateFieldData(e){this.form[e.field]=e.value||"",Array.isArray(e.errors)?this.formIsInvalid=e.errors.length>0:this.formIsInvalid=e.errors!==null,this.manageErrorStatus(e.field,e.errors),this.checkConditionalFields()},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)},showOptionalText(e){return!!(this.isUndefined(e.validation)||this.isUndefined(e.validation.required))},needsLabel(e){return!(e.element==="radio"||e.element==="submit"||e.element==="checkbox")},preSubmit(e){e.preventDefault(),this.submitError=!1;function n(o){return o.validation&&o.validation.required}this.usesRecaptcha&&!this.isTest&&this.onRecaptchaVerify(),this.triggerValidate=!0;const t=this.formData.fields.filter(n);t.length===0?this.formIsInvalid=!1:t.forEach(o=>{if(!/\S/.test(this.form[o.name])){let a=!0;o.name in this.conditionalFields&&!this.conditionalFields[o.name]&&(a=!1),this.formIsInvalid=a}}),this.showErrorMessage=this.formIsInvalid,Object.entries(this.conditionalFields).forEach(([o,a])=>{a||(this.form[o]="")}),this.errorFields.length>0&&(this.formIsInvalid=!0),!this.formIsInvalid&&(this.recaptchaVerified||!this.usesRecaptcha)?this.isMarketo?this.marketoSubmit():this.axiosSubmit():(this.showErrorMessage=!0,this.reAlertErrors=!0,setTimeout(()=>{this.reAlertErrors=!1},100))},marketoSubmit(){this.createDataLayerObject("formsDataEvent");const e=window.MktoForms2.allForms()[0];e.addHiddenFields(this.form),window.grecaptcha&&e.addHiddenFields({lastReCAPTCHAUserFingerprint:window.grecaptcha.getResponse(),lastRecaptchaEnabledFormID:this.formId}),e.onSuccess(()=>(this.submitting=!1,this.submitted=!0,!1)),e.onSubmit(()=>{this.submitting=!0}),e.submit()},axiosSubmit(){this.createDataLayerObject("formsDataEvent"),this.submitting=!0;let e="";window.grecaptcha&&(e=window.grecaptcha.getResponse());const n=this.getHiddenFields();LoadingSpinner.axios.post(this.submitUrl,{...this.form,...n,formType:this.formData.content?this.formData.content.formType:"","g-recaptcha-response":e,consentList:this.consentList}).then(()=>(this.submitting=!1,this.submitted=!0,this.attachEmail(),!1)).catch(()=>(this.submitError=!0,!1))},attachEmail(){this.submissionType&&this.submissionType==="breg"&&(this.formData.fields.forEach(e=>{e.type==="email"&&!this.emailFieldName&&(this.emailFieldName=e.name)}),this.emailFieldName&&typeof exponea<"u"&&exponea.identify({email_id:this.form[this.emailFieldName]},{},()=>{},()=>{},!0))},onRecaptchaVerify(){window.grecaptcha&&typeof window.grecaptcha.getResponse=="function"&&window.grecaptcha.getResponse()!==""?this.recaptchaVerified=!0:this.recaptchaVerified=!1},checkConditionalFields(){Object.keys(this.conditionalFields).forEach(e=>{const n=this.formData.fields.find(o=>o.name===e);let t=!0;Object.keys(n.conditional).forEach(o=>{const a=n.conditional[o];Array.isArray(a)?a.indexOf(this.form[o])===-1&&(t=!1):this.form[o]!==a&&(t=!1),t?this.conditionalFields[e]||(this.conditionalFields[e]=!0,this.$refs[e]&&this.$refs[e][0].manualValidate()):(this.manageErrorStatus(e,[]),this.conditionalFields[e]=!1)})})},conditionalElementClass(e){return this.conditionalFields[e]===!0||typeof this.conditionalFields[e]>"u"?"":"d-none"}}},_hoisted_1$K={class:"vs-form","data-test":"vs-form"},_hoisted_2$x={class:"vs-form__main-heading vs-heading vs-heading--heading-l float-none","data-test":"vs-form__main-heading"},_hoisted_3$o={key:0},_hoisted_4$i={"aria-live":"assertive"},_hoisted_5$f={key:0},_hoisted_6$d=["innerHTML"],_hoisted_7$b={key:2,class:"mt-200"};function _sfc_render$Q(e,n,t,o,a,r){const s=vue.resolveComponent("VsInput"),i=vue.resolveComponent("VsSelect"),l=vue.resolveComponent("VsCheckbox"),u=vue.resolveComponent("VsTextarea"),c=vue.resolveComponent("BFormGroup"),d=vue.resolveComponent("VsRecaptcha"),v=vue.resolveComponent("VsButton"),m=vue.resolveComponent("VsWarning"),f=vue.resolveComponent("VsHeading");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$K,[n[1]||(n[1]=vue.createElementVNode("form",{class:"d-none"},null,-1)),a.submitted?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createElementBlock("form",{key:0,onSubmit:n[0]||(n[0]=vue.withModifiers((...p)=>r.preSubmit&&r.preSubmit(...p),["prevent"]))},[vue.createElementVNode("fieldset",null,[vue.createElementVNode("legend",_hoisted_2$x,vue.toDisplayString(r.getTranslatedContent("heading")),1),(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(a.formData.fields,(p,g)=>(vue.openBlock(),vue.createBlock(c,{key:p.name,label:r.needsLabel(p)?r.getTranslatedLabel(p.name,g):"","label-for":r.needsLabel(p)?p.name:"",class:vue.normalizeClass(r.conditionalElementClass(p.name))},{default:vue.withCtx(()=>[!r.isUndefined(p.descriptor)&&p.element==="checkbox"?(vue.openBlock(),vue.createElementBlock("legend",_hoisted_3$o,vue.toDisplayString(r.getTranslatedLegend(p.name,g)),1)):vue.createCommentVNode("",!0),vue.createElementVNode("div",{class:vue.normalizeClass(r.conditionalElementClass(p.name))},[p.element==="input"?(vue.openBlock(),vue.createBlock(s,{key:0,ref_for:!0,ref:p.name,onStatusUpdate:r.updateFieldData,"field-name":p.name,type:p.type,"validation-rules":p.validation||{},"validation-messages":r.getTranslatedValidation(p.name,g)||{},"generic-validation":r.getMessagingData("validation",t.language),invalid:a.errorFields.indexOf(p.name)>-1,"trigger-validate":a.triggerValidate,"hint-text":r.getTranslatedHint(p.name,g),placeholder:p.placeholder||"","re-alert-errors":a.reAlertErrors},null,8,["onStatusUpdate","field-name","type","validation-rules","validation-messages","generic-validation","invalid","trigger-validate","hint-text","placeholder","re-alert-errors"])):vue.createCommentVNode("",!0),p.element==="select"?(vue.openBlock(),vue.createBlock(i,{key:1,options:r.getTranslatedOptions(p.name,g),ref_for:!0,ref:p.name,onStatusUpdate:r.updateFieldData,"field-name":p.name,"validation-rules":p.validation||{},"validation-messages":r.getTranslatedValidation(p.name,g)||{},"generic-validation":r.getMessagingData("validation",t.language),invalid:a.errorFields.indexOf(p.name)>-1,"trigger-validate":a.triggerValidate,"country-list-url":t.countryListUrl,countries:p.countries,"hint-text":r.getTranslatedHint(p.name,g),"re-alert-errors":a.reAlertErrors},null,8,["options","onStatusUpdate","field-name","validation-rules","validation-messages","generic-validation","invalid","trigger-validate","country-list-url","countries","hint-text","re-alert-errors"])):vue.createCommentVNode("",!0),p.element==="checkbox"?(vue.openBlock(),vue.createBlock(l,{key:p.name,ref_for:!0,ref:p.name,name:p.name,value:p.value,label:r.getTranslatedLabel(p.name,g),onStatusUpdate:r.updateFieldData,"field-name":p.name,"validation-rules":p.validation||{},"validation-messages":r.getTranslatedValidation(p.name,g)||{},"generic-validation":r.getMessagingData("validation",t.language),invalid:a.errorFields.indexOf(p.name)>-1,"trigger-validate":a.triggerValidate,"optional-text":r.getMessagingData("optional",t.language),"hint-text":r.getTranslatedHint(p.name,g),"info-text":r.getTranslatedInfo(p.name,g),"re-alert-errors":a.reAlertErrors},null,8,["name","value","label","onStatusUpdate","field-name","validation-rules","validation-messages","generic-validation","invalid","trigger-validate","optional-text","hint-text","info-text","re-alert-errors"])):vue.createCommentVNode("",!0),p.element==="textarea"?(vue.openBlock(),vue.createBlock(u,{key:3,ref_for:!0,ref:p.name,onStatusUpdate:r.updateFieldData,"field-name":p.name,"validation-rules":p.validation||{},"validation-messages":r.getTranslatedValidation(p.name,g)||{},"generic-validation":r.getMessagingData("validation",t.language),invalid:a.errorFields.indexOf(p.name)>-1,"trigger-validate":a.triggerValidate,"hint-text":r.getTranslatedHint(p.name,g),placeholder:p.placeholder||"","re-alert-errors":a.reAlertErrors,rows:p.rows||null},null,8,["onStatusUpdate","field-name","validation-rules","validation-messages","generic-validation","invalid","trigger-validate","hint-text","placeholder","re-alert-errors","rows"])):vue.createCommentVNode("",!0)],2)]),_:2},1032,["label","label-for","class"]))),128))]),vue.renderSlot(e.$slots,"hidden-fields"),t.usesRecaptcha?(vue.openBlock(),vue.createBlock(d,{key:0,onVerified:r.onRecaptchaVerify,"site-key":t.recaptchaKey,invalid:!a.recaptchaVerified&&a.showErrorMessage,language:t.language,"error-msg":r.getMessagingData("recaptchaError",t.language),class:"mt-300","textarea-label":t.recaptchaTextareaLabel,"re-alert-errors":a.reAlertErrors},null,8,["onVerified","site-key","invalid","language","error-msg","textarea-label","re-alert-errors"])):vue.createCommentVNode("",!0),vue.createVNode(v,{variant:"primary",type:"submit",class:"vs-form__submit mt-300",onClick:r.preSubmit},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.getTranslatedContent("submit")),1)]),_:1},8,["onClick"])],32)),vue.createVNode(m,{class:"vs-form__no-js"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"no-js")]),_:3}),vue.createElementVNode("div",_hoisted_4$i,[a.submitting?(vue.openBlock(),vue.createElementBlock("p",_hoisted_5$f,[vue.renderSlot(e.$slots,"submitting")])):vue.createCommentVNode("",!0),a.submitted?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[r.getTranslatedContent("successHeading")?(vue.openBlock(),vue.createBlock(f,{key:0,level:"2","heading-style":"heading-l"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.getTranslatedContent("successHeading")),1)]),_:1})):vue.createCommentVNode("",!0),vue.createElementVNode("p",{class:"vs-form__content",innerHTML:r.getTranslatedContent("successContent")},null,8,_hoisted_6$d)],64)):vue.createCommentVNode("",!0),a.submitError?(vue.openBlock(),vue.createElementBlock("p",_hoisted_7$b,[vue.renderSlot(e.$slots,"submit-error")])):vue.createCommentVNode("",!0)])])}const Form=LoadingSpinner._export_sfc(_sfc_main$13,[["render",_sfc_render$Q]]),_sfc_main$12={name:"VsMegaNavTopMenu",status:"prototype",release:"0.1.0",components:{VsList},inject:["isStatic"]};function _sfc_render$P(e,n,t,o,a,r){const s=vue.resolveComponent("VsList");return vue.openBlock(),vue.createBlock(s,{unstyled:"",class:"vs-mega-nav-top-menu","data-test":"vs-mega-nav-top-menu",role:"menubar"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3})}const VsMegaNavTopMenu=LoadingSpinner._export_sfc(_sfc_main$12,[["render",_sfc_render$P]]),_sfc_main$11={name:"VsMegaNavMobileMenu",status:"prototype",release:"0.1.0",mixins:[LoadingSpinner.dataLayerMixin],mounted(){this.emitter&&this.emitter.on("navAccordionClick",e=>{this.dataLayerSubmit(e)})},methods:{dataLayerSubmit(e){const n={target:{text:e}};this.createDataLayerObject("menuNavigationDataEvent",n,null)}}},_hoisted_1$J={class:"mega-nav-mobile-menu","data-test":"vs-mega-nav-mobile-menu"};function _sfc_render$O(e,n,t,o,a,r){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$J,[vue.renderSlot(e.$slots,"default")])}const VsMegaNavMobileMenu=LoadingSpinner._export_sfc(_sfc_main$11,[["render",_sfc_render$O]]),_sfc_main$10={name:"VsSiteSearch",status:"prototype",release:"0.0.1",components:{VsButton:LoadingSpinner.VsButton},props:{isShowing:{type:Boolean,default:!1}},emits:["toggleAction"],data(){return{showSearchForm:!0}},methods:{toggleAction(){this.showSearchForm=!this.showSearchForm,this.$emit("toggleAction",this.showSearchForm)}}},_hoisted_1$I={class:"visually-hidden-xxl-down"};function _sfc_render$N(e,n,t,o,a,r){const s=vue.resolveComponent("VsButton");return vue.openBlock(),vue.createBlock(s,{"data-test":"vs-site-search",class:vue.normalizeClass(["vs-site-search",t.isShowing?"vs-site-search--active":""]),icon:"vs-icon-control-search",size:"md",animate:!1,onClick:r.toggleAction,id:"site-search-btn",rounded:!1},{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_1$I,[vue.renderSlot(e.$slots,"default")])]),_:3},8,["class","onClick"])}const VsSiteSearch=LoadingSpinner._export_sfc(_sfc_main$10,[["render",_sfc_render$N]]),_sfc_main$$={name:"VsSiteSearchForm",status:"prototype",release:"0.0.1",components:{VsIcon:LoadingSpinner.VsIcon,VsInput,VsButton:LoadingSpinner.VsButton,VsCol:LoadingSpinner.VsCol,VsRow:LoadingSpinner.VsRow,VsContainer:LoadingSpinner.VsContainer},props:{isShowing:{type:Boolean,default:!1},labelText:{type:String,default:""},submitButtonText:{type:String,default:""},closeButtonText:{type:String,default:""}},emits:["toggleAction"],data(){return{searchTerm:"",showSearchForm:!0}},watch:{isShowing(e){e&&this.focusOnInput()}},methods:{focusOnInput(){this.$nextTick(()=>this.$refs.searchInput.$refs.input.focus())},tabFromClose(e){e.shiftKey||this.closeSearchForm()},updateVal(e){this.searchTerm=e.value},onSubmit(e){this.searchTerm===""&&e.preventDefault()},closeSearchForm(){this.$emit("toggleAction",this.showSearchForm)}}},_hoisted_1$H={key:0,class:"vs-site-search-form","data-test":"vs-site-search-form"},_hoisted_2$w={class:"cludo-input-form d-flex pe-075 align-items-start",role:"search",id:"cludo-search-input"},_hoisted_3$n={class:"d-flex flex-column flex-grow-1 position-relative"},_hoisted_4$h={for:"site-search",class:"vs-site-search-form__label"},_hoisted_5$e={class:"visually-hidden"};function _sfc_render$M(e,n,t,o,a,r){const s=vue.resolveComponent("VsIcon"),i=vue.resolveComponent("VsInput"),l=vue.resolveComponent("VsButton"),u=vue.resolveComponent("VsCol"),c=vue.resolveComponent("VsRow"),d=vue.resolveComponent("VsContainer");return a.showSearchForm?(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$H,[vue.createVNode(d,{fluid:"lg"},{default:vue.withCtx(()=>[vue.createVNode(c,null,{default:vue.withCtx(()=>[vue.createVNode(u,{cols:"12"},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_2$w,[vue.createElementVNode("div",_hoisted_3$n,[vue.createElementVNode("label",_hoisted_4$h,[vue.createElementVNode("span",_hoisted_5$e,vue.toDisplayString(t.labelText),1),vue.createVNode(s,{icon:"vs-icon-control-search",size:"xs"})]),vue.createVNode(i,{class:"vs-site-search-form__input cludo-input-form__input",ref:"searchInput",name:"searchrequest",type:"search","field-name":"site-search",placeholder:t.labelText,"auto-complete":!1,onUpdated:r.updateVal},null,8,["placeholder","onUpdated"])]),vue.createVNode(l,{type:"submit",class:"vs-site-search-form__search-button cludo-input-form__search-button",variant:"primary",size:"lg",rounded:!1,onClick:r.closeSearchForm},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.submitButtonText),1)]),_:1},8,["onClick"])])]),_:1})]),_:1})]),_:1}),vue.createVNode(l,{class:"vs-site-search-form__close-button d-none d-lg-block",variant:"subtle",icon:"vs-icon-control-dismiss",size:"md","icon-only":"",onClick:r.closeSearchForm,onKeydown:vue.withKeys(r.tabFromClose,["tab"])},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.closeButtonText),1)]),_:1},8,["onClick","onKeydown"])])):vue.createCommentVNode("",!0)}const VsSiteSearchForm=LoadingSpinner._export_sfc(_sfc_main$$,[["render",_sfc_render$M]]),clickOutside={mounted(e,n){e.clickOutsideEvent=t=>{e===t.target||e.contains(t.target)||n.value(t)},document.body.addEventListener("click",e.clickOutsideEvent)},unmounted(e){document.body.removeEventListener("click",e.clickOutsideEvent)}},_sfc_main$_={name:"VsMegaNav",status:"deprecated",release:"0.1.0",components:{VsCol:LoadingSpinner.VsCol,VsRow:LoadingSpinner.VsRow,VsContainer:LoadingSpinner.VsContainer,VsSvgLink,VsMegaNavTopMenu,VsMegaNavMobileMenu,VsSiteSearch,VsSiteSearchForm,VsButton:LoadingSpinner.VsButton},directives:{clickOutside},mixins:[LoadingSpinner.dataLayerMixin],provide(){return{isStatic:this.isStatic}},props:{href:{type:String,required:!0},menuToggleAltText:{type:String,required:!0},logoAltText:{type:String,default:"VisitScotland Home"},searchButtonText:{type:String,required:!0},searchLabelText:{type:String,default:"What are you looking for?"},searchClearButtonText:{type:String,default:"Clear form"},searchCloseButtonText:{type:String,default:"Close search form"},mapButtonText:{type:String,default:void 0},noSearch:{type:Boolean,default:!1},searchLink:{type:String,default:void 0},mapLink:{type:String,default:void 0},isStatic:{type:Boolean,default:!1}},data(){return{isOpen:!1,showSearch:!1,tokens:LoadingSpinner.designTokens}},mounted(){this.addTabClose()},methods:{menuToggle(){this.isOpen=!this.isOpen},toggleSearch(){this.showSearch=!this.showSearch},closeMenu(e){const n=document.getElementsByClassName("vs-mega-nav__menu-mobile")[0];this.isOpen&&!n.contains(e.target)&&(this.isOpen=!1)},addTabClose(){document.body.addEventListener("focusin",e=>{this.isOpen&&(e.target.closest("#vs-mega-nav__menu-mobile")||(this.isOpen=!1))})}}},_hoisted_1$G={class:"vs-mega-nav bg-white","aria-label":"main nav","data-test":"vs-mega-nav",id:"main-nav"},_hoisted_2$v={class:"visually-hidden-xxl-down"},_hoisted_3$m={class:"vs-mega-nav__menu-mobile d-lg-none",id:"vs-mega-nav__menu-mobile","data-test":"vs-mega-nav-mobile-container"};function _sfc_render$L(e,n,t,o,a,r){const s=vue.resolveComponent("VsSvgLink"),i=vue.resolveComponent("VsCol"),l=vue.resolveComponent("VsMegaNavTopMenu"),u=vue.resolveComponent("VsButton"),c=vue.resolveComponent("VsSiteSearch"),d=vue.resolveComponent("VsMegaNavMobileMenu"),v=vue.resolveComponent("VsRow"),m=vue.resolveComponent("VsContainer"),f=vue.resolveComponent("VsSiteSearchForm"),p=vue.resolveDirective("click-outside");return vue.openBlock(),vue.createElementBlock("div",null,[vue.createElementVNode("nav",_hoisted_1$G,[vue.createVNode(m,{fluid:"lg",class:"h-100"},{default:vue.withCtx(()=>[vue.createVNode(v,{class:"align-items-center h-100 vs-mega-nav__main-row"},{default:vue.withCtx(()=>[vue.createVNode(i,{cols:"7",md:"4",lg:"3"},{default:vue.withCtx(()=>[vue.createElementVNode("div",null,[vue.createVNode(s,{class:"vs-mega-nav__logo","data-test":"vs-mega-nav__logo","link-alt-text":t.logoAltText,href:t.href,"svg-fill":a.tokens["vs-color-background-brand"],"svg-path":"visitscotland-logo","data-layer-value":"homePageLogoClickDataEvent"},null,8,["link-alt-text","href","svg-fill"])])]),_:1}),vue.createVNode(i,{cols:"4",md:"6",lg:t.noSearch?7:5,class:"vs-mega-nav__menu d-none d-lg-block"},{default:vue.withCtx(()=>[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"mega-nav-top-menu-items")]),_:3})]),_:3},8,["lg"]),vue.createVNode(i,{cols:"5",md:"8",lg:"4",class:"justify-content-end align-items-center position-static d-flex h-100"},{default:vue.withCtx(()=>[t.mapButtonText&&t.mapLink?(vue.openBlock(),vue.createBlock(u,{key:0,variant:"subtle",icon:"fa-regular fa-map","icon-only":"",size:"md",rounded:!1,href:t.mapLink,class:"vs-mega-nav__map-button d-flex","data-test":"vs-mega-nav__map-button"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.mapButtonText),1)]),_:1},8,["href"])):vue.createCommentVNode("",!0),!t.noSearch&&!t.searchLink?(vue.openBlock(),vue.createBlock(c,{key:1,onToggleAction:r.toggleSearch,"is-showing":a.showSearch},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.searchButtonText),1)]),_:1},8,["onToggleAction","is-showing"])):vue.createCommentVNode("",!0),!t.noSearch&&t.searchLink?(vue.openBlock(),vue.createBlock(u,{key:2,animate:!1,class:"vs-site-search",href:t.searchLink,icon:"vs-icon-control-search",id:"site-search-btn",rounded:!1},{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_2$v,vue.toDisplayString(t.searchButtonText),1)]),_:1},8,["href"])):vue.createCommentVNode("",!0),vue.createElementVNode("div",_hoisted_3$m,[vue.createVNode(u,{class:"vs-mega-nav__mobile-menu-toggle p-0","icon-only":"",icon:a.isOpen?"vs-icon-control-dismiss":"vs-icon-control-menu",variant:"subtle",onClick:n[0]||(n[0]=g=>r.menuToggle()),ref:"toggleButton",rounded:!1,"aria-haspopup":"true"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.menuToggleAltText),1)]),_:1},8,["icon"]),a.isOpen?vue.withDirectives((vue.openBlock(),vue.createBlock(d,{key:0},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"mega-nav-accordion-items")]),_:3})),[[p,r.closeMenu]]):vue.createCommentVNode("",!0)])]),_:3})]),_:3})]),_:3})]),vue.withDirectives(vue.createVNode(f,{onToggleAction:r.toggleSearch,"is-showing":a.showSearch,"label-text":t.searchLabelText,"submit-button-text":t.searchButtonText,"close-button-text":t.searchCloseButtonText},null,8,["onToggleAction","is-showing","label-text","submit-button-text","close-button-text"]),[[vue.vShow,a.showSearch]])])}const MegaNav=LoadingSpinner._export_sfc(_sfc_main$_,[["render",_sfc_render$L]]),_sfc_main$Z={name:"VsMegaNavDropdown",status:"prototype",release:"0.1.0",components:{BDropdown:LoadingSpinner.un,VsCol:LoadingSpinner.VsCol,VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsButton:LoadingSpinner.VsButton},mixins:[LoadingSpinner.dataLayerMixin],props:{menuToggleAltText:{type:String,required:!0}},emits:["menuToggled"],mounted(){this.emitter&&(this.emitter.on("bv::dropdown::show",()=>{this.$emit("menuToggled")}),this.emitter.on("bv::dropdown::hide",()=>{this.$emit("menuToggled")})),window.addEventListener("resize",this.closeMenu)},beforeUnmount(){window.removeEventListener("resize",this.closeMenu)},methods:{closeMenu(){this.$refs.dropdown.hide()},tabFromClose(e){e.shiftKey||this.closeMenu()},dataLayerSubmit(){if(this.$slots["button-content"]()[1]&&this.$slots["button-content"]()[1].children[0]){const n={target:{text:this.$slots["button-content"]()[1].children[0].children}};this.createDataLayerObject("menuNavigationDataEvent",n,null)}}}},_hoisted_1$F={class:"vs-mega-nav-dropdown","data-test":"vs-mega-nav-dropdown",role:"menuitem"},_hoisted_2$u={role:"menuitem"},_hoisted_3$l={class:"dropdown-menu dropdown-menu--fallback overflow-auto",role:"menu"},_hoisted_4$g={role:"menuitem"};function _sfc_render$K(e,n,t,o,a,r){const s=vue.resolveComponent("VsButton"),i=vue.resolveComponent("VsCol"),l=vue.resolveComponent("VsRow"),u=vue.resolveComponent("VsContainer"),c=vue.resolveComponent("BDropdown");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$F,[vue.createVNode(c,{variant:"subtle",ref:"dropdown",onShow:n[0]||(n[0]=d=>r.dataLayerSubmit(d))},{"button-content":vue.withCtx(()=>[vue.renderSlot(e.$slots,"button-content")]),default:vue.withCtx(()=>[vue.createElementVNode("li",_hoisted_2$u,[vue.createVNode(u,{fluid:"lg",class:"px-0 px-lg-075"},{default:vue.withCtx(()=>[vue.createVNode(l,{class:"g-0"},{default:vue.withCtx(()=>[vue.createVNode(i,{cols:"12",class:"position-relative"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"cta-link"),vue.renderSlot(e.$slots,"dropdown-content"),vue.createVNode(s,{class:"vs-mega-nav-dropdown__close-btn d-none d-lg-block position-absolute",icon:"vs-icon-control-dismiss","icon-only":"",size:"sm",variant:"subtle",onClick:r.closeMenu,onKeydown:vue.withKeys(r.tabFromClose,["tab"])},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.menuToggleAltText),1)]),_:1},8,["onClick","onKeydown"])]),_:3})]),_:3})]),_:3})])]),_:3},512),vue.createElementVNode("ul",_hoisted_3$l,[vue.createElementVNode("li",_hoisted_4$g,[vue.createVNode(u,{fluid:"lg",class:"px-0 px-lg-075"},{default:vue.withCtx(()=>[vue.createVNode(l,{class:"g-0"},{default:vue.withCtx(()=>[vue.createVNode(i,{cols:"12",class:"position-relative"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"cta-link"),vue.renderSlot(e.$slots,"dropdown-content"),vue.createVNode(s,{class:"vs-mega-nav-dropdown__close-btn d-none d-lg-block position-absolute",icon:"vs-icon-control-dismiss","icon-only":"",size:"sm",variant:"subtle",onClick:r.closeMenu},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.menuToggleAltText),1)]),_:1},8,["onClick"])]),_:3})]),_:3})]),_:3})])])])}const VsMegaNavDropdown=LoadingSpinner._export_sfc(_sfc_main$Z,[["render",_sfc_render$K]]),_sfc_main$Y={name:"VsMegaNavDropdownContainer",status:"prototype",release:"0.1.0",components:{VsMegaNavDropdown,VsLink,LazyHydrationWrapper:LazyHydrationWrapper$1},props:{href:{type:String,default:""},ctaText:{type:String,default:""},align:{type:String,default:"top",validator:e=>e.match(/(left|bottom|top)/)}},computed:{hasFeaturedItem(){return this.$slots["nav-featured-item"]&&this.$slots["nav-featured-item"]()},hasFeaturedItemLeft(){return this.$slots["nav-featured-item-left"]&&this.$slots["nav-featured-item-left"]()},hasFeaturedEvent(){return this.$slots["nav-featured-event"]&&this.$slots["nav-featured-event"]()},alignmentClass(){return this.align==="bottom"?"vs-mega-nav-dropdown-container__featured--bottom":""}}},_hoisted_1$E={class:"vs-mega-nav-dropdown-container","data-test":"vs-mega-nav-dropdown-container",ref:"menuToggle",role:"presentation"},_hoisted_2$t={class:"vs-mega-nav-dropdown-container__columns-wrapper"},_hoisted_3$k={key:2,class:"vs-mega-nav-dropdown-container__featured-event","data-test":"vs-mega-nav-dropdown-container__featured-event"};function _sfc_render$J(e,n,t,o,a,r){const s=vue.resolveComponent("VsLink"),i=vue.resolveComponent("VsMegaNavDropdown"),l=vue.resolveComponent("LazyHydrationWrapper");return vue.openBlock(),vue.createElementBlock("li",_hoisted_1$E,[vue.createVNode(l,{"on-interaction":["focus","click"]},{default:vue.withCtx(()=>[vue.createVNode(i,{"menu-toggle-alt-text":"Toggle Menu"},{"button-content":vue.withCtx(()=>[vue.renderSlot(e.$slots,"button-content")]),"cta-link":vue.withCtx(()=>[t.href&&t.ctaText?(vue.openBlock(),vue.createBlock(s,{key:0,href:t.href,"data-test":"vs-mega-nav-dropdown-container__cta-link",class:"vs-mega-nav-dropdown-container__cta-link"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.ctaText),1)]),_:1},8,["href"])):vue.createCommentVNode("",!0),n[0]||(n[0]=vue.createElementVNode("hr",{class:"vs-mega-nav-dropdown-container__divider"},null,-1))]),"dropdown-content":vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_2$t,[vue.renderSlot(e.$slots,"dropdown-content"),r.hasFeaturedItemLeft?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(["vs-mega-nav-dropdown-container__featured vs-mega-nav-dropdown-container__featured--left",r.alignmentClass]),"data-test":"vs-mega-nav-dropdown-container__featured"},[vue.renderSlot(e.$slots,"nav-featured-item-left")],2)):vue.createCommentVNode("",!0),r.hasFeaturedItem?(vue.openBlock(),vue.createElementBlock("div",{key:1,class:vue.normalizeClass(["vs-mega-nav-dropdown-container__featured",r.alignmentClass]),"data-test":"vs-mega-nav-dropdown-container__featured"},[vue.renderSlot(e.$slots,"nav-featured-item")],2)):vue.createCommentVNode("",!0),r.hasFeaturedEvent?(vue.openBlock(),vue.createElementBlock("div",_hoisted_3$k,[vue.renderSlot(e.$slots,"nav-featured-event")])):vue.createCommentVNode("",!0)])]),_:3})]),_:3})],512)}const MegaNavDropdownContainer=LoadingSpinner._export_sfc(_sfc_main$Y,[["render",_sfc_render$J]]),_sfc_main$X={name:"VsMegaNavList",status:"prototype",release:"0.1.0",components:{VsList,VsHeading:LoadingSpinner.VsHeading},props:{listHeading:{type:String,default:""}},computed:{listHeadingId(){return this.listHeading?`vsMeganav${this.listHeading.replace(/\W/g,"")}`:""}}},_hoisted_1$D=["aria-label"];function _sfc_render$I(e,n,t,o,a,r){const s=vue.resolveComponent("VsHeading"),i=vue.resolveComponent("VsList");return vue.openBlock(),vue.createElementBlock("nav",{class:"vs-mega-nav-list","data-test":"vs-mega-nav-list","aria-label":r.listHeadingId},[t.listHeading?(vue.openBlock(),vue.createBlock(s,{key:0,class:"vs-mega-nav-list__heading",id:r.listHeadingId,level:"2","heading-style":"heading-xxxs"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.listHeading),1)]),_:1},8,["id"])):vue.createCommentVNode("",!0),vue.createVNode(i,{class:"vs-mega-nav-list__list",role:"menu"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"nav-heading-cta-link"),vue.renderSlot(e.$slots,"nav-list-items")]),_:3})],8,_hoisted_1$D)}const MegaNavList=LoadingSpinner._export_sfc(_sfc_main$X,[["render",_sfc_render$I]]),_sfc_main$W={name:"VsMegaNavListItem",status:"prototype",release:"0.1.0",components:{VsLink},mixins:[LoadingSpinner.dataLayerMixin],props:{href:{type:String,default:"#"},subheadingLink:{type:Boolean,default:!1}},computed:{navItemClasses(){return{"vs-mega-nav-list-item__heading":this.href==="#","vs-mega-nav-list-item__link":this.href!=="#","vs-mega-nav-list-item__subheading-link":this.subheadingLink}}},methods:{clickHandler(e){e.preventDefault(),this.dataLayerValue&&this.createDataLayerObject(this.dataLayerValue,e,this.href),setTimeout(()=>{this.navigateToUrl()},500)},navigateToUrl(){this.href!=="#"&&this.href!==null&&(window.location.href=this.href)},keyHandler(e){(e.keyCode===13||e.keyCode===32)&&(e.preventDefault(),this.clickHandler(e))}}};function _sfc_render$H(e,n,t,o,a,r){const s=vue.resolveComponent("VsLink");return vue.openBlock(),vue.createElementBlock("li",{class:vue.normalizeClass(["vs-mega-nav-list-item",r.navItemClasses]),"data-test":"vs-mega-nav-list-item",role:"presentation"},[vue.createVNode(s,{href:t.href,role:"menuitem","data-layer-value":"menuNavigationDataEvent"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},8,["href"])],2)}const MegaNavListItem=LoadingSpinner._export_sfc(_sfc_main$W,[["render",_sfc_render$H]]),_sfc_main$V={name:"VsMegaNavAccordionItem",status:"prototype",release:"0.1.0",components:{VsAccordionItem,VsLink},props:{controlId:{type:String,required:!0},title:{type:String,required:!0},level:{type:String,required:!0,validator:e=>e.match(/(1|2)/)},ctaLink:{type:String,default:""},ctaText:{type:String,default:""}},computed:{getUniqueId(){let e=this.title.toLowerCase();return e=e.replace(/\s+/g,"-"),`vs-mega-nav-${e}`},accordionItemClasses(){return[`vs-mega-nav-accordion-item--level-${this.level}`]}}};function _sfc_render$G(e,n,t,o,a,r){const s=vue.resolveComponent("VsLink"),i=vue.resolveComponent("VsAccordionItem");return vue.openBlock(),vue.createBlock(i,{class:vue.normalizeClass(["vs-mega-nav-accordion-item",r.accordionItemClasses]),"data-test":"vs-mega-nav-accordion-item","data-unique-id":r.getUniqueId,"control-id":`vs-mega-nav-accordion-item-${r.getUniqueId}-${t.controlId}`},{title:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.title),1)]),default:vue.withCtx(()=>[t.ctaLink&&t.ctaText?(vue.openBlock(),vue.createBlock(s,{key:0,class:"vs-mega-nav-accordion-item__cta-link","data-test":"vs-mega-nav-accordion-item__cta-link",href:t.ctaLink},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.ctaText),1)]),_:1},8,["href"])):vue.createCommentVNode("",!0),vue.renderSlot(e.$slots,"default")]),_:3},8,["class","data-unique-id","control-id"])}const MegaNavAccordionItem=LoadingSpinner._export_sfc(_sfc_main$V,[["render",_sfc_render$G]]),_sfc_main$U={name:"VsMegaNavFeaturedItem",status:"prototype",release:"0.1.0",components:{VsStretchedLinkCard},props:{link:{type:String,required:!0},imgUrl:{type:String,required:!0},imgAlt:{type:String,default:""}}};function _sfc_render$F(e,n,t,o,a,r){const s=vue.resolveComponent("VsStretchedLinkCard");return vue.openBlock(),vue.createBlock(s,{link:t.link,type:"internal","img-src":t.imgUrl,"img-alt":t.imgAlt,class:"vs-mega-nav-featured-item","data-test":"vs-mega-nav-featured-item","heading-level":"2","heading-style":"heading-xxs"},{"stretched-card-header":vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-featured-item-header")]),"stretched-card-content":vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-featured-item-content")]),"stretched-card-link":vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-featured-item-link")]),_:3},8,["link","img-src","img-alt"])}const MegaNavFeaturedItem=LoadingSpinner._export_sfc(_sfc_main$U,[["render",_sfc_render$F]]),_sfc_main$T={name:"VsMegaNavFeaturedEvent",status:"prototype",release:"0.1.0",components:{VsStretchedLinkCard},props:{sourceUrl:{type:String,default:""}},data(){return{featuredEvent:null}},mounted(){this.sourceUrl&&this.retrieveFeaturedEvent()},methods:{retrieveFeaturedEvent(){LoadingSpinner.axios.get(this.sourceUrl).then(e=>{e.data.data.products&&e.data.data.products.length&&([this.featuredEvent]=e.data.data.products)}).catch(()=>{this.featuredEvent=null})}}},_hoisted_1$C={key:0,class:"vs-mega-nav-featured-event__date-range"},_hoisted_2$s={class:"vs-mega-nav-featured-event__date-detail"},_hoisted_3$j={class:"vs-mega-nav-featured-event__title"},_hoisted_4$f={key:1,class:"vs-mega-nav-featured-event__location"};function _sfc_render$E(e,n,t,o,a,r){const s=vue.resolveComponent("VsStretchedLinkCard");return a.featuredEvent?(vue.openBlock(),vue.createBlock(s,{key:0,link:a.featuredEvent.productLink.link,type:"internal","img-src":a.featuredEvent.images[0].mediaUrl,"img-alt":a.featuredEvent.name,class:"vs-mega-nav-featured-event","data-test":"vs-mega-nav-featured-event","data-chromatic":"ignore"},{"stretched-card-content":vue.withCtx(()=>[a.featuredEvent&&a.featuredEvent.opening?(vue.openBlock(),vue.createElementBlock("p",_hoisted_1$C,[vue.createTextVNode(vue.toDisplayString(a.featuredEvent.opening.period.label)+" ",1),vue.createElementVNode("span",_hoisted_2$s,vue.toDisplayString(a.featuredEvent.opening.period.startDay),1)])):vue.createCommentVNode("",!0),vue.createElementVNode("p",_hoisted_3$j,vue.toDisplayString(a.featuredEvent.name),1),a.featuredEvent&&a.featuredEvent.address?(vue.openBlock(),vue.createElementBlock("p",_hoisted_4$f,vue.toDisplayString(a.featuredEvent.address.shortAddress),1)):vue.createCommentVNode("",!0)]),"stretched-card-link":vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.featuredEvent.productLink.label),1)]),_:1},8,["link","img-src","img-alt"])):vue.createCommentVNode("",!0)}const MegaNavFeaturedEvent=LoadingSpinner._export_sfc(_sfc_main$T,[["render",_sfc_render$E]]),_sfc_main$S={name:"VsMegaNavStaticLink",status:"prototype",release:"0.1.0",components:{VsLink},mixins:[LoadingSpinner.dataLayerMixin],props:{href:{type:String,default:"#"},isFullWidth:{type:Boolean,default:!1}}};function _sfc_render$D(e,n,t,o,a,r){const s=vue.resolveComponent("VsLink");return vue.openBlock(),vue.createElementBlock("li",{class:vue.normalizeClass(["vs-mega-nav-static-link",t.isFullWidth?"vs-mega-nav-static-link--full-width":""]),"data-test":"vs-mega-nav-static-link",role:"presentation"},[vue.createVNode(s,{class:"vs-mega-nav-static-link__inner",href:t.href,role:"menuitem","data-layer-value":"menuNavigationDataEvent"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},8,["href"])],2)}const MegaNavStaticLink=LoadingSpinner._export_sfc(_sfc_main$S,[["render",_sfc_render$D]]),_sfc_main$R={name:"VsMegalinks",status:"prototype",release:"0.0.1",components:{VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,VsHeading:LoadingSpinner.VsHeading,VsButton:LoadingSpinner.VsButton,VsBody:LoadingSpinner.VsBody},provide(){return{noJsMessage:this.noJsMessage,noCookiesMessage:this.noCookiesMessage,cookieLinkText:this.cookieLinkText,theme:this.theme}},props:{title:{type:String,required:!1,default:null},sectionId:{type:String,required:!1,default:null},buttonLink:{type:String,required:!1,default:null},variant:{type:String,required:!1,default:null,validator:e=>e.match(/(multi-image|single-image|link-list)/)},theme:{type:String,default:"light",validator:e=>e.match(/(light|grey)/)},noJsMessage:{type:String,default:""},noCookiesMessage:{type:String,default:""},cookieLinkText:{type:String,default:""},headingLevel:{type:Number,default:2,validator:e=>LoadingSpinner.lodashExports.isNumber(e)?e>0&&e<7:e.match(/(1|2|3|4|5|6)/)},headingStyle:{type:String,default:"heading-xl",validator:e=>e.match(/(display-m|display-s|heading-xl|heading-l|heading-m|heading-s|heading-xs|heading-xxs|heading-xxxs)/)}},computed:{megalinksClasses(){return[this.variant?`vs-megalinks--${this.variant}`:"",`vs-megalinks--${this.theme}`]}}},_hoisted_1$B={key:0,class:"vs-megalinks__intro","data-test":"vs-megalinks__intro"},_hoisted_2$r={class:"row vs-megalinks__links-wrapper"},_hoisted_3$i={class:"vs-megalinks__button","data-test":"vs-megalinks__button"};function _sfc_render$C(e,n,t,o,a,r){const s=vue.resolveComponent("VsHeading"),i=vue.resolveComponent("VsBody"),l=vue.resolveComponent("VsCol"),u=vue.resolveComponent("VsRow"),c=vue.resolveComponent("VsButton"),d=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("section",{class:vue.normalizeClass(["vs-megalinks",r.megalinksClasses]),"data-test":"megalinks"},[vue.createVNode(d,{fluid:"lg"},{default:vue.withCtx(()=>[vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(l,{cols:"12",md:"8","offset-md":"2"},{default:vue.withCtx(()=>[t.title?(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$B,[vue.createVNode(s,{level:t.headingLevel,"heading-style":t.headingStyle,class:"vs-megalinks__heading","data-test":"vs-megalinks__heading",id:t.sectionId},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.title),1)]),_:1},8,["level","heading-style","id"]),e.$slots["vs-megalinks-intro"]&&e.$slots["vs-megalinks-intro"]()?(vue.openBlock(),vue.createBlock(i,{key:0,class:"vs-megalinks__intro-content",variant:"lead","data-test":"vs-megalinks__intro-content"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-megalinks-intro")]),_:3})):vue.createCommentVNode("",!0)])):vue.createCommentVNode("",!0)]),_:3})]),_:3}),vue.createElementVNode("div",_hoisted_2$r,[vue.renderSlot(e.$slots,"default")]),t.buttonLink&&t.variant!=="single-image"?(vue.openBlock(),vue.createBlock(u,{key:0},{default:vue.withCtx(()=>[vue.createVNode(l,{cols:"12"},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_3$i,[vue.createVNode(c,{href:t.buttonLink},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-megalinks-button")]),_:3},8,["href"])])]),_:3})]),_:3})):vue.createCommentVNode("",!0)]),_:3})],2)}const Megalinks=LoadingSpinner._export_sfc(_sfc_main$R,[["render",_sfc_render$C]]),_sfc_main$Q={name:"VsMegalinkLinkList",status:"prototype",release:"0.0.1",components:{VsStretchedLinkCard,VsBody:LoadingSpinner.VsBody,VsStretchedLinkPanels},props:{imgSrc:{required:!0,type:String},imgAlt:{required:!1,type:String,default:""},linkType:{type:String,required:!0,validator:e=>e.match(/(default|external|internal|download|video)/)},theme:{type:String,default:"light",validator:e=>e.match(/(light|grey)/)},linkUrl:{type:String,required:!0},days:{type:String,default:""},daysLabel:{type:String,default:"days"},transport:{type:String,default:""},transportName:{type:String,default:""},videoId:{type:String,default:""},videoBtnText:{type:String,default:"Play Video"},errorMessage:{type:String,default:""},businessSupport:{type:Boolean,default:!1},isHomePage:{type:Boolean,default:!1}},computed:{megalinkClass(){let e="";return this.theme&&(e+=`vs-megalink-link-list--${this.theme} `),this.isHomePage||(e+="vs-megalink-link-list--internal-page "),this.businessSupport&&(e+="vs-megalink-link-list--business-support "),e}}},_hoisted_1$A={class:"vs-megalink-link-list__title","data-test":"megalink-link-list__title"};function _sfc_render$B(e,n,t,o,a,r){const s=vue.resolveComponent("VsStretchedLinkPanels"),i=vue.resolveComponent("VsBody"),l=vue.resolveComponent("VsStretchedLinkCard");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-megalink-link-list",r.megalinkClass]),"data-test":"vs-megalink-link-list"},[vue.createVNode(l,{link:t.linkUrl,type:t.linkType,class:"vs-megalink-link-list__wrapper","img-src":t.imgSrc,"img-alt":t.imgAlt,theme:t.theme,"video-id":t.videoId,"video-btn-text":t.videoBtnText,"error-message":t.errorMessage,"error-type":"full","business-support":t.businessSupport,"is-home-page":t.isHomePage},vue.createSlots({"stretched-card-header":vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_1$A,[vue.renderSlot(e.$slots,"vs-link-list-heading")])]),"stretched-card-content":vue.withCtx(()=>[vue.createVNode(i,{class:vue.normalizeClass(t.businessSupport?"d-block":"vs-megalink-link-list__content"),"data-test":"megalink-link-list__content"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-link-list-content")]),_:3},8,["class"])]),_: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,"data-test":"vs-itinerary-panels"},null,8,["days","transport","transport-name","days-label"])]),key:"0"}:void 0,t.businessSupport&&!t.isHomePage?{name:"stretched-card-badges",fn:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-link-list-badges")]),key:"1"}:void 0]),1032,["link","type","img-src","img-alt","theme","video-id","video-btn-text","error-message","business-support","is-home-page"])],2)}const MegalinkLinkList=LoadingSpinner._export_sfc(_sfc_main$Q,[["render",_sfc_render$B]]),_sfc_main$P={name:"VsMegalinkMultiImage",status:"prototype",release:"0.0.1",components:{VsStretchedLinkCard,VsBody:LoadingSpinner.VsBody,VsStretchedLinkPanels},props:{featured:{required:!1,type:Boolean,default:!1},lastFeatured:{required:!1,type:Boolean,default:!1},imgSrc:{required:!0,type:String},imgAlt:{required:!1,type:String,default:""},linkType:{type:String,required:!0,validator:e=>e.match(/(default|external|internal|download|video)/)},linkUrl:{type:String,required:!0},theme:{type:String,default:"light",validator:e=>e.match(/(light|grey)/)},days:{type:String,default:""},daysLabel:{type:String,default:"days"},transport:{type:String,default:""},transportName:{type:String,default:""},videoId:{type:String,default:""},videoBtnText:{type:String,default:"Play Video"},errorMessage:{type:String,default:""}},computed:{multiImageClasses(){return[`vs-megalink-multi-image-card--${this.theme}`,{"vs-megalink-multi-image-card--featured":this.featured,"vs-megalink-multi-image-card--featured-last":this.lastFeatured}]}}},_hoisted_1$z={class:"vs-megalink-multi-image"},_hoisted_2$q={class:"vs-megalink-multi-image-card__title","data-test":"megalink-multi-image-card__title"};function _sfc_render$A(e,n,t,o,a,r){const s=vue.resolveComponent("VsStretchedLinkPanels"),i=vue.resolveComponent("VsBody"),l=vue.resolveComponent("VsStretchedLinkCard");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$z,[vue.createVNode(l,{link:t.linkUrl,type:t.linkType,class:vue.normalizeClass(["vs-megalink-multi-image-card p-050",r.multiImageClasses]),"heading-style":t.featured?"heading-s":"heading-xs","img-src":t.imgSrc,"img-alt":t.imgAlt,"data-test":t.featured?"megalink-multi-image-featured":"megalink-multi-image-card",theme:t.theme,"video-id":t.videoId,"video-btn-text":t.videoBtnText,"error-message":t.errorMessage,"warning-size":t.featured?"normal":"small"},vue.createSlots({"stretched-card-header":vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_2$q,[vue.renderSlot(e.$slots,"vs-multi-image-heading")])]),"stretched-card-content":vue.withCtx(()=>[vue.createVNode(i,{class:"vs-megalink-multi-image-card__content","data-test":"megalink-multi-image-card__content"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-multi-image-content")]),_:3})]),_: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,"data-test":"vs-itinerary-panels"},null,8,["days","transport","transport-name","days-label"])]),key:"0"}:void 0,e.$slots["vs-multi-image-badges"]&&e.$slots["vs-multi-image-badges"]()?{name:"stretched-card-badges",fn:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-multi-image-badges")]),key:"1"}:void 0]),1032,["link","type","class","heading-style","img-src","img-alt","data-test","theme","video-id","video-btn-text","error-message","warning-size"])])}const MegalinkMultiImage=LoadingSpinner._export_sfc(_sfc_main$P,[["render",_sfc_render$A]]),_sfc_main$O={name:"VsMegalinkSingleImage",status:"prototype",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading,VsBody:LoadingSpinner.VsBody,VsButton:LoadingSpinner.VsButton,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,VsLinkList},props:{alternate:{type:Boolean,default:!1},title:{type:String,default:null},buttonLink:{type:String,default:""}},data(){return{negativeMargin:"200px",imageHeight:"400px"}},computed:{singleImageClasses(){return[this.alternate?"vs-megalink-single-image--alternate":""]},cssVars(){return{"--negative-margin":`-${this.negativeMargin}`,"--image-height":`${this.imageHeight}`}}},mounted(){const e=this.$el.querySelector(".vs-image-with-caption");if(e){const n=e.querySelector("img");n.addEventListener("load",()=>{const t=n.clientHeight/2.5/n.clientWidth;this.negativeMargin=`${t*100}%`,this.imageHeight=`${n.clientHeight}px`})}}},_hoisted_1$y={class:"vs-megalink-single-image__image-container"},_hoisted_2$p={class:"vs-megalink-single-image__content","data-test":"megalink-single-image__content"},_hoisted_3$h={class:"vs-megalink-single-image__button"};function _sfc_render$z(e,n,t,o,a,r){const s=vue.resolveComponent("VsHeading"),i=vue.resolveComponent("VsBody"),l=vue.resolveComponent("VsLinkList"),u=vue.resolveComponent("VsButton"),c=vue.resolveComponent("VsCol"),d=vue.resolveComponent("VsRow");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-megalink-single-image",r.singleImageClasses]),"data-test":"megalink-single-image",style:vue.normalizeStyle(r.cssVars)},[vue.createElementVNode("div",_hoisted_1$y,[vue.renderSlot(e.$slots,"vs-single-image")]),vue.createVNode(d,{class:"vs-megalink-single-image__text-container"},{default:vue.withCtx(()=>[vue.createVNode(c,{cols:"12",sm:"10",lg:"6",class:vue.normalizeClass(["offset-sm-1",t.alternate?"offset-lg-6":"offset-lg-0"])},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_2$p,[t.title?(vue.openBlock(),vue.createBlock(s,{key:0,level:"3","heading-style":"heading-m",class:"vs-megalink-single-image__title","data-test":"megalink-single-image__title"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.title),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(i,{variant:"lead"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-single-image-content")]),_:3}),vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-single-image-links")]),_:3}),vue.createElementVNode("div",_hoisted_3$h,[t.buttonLink?(vue.openBlock(),vue.createBlock(u,{key:0,href:t.buttonLink,variant:"secondary"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-single-image-button-text")]),_:3},8,["href"])):vue.createCommentVNode("",!0)])])]),_:3},8,["class"])]),_:3})],6)}const MegalinkSingleImage=LoadingSpinner._export_sfc(_sfc_main$O,[["render",_sfc_render$z]]),_sfc_main$N={name:"VsBackdrop",props:{show:{type:Boolean,required:!0},zIndex:{type:[String,Number],default:1040},clickable:{type:Boolean,default:!0}},emits:["click","update:show"],computed:{backdropStyle(){return{zIndex:this.zIndex}}},unmounted(){this.show&&this.unlockScroll()},methods:{onClick(){this.clickable&&(this.$emit("click"),this.$emit("update:show",!1))},lockScroll(){document.body.style.overflow="hidden"},unlockScroll(){document.body.style.overflow=""}}};function _sfc_render$y(e,n,t,o,a,r){return vue.openBlock(),vue.createBlock(vue.Transition,{name:"vs-backdrop-fade",onEnter:r.lockScroll,onAfterLeave:r.unlockScroll},{default:vue.withCtx(()=>[t.show?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:"vs-backdrop",style:vue.normalizeStyle(r.backdropStyle),role:"presentation",onClick:n[0]||(n[0]=(...s)=>r.onClick&&r.onClick(...s))},null,4)):vue.createCommentVNode("",!0)]),_:1},8,["onEnter","onAfterLeave"])}const VsBackdrop=LoadingSpinner._export_sfc(_sfc_main$N,[["render",_sfc_render$y]]),_sfc_main$M={name:"VsModal",status:"prototype",release:"0.0.1",components:{VsCol:LoadingSpinner.VsCol,VsRow:LoadingSpinner.VsRow,VsContainer:LoadingSpinner.VsContainer,VsButton:LoadingSpinner.VsButton,BModal:LoadingSpinner._a,VsBackdrop},props:{modalId:{type:String,required:!0},closeBtnText:{type:String,required:!0},isVideoModal:{type:Boolean,default:!1},autoMount:{type:Boolean,default:!1}},data(){return{show:!1,mounted:this.autoMount}},mounted(){this.mounted=!0,this.emitter&&(this.emitter.on("showModal",e=>this.showModal(e)),this.emitter.on("hideModal",()=>this.hideModal()),this.isVideoModal&&this.emitter.on("showModal",e=>{this.emitter.emit("video-controls",{action:"modal-opened",id:e})}))},methods:{hideModal(){this.emitter&&this.emitter.emit("video-controls",{action:"modal-closed",id:this.modalId}),this.show=!1},showModal(e){e===this.modalId&&(this.show=!0)}}};function _sfc_render$x(e,n,t,o,a,r){const s=vue.resolveComponent("VsButton"),i=vue.resolveComponent("VsCol"),l=vue.resolveComponent("VsRow"),u=vue.resolveComponent("VsContainer"),c=vue.resolveComponent("VsBackdrop"),d=vue.resolveComponent("BModal");return a.mounted?(vue.openBlock(),vue.createBlock(d,{key:0,"modal-class":"vs-modal","data-test":"vs-modal",ref:`modal-${t.modalId}`,id:t.modalId,size:"xl","hide-footer":"","hide-header":"",static:t.isVideoModal,modelValue:a.show,"onUpdate:modelValue":n[1]||(n[1]=v=>a.show=v),onHidden:r.hideModal},{backdrop:vue.withCtx(()=>[vue.createVNode(c,{show:a.show,onClick:n[0]||(n[0]=v=>r.hideModal())},null,8,["show"])]),default:vue.withCtx(()=>[vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.createVNode(i,{cols:"12",lg:"1",class:"d-flex justify-content-end align-items-start order-lg-1"},{default:vue.withCtx(()=>[vue.createVNode(s,{class:"vs-modal__close-btn mb-125 mb-lg-0","data-test":"vs-modal__close-btn",variant:"subtle","icon-only":"",icon:"vs-icon-control-dismiss",onClick:r.hideModal},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.closeBtnText),1)]),_:1},8,["onClick"])]),_:1}),vue.createVNode(i,{cols:"12",lg:"11"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3})]),_:3})]),_:3})]),_:3},8,["id","static","modelValue","onHidden"])):vue.createCommentVNode("",!0)}const Modal=LoadingSpinner._export_sfc(_sfc_main$M,[["render",_sfc_render$x]]),_sfc_main$L={name:"VsNavigationBarSidebarButton",status:"prototype",release:"0.1.0",components:{VsButton:LoadingSpinner.VsButton,VsTooltip},props:{sidebarOpenLabel:{type:String,required:!0},expanded:{type:Boolean,default:!1},controlsId:{type:String,required:!0}},emits:["sidebar-open"],methods:{sidebarOpen(){this.$emit("sidebar-open",!0)}}};function _sfc_render$w(e,n,t,o,a,r){const s=vue.resolveComponent("VsButton"),i=vue.resolveComponent("VsTooltip");return vue.openBlock(),vue.createBlock(i,{title:t.sidebarOpenLabel,subtle:"",position:"bottom","use-legacy":!1},{default:vue.withCtx(()=>[vue.createVNode(s,{"icon-only":"",icon:"vs-icon-control-menu",size:"sm",variant:"subtle",class:"d-block vs-navigation-bar-sidebar-button","data-test":"vs-navigation-bar-sidebar-button",onClick:n[0]||(n[0]=l=>r.sidebarOpen()),"aria-haspopup":"dialog","aria-controls":t.controlsId,"aria-expanded":String(t.expanded)},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.sidebarOpenLabel),1)]),_:1},8,["aria-controls","aria-expanded"])]),_:1},8,["title"])}const VsNavigationBarSidebarButton=LoadingSpinner._export_sfc(_sfc_main$L,[["render",_sfc_render$w]]),_sfc_main$K={name:"VsNavigationBarSidebar",status:"prototype",release:"0.1.0",components:{BOffcanvas:LoadingSpinner.Md,VsButton:LoadingSpinner.VsButton,VsBackdrop},props:{show:{type:Boolean,default:!1},sidebarTitle:{type:String,required:!0},sidebarCloseLabel:{type:String,required:!0}},emits:["update:show"],methods:{sidebarClose(){this.$emit("update:show",!1)}}},_hoisted_1$x={id:"navigation-sidebar-title",class:"visually-hidden"};function _sfc_render$v(e,n,t,o,a,r){const s=vue.resolveComponent("VsButton"),i=vue.resolveComponent("VsBackdrop"),l=vue.resolveComponent("BOffcanvas");return vue.openBlock(),vue.createBlock(l,{class:"vs-navigation-bar-sidebar border-0","model-value":t.show,"aria-labelledby":"navigation-sidebar-title","onUpdate:modelValue":n[1]||(n[1]=u=>e.$emit("update:show",u)),id:"navigation-sidebar",placement:"end","no-backdrop":!0,lazy:""},{header:vue.withCtx(()=>[vue.createElementVNode("h2",_hoisted_1$x,vue.toDisplayString(t.sidebarTitle),1),vue.createVNode(s,{"icon-only":"",icon:"vs-icon-control-dismiss",variant:"subtle",size:"sm",onClick:r.sidebarClose},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.sidebarCloseLabel),1)]),_:1},8,["onClick"])]),footer:vue.withCtx(()=>[vue.renderSlot(e.$slots,"sidebar-footer")]),backdrop:vue.withCtx(()=>[vue.createVNode(i,{show:t.show,onClick:n[0]||(n[0]=u=>r.sidebarClose())},null,8,["show"])]),default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},8,["model-value"])}const VsNavigationSidebar=LoadingSpinner._export_sfc(_sfc_main$K,[["render",_sfc_render$v]]),_sfc_main$J={name:"VsNavigationBar",status:"prototype",release:"0.1.0",components:{VsCol:LoadingSpinner.VsCol,VsRow:LoadingSpinner.VsRow,VsContainer:LoadingSpinner.VsContainer,VsNavigationBarSidebarButton,VsNavigationSidebar},props:{sidebarBreakpoint:{type:String,default:"md",validator:e=>/^(xs|sm|md|lg|xl)$/.test(e)},sidebarCloseLabel:{type:String,required:!0},sidebarOpenLabel:{type:String,required:!0},sidebarTitle:{type:String,required:!0}},data(){return{sidebarOpen:!1}},computed:{breakpointMap(){return{xs:"sm",sm:"md",md:"lg",lg:"xl",xl:"xxl"}},menuBreakpoint(){return this.breakpointMap[this.sidebarBreakpoint]||"lg"},menuClasses(){return`d-none d-${this.menuBreakpoint}-block flex-grow-1`},sidebarButtonClasses(){return`d-${this.menuBreakpoint}-none`},utilityClasses(){return`d-flex justify-content-end align-items-center col col-${this.menuBreakpoint}-auto`}},methods:{onSidebarOpen(){this.sidebarOpen=!0}}},_hoisted_1$w={class:"vs-navigation-bar","data-test":"vs-navigation-bar"};function _sfc_render$u(e,n,t,o,a,r){const s=vue.resolveComponent("VsCol"),i=vue.resolveComponent("VsNavigationBarSidebarButton"),l=vue.resolveComponent("VsRow"),u=vue.resolveComponent("VsContainer"),c=vue.resolveComponent("VsNavigationSidebar");return vue.openBlock(),vue.createElementBlock(vue.Fragment,null,[vue.createElementVNode("header",_hoisted_1$w,[vue.createVNode(u,{fluid:"lg",class:"h-100"},{default:vue.withCtx(()=>[vue.createVNode(l,{class:"align-items-center h-100"},{default:vue.withCtx(()=>[vue.createVNode(s,{class:"col-auto"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"logo-link")]),_:3}),vue.createVNode(s,{class:vue.normalizeClass(r.menuClasses),"data-test":"vs-navigation-bar__menu"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"navigation-bar-menu")]),_:3},8,["class"]),vue.createVNode(s,{class:vue.normalizeClass(r.utilityClasses),"data-test":"vs-navigation-bar__utilities"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"navigation-bar-utilities"),vue.createVNode(i,{class:vue.normalizeClass(r.sidebarButtonClasses),"data-test":"vs-navigation-bar__sidebar-button",onSidebarOpen:r.onSidebarOpen,"sidebar-open-label":t.sidebarOpenLabel,expanded:a.sidebarOpen,"controls-id":"navigation-sidebar"},null,8,["class","onSidebarOpen","sidebar-open-label","expanded"])]),_:3},8,["class"])]),_:3})]),_:3})]),vue.createVNode(c,{show:a.sidebarOpen,"onUpdate:show":n[0]||(n[0]=d=>a.sidebarOpen=d),"sidebar-close-label":t.sidebarCloseLabel,"sidebar-title":t.sidebarTitle},{"sidebar-footer":vue.withCtx(()=>[vue.renderSlot(e.$slots,"sidebar-footer")]),default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"sidebar-body")]),_:3},8,["show","sidebar-close-label","sidebar-title"])],64)}const NavigationBar=LoadingSpinner._export_sfc(_sfc_main$J,[["render",_sfc_render$u]]),_sfc_main$I={name:"VsNavigationBarMenu",status:"prototype",release:"0.1.0",props:{menuAriaLabel:{type:String,required:!0}}},_hoisted_1$v=["aria-label"];function _sfc_render$t(e,n,t,o,a,r){return vue.openBlock(),vue.createElementBlock("nav",{class:"vs-navigation-bar-menu","data-test":"vs-navigation-bar-menu","aria-label":t.menuAriaLabel},[vue.createElementVNode("ul",null,[vue.renderSlot(e.$slots,"default")])],8,_hoisted_1$v)}const NavigationBarMenu=LoadingSpinner._export_sfc(_sfc_main$I,[["render",_sfc_render$t]]),_sfc_main$H={name:"VsNavigationBarMenuDropdown",status:"prototype",release:"0.1.0",components:{BDropdown:LoadingSpinner.un},mixins:[LoadingSpinner.dataLayerMixin],props:{subtle:{type:Boolean,default:!1}},computed:{menuDropdownClasses(){return[this.subtle?"vs-navigation-bar-menu-dropdown--subtle":"","vs-navigation-bar-menu-dropdown"]}},methods:{dataLayerSubmit(){var n,t,o,a;const e=((a=(o=(t=(n=this.$refs.dropdown)==null?void 0:n.$el)==null?void 0:t.querySelector(".dropdown-toggle"))==null?void 0:o.innerText)==null?void 0:a.trim())||"";e&&this.createDataLayerObject("menuNavigationDataEvent",{target:{text:e,innerText:e,closest:()=>null}},null)}}};function _sfc_render$s(e,n,t,o,a,r){const s=vue.resolveComponent("BDropdown");return vue.openBlock(),vue.createBlock(s,{class:vue.normalizeClass(r.menuDropdownClasses),"data-test":"vs-navigation-bar-menu-dropdown",variant:"subtle",ref:"dropdown",role:"presentation",onShow:r.dataLayerSubmit},{"button-content":vue.withCtx(()=>[vue.renderSlot(e.$slots,"button-content")]),default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},8,["class","onShow"])}const NavigationBarMenuDropdown=LoadingSpinner._export_sfc(_sfc_main$H,[["render",_sfc_render$s]]),_sfc_main$G={name:"VsNavigationBarMenuItem",status:"prototype",release:"0.1.0",mixins:[LoadingSpinner.dataLayerMixin],props:{href:{type:String,required:!0},variant:{type:String,default:"secondary-menu-item",validator:e=>e.match(/(primary-menu-item|primary-sidebar-item|secondary-menu-item)/)}},computed:{menuItemLinkClasses(){return[`vs-navigation-bar-menu-item__link--${this.variant}`,"vs-navigation-bar-menu-item__link"]}},methods:{clickHandler(e){e.preventDefault(),this.dataLayerValue&&this.createDataLayerObject(this.dataLayerValue,e,this.href),setTimeout(()=>{this.navigateToUrl()},500)},navigateToUrl(){this.href!=="#"&&this.href!==null&&(window.location.href=this.href)},keyHandler(e){(e.keyCode===13||e.keyCode===32)&&(e.preventDefault(),this.clickHandler(e))}}},_hoisted_1$u={class:"vs-navigation-bar-menu-item","data-test":"vs-navigation-bar-menu-item"},_hoisted_2$o=["href"];function _sfc_render$r(e,n,t,o,a,r){return vue.openBlock(),vue.createElementBlock("li",_hoisted_1$u,[vue.createElementVNode("a",{class:vue.normalizeClass(r.menuItemLinkClasses),href:t.href,"data-layer-value":"menuNavigationDataEvent",onClick:n[0]||(n[0]=s=>r.clickHandler(s)),onKeydown:n[1]||(n[1]=s=>r.keyHandler(s))},[vue.renderSlot(e.$slots,"default")],42,_hoisted_2$o)])}const NavigationBarMenuItem=LoadingSpinner._export_sfc(_sfc_main$G,[["render",_sfc_render$r]]),_sfc_main$F={name:"VsNavigationBarSearch",status:"prototype",release:"0.0.1",components:{VsButton:LoadingSpinner.VsButton,VsSiteSearchForm},props:{buttonText:{type:String,default:"Search"},labelText:{type:String,default:"Search"},submitButtonText:{type:String,default:"Submit"},closeButtonText:{type:String,default:"Close"},showLabelBreakpoint:{type:String,default:"md",validator:e=>/^(xs|sm|md|lg|xl|xxl)$/.test(e)}},data(){return{showSearch:!1}}};function _sfc_render$q(e,n,t,o,a,r){const s=vue.resolveComponent("VsButton"),i=vue.resolveComponent("VsSiteSearchForm");return vue.openBlock(),vue.createElementBlock(vue.Fragment,null,[vue.createVNode(s,{"data-test":"vs-navigation-bar-search",id:"site-search-btn",variant:"secondary",size:"sm",icon:"vs-icon-control-search",active:a.showSearch,"show-label-breakpoint":t.showLabelBreakpoint,onClick:n[0]||(n[0]=l=>a.showSearch=!a.showSearch)},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.buttonText),1)]),_:1},8,["active","show-label-breakpoint"]),(vue.openBlock(),vue.createBlock(vue.Teleport,{to:"body"},[vue.withDirectives(vue.createVNode(i,{onToggleAction:n[1]||(n[1]=l=>a.showSearch=!1),"is-showing":a.showSearch,"label-text":t.labelText,"submit-button-text":t.submitButtonText,"close-button-text":t.closeButtonText},null,8,["is-showing","label-text","submit-button-text","close-button-text"]),[[vue.vShow,a.showSearch]])]))],64)}const NavigationBarSearch=LoadingSpinner._export_sfc(_sfc_main$F,[["render",_sfc_render$q]]),_sfc_main$E={name:"VsPageIntro",status:"deprecated",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading,VsBody:LoadingSpinner.VsBody,VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol},props:{background:{type:String,default:"light",validator:e=>e.match(/(light|grey)/)},heroIntro:{type:Boolean,default:!1},isItinerary:{type:Boolean,default:!1},fullscreenMobile:{type:Boolean,default:!1},hasToc:{type:Boolean,default:!1}},computed:{introClasses(){return[`vs-page-intro--${this.background}`,this.heroIntro?"vs-page-intro--hero":"",this.fullscreenMobile?"vs-page-intro__fullscreen-mobile-header":""]},contentColProps(){const e={};return this.isItinerary?(e.md="6",e.lg="5",e.xl="6",e["offset-lg"]="1"):this.heroIntro?(e.md="12",e.lg="7",e.xl="8",e["offset-lg"]="1"):this.hasToc?e.md="7":e.md="8",e}}},_hoisted_1$t={key:0,class:"vs-page-intro__fs-mobile-heading-wrapper","data-test":"vs-page-intro__mobile-breadcrumb"},_hoisted_2$n={class:"vs-page-intro__wrapper"},_hoisted_3$g={class:"vs-page-intro__share"},_hoisted_4$e={key:0,class:"list-inline"},_hoisted_5$d={key:0,class:"vs-page-intro__lower py-300","data-test":"vs-page-intro__lower"};function _sfc_render$p(e,n,t,o,a,r){const s=vue.resolveComponent("VsCol"),i=vue.resolveComponent("VsRow"),l=vue.resolveComponent("VsContainer"),u=vue.resolveComponent("VsHeading"),c=vue.resolveComponent("VsBody");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-page-intro",r.introClasses]),"data-test":"vs-page-intro"},[t.fullscreenMobile?(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$t,[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.createVNode(i,{class:vue.normalizeClass(t.fullscreenMobile?"d-none-md":"")},{default:vue.withCtx(()=>[vue.createVNode(s,{cols:"9",lg:t.heroIntro?"8":"","offset-lg":t.heroIntro?"1":""},{default:vue.withCtx(()=>[vue.createElementVNode("div",{class:vue.normalizeClass(["vs-page-intro__breadcrumb",t.heroIntro?"mt-lg-100":"mt-lg-200"])},[vue.renderSlot(e.$slots,"vs-intro-breadcrumb")],2)]),_:3},8,["lg","offset-lg"])]),_:3},8,["class"])]),_:3})])):vue.createCommentVNode("",!0),vue.renderSlot(e.$slots,"vs-intro-hero"),vue.createElementVNode("div",_hoisted_2$n,[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.createVNode(i,{class:vue.normalizeClass(t.fullscreenMobile?"d-none d-lg-flex":"")},{default:vue.withCtx(()=>[vue.createVNode(s,{cols:"9",lg:t.heroIntro?"8":"","offset-lg":t.heroIntro?"1":""},{default:vue.withCtx(()=>[vue.createElementVNode("div",{class:vue.normalizeClass(["vs-page-intro__breadcrumb",t.heroIntro?"mt-lg-100":"mt-lg-200"])},[vue.renderSlot(e.$slots,"vs-intro-breadcrumb")],2)]),_:3},8,["lg","offset-lg"])]),_:3},8,["class"]),vue.createElementVNode("div",_hoisted_3$g,[vue.renderSlot(e.$slots,"vs-share-button")]),vue.createVNode(i,null,{default:vue.withCtx(()=>[vue.createVNode(s,{cols:"11",md:t.heroIntro?"11":"10",lg:t.heroIntro?"7":"10",xl:t.heroIntro?"8":"10","offset-lg":t.heroIntro?"1":"0",class:"mt-050"},{default:vue.withCtx(()=>[vue.createVNode(u,{level:"1","heading-style":"display-s",id:"main-heading"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-intro-heading")]),_:3}),vue.renderSlot(e.$slots,"vs-article-data")]),_:3},8,["md","lg","xl","offset-lg"])]),_:3}),vue.createVNode(i,null,{default:vue.withCtx(()=>[vue.createVNode(s,vue.mergeProps({"data-test":"vs-page-intro__content",cols:"12"},r.contentColProps),{default:vue.withCtx(()=>[vue.createVNode(c,{variant:"lead"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-intro-content")]),_:3}),e.$slots["vs-intro-start-finish"]&&e.$slots["vs-intro-start-finish"]()?(vue.openBlock(),vue.createElementBlock("dl",_hoisted_4$e,[vue.renderSlot(e.$slots,"vs-intro-start-finish")])):vue.createCommentVNode("",!0)]),_:3},16),e.$slots["vs-intro-table-of-contents"]&&e.$slots["vs-intro-table-of-contents"]()?(vue.openBlock(),vue.createBlock(s,{key:0,cols:"12",md:"5"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-intro-table-of-contents")]),_:3})):vue.createCommentVNode("",!0),vue.renderSlot(e.$slots,"vs-intro-summary-box")]),_:3})]),_:3}),e.$slots["vs-intro-lower"]&&e.$slots["vs-intro-lower"]()?(vue.openBlock(),vue.createElementBlock("div",_hoisted_5$d,[vue.renderSlot(e.$slots,"vs-intro-lower")])):vue.createCommentVNode("",!0)])],2)}const PageIntro=LoadingSpinner._export_sfc(_sfc_main$E,[["render",_sfc_render$p]]),_hoisted_1$s={"aria-label":"Pagination",class:"vs-pagination","data-test":"vs-pagination"},_hoisted_2$m={"aria-live":"polite",class:"vs-pagination__count"},_hoisted_3$f={class:"vs-pagination__controls"},_hoisted_4$d={class:"vs-pagination__prev"},_hoisted_5$c={class:"vs-pagination__list"},_hoisted_6$c={key:0},_hoisted_7$a={class:"vs-pagination__next"},limit=7,_sfc_main$D={__name:"VsPagination",props:vue.mergeModels({nextButtonLabel:{type:String,required:!0},numberOfPages:{type:Number,required:!0},pageLabel:{type:String,required:!0},ofLabel:{type:String,required:!0},previousButtonLabel:{type:String,required:!0}},{modelValue:{type:Number,default:1},modelModifiers:{}}),emits:vue.mergeModels(["page-click"],["update:modelValue"]),setup(e,{emit:n}){const t=e,o=n,a=vue.useModel(e,"modelValue"),r=vue.computed(()=>`${t.pageLabel} ${a.value} ${t.ofLabel} ${t.numberOfPages}`),s=u=>({"vs-pagination__item":!0,"vs-pagination__item--active":a.value===u,"vs-pagination__item--ellipses":u==="ellipses"}),i=vue.computed(()=>{if(t.numberOfPages<=limit)return Array.from({length:t.numberOfPages},(d,v)=>v+1);let u=[];const c=Math.floor(limit/2);if(a.value<=c){for(let d=1;d<limit-1;d++)u=[...u,d];u=[...u,"ellipses",t.numberOfPages]}else if(a.value>t.numberOfPages-c){u=[1,"ellipses"];const d=t.numberOfPages-limit+2;for(let v=1;v<limit-1;v++)u=[...u,d+v]}else{const d=a.value-c+1;u=[1,"ellipses"];for(let v=1;v<limit-3;v++)u=[...u,d+v];u=[...u,"ellipses",t.numberOfPages]}return u}),l=(u,c)=>{a.value!==c&&(o("page-click",c),a.value=c)};return vue.watch(()=>t.numberOfPages,()=>{a.value=1}),(u,c)=>(vue.openBlock(),vue.createElementBlock("nav",_hoisted_1$s,[vue.createElementVNode("div",_hoisted_2$m,[vue.createElementVNode("p",null,vue.toDisplayString(r.value),1)]),vue.createElementVNode("div",_hoisted_3$f,[vue.createElementVNode("div",_hoisted_4$d,[vue.createVNode(LoadingSpinner.VsButton,{disabled:a.value===1,icon:"fa-regular fa-arrow-left",size:"sm",variant:"subtle",onClick:c[0]||(c[0]=d=>l(d,a.value-1))},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.previousButtonLabel),1)]),_:1},8,["disabled"])]),vue.createElementVNode("ul",_hoisted_5$c,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(i.value,(d,v)=>(vue.openBlock(),vue.createElementBlock("li",{class:vue.normalizeClass(s(d)),key:v},[d==="ellipses"?(vue.openBlock(),vue.createElementBlock("span",_hoisted_6$c,"⋯")):(vue.openBlock(),vue.createBlock(LoadingSpinner.VsButton,{key:1,"aria-current":a.value===d?"page":null,"aria-label":`Page ${d}`,size:"sm",onClick:m=>l(m,d)},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(d),1)]),_:2},1032,["aria-current","aria-label","onClick"]))],2))),128))]),vue.createElementVNode("div",_hoisted_7$a,[vue.createVNode(LoadingSpinner.VsButton,{disabled:a.value===t.numberOfPages,icon:"fa-regular fa-arrow-right","icon-position":"right",size:"sm",variant:"subtle",onClick:c[1]||(c[1]=d=>l(d,a.value+1))},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.nextButtonLabel),1)]),_:1},8,["disabled"])])])]))}},_sfc_main$C={name:"VsPanel",status:"prototype",release:"0.0.1",props:{variant:{type:String,default:"secondary",validator:e=>e.match(/(secondary|information)/)}},computed:{panelClasses(){return`vs-panel--${this.variant}`}}};function _sfc_render$o(e,n,t,o,a,r){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-panel",r.panelClasses]),"data-test":"vs-panel"},[vue.renderSlot(e.$slots,"vs-panel-title"),vue.renderSlot(e.$slots,"default")],2)}const Panel=LoadingSpinner._export_sfc(_sfc_main$C,[["render",_sfc_render$o]]);let VS$1;function setWindowObj(){typeof window<"u"?VS$1=typeof window.VS=="object"?window.VS:{}:VS$1={}}function getLabelText(e,n,t){setWindowObj();let o="";return Object.keys(VS$1).length>0&&(typeof t<"u"?o=VS$1.search_config.basic_config.search_module[t][e]:o=VS$1.search_config.basic_config.search_module[e]),o||n}function getProductName(e,n){setWindowObj();const t={};return Object.keys(VS$1).length>0&&Object.keys(VS$1.search_config.basic_config.productTypes).forEach(o=>{const a=VS$1.search_config.basic_config.productTypes[o];t[a.value]=a.text}),t[e]?t[e]:n}function getLocale(){let e=document.documentElement.lang.toLocaleLowerCase().slice(0,2)||"";return e==="en"&&(e=""),e}let VS;typeof window<"u"?VS=typeof window.VS=="object"?window.VS:{}:VS={};function getProductTypes(){if(Object.keys(VS).length<=0)return LoadingSpinner.products;const e=VS.search_config.basic_config.productTypes,n=[];return Object.keys(e).forEach(o=>{n.push({key:e[o].value,text:e[o].text,value:e[o].value})}),n}async function getData(e){try{const{data:n}=await LoadingSpinner.axios.get(e);return n}catch(n){console.error(`Axios error: ${n}`)}}var define_process_env_default$1={},controls={arrowUpKey:38,arrowDownKey:40,escKey:27,enterKey:13};function isFn(e){return typeof e=="function"}function isControlledProp(e,n){return e[n]!==void 0}function hasKeyCode(e,n){return e===n.keyCode}function getItemIndex(e,n,t){return e!==void 0?e:t.length?t.indexOf(n):-1}function hasOwnProperty(e,n){return Object.prototype.hasOwnProperty.call(e,n)}function requiredProp(e,n){console.error('The property "'+n+'" is required in "'+e+'"')}function getNextNonDisabledIndex(e,n,t,o,a){var r=o(n);if(!r||!r.hasAttribute("disabled"))return n;if(e>0)for(var s=n+1;s<t;s+=1){var i=o(s),l=i.hasAttribute("disabled");if(!l)return s}else for(var u=n-1;u>=0;u-=1)if(!o(u).hasAttribute("disabled"))return u;return a?e>0?getNextNonDisabledIndex(1,0,t,o,!1):getNextNonDisabledIndex(-1,t-1,t,o,!1):-1}function scrollToElement(e,n,t){var o=n.clientHeight,a=n.scrollTop,r=e.offsetHeight,s=e.offsetTop;if(s<a)t===0?n.scrollTop=0:n.scrollTop=s;else{var i=s+r,l=a+o;i>l&&(n.scrollTop=i-o)}}function getProps(e){return Object.assign({},e?{modelValue:{default:null}}:{value:{default:null}},{items:{type:Array,required:!0},itemToString:{type:Function,default:function(n){return n?String(n):""}},stateReducer:{type:Function,default:function(n,t){return t.changes}},getItemId:{type:Function,default:function(t){return"v-"+this.idCounter+"-vue-combo-blocks-item-"+t}},menuId:{type:String,default:""},inputId:{type:String,default:""},labelId:{type:String,default:""},scrollIntoView:{type:Boolean,default:!0},circular:{type:Boolean,default:!0}})}function getInitialData(e,n){return{hovered:null,isOpen:!1,hoveredIndex:-1,selectedItem:e,inputValue:n(e)}}var computed={menuElement:function e(){return document.querySelector("#"+this.computedMenuId)},computedMenuId:function e(){return this.menuId||"v-"+this.idCounter+"-vue-combo-blocks-menu"},computedInputId:function e(){return this.inputId||"v-"+this.idCounter+"-vue-combo-blocks-input"},computedLabelId:function e(){return this.labelId||"v-"+this.idCounter+"-vue-combo-blocks-label"},selectedIndex:function e(){return this.items.indexOf(this.selectedItem)}},InputKeyDownArrowDown="InputKeyDownArrowDown",InputKeyDownArrowUp="InputKeyDownArrowUp",InputKeyDownTab="InputKeyDownTab",InputKeyUpEscape="InputKeyUpEscape",InputKeyUpEnter="InputKeyUpEnter",InputChange="InputChange",InputBlur="InputBlur",MenuMouseLeave="MenuMouseLeave",ItemMouseMove="ItemMouseMove",ItemClick="ItemClick",FunctionOpenMenu="FunctionOpenMenu",FunctionCloseMenu="FunctionCloseMenu",FunctionSelectItem="FunctionSelectItem",FunctionSetInputValue="FunctionSetInputValue",FunctionReset="FunctionReset",ControlledPropUpdatedSelectedItem="ControlledPropUpdatedSelectedItem",sct=Object.freeze({__proto__:null,ControlledPropUpdatedSelectedItem,FunctionCloseMenu,FunctionOpenMenu,FunctionReset,FunctionSelectItem,FunctionSetInputValue,InputBlur,InputChange,InputKeyDownArrowDown,InputKeyDownArrowUp,InputKeyDownTab,InputKeyUpEnter,InputKeyUpEscape,ItemClick,ItemMouseMove,MenuMouseLeave}),inputPropsAndListeners={getInputProps:function e(){return{value:this.inputValue||"","aria-activedescendant":this.hovered?this.getItemId(this.hoveredIndex):"","aria-autocomplete":"list","aria-controls":this.computedMenuId,"aria-labelledby":this.computedLabelId,id:this.computedInputId,autocomplete:"off"}},getInputEventListeners:function e(n){n===void 0&&(n={});var t=n.blur,o=n.input,a=n.keydown,r=n.keyup;return{blur:isFn(t)?t:this.onInputBlur,input:isFn(o)?o:this.onInput,keydown:isFn(a)?a:this.onInputKeyDown,keyup:isFn(r)?r:this.onInputKeyUp}},onInputKeyDown:function e(n){n.key==="Enter"&&this.isOpen?n.preventDefault():hasKeyCode(controls.arrowDownKey,n)&&!this.isOpen?(this.setState({isOpen:!0},InputKeyDownArrowDown),this.moveSelection(n)):this.moveSelection(n)},onInputKeyUp:function e(n){var t=controls.enterKey,o=controls.escKey;if(this.isOpen)if(hasKeyCode(t,n)){if(this.hoveredIndex>=0){n.preventDefault();var a=this.getItemNodeFromIndex(this.hoveredIndex);if(a&&a.hasAttribute("disabled"))return;this.setState({inputValue:this.itemToString(this.hovered),selectedItem:this.hovered,hoveredIndex:-1,hovered:null,isOpen:!1},InputKeyUpEnter)}}else hasKeyCode(o,n)&&this.setState({hoveredIndex:-1,hovered:null,isOpen:!1},InputKeyUpEscape)},onInputBlur:function e(){this.setState({isOpen:!1,inputValue:this.itemToString(this.selectedItem),hovered:null,hoveredIndex:-1},InputBlur)},onInput:function e(n){var t=n.target?n.target.value:n;this.setState({inputValue:t,hovered:null,isOpen:!0},InputChange)}},itemPropsAndListeners={getItemEventListeners:function e(n){var t=this;n===void 0&&(n={});var o=n.index,a=n.disabled,r=n.item;r===void 0&&(r=define_process_env_default$1.NODE_ENV==="production"?void 0:requiredProp("getItemEventListeners","item"));var s=n.mousemove,i=n.mousedown,l=n.click;return a?{}:{mousemove:isFn(s)?s:function(){return t.onItemMouseMove(o,r)},mousedown:isFn(i)?i:this.onItemMouseDown,click:isFn(l)?l:function(){return t.onItemClick(r)}}},onItemMouseMove:function e(n,t){var o=getItemIndex(n,t,this.items);this.hoveredIndex!==o&&this.setState({hoveredIndex:o,hovered:t},ItemMouseMove)},onItemMouseDown:function e(n){n.preventDefault()},onItemClick:function e(n){this.setState({inputValue:this.itemToString(n),selectedItem:n,isOpen:!1,hoveredIndex:-1,hovered:null},ItemClick)},getItemProps:function e(n){n===void 0&&(n={});var t=n.index,o=n.disabled,a=n.item;a===void 0&&(a=define_process_env_default$1.NODE_ENV==="production"?void 0:requiredProp("getItemProps","item"));var r=getItemIndex(t,a,this.items),s=this.getItemId(r);return{id:s,disabled:o?!0:void 0,role:"option","aria-selected":this.hoveredIndex===r||this.selectedItem===a?"true":"false"}}},menuPropsAndListeners={getMenuProps:function e(){return{id:this.computedMenuId,role:"listbox","aria-labelledby":this.computedLabelId}},getMenuEventListeners:function e(n){n===void 0&&(n={});var t=n.mouseleave,o=n.mousedown;return{mouseleave:isFn(t)?t:this.onMenuMouseLeave,mousedown:isFn(o)?o:this.onMenuMouseDown}},onMenuMouseLeave:function e(){this.setState({hoveredIndex:-1,hovered:null},MenuMouseLeave)},onMenuMouseDown:function e(n){n.preventDefault()}},methods=Object.assign({},inputPropsAndListeners,itemPropsAndListeners,menuPropsAndListeners,{getComboboxProps:function e(){return{role:"combobox","aria-haspopup":"listbox","aria-owns":this.computedMenuId,"aria-expanded":this.isOpen?"true":"false"}},getLabelProps:function e(){return{id:this.computedLabelId,for:this.computedInputId}},autocompleteText:function e(n){this.setInputValue(this.itemToString(n))},reset:function e(){this.setState({selectedItem:null,inputValue:""},FunctionReset)},select:function e(n){this.setState({inputValue:this.itemToString(n),selectedItem:n,isOpen:!1,hoveredIndex:-1,hovered:null},FunctionSelectItem)},setHoveredItem:function e(n,t,o){n&&n!==this.hovered&&this.$emit("hover",n,o),this.hovered=n,this.hoveredIndex=typeof t=="number"?t:-1},closeMenu:function e(){this.setState({isOpen:!1,hoveredIndex:-1,hovered:null},FunctionCloseMenu)},openMenu:function e(){this.setState({isOpen:!0},FunctionOpenMenu)},getItemNodeFromIndex:function e(n){return this.menuElement.querySelector("#"+this.getItemId(n))},scrollItemIntoView:function e(n){var t=this.getItemNodeFromIndex(n);scrollToElement(t,this.menuElement,n)},moveSelection:function e(n){var t=this,o=this.items.length;if(!(!this.isOpen||!o)){var a=hasKeyCode(controls.arrowDownKey,n),r=hasKeyCode(controls.arrowUpKey,n);if(a||r){n.preventDefault();var s=a*2-1,i=a?0:o-1,l=a?this.hoveredIndex<o-1:this.hoveredIndex>0,u=l?this.hoveredIndex+s:i,c=getNextNonDisabledIndex(s,u,o,this.getItemNodeFromIndex,this.circular);if(!this.circular&&(r&&c>this.hoveredIndex||a&&c<this.hoveredIndex))return;var d=this.items[c];this.scrollIntoView&&this.$nextTick(function(){t.scrollItemIntoView(u)}),this.setState({hoveredIndex:c,hovered:d},a?InputKeyDownArrowDown:InputKeyDownArrowUp)}}},setInputValue:function e(n){this.inputValue!==n&&this.setState({inputValue:n},FunctionSetInputValue)}});function slot(e){return{getInputProps:e.getInputProps,getItemProps:e.getItemProps,getMenuProps:e.getMenuProps,getComboboxProps:e.getComboboxProps,getLabelProps:e.getLabelProps,getInputEventListeners:e.getInputEventListeners,getMenuEventListeners:e.getMenuEventListeners,getItemEventListeners:e.getItemEventListeners,isOpen:e.isOpen,selectedItem:e.selectedItem,hoveredIndex:e.hoveredIndex,inputValue:e.inputValue,reset:e.reset,select:e.select,setInputValue:e.setInputValue,openMenu:e.openMenu,closeMenu:e.closeMenu}}var idCounter=0;function beforeCreate(){this.idCounter=idCounter.toString(),idCounter+=1}var isVue3=!!vue.defineComponent;!isVue3&&define_process_env_default$1.NODE_ENV!=="production"&&console.error(`Looks like your Vue version is 2.x, but you are using VueComboBlocks for Vue 3.
|
|
154
|
-
Install the correct version for Vue 2.x: "npm i vue-combo-blocks@vue2"`);var VueComboBlocks=vue.defineComponent({name:"vue-combo-blocks",emits:{select:null,"update:modelValue":null,"input-value-change":null,"is-open-change":null,"hovered-index-change":null,"state-change":null,change:null,"show-list":null,focus:null,hover:null},props:getProps(isVue3),watch:{modelValue:function e(n){isControlledProp(this.$props,"modelValue")&&(this.inputValue=this.itemToString(n),this.selectedItem=n)}},beforeCreate,data:function e(){return getInitialData(this.modelValue,this.itemToString)},computed:Object.assign({},computed),methods:Object.assign({},{setState:function e(n,t){var o=this.$data,a=this.stateReducer(o,{changes:n,type:t}),r=hasOwnProperty(a,"selectedItem"),s=a.selectedItem!==o.selectedItem;r&&(this.$emit("select",a.selectedItem,t),s&&this.$emit("update:modelValue",a.selectedItem,t));var i={};for(var l in a)hasOwnProperty(a,l)&&o[l]!==a[l]&&(i[l]=a[l],this[l]=i[l],l==="inputValue"?this.$emit("input-value-change",a[l],t):l==="isOpen"?this.$emit("is-open-change",a[l],t):l==="hoveredIndex"&&this.$emit("hovered-index-change",a[l],t));this.$emit("state-change",i,t)}},methods),render:function e(){return this.$slots.default(slot(this))}});VueComboBlocks.stateChangeTypes=sct;const _hoisted_1$r={"data-test":"vs-autocomplete",class:"vs-autocomplete mb-100"},_hoisted_2$l=["for"],_hoisted_3$e=["placeholder","onClick"],_hoisted_4$c=["name"],_sfc_main$B=vue.defineComponent({__name:"Autocomplete",props:{id:{},label:{},mode:{},multiselectLabel:{},name:{},options:{},placeholder:{},trackBy:{},isTourLocation:{type:Boolean},defaultVal:{}},emits:["changeValue"],setup(e,{emit:n}){const t=e,o=n,a=vue.ref([]),r=vue.ref(t.options),s=v=>v?v[u.value]:"",i=v=>{r.value=t.options.filter(m=>m[u.value].toLowerCase().includes(v.toLowerCase()))},l=v=>{typeof t.trackBy<"u"?o("changeValue",v[t.trackBy]):o("changeValue",v.label)},u=vue.computed(()=>typeof t.multiselectLabel<"u"?t.multiselectLabel:"name"),c=vue.computed(()=>{if(typeof a.value=="string"){if(t.isTourLocation){const v=t.options.find(m=>m.name===a.value);if(typeof v<"u")return v.slug.trim()}return a.value.trim()}else if(typeof a.value=="object"&&Object.keys(a.value).length>0)return s(a.value).trim()}),d=vue.computed(()=>!!(c.value&&c.value.length>0));return vue.watch(()=>a.value,()=>{a.value===null&&(a.value=[])}),vue.onMounted(()=>{typeof t.defaultVal<"u"&&(a.value=t.defaultVal)}),(v,m)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$r,[vue.createElementVNode("label",{for:e.id},vue.toDisplayString(e.label),9,_hoisted_2$l),vue.createVNode(vue.unref(VueComboBlocks),{"input-id":e.id,modelValue:a.value,"onUpdate:modelValue":m[0]||(m[0]=f=>a.value=f),itemToString:s,items:r.value,onInputValueChange:i,onSelect:l},{default:vue.withCtx(({getInputProps:f,getInputEventListeners:p,hoveredIndex:g,isOpen:_,getMenuProps:h,getMenuEventListeners:b,getItemProps:V,getItemEventListeners:S,getComboboxProps:$,openMenu:w})=>[vue.createElementVNode("div",vue.mergeProps($(),{class:"vs-autocomplete__list-wrapper"}),[vue.createElementVNode("input",vue.mergeProps({class:"vs-input form-control"},f(),vue.toHandlers(p(),!0),{placeholder:e.placeholder,onClick:k=>w()}),null,16,_hoisted_3$e),vue.createVNode(LoadingSpinner.VsIcon,{icon:"vs-icon-control-expand",variant:"cta",size:"sm"}),vue.withDirectives(vue.createElementVNode("ul",vue.mergeProps(h(),vue.toHandlers(b(),!0),{class:"vs-autocomplete__list"}),[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(r.value,(k,P)=>(vue.openBlock(),vue.createElementBlock("li",vue.mergeProps({key:k.id},{ref_for:!0},V({item:k,index:P}),vue.toHandlers(S({item:k,index:P}),!0),{class:["vs-autocomplete__list-item",{"vs-autocomplete__list-item--hover":g===P}]}),vue.toDisplayString(k[u.value]),17))),128))],16),[[vue.vShow,_]])],16)]),_:1},8,["input-id","modelValue","items"]),d.value?vue.withDirectives((vue.openBlock(),vue.createElementBlock("input",{key:0,type:"hidden",name:e.name,"onUpdate:modelValue":m[1]||(m[1]=f=>c.value=f)},null,8,_hoisted_4$c)),[[vue.vModelText,c.value]]):vue.createCommentVNode("",!0)]))}}),_hoisted_1$q={class:"vs-date-input","data-test":"vs-date-input"},_hoisted_2$k=["for"],_hoisted_3$d=["min","name","id"],_sfc_main$A=vue.defineComponent({__name:"DateInput",props:{label:{},id:{},name:{},value:{},minDate:{}},emits:["changeDate"],setup(e,{emit:n}){const t=e,o=n,a=vue.ref(t.value),r=vue.computed(()=>new Date().toISOString().split("T")[0]);return vue.watch(()=>t.value,s=>{a.value=s,o("changeDate",a.value)}),(s,i)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$q,[vue.createElementVNode("label",{for:e.id},vue.toDisplayString(e.label),9,_hoisted_2$k),vue.withDirectives(vue.createElementVNode("input",{type:"date",min:typeof e.minDate<"u"&&e.minDate.length>0?e.minDate:r.value,name:e.name,id:e.id,"onUpdate:modelValue":i[0]||(i[0]=l=>a.value=l),onChange:i[1]||(i[1]=l=>s.$emit("changeDate",a.value)),class:"form-control vs-input"},null,40,_hoisted_3$d),[[vue.vModelText,a.value]])]))}}),_hoisted_1$p={class:"vs-date-range","data-test":"vs-date-range"},_hoisted_2$j={class:"row align-items-center"},_hoisted_3$c={class:"col-12 col-sm-5 order-1"},_hoisted_4$b={class:"col-12 col-sm-5 order-2"},_hoisted_5$b={class:"col-12 col-sm-2 order-first order-sm-3 text-sm-right"},_hoisted_6$b={key:1,type:"hidden",name:"refine-date",value:"on"},_hoisted_7$9=["value"],_sfc_main$z=vue.defineComponent({__name:"DateRange",props:{startLabel:{type:String,required:!1,default:"Start Date"},endLabel:{type:String,required:!1,default:"End Date"},defaultDates:{type:Boolean,default:!1},selectedProd:{type:String,required:!0}},emits:["dateUpdated"],setup(e,{emit:n}){const t=e,o=n,a=vue.ref(""),r=vue.ref(""),s=vue.computed(()=>!!a.value||!!r.value),i=vue.computed(()=>{const h=new Date(r.value),b=new Date(a.value),V=h.getTime()-b.getTime();return isNaN(V)?1:V/(1e3*3600*24)});function l(){a.value="",r.value=""}const u=h=>{const b=h.toLocaleString("default",{year:"numeric"}),V=h.toLocaleString("default",{month:"2-digit"}),S=h.toLocaleString("default",{day:"2-digit"});return`${b}-${V}-${S}`},c=vue.computed(()=>a.value===""?u(new Date):""),d=vue.computed(()=>{let h;if(a.value!==""){const b=new Date(a.value);b.setDate(b.getDate()+1),h=u(b)}else if(t.defaultDates){const b=new Date,V=new Date(b);V.setDate(V.getDate()+1),h=u(V)}return h}),v=vue.computed(()=>{let h;if(a.value===""){const b=new Date,V=new Date(b);V.setDate(V.getDate()+1),h=u(V)}else{const b=new Date,V=new Date(a.value);b.setDate(V.getDate()+1),h=u(b)}return h});function m(){const h=new Date(a.value);new Date(r.value)<=h&&(r.value="")}function f(){const h=!(!a.value&&!r.value);o("dateUpdated",h)}function p(){f(),m()}const g=vue.computed(()=>t.selectedProd==="acco"?"stay":"isostartdate"),_=vue.computed(()=>t.selectedProd==="acco"?"endDate":"isoenddate");return(h,b)=>(vue.openBlock(),vue.createElementBlock("fieldset",_hoisted_1$p,[vue.createElementVNode("div",_hoisted_2$j,[vue.createElementVNode("div",_hoisted_3$c,[vue.createVNode(_sfc_main$A,{label:e.startLabel,value:e.defaultDates&&a.value===""&&r.value?c.value:a.value,name:g.value,id:"startDate",onChangeDate:b[0]||(b[0]=V=>{a.value=V,p()}),class:"mb-100"},null,8,["label","value","name"])]),vue.createElementVNode("div",_hoisted_4$b,[vue.createVNode(_sfc_main$A,{label:e.endLabel,value:e.defaultDates&&r.value===""&&a.value?d.value:r.value,"min-date":v.value,name:_.value,id:"endDate",onChangeDate:b[1]||(b[1]=V=>{r.value=V,p()}),class:"mb-100"},null,8,["label","value","min-date","name"])]),vue.createElementVNode("div",_hoisted_5$b,[s.value?(vue.openBlock(),vue.createElementBlock("button",{key:0,id:"clearDateRange",type:"button",onClick:l,class:"vs-date-range__clear"},vue.toDisplayString(vue.unref(getLabelText)("reset","Clear")),1)):vue.createCommentVNode("",!0),e.selectedProd!=="acco"?(vue.openBlock(),vue.createElementBlock("input",_hoisted_6$b)):vue.createCommentVNode("",!0),vue.createElementVNode("input",{type:"hidden",name:"nights",value:i.value},null,8,_hoisted_7$9)])])]))}}),_hoisted_1$o={class:"vs-product-search-embed","data-test":"vs-product-search-embed"},_hoisted_2$i={key:0,class:"container"},_hoisted_3$b={class:"row"},_hoisted_4$a={class:"col-12"},_hoisted_5$a=["action"],_hoisted_6$a={class:"form-group product-search__type mb-100"},_hoisted_7$8={for:"prodtypes"},_hoisted_8$4={class:"product-search__in d-none d-md-block mt-100"},_hoisted_9$4={"aria-live":"polite"},_hoisted_10$4=["disabled","value"],_hoisted_11$3=["disabled","value"],_hoisted_12$2=["value"],_hoisted_13$2={key:4,type:"hidden",name:"areaproxdist",value:"10"},_hoisted_14$1={key:5},_hoisted_15$1={key:0,class:"form-group"},_hoisted_16$1={for:"search-keyword"},_hoisted_17$1={key:6},_hoisted_18={key:0},_hoisted_19=["value"],__default__=vue.defineComponent({mixins:[LoadingSpinner.dataLayerMixin],methods:{trackSubmit(e,n){this.createDataLayerObject("productSearchDataEvent",{searchType:e,searchLocation:n.name},this.href)}}}),_sfc_main$y=vue.defineComponent({...__default__,__name:"ProductSearchEmbed",props:{defaultProd:{type:String,default:"acti,attr,reta",validator(e){return["acco","cate","even","tour","acti,attr,reta"].includes(e)}},defaultLocale:{type:String,default:"",validator(e){return["en","fr","de","es","it","nl",""].includes(e)}},defaultLocation:{type:String,default:""}},setup(e){const n=e,t=vue.ref(!1),o=vue.ref(),a=vue.ref([]);vue.ref(null);let r=vue.ref();r.value={id:"",key:"",name:"",type:""};const s=vue.ref("off"),i=vue.ref(!1),l=vue.computed(()=>{const C=typeof o.value>"u"?"see-do":o.value;return`/info/${LoadingSpinner.paths[C]}`});let u=vue.ref(!1);const c={en:{localeUrl:""},fr:{localeUrl:"fr-fr"},de:{localeUrl:"de-de"},es:{localeUrl:"es-es"},it:{localeUrl:"it-it"},nl:{localeUrl:"nl-nl"}},d=vue.computed(()=>{let C=n.defaultLocale.length>0?n.defaultLocale:getLocale();return C==="en"&&(C=""),C}),v=vue.computed(()=>{if(typeof window<"u"){let C=window.location.origin;return C.includes("localhost")?"https://www.visitscotland.com":C}return"https://www.visitscotland.com"}),m=vue.computed(()=>`${v.value}${d.value?"/"+d.value:""}${l.value}/search-results`),p="https://www.visitscotland.com/data/locations"+`?locale=${d.value}`,g=vue.ref([]),_="https://www.visitscotland.com/tms-api/v1/attractions",h=vue.ref([]),b="https://www.visitscotland.com/tms-api/v1/origins?active=1",V=vue.ref([]),S=vue.ref([]),$=()=>{const C=getProductTypes(),D=[];C.forEach(R=>{D.push(R)}),S.value=D},w=vue.computed(()=>t.value?[]:S.value.map(D=>({...D,text:getProductName(D.value,D.text)}))),k=async()=>{const C=await getData(p);C&&(g.value=C.data)},P=async()=>{const C=await getData(b);C&&(V.value=C.data)},O=async()=>{const C=await getData(_);C&&(h.value=C.data)},B=(C,D)=>{D==="key"?r.value=g.value.find(R=>R.key===C):D==="id"?r.value=g.value.find(R=>R.id===C):r.value=g.value.find(R=>R.name===C.trim())},T=C=>{const D=C.value;o.value=D,D==="tour"&&(P(),O())},L=()=>c[n.defaultLocale]||"",E=()=>{t.value=!0,vue.nextTick(()=>{t.value=!1,n.defaultLocation!==""&&u&&B(n.defaultLocation,"id")})},z=vue.computed(()=>o.value!=="cate"&&o.value!=="acti,attr,reta"?"d-lg-flex":"");vue.onBeforeMount(async()=>{window.VS={};const C=document.createElement("script");C.async=!1,C.onload=E,C.setAttribute("src",`https://www.visitscotland.com/${L().localeUrl}/data/template/search.js`),document.head.appendChild(C)}),vue.onMounted(async()=>{k(),u.value=!0,o.value=n.defaultProd,o.value==="tour"&&(P(),O()),$()});const F=C=>{s.value=C?"on":"off"},A=C=>{i.value=!0;const D=C.currentTarget;setTimeout(function(){D.submit()},500)};return(C,D)=>{var R,G,U,Y,X,W;return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$o,[t.value?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$i,[vue.createElementVNode("div",_hoisted_3$b,[vue.createElementVNode("div",_hoisted_4$a,[vue.unref(u)?(vue.openBlock(),vue.createElementBlock("form",{key:0,action:m.value,onSubmit:vue.withModifiers(A,["prevent"]),"accept-charset":"UTF-8","data-test":"psw-form"},[vue.createElementVNode("div",_hoisted_6$a,[vue.createElementVNode("label",_hoisted_7$8,vue.toDisplayString(vue.unref(getLabelText)("search_for","I'm looking for")),1),vue.createElementVNode("div",{class:vue.normalizeClass(z.value)},[vue.createVNode(VsSelect,{options:w.value,value:e.defaultProd,onUpdated:D[0]||(D[0]=Z=>T(Z)),"field-name":"prodtypes"},null,8,["options","value"]),vue.createElementVNode("div",_hoisted_8$4,vue.toDisplayString(vue.unref(getLabelText)("in","in")),1)],2)]),vue.createElementVNode("div",_hoisted_9$4,[o.value!="tour"&&vue.unref(u)?(vue.openBlock(),vue.createBlock(_sfc_main$B,{key:0,id:"search-location",label:vue.unref(getLabelText)("location","Location"),"multiselect-label":"name",name:"loc",options:g.value,placeholder:vue.unref(getLabelText)("location_placeholder","Enter a location"),"track-by":"name",onChangeValue:D[1]||(D[1]=Z=>B(Z)),"default-val":vue.unref(r),"data-chromatic":"ignore"},null,8,["label","options","placeholder","default-val"])):vue.createCommentVNode("",!0),o.value!=="tour"?(vue.openBlock(),vue.createElementBlock("input",{key:1,type:"hidden",name:"locplace",disabled:((R=vue.unref(r))==null?void 0:R.type)==="POLYGON",value:((G=vue.unref(r))==null?void 0:G.key)||""},null,8,_hoisted_10$4)):vue.createCommentVNode("",!0),o.value!=="tour"?(vue.openBlock(),vue.createElementBlock("input",{key:2,type:"hidden",name:"locpoly",disabled:((U=vue.unref(r))==null?void 0:U.type)!=="POLYGON",value:((Y=vue.unref(r))==null?void 0:Y.key)||""},null,8,_hoisted_11$3)):vue.createCommentVNode("",!0),o.value!=="tour"?(vue.openBlock(),vue.createElementBlock("input",{key:3,type:"hidden",name:"locprox",value:((X=vue.unref(r))==null?void 0:X.type)==="DISTRICT"?1:0},null,8,_hoisted_12$2)):vue.createCommentVNode("",!0),o.value!=="tour"&&((W=vue.unref(r))==null?void 0:W.type)==="DISTRICT"?(vue.openBlock(),vue.createElementBlock("input",_hoisted_13$2)):vue.createCommentVNode("",!0),o.value==="even"?(vue.openBlock(),vue.createElementBlock("div",_hoisted_14$1,[vue.createVNode(_sfc_main$z,{"start-label":vue.unref(getLabelText)("startdate","Start Date","dates"),"end-label":vue.unref(getLabelText)("enddate","End Date","dates"),onDateUpdated:D[2]||(D[2]=Z=>F(Z)),"default-dates":i.value,"selected-prod":o.value},null,8,["start-label","end-label","default-dates","selected-prod"]),o.value==="even"?(vue.openBlock(),vue.createElementBlock("div",_hoisted_15$1,[vue.createElementVNode("label",_hoisted_16$1,vue.toDisplayString(vue.unref(getLabelText)("keywords","Keywords")),1),vue.createVNode(VsInput,{"field-name":"search-keyword",placeholder:vue.unref(getLabelText)("events_keywords_placeholder","Highland games, music festivals etc"),name:"name"},null,8,["placeholder"])])):vue.createCommentVNode("",!0)])):vue.createCommentVNode("",!0),o.value==="acco"?(vue.openBlock(),vue.createElementBlock("div",_hoisted_17$1,[...D[4]||(D[4]=[vue.createElementVNode("input",{hidden:"true",name:"avail",value:"off"},null,-1)])])):vue.createCommentVNode("",!0)]),o.value==="tour"?(vue.openBlock(),vue.createElementBlock("div",_hoisted_18,[vue.createVNode(_sfc_main$B,{id:"tour-origin",label:vue.unref(getLabelText)("tour_origin","Starting point"),"multiselect-label":"name",name:"origins[]",options:V.value,placeholder:vue.unref(getLabelText)("tour_origin_placeholder","Location"),"track-by":"name","is-tour-location":!0},null,8,["label","options","placeholder"]),(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(a.value,Z=>(vue.openBlock(),vue.createElementBlock("input",{type:"hidden",name:"attractions[]",value:Z},null,8,_hoisted_19))),256)),vue.createVNode(_sfc_main$B,{id:"tour-month",label:vue.unref(getLabelText)("tour_month","I'm traveling in"),"multiselect-label":"label",name:"when",options:vue.unref(getLabelText)("months",vue.unref(LoadingSpinner.monthsEnglish)),placeholder:vue.unref(getLabelText)("tour_month_placeholder","Select month"),"track-by":"value"},null,8,["label","options","placeholder"])])):vue.createCommentVNode("",!0),vue.createVNode(LoadingSpinner.VsButton,{class:"mt-150","data-test":"psw-submit",type:"submit",onClick:D[3]||(D[3]=Z=>C.trackSubmit(o.value,typeof vue.unref(r)>"u"?"":vue.unref(r)))},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(vue.unref(getLabelText)("search","Search")),1)]),_:1})],40,_hoisted_5$a)):vue.createCommentVNode("",!0),vue.unref(u)?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createBlock(LoadingSpinner.VsLoading,{key:1,variant:"dark"}))])])]))])}}}),_sfc_main$x={name:"VsProductSearch",status:"prototype",release:"0.0.1",components:{VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,VsProductSearchEmbed:_sfc_main$y,VsHeading:LoadingSpinner.VsHeading,VsWarning:LoadingSpinner.VsWarning},props:{noJsMessage:{type:String,required:!0},defaultLocation:{type:String,default:""},defaultProd:{type:String,default:"acti,attr,reta"},defaultLocale:{type:String,default:"en"}}},_hoisted_1$n={class:"vs-product-search","data-test":"vs-product-search"},_hoisted_2$h={class:"vs-product-search__intro"};function _sfc_render$n(e,n,t,o,a,r){const s=vue.resolveComponent("VsHeading"),i=vue.resolveComponent("VsCol"),l=vue.resolveComponent("VsProductSearchEmbed"),u=vue.resolveComponent("VsWarning"),c=vue.resolveComponent("VsRow"),d=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$n,[vue.createVNode(d,null,{default:vue.withCtx(()=>[vue.createVNode(c,null,{default:vue.withCtx(()=>[vue.createVNode(i,{class:"vs-product-search__col vs-product-search__col--left",xl:"7"},{default:vue.withCtx(()=>[vue.createVNode(s,{level:"2",headingStyle:"heading-l",class:"vs-product-search__heading mt-0"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-module-heading")]),_:3}),vue.createElementVNode("div",_hoisted_2$h,[vue.renderSlot(e.$slots,"vs-module-intro")])]),_:3}),vue.createVNode(i,{class:"vs-product-search__col vs-product-search__col--right",xl:"5"},{default:vue.withCtx(()=>[vue.createVNode(l,{class:"vs-product-search__widget","default-location":t.defaultLocation,"default-locale":t.defaultLocale,"default-prod":t.defaultProd},null,8,["default-location","default-locale","default-prod"]),vue.createVNode(u,{class:"vs-product-search__no-js"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.noJsMessage),1)]),_:1})]),_:1})]),_:3})]),_:3})])}const ProductSearch=LoadingSpinner._export_sfc(_sfc_main$x,[["render",_sfc_render$n]]),_sfc_main$w={name:"VsQuote",status:"prototype",release:"0.0.1",props:{variant:{type:String,default:"narrow",validator:e=>e.match(/(narrow|wide)/)},withBorder:{type:Boolean,default:!1}},computed:{hasAuthorName(){return!!this.$slots["quote-author-name"]},hasAuthorTitle(){return!!this.$slots["quote-author-title"]},hasAuthorImage(){return!!this.$slots["quote-image"]},variantClass(){return[{"vs-quote--narrow":this.variant==="narrow","vs-quote--wide":this.variant==="wide","vs-quote--with-border":this.withBorder}]}}},_hoisted_1$m={key:0,class:"vs-quote__speech-container"},_hoisted_2$g={key:1,class:"vs-quote__author-container"},_hoisted_3$a={class:"vs-quote__content-container"},_hoisted_4$9={class:"vs-quote__content"},_hoisted_5$9={key:0,class:"vs-quote__author-name"},_hoisted_6$9={key:2,class:"vs-quote__quote-link"};function _sfc_render$m(e,n,t,o,a,r){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-quote",r.variantClass]),"data-test":"vs-quote"},[t.withBorder?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$m,[...n[0]||(n[0]=[vue.createElementVNode("span",{class:"vs-quote__speech-mark"},"“",-1)])])),r.hasAuthorImage?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$g,[vue.renderSlot(e.$slots,"quote-image")])):vue.createCommentVNode("",!0),vue.createElementVNode("div",_hoisted_3$a,[vue.createElementVNode("div",_hoisted_4$9,[vue.renderSlot(e.$slots,"quote-content")]),r.hasAuthorName?(vue.openBlock(),vue.createElementBlock("p",_hoisted_5$9,[vue.renderSlot(e.$slots,"quote-author-name")])):vue.createCommentVNode("",!0),r.hasAuthorTitle?(vue.openBlock(),vue.createElementBlock("p",{key:1,class:vue.normalizeClass(["vs-quote__author-title",t.variant==="narrow"?"vs-quote__author-title--narrow-margin":null])},[vue.renderSlot(e.$slots,"quote-author-title")],2)):vue.createCommentVNode("",!0),e.$slots["quote-link"]?(vue.openBlock(),vue.createElementBlock("div",_hoisted_6$9,[vue.renderSlot(e.$slots,"quote-link",{if:"$slots['quote-link']"})])):vue.createCommentVNode("",!0)])],2)}const Quote=LoadingSpinner._export_sfc(_sfc_main$w,[["render",_sfc_render$m]]),_sfc_main$v={name:"VsSectionHeader",status:"prototype",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading,VsBody:LoadingSpinner.VsBody,VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol},props:{anchorId:{type:String,default:null},heading:{type:String,required:!0}}},_hoisted_1$l={class:"vs-section-header","data-test":"vs-section-header"},_hoisted_2$f={key:1,class:"mt-175","data-test":"vs-section-header__actions"};function _sfc_render$l(e,n,t,o,a,r){const s=vue.resolveComponent("VsCol"),i=vue.resolveComponent("VsRow"),l=vue.resolveComponent("VsHeading"),u=vue.resolveComponent("VsBody"),c=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$l,[vue.createVNode(c,null,{default:vue.withCtx(()=>[vue.createVNode(i,null,{default:vue.withCtx(()=>[vue.createVNode(s,null,{default:vue.withCtx(()=>[...n[0]||(n[0]=[vue.createElementVNode("span",{class:"vs-section-header__divider"},null,-1)])]),_:1})]),_:1}),vue.createVNode(i,null,{default:vue.withCtx(()=>[vue.createVNode(s,{cols:"12",sm:"7",md:"6",lg:"4"},{default:vue.withCtx(()=>[vue.createVNode(l,{level:"2","heading-style":"heading-l","no-margins":"",class:"mb-175 mb-lg-0",id:t.anchorId},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.heading),1)]),_:1},8,["id"])]),_:1}),vue.createVNode(s,{cols:"12",sm:"10",md:"9",lg:"8"},{default:vue.withCtx(()=>[e.$slots["section-header-lede"]?(vue.openBlock(),vue.createBlock(u,{key:0,variant:"lead"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"section-header-lede")]),_:3})):vue.createCommentVNode("",!0),e.$slots["section-header-actions"]?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$f,[vue.renderSlot(e.$slots,"section-header-actions")])):vue.createCommentVNode("",!0)]),_:3})]),_:3})]),_:3})])}const SectionHeader=LoadingSpinner._export_sfc(_sfc_main$v,[["render",_sfc_render$l]]),_sfc_main$u={name:"VsTable",status:"prototype",release:"0.0.1",components:{BTableSimple:LoadingSpinner.ol},props:{tableCaption:{type:String,required:!0},tableType:{type:String,default:"responsive",validator:e=>e.match(/(responsive|stacked)/)}},computed:{responsive(){return this.tableType==="responsive"},stacked(){return this.tableType==="stacked"}}},_hoisted_1$k={class:"visually-hidden","data-test":"vs-table__caption"};function _sfc_render$k(e,n,t,o,a,r){const s=vue.resolveComponent("BTableSimple");return vue.openBlock(),vue.createBlock(s,{class:"vs-table","data-test":"vs-table",small:"","caption-top":"",responsive:r.responsive,stacked:r.stacked},{default:vue.withCtx(()=>[vue.createElementVNode("caption",_hoisted_1$k,vue.toDisplayString(t.tableCaption),1),vue.renderSlot(e.$slots,"default")]),_:3},8,["responsive","stacked"])}const VsTable=LoadingSpinner._export_sfc(_sfc_main$u,[["render",_sfc_render$k]]),_sfc_main$t={name:"VsTableHead",status:"prototype",release:"0.0.1",components:{BThead:LoadingSpinner.wn}};function _sfc_render$j(e,n,t,o,a,r){const s=vue.resolveComponent("BThead");return vue.openBlock(),vue.createBlock(s,vue.normalizeProps(vue.guardReactiveProps(e.$attrs)),{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},16)}const VsTableHead=LoadingSpinner._export_sfc(_sfc_main$t,[["render",_sfc_render$j]]),_sfc_main$s={name:"VsTableHeaderCell",status:"prototype",release:"0.0.1",components:{BTh:LoadingSpinner.Ea},props:{stackedHeading:{type:String,default:void 0}}};function _sfc_render$i(e,n,t,o,a,r){const s=vue.resolveComponent("BTh");return vue.openBlock(),vue.createBlock(s,vue.mergeProps({"data-test":"vs-table-header-cell","stacked-heading":t.stackedHeading},e.$attrs),{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},16,["stacked-heading"])}const VsTableHeaderCell=LoadingSpinner._export_sfc(_sfc_main$s,[["render",_sfc_render$i]]),_sfc_main$r={name:"VsTableBody",status:"prototype",release:"0.0.1",components:{BTbody:LoadingSpinner.Bn}};function _sfc_render$h(e,n,t,o,a,r){const s=vue.resolveComponent("BTbody");return vue.openBlock(),vue.createBlock(s,vue.normalizeProps(vue.guardReactiveProps(e.$attrs)),{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},16)}const VsTableBody=LoadingSpinner._export_sfc(_sfc_main$r,[["render",_sfc_render$h]]),_sfc_main$q={name:"VsTableRow",status:"prototype",release:"0.0.1",components:{BTr:LoadingSpinner.Je}};function _sfc_render$g(e,n,t,o,a,r){const s=vue.resolveComponent("BTr");return vue.openBlock(),vue.createBlock(s,vue.normalizeProps(vue.guardReactiveProps(e.$attrs)),{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},16)}const VsTableRow=LoadingSpinner._export_sfc(_sfc_main$q,[["render",_sfc_render$g]]),_sfc_main$p={name:"VsTableDataCell",status:"prototype",release:"0.0.1",components:{BTd:LoadingSpinner.St},props:{stackedHeading:{type:String,default:null}}};function _sfc_render$f(e,n,t,o,a,r){const s=vue.resolveComponent("BTd");return vue.openBlock(),vue.createBlock(s,vue.mergeProps({"data-test":"vs-table-data-cell","stacked-heading":t.stackedHeading},e.$attrs,{scope:null}),{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},16,["stacked-heading"])}const VsTableDataCell=LoadingSpinner._export_sfc(_sfc_main$p,[["render",_sfc_render$f]]),_sfc_main$o={name:"VsTableFooter",status:"prototype",release:"0.0.1",components:{BTfoot:LoadingSpinner.Pa}};function _sfc_render$e(e,n,t,o,a,r){const s=vue.resolveComponent("BTfoot");return vue.openBlock(),vue.createBlock(s,vue.mergeProps(e.$attrs,{role:"rowgroup"}),{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},16)}const VsTableFooter=LoadingSpinner._export_sfc(_sfc_main$o,[["render",_sfc_render$e]]),_sfc_main$n={name:"VsSkiScotlandCard",status:"prototype",release:"0.0.1",components:{VsImg:LoadingSpinner.VsImg,VsHeading:LoadingSpinner.VsHeading,VsIcon:LoadingSpinner.VsIcon,VsWarning:LoadingSpinner.VsWarning,VsLoadingSpinner:LoadingSpinner.VsLoading,VsButton:LoadingSpinner.VsButton,VsTable,VsTableHead,VsTableHeaderCell,VsTableBody,VsTableRow,VsTableDataCell,VsTableFooter},props:{centreInfoUrl:{type:String,default:""},locale:{type:String,default:"en-gb"},timeoutDuration:{type:Number,default:3e4},lastUpdatedLabel:{type:String,default:"Last Updated"},liftsLabel:{type:String,default:"Lifts"},runsLabel:{type:String,default:"Runs"},runsLiftsStatusLabel:{type:String,default:"Run/Lift Status"},statusLabel:{type:String,default:"Status"},summaryClosedLabel:{type:String,default:"Closed"},summaryOpenLabel:{type:String,default:"Open"},summaryOpeningLabel:{type:String,default:"Opening"},summaryLimitedPatrolLabel:{type:String,default:"Limited Patrol"},summaryOnHoldLabel:{type:String,default:"On Hold"},imgSrc:{required:!0,type:String},imgAlt:{type:String,default:""},pisteMapLabel:{type:String,default:"View Piste Map"},moreDetailsLabel:{type:String,default:"More Details"},pisteMapLink:{type:String,default:""},moreDetailsLink:{type:String,required:!0,default:"#"}},data(){return{statusSummary:{runs:{open:0,opening:0,closed:0,onHold:0,limitedPatrol:0},lifts:{open:0,opening:0,closed:0,onHold:0,limitedPatrol:0}},runs:[],lifts:[],lastUpdate:"",jsDisabled:!0,isLoading:!0,displayError:!1}},mounted(){this.centreInfoUrl&&this.retrieveCentreInfo(),this.jsDisabled=!1},methods:{retrieveCentreInfo(){const e=setTimeout(()=>{this.displayError=!0},this.timeoutDuration);LoadingSpinner.axios.get(this.centreInfoUrl).then(n=>{const t=this.cleanData(n.data);this.processLifts(t.lifts),t.runs&&this.processRuns(t.runs),this.processLastUpdate(t.lastUpdate),this.isLoading=!1,clearTimeout(e)}).catch(()=>{this.runStatusInfo=null,this.displayError=!0,this.isLoading=!1,clearTimeout(e)})},cleanData(e){const n={contact:e.contact,report:e.report};if(e.snowReport)n.lastUpdate=e.snowReport.lastupdate,n.lifts=e.lifts.sector.items,n.runs=e.runs.items,this.isCairngorms=!0;else if(n.lastUpdate=e.lastupdate,[n.lifts]=e.lift.sectors,n.lifts=n.lifts.lifts,e.run.areas){const t=e.run.areas.map(o=>o.runs).reduce((o,a)=>o.concat(a)).filter((o,a,r)=>a===r.findIndex(s=>s.name===o.name));n.runs=t}return n},processLastUpdate(e){const n=new Date(e.year,parseInt(e.month,10)-1,e.day),t={year:"numeric",month:"long",day:"numeric"},o=n.toLocaleDateString(this.locale,t);this.lastUpdate=`${e.hour24}:${e.minute} - ${o}`},processLifts(e){for(let n=0;n<e.length;n++)switch(e[n].status){case"4":case 4:this.statusSummary.lifts.onHold+=1;break;case"3":case 3:this.statusSummary.lifts.limitedPatrol+=1;break;case"2":case 2:this.statusSummary.lifts.opening+=1;break;case"1":case 1:this.statusSummary.lifts.open+=1;break;default:this.statusSummary.lifts.closed+=1;break}this.lifts=e},processRuns(e){for(let n=0;n<e.length;n++)switch(e[n].status){case"4":case 4:this.statusSummary.runs.onHold+=1;break;case"3":case 3:this.statusSummary.runs.limitedPatrol+=1;break;case"2":case 2:this.statusSummary.runs.opening+=1;break;case"1":case 1:this.statusSummary.runs.open+=1;break;default:this.statusSummary.runs.closed+=1;break}this.runs=e}}},_hoisted_1$j={class:"card vs-ski-scotland-card","data-test":"vs-ski-scotland-card"},_hoisted_2$e={class:"vs-ski-scotland-card__img-container"},_hoisted_3$9={class:"card-body"},_hoisted_4$8={key:0,class:"text-center pb-200 position-relative"},_hoisted_5$8={"data-test":"vs-ski__status-label"},_hoisted_6$8={"data-test":"vs-ski__runs-label"},_hoisted_7$7={"data-test":"vs-ski__lifts-label"},_hoisted_8$3={"data-test":"vs-ski__open-label"},_hoisted_9$3={"data-test":"vs-ski__limited-patrol-label"},_hoisted_10$3={"data-test":"vs-ski__opening-label"},_hoisted_11$2={"data-test":"vs-ski__closed-label"},_hoisted_12$1={"data-test":"vs-ski__on-hold-label"},_hoisted_13$1={"data-test":"vs-ski__last-updated-label"};function _sfc_render$d(e,n,t,o,a,r){const s=vue.resolveComponent("VsImg"),i=vue.resolveComponent("VsHeading"),l=vue.resolveComponent("VsLoadingSpinner"),u=vue.resolveComponent("VsWarning"),c=vue.resolveComponent("VsTableHeaderCell"),d=vue.resolveComponent("VsTableHead"),v=vue.resolveComponent("VsIcon"),m=vue.resolveComponent("VsTableDataCell"),f=vue.resolveComponent("VsTableRow"),p=vue.resolveComponent("VsTableBody"),g=vue.resolveComponent("VsTableFooter"),_=vue.resolveComponent("VsTable"),h=vue.resolveComponent("VsButton");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$j,[vue.createElementVNode("div",_hoisted_2$e,[t.imgSrc?(vue.openBlock(),vue.createBlock(s,{key:0,src:t.imgSrc,alt:t.imgAlt,class:"vs-ski-scotland-card__img","data-test":"vs-ski-scotland-card__img"},null,8,["src","alt"])):vue.createCommentVNode("",!0)]),vue.createElementVNode("div",_hoisted_3$9,[vue.createVNode(i,{level:"3","heading-style":"heading-m"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"centre-name")]),_:3}),a.jsDisabled||a.isLoading||a.displayError?(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$8,[!a.jsDisabled&&a.isLoading?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createVNode(l,{class:"mb-100 d-block"}),vue.renderSlot(e.$slots,"data-loading")],64)):vue.createCommentVNode("",!0),!a.jsDisabled&&a.displayError?(vue.openBlock(),vue.createBlock(u,{key:1,size:"small","data-test":"vs-ski-scotland-card__error"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"data-unavailable")]),_:3})):vue.createCommentVNode("",!0),a.jsDisabled?(vue.openBlock(),vue.createBlock(u,{key:2,size:"small","data-test":"vs-ski-scotland-card__js-disabled"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"js-required")]),_:3})):vue.createCommentVNode("",!0)])):vue.createCommentVNode("",!0),!a.jsDisabled&&!a.isLoading&&!a.displayError?(vue.openBlock(),vue.createBlock(_,{key:1,"table-caption":t.runsLiftsStatusLabel},{default:vue.withCtx(()=>[vue.createVNode(d,null,{default:vue.withCtx(()=>[vue.createVNode(c,null,{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_5$8,vue.toDisplayString(t.statusLabel),1)]),_:1}),a.runs.length?(vue.openBlock(),vue.createBlock(c,{key:0},{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_6$8,vue.toDisplayString(t.runsLabel),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(c,null,{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_7$7,vue.toDisplayString(t.liftsLabel),1)]),_:1})]),_:1}),vue.createVNode(p,null,{default:vue.withCtx(()=>[vue.createVNode(f,null,{default:vue.withCtx(()=>[vue.createVNode(m,null,{default:vue.withCtx(()=>[vue.createVNode(v,{icon:"fa-regular fa-check",size:"xs",class:"me-050 fa-fw"}),vue.createElementVNode("span",_hoisted_8$3,vue.toDisplayString(t.summaryOpenLabel),1)]),_:1}),a.runs.length?(vue.openBlock(),vue.createBlock(m,{key:0},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.statusSummary.runs.open)+"/"+vue.toDisplayString(a.runs.length),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(m,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.statusSummary.lifts.open)+"/"+vue.toDisplayString(a.lifts.length),1)]),_:1})]),_:1}),a.statusSummary.runs.limitedPatrol||a.statusSummary.lifts.limitedPatrol?(vue.openBlock(),vue.createBlock(f,{key:0},{default:vue.withCtx(()=>[vue.createVNode(m,null,{default:vue.withCtx(()=>[vue.createVNode(v,{icon:"fa-regular fa-ski-boot-ski",size:"xs",class:"me-050 fa-fw"}),vue.createElementVNode("span",_hoisted_9$3,vue.toDisplayString(t.summaryLimitedPatrolLabel),1)]),_:1}),a.runs.length?(vue.openBlock(),vue.createBlock(m,{key:0},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.statusSummary.runs.limitedPatrol)+"/"+vue.toDisplayString(a.runs.length),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(m,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.statusSummary.lifts.limitedPatrol)+"/"+vue.toDisplayString(a.lifts.length),1)]),_:1})]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(f,null,{default:vue.withCtx(()=>[vue.createVNode(m,null,{default:vue.withCtx(()=>[vue.createVNode(v,{icon:"fa-regular fa-timer",size:"xs",class:"me-050 fa-fw"}),vue.createElementVNode("span",_hoisted_10$3,vue.toDisplayString(t.summaryOpeningLabel),1)]),_:1}),a.runs.length?(vue.openBlock(),vue.createBlock(m,{key:0},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.statusSummary.runs.opening)+"/"+vue.toDisplayString(a.runs.length),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(m,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.statusSummary.lifts.opening)+"/"+vue.toDisplayString(a.lifts.length),1)]),_:1})]),_:1}),vue.createVNode(f,null,{default:vue.withCtx(()=>[vue.createVNode(m,null,{default:vue.withCtx(()=>[vue.createVNode(v,{icon:"fa-regular fa-ban",size:"xs",class:"me-050 fa-fw"}),vue.createElementVNode("span",_hoisted_11$2,vue.toDisplayString(t.summaryClosedLabel),1)]),_:1}),a.runs.length?(vue.openBlock(),vue.createBlock(m,{key:0},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.statusSummary.runs.closed)+"/"+vue.toDisplayString(a.runs.length),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(m,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.statusSummary.lifts.closed)+"/"+vue.toDisplayString(a.lifts.length),1)]),_:1})]),_:1}),a.statusSummary.runs.onHold||a.statusSummary.lifts.onHold?(vue.openBlock(),vue.createBlock(f,{key:1},{default:vue.withCtx(()=>[vue.createVNode(m,null,{default:vue.withCtx(()=>[vue.createVNode(v,{icon:"fa-regular fa-hourglass",size:"xs",class:"me-050 fa-fw"}),vue.createElementVNode("span",_hoisted_12$1,vue.toDisplayString(t.summaryOnHoldLabel),1)]),_:1}),a.runs.length?(vue.openBlock(),vue.createBlock(m,{key:0},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.statusSummary.runs.onHold)+"/"+vue.toDisplayString(a.runs.length),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(m,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.statusSummary.lifts.onHold)+"/"+vue.toDisplayString(a.lifts.length),1)]),_:1})]),_:1})):vue.createCommentVNode("",!0)]),_:1}),vue.createVNode(g,null,{default:vue.withCtx(()=>[vue.createVNode(f,null,{default:vue.withCtx(()=>[vue.createVNode(m,{colspan:"3",role:"cell"},{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_13$1,vue.toDisplayString(t.lastUpdatedLabel)+": "+vue.toDisplayString(a.lastUpdate),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["table-caption"])):vue.createCommentVNode("",!0),vue.createVNode(h,{variant:"secondary",href:t.pisteMapLink,class:"mb-050",disabled:!t.pisteMapLink},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.pisteMapLabel),1)]),_:1},8,["href","disabled"]),vue.createVNode(h,{href:t.moreDetailsLink},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.moreDetailsLabel),1)]),_:1},8,["href"])])])}const SkiScotlandCard=LoadingSpinner._export_sfc(_sfc_main$n,[["render",_sfc_render$d]]),_sfc_main$m={name:"VsSkiScotlandStatus",status:"prototype",release:"0.0.1",components:{VsTable,VsTableHead,VsTableHeaderCell,VsTableBody,VsTableRow,VsTableDataCell,VsTableFooter,VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,VsAccordion,VsAccordionItem,VsIcon:LoadingSpinner.VsIcon,VsLink,VsHeading:LoadingSpinner.VsHeading,VsLoadingSpinner:LoadingSpinner.VsLoading,VsWarning:LoadingSpinner.VsWarning},props:{skiStatusUrl:{type:String,default:""},locale:{type:String,default:"en-gb"},timeoutDuration:{type:Number,default:3e4},currentWeatherLabel:{type:String,default:"Current Weather"},detailedStatusLabel:{type:String,default:"Detailed Status"},difficultLabel:{type:String,default:"Difficult"},easyLabel:{type:String,default:"Easy"},intermediateLabel:{type:String,default:"Intermediate"},itinerariesLabel:{type:String,default:"Itineraries"},lastUpdatedLabel:{type:String,default:"Last Updated"},liftLabel:{type:String,default:"Lift"},liftsLabel:{type:String,default:"Lifts"},liftStatusLabel:{type:String,default:"Lift Status"},newsLabel:{type:String,default:"News From The Slopes"},otherLabel:{type:String,default:"Other"},roadsLabel:{type:String,default:"Road Status"},runLabel:{type:String,default:"Run"},runsLabel:{type:String,default:"Runs"},runsLiftsStatusLabel:{type:String,default:"Run/Lift Status"},runStatusLabel:{type:String,default:"Run Status"},snowConditionsLabel:{type:String,default:"Snow Conditions Full Report"},statusLabel:{type:String,default:"Status"},summaryClosedLabel:{type:String,default:"Closed"},summaryOpenLabel:{type:String,default:"Open"},summaryOpeningLabel:{type:String,default:"Opening"},summaryLimitedPatrolLabel:{type:String,default:"Limited Patrol"},summaryOnHoldLabel:{type:String,default:"On Hold"},statusClosedLabel:{type:String,default:"Closed"},statusOpenLabel:{type:String,default:"Open"},statusOpeningLabel:{type:String,default:"Opening"},statusLimitedPatrolLabel:{type:String,default:"Limited Patrol"},statusOnHoldLabel:{type:String,default:"On Hold"},veryDifficultLabel:{type:String,default:"Very Difficult"},weatherForecastLabel:{type:String,default:"Weather Forecast"},greenLabel:{type:String,default:"Green"},blueLabel:{type:String,default:"Blue"},redLabel:{type:String,default:"Red"},blackLabel:{type:String,default:"Black"},orangeLabel:{type:String,default:"Orange"},greyLabel:{type:String,default:"Grey"}},data(){return{tokens:LoadingSpinner.designTokens,componentId:0,statusSummary:{runs:{open:0,opening:0,closed:0,onHold:0,limitedPatrol:0},lifts:{open:0,opening:0,closed:0,onHold:0,limitedPatrol:0}},lifts:[],runs:[],lastUpdate:"",report:"",currentWeather:"",weatherForecast:"",roadStatus:"",news:"",runLevels:[{colour:"green",colourToken:"",id:"easy",name:this.easyLabel,runs:[]},{colour:"blue",colourToken:"",id:"intermediate",name:this.intermediateLabel,runs:[]},{colour:"red",colourToken:"",id:"difficult",name:this.difficultLabel,runs:[]},{colour:"black",colourToken:"",id:"very-difficult",name:this.veryDifficultLabel,runs:[]},{colour:"orange",colourToken:"",id:"itineraries",name:this.itinerariesLabel,runs:[]},{colour:"grey",colourToken:"",id:"other",name:this.otherLabel,runs:[]}],jsDisabled:!0,isLoading:!0,displayError:!1,isCairngorms:!1}},computed:{filteredRunLevels(){return this.setColourToken().filter(n=>n.runs.length>0)}},mounted(){this.skiStatusUrl&&this.retrieveSkiStatus(),this.id=this._uid,this.jsDisabled=!1},methods:{retrieveSkiStatus(){const e=setTimeout(()=>{this.displayError=!0},this.timeoutDuration);LoadingSpinner.axios.get(this.skiStatusUrl).then(n=>{const t=this.cleanData(n.data);this.processLifts(t.lifts),t.runs&&this.processRuns(t.runs),this.processLastUpdate(t.lastUpdate),this.processFullReport(t.report),this.isLoading=!1,clearTimeout(e)}).catch(()=>{this.runStatusInfo=null,this.displayError=!0,this.isLoading=!1,clearTimeout(e)})},cleanData(e){const n={contact:e.contact,report:e.report};if(e.snowReport)n.lastUpdate=e.snowReport.lastupdate,n.lifts=e.lifts.sector.items,n.runs=e.runs.items,this.isCairngorms=!0;else if(n.lastUpdate=e.lastupdate,[n.lifts]=e.lift.sectors,n.lifts=n.lifts.lifts,e.run.areas){const t=e.run.areas.map(o=>o.runs).reduce((o,a)=>o.concat(a)).filter((o,a,r)=>a===r.findIndex(s=>s.name===o.name));n.runs=t}if(n.runs)for(let t=0;t<n.runs.length;t++)n.runs[t].difficulty===null&&(n.runs[t].difficulty="orange");return n},processFullReport(e){this.report=e.runs,this.currentWeather=e.current_weather_conditions,this.weatherForecast=e.weather_forecast,this.roadStatus=e.access_roads,this.news=e.news_from_the_slopes},processLastUpdate(e){const n=new Date(e.year,parseInt(e.month,10)-1,e.day),t={year:"numeric",month:"long",day:"numeric"},o=n.toLocaleDateString(this.locale,t);this.lastUpdate=`${e.hour24}:${e.minute} - ${o}`},processLifts(e){for(let n=0;n<e.length;n++)switch(e[n].status){case"4":case 4:this.statusSummary.lifts.onHold+=1;break;case"3":case 3:this.statusSummary.lifts.limitedPatrol+=1;break;case"2":case 2:this.statusSummary.lifts.opening+=1;break;case"1":case 1:this.statusSummary.lifts.open+=1;break;default:this.statusSummary.lifts.closed+=1;break}this.lifts=e},processRuns(e){for(let n=0;n<e.length;n++){switch(e[n].status){case"4":case 4:this.statusSummary.runs.onHold+=1;break;case"3":case 3:this.statusSummary.runs.limitedPatrol+=1;break;case"2":case 2:this.statusSummary.runs.opening+=1;break;case"1":case 1:this.statusSummary.runs.open+=1;break;default:this.statusSummary.runs.closed+=1;break}for(let t=0;t<this.runLevels.length;t++)this.runLevels[t].colour===e[n].difficulty&&this.runLevels[t].runs.push(e[n])}this.runs=e},getColourLabel(e){return this[`${e}Label`]},setColourToken(){return this.runLevels.map(({...e})=>({...e,colourToken:this.tokens[`vs-color-icon-ski-${e.id}`]}))}}},_hoisted_1$i={class:"vs-ski-scotland-status","data-test":"vs-ski-scotland-status"},_hoisted_2$d={"data-test":"vs-ski__status-label"},_hoisted_3$8={"data-test":"vs-ski__runs-label"},_hoisted_4$7={"data-test":"vs-ski__lifts-label"},_hoisted_5$7={"data-test":"vs-ski__open-label"},_hoisted_6$7={"data-test":"vs-ski__open-label"},_hoisted_7$6={"data-test":"vs-ski__opening-label"},_hoisted_8$2={"data-test":"vs-ski__closed-label"},_hoisted_9$2={"data-test":"vs-ski__open-label"},_hoisted_10$2={"data-test":"vs-ski__last-updated-label"},_hoisted_11$1=["innerHTML"],_hoisted_12=["innerHTML"],_hoisted_13=["innerHTML"],_hoisted_14=["innerHTML"],_hoisted_15=["innerHTML"],_hoisted_16=["data-test"],_hoisted_17={class:"visually-hidden"};function _sfc_render$c(e,n,t,o,a,r){const s=vue.resolveComponent("VsLoadingSpinner"),i=vue.resolveComponent("VsCol"),l=vue.resolveComponent("VsRow"),u=vue.resolveComponent("VsContainer"),c=vue.resolveComponent("VsWarning"),d=vue.resolveComponent("VsHeading"),v=vue.resolveComponent("VsTableHeaderCell"),m=vue.resolveComponent("VsTableHead"),f=vue.resolveComponent("VsIcon"),p=vue.resolveComponent("VsTableDataCell"),g=vue.resolveComponent("VsTableRow"),_=vue.resolveComponent("VsTableBody"),h=vue.resolveComponent("VsTableFooter"),b=vue.resolveComponent("VsTable"),V=vue.resolveComponent("VsLink"),S=vue.resolveComponent("VsAccordionItem"),$=vue.resolveComponent("VsAccordion");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$i,[!a.jsDisabled&&a.isLoading?(vue.openBlock(),vue.createBlock(u,{key:0},{default:vue.withCtx(()=>[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.createVNode(i,{class:"text-center py-100"},{default:vue.withCtx(()=>[vue.createVNode(s),vue.renderSlot(e.$slots,"data-loading")]),_:3})]),_:3})]),_:3})):vue.createCommentVNode("",!0),!a.jsDisabled&&a.displayError?(vue.openBlock(),vue.createBlock(u,{key:1},{default:vue.withCtx(()=>[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.createVNode(i,{class:"text-center py-100"},{default:vue.withCtx(()=>[vue.createVNode(c,null,{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"data-unavailable")]),_:3})]),_:3})]),_:3})]),_:3})):vue.createCommentVNode("",!0),vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(l,null,{default:vue.withCtx(()=>[a.jsDisabled?(vue.openBlock(),vue.createBlock(i,{key:0,cols:"12",md:"6","data-test":"vs-ski__js-disabled"},{default:vue.withCtx(()=>[vue.createVNode(c,null,{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"js-required")]),_:3})]),_:3})):vue.createCommentVNode("",!0),!a.jsDisabled&&!a.isLoading&&!a.displayError?(vue.openBlock(),vue.createBlock(i,{key:1,cols:"12",md:"6"},{default:vue.withCtx(()=>[vue.createVNode(d,{level:"3","heading-style":"heading-xs","data-test":"vs-ski__runs-lifts-status-label",class:"d-none d-md-block"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.runsLiftsStatusLabel),1)]),_:1}),vue.createVNode(b,{"table-caption":t.runsLiftsStatusLabel},{default:vue.withCtx(()=>[vue.createVNode(m,null,{default:vue.withCtx(()=>[vue.createVNode(v,null,{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_2$d,vue.toDisplayString(t.statusLabel),1)]),_:1}),a.runs.length?(vue.openBlock(),vue.createBlock(v,{key:0},{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_3$8,vue.toDisplayString(t.runsLabel),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(v,null,{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_4$7,vue.toDisplayString(t.liftsLabel),1)]),_:1})]),_:1}),vue.createVNode(_,null,{default:vue.withCtx(()=>[vue.createVNode(g,null,{default:vue.withCtx(()=>[vue.createVNode(p,null,{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-check",size:"xs",class:"me-050"}),vue.createElementVNode("span",_hoisted_5$7,vue.toDisplayString(t.summaryOpenLabel),1)]),_:1}),a.runs.length?(vue.openBlock(),vue.createBlock(p,{key:0},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.statusSummary.runs.open)+"/"+vue.toDisplayString(a.runs.length),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(p,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.statusSummary.lifts.open)+"/"+vue.toDisplayString(a.lifts.length),1)]),_:1})]),_:1}),a.statusSummary.runs.limitedPatrol||a.statusSummary.lifts.limitedPatrol?(vue.openBlock(),vue.createBlock(g,{key:0},{default:vue.withCtx(()=>[vue.createVNode(p,null,{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-ski-boot-ski",size:"xs",class:"me-050"}),vue.createElementVNode("span",_hoisted_6$7,vue.toDisplayString(t.summaryLimitedPatrolLabel),1)]),_:1}),a.runs.length?(vue.openBlock(),vue.createBlock(p,{key:0},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.statusSummary.runs.limitedPatrol)+"/"+vue.toDisplayString(a.runs.length),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(p,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.statusSummary.lifts.limitedPatrol)+"/"+vue.toDisplayString(a.lifts.length),1)]),_:1})]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(g,null,{default:vue.withCtx(()=>[vue.createVNode(p,null,{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-timer",size:"xs",class:"me-050"}),vue.createElementVNode("span",_hoisted_7$6,vue.toDisplayString(t.summaryOpeningLabel),1)]),_:1}),a.runs.length?(vue.openBlock(),vue.createBlock(p,{key:0},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.statusSummary.runs.opening)+"/"+vue.toDisplayString(a.runs.length),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(p,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.statusSummary.lifts.opening)+"/"+vue.toDisplayString(a.lifts.length),1)]),_:1})]),_:1}),vue.createVNode(g,null,{default:vue.withCtx(()=>[vue.createVNode(p,null,{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-ban",size:"xs",class:"me-050"}),vue.createElementVNode("span",_hoisted_8$2,vue.toDisplayString(t.summaryClosedLabel),1)]),_:1}),a.runs.length?(vue.openBlock(),vue.createBlock(p,{key:0},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.statusSummary.runs.closed)+"/"+vue.toDisplayString(a.runs.length),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(p,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.statusSummary.lifts.closed)+"/"+vue.toDisplayString(a.lifts.length),1)]),_:1})]),_:1}),a.statusSummary.runs.onHold||a.statusSummary.lifts.onHold?(vue.openBlock(),vue.createBlock(g,{key:1},{default:vue.withCtx(()=>[vue.createVNode(p,null,{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-hourglass",size:"xs",class:"me-050"}),vue.createElementVNode("span",_hoisted_9$2,vue.toDisplayString(t.summaryOnHoldLabel),1)]),_:1}),a.runs.length?(vue.openBlock(),vue.createBlock(p,{key:0},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.statusSummary.runs.onHold)+"/"+vue.toDisplayString(a.runs.length),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(p,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.statusSummary.lifts.onHold)+"/"+vue.toDisplayString(a.lifts.length),1)]),_:1})]),_:1})):vue.createCommentVNode("",!0)]),_:1}),vue.createVNode(h,null,{default:vue.withCtx(()=>[vue.createVNode(g,null,{default:vue.withCtx(()=>[vue.createVNode(p,{colspan:"3",role:"cell"},{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_10$2,vue.toDisplayString(t.lastUpdatedLabel)+": "+vue.toDisplayString(a.lastUpdate),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["table-caption"]),vue.createVNode(V,{href:`#vs-ski-scotland-status__detailed-status-${e.id}`,type:"default",class:"vs-ski-scotland-status__detailed-status-link"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.detailedStatusLabel),1)]),_:1},8,["href"])]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(i,{cols:"12",md:"5","offset-md":"1",class:"vs-ski-scotland-status__centre-info"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"centre-information")]),_:3})]),_:3}),!a.jsDisabled&&!a.isLoading&&!a.displayError?(vue.openBlock(),vue.createBlock(l,{key:0},{default:vue.withCtx(()=>[vue.createVNode(i,{cols:"12",md:"9",class:"vs-ski-scotland-status__full-report"},{default:vue.withCtx(()=>[vue.createVNode(d,{level:"3","heading-style":"heading-l","data-test":"vs-ski__snow-conditions-label"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.snowConditionsLabel),1)]),_:1}),vue.createElementVNode("div",{innerHTML:a.report},null,8,_hoisted_11$1),a.currentWeather.length?(vue.openBlock(),vue.createBlock(d,{key:0,level:"4","heading-style":"heading-xs","data-test":"vs-ski__current-weather-label"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.currentWeatherLabel),1)]),_:1})):vue.createCommentVNode("",!0),a.currentWeather.length?(vue.openBlock(),vue.createElementBlock("div",{key:1,innerHTML:a.currentWeather},null,8,_hoisted_12)):vue.createCommentVNode("",!0),a.weatherForecast.length?(vue.openBlock(),vue.createBlock(d,{key:2,level:"4","heading-style":"heading-xs","data-test":"vs-ski__weather-forecast-label"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.weatherForecastLabel),1)]),_:1})):vue.createCommentVNode("",!0),a.weatherForecast.length?(vue.openBlock(),vue.createElementBlock("div",{key:3,innerHTML:a.weatherForecast},null,8,_hoisted_13)):vue.createCommentVNode("",!0),a.roadStatus.length?(vue.openBlock(),vue.createBlock(d,{key:4,level:"4","heading-style":"heading-xs","data-test":"vs-ski__roads-label"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.roadsLabel),1)]),_:1})):vue.createCommentVNode("",!0),a.roadStatus.length?(vue.openBlock(),vue.createElementBlock("div",{key:5,innerHTML:a.roadStatus},null,8,_hoisted_14)):vue.createCommentVNode("",!0),a.news.length?(vue.openBlock(),vue.createBlock(d,{key:6,level:"4","heading-style":"heading-xs","data-test":"vs-ski__news-label"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.newsLabel),1)]),_:1})):vue.createCommentVNode("",!0),a.news.length?(vue.openBlock(),vue.createElementBlock("div",{key:7,innerHTML:a.news},null,8,_hoisted_15)):vue.createCommentVNode("",!0)]),_:1})]),_:1})):vue.createCommentVNode("",!0),!a.jsDisabled&&!a.isLoading&&!a.displayError?(vue.openBlock(),vue.createBlock(l,{key:1},{default:vue.withCtx(()=>[vue.createVNode(i,{cols:"12",md:"9"},{default:vue.withCtx(()=>[vue.createVNode(d,{level:"3","heading-style":"heading-l","data-test":"vs-ski__lift-status-label",id:`vs-ski-scotland-status__detailed-status-${e.id}`},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.liftStatusLabel),1)]),_:1},8,["id"]),vue.createVNode(b,{"table-caption":t.liftStatusLabel,class:"vs-ski-scotland-status__run-status-table"},{default:vue.withCtx(()=>[vue.createVNode(m,null,{default:vue.withCtx(()=>[vue.createVNode(v,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.statusLabel),1)]),_:1}),vue.createVNode(v,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.liftLabel),1)]),_:1})]),_:1}),vue.createVNode(_,null,{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(a.lifts,w=>(vue.openBlock(),vue.createBlock(g,{key:w.name},{default:vue.withCtx(()=>[w.status==="0"||w.status===0?(vue.openBlock(),vue.createBlock(p,{key:0},{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-ban",size:"xs",class:"me-050"}),vue.createTextVNode(" "+vue.toDisplayString(t.statusClosedLabel),1)]),_:1})):vue.createCommentVNode("",!0),w.status==="1"||w.status===1?(vue.openBlock(),vue.createBlock(p,{key:1},{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-check",size:"xs",class:"me-050"}),vue.createTextVNode(" "+vue.toDisplayString(t.statusOpenLabel),1)]),_:1})):vue.createCommentVNode("",!0),w.status==="2"||w.status===2?(vue.openBlock(),vue.createBlock(p,{key:2},{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-timer",size:"xs",class:"me-050"}),vue.createTextVNode(" "+vue.toDisplayString(t.statusOpeningLabel),1)]),_:1})):vue.createCommentVNode("",!0),w.status==="3"||w.status===3?(vue.openBlock(),vue.createBlock(p,{key:3},{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-ski-boot-ski",size:"xs",class:"me-050"}),vue.createTextVNode(" "+vue.toDisplayString(t.statusLimitedPatrolLabel),1)]),_:1})):vue.createCommentVNode("",!0),w.status==="4"||w.status===4?(vue.openBlock(),vue.createBlock(p,{key:4},{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-hourglass",size:"xs",class:"me-050"}),vue.createTextVNode(" "+vue.toDisplayString(t.statusOnHoldLabel),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(p,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(w.name),1)]),_:2},1024)]),_:2},1024))),128))]),_:1}),vue.createVNode(h,null,{default:vue.withCtx(()=>[vue.createVNode(g,null,{default:vue.withCtx(()=>[vue.createVNode(p,{colspan:"2",role:"cell"},{default:vue.withCtx(()=>[vue.createElementVNode("p",null,vue.toDisplayString(t.lastUpdatedLabel)+": "+vue.toDisplayString(a.lastUpdate),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["table-caption"])]),_:1})]),_:1})):vue.createCommentVNode("",!0),!a.jsDisabled&&!a.isLoading&&!a.displayError&&a.runs.length?(vue.openBlock(),vue.createBlock(l,{key:2},{default:vue.withCtx(()=>[vue.createVNode(i,{cols:"12",md:"9"},{default:vue.withCtx(()=>[vue.createVNode(d,{level:"3","heading-style":"heading-l","data-test":"vs-ski__run-status-label"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.runStatusLabel),1)]),_:1}),(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(r.filteredRunLevels,w=>(vue.openBlock(),vue.createElementBlock("div",{key:w.name},[vue.createVNode($,null,{default:vue.withCtx(()=>[vue.createVNode(S,{variant:"subtle","control-id":`accordion_item_${w.name}`,"colour-badge":w.colourToken},{title:vue.withCtx(()=>[vue.createElementVNode("div",{"data-test":`vs-ski__${w.name}-label`,class:"d-inline-block"},[vue.createElementVNode("span",_hoisted_17,vue.toDisplayString(r.getColourLabel(w.colour)),1),vue.createTextVNode(" "+vue.toDisplayString(w.name),1)],8,_hoisted_16)]),default:vue.withCtx(()=>[vue.createVNode(b,{"table-caption":`${w.colour} - ${w.name}`,class:"vs-ski-scotland-status__run-status-table"},{default:vue.withCtx(()=>[vue.createVNode(m,null,{default:vue.withCtx(()=>[vue.createVNode(v,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.statusLabel),1)]),_:1}),vue.createVNode(v,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.runLabel),1)]),_:1})]),_:1}),vue.createVNode(_,null,{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(w.runs,k=>(vue.openBlock(),vue.createBlock(g,{key:k.name,"data-test":`vs-ski__${w.name}-row`},{default:vue.withCtx(()=>[k.status==="0"||k.status===0?(vue.openBlock(),vue.createBlock(p,{key:0},{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-ban",size:"xs",class:"me-050"}),vue.createTextVNode(" "+vue.toDisplayString(t.statusClosedLabel),1)]),_:1})):vue.createCommentVNode("",!0),k.status==="1"||k.status===1?(vue.openBlock(),vue.createBlock(p,{key:1},{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-check",size:"xs",class:"me-050"}),vue.createTextVNode(" "+vue.toDisplayString(t.statusOpenLabel),1)]),_:1})):vue.createCommentVNode("",!0),k.status==="2"||k.status===2?(vue.openBlock(),vue.createBlock(p,{key:2},{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-timer",size:"xs",class:"me-050"}),vue.createTextVNode(" "+vue.toDisplayString(t.statusOpeningLabel),1)]),_:1})):vue.createCommentVNode("",!0),k.status==="3"||k.status===3?(vue.openBlock(),vue.createBlock(p,{key:3},{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-ski-boot-ski",size:"xs",class:"me-050"}),vue.createTextVNode(" "+vue.toDisplayString(t.statusLimitedPatrolLabel),1)]),_:1})):vue.createCommentVNode("",!0),k.status==="4"||k.status===4?(vue.openBlock(),vue.createBlock(p,{key:4},{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-hourglass",size:"xs",class:"me-050"}),vue.createTextVNode(" "+vue.toDisplayString(t.statusOnHoldLabel),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(p,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(k.name),1)]),_:2},1024)]),_:2},1032,["data-test"]))),128))]),_:2},1024),vue.createVNode(h,null,{default:vue.withCtx(()=>[vue.createVNode(g,null,{default:vue.withCtx(()=>[vue.createVNode(p,{colspan:"2",role:"cell"},{default:vue.withCtx(()=>[vue.createElementVNode("p",null,vue.toDisplayString(t.lastUpdatedLabel)+": "+vue.toDisplayString(a.lastUpdate),1)]),_:1})]),_:1})]),_:1})]),_:2},1032,["table-caption"])]),_:2},1032,["control-id","colour-badge"])]),_:2},1024)]))),128))]),_:1})]),_:1})):vue.createCommentVNode("",!0)]),_:3})])}const SkiScotlandStatus=LoadingSpinner._export_sfc(_sfc_main$m,[["render",_sfc_render$c]]),_sfc_main$l={name:"VsSkipTo",status:"prototype",release:"0.0.1",components:{VsLink},props:{skipToText:{type:String,required:!0},hasSearchLink:{type:Boolean,default:!0}},methods:{mainMenuFocus(){const e=document.getElementsByClassName("vs-mega-nav__menu__mobile")[0],n=document.getElementsByClassName("vs-mega-nav-dropdown")[0];if(!this.isUndefined(n)){let t=n.getElementsByClassName("btn")[0];e.offsetParent!==null?(e.querySelectorAll(".btn.dropdown-toggle")[0].click(),t=document.getElementsByClassName("vs-mega-nav-accordion-item--level-1")[0].querySelectorAll(".vs-button.vs-accordion-toggle")[0],setTimeout(()=>{t.focus()},200)):t.focus()}},footerFocus(){const e=document.getElementsByClassName("vs-footer")[0];if(!this.isUndefined(e)){const n=e.getElementsByClassName("vs-footer-accordion-item")[0],t=n.getElementsByClassName("vs-link")[0],o=n.getElementsByClassName("vs-accordion-toggle")[0];o.offsetParent!==null&&!this.isUndefined(o)&&o.click(),!this.isUndefined(e)&&!this.isUndefined(t)&&(e.scrollIntoView(!0),setTimeout(()=>{t.focus()},200))}},isUndefined(e){return typeof e>"u"}}},_hoisted_1$h=["aria-label"],_hoisted_2$c={class:"vs-skip-to__label",id:"skip-to-label"};function _sfc_render$b(e,n,t,o,a,r){const s=vue.resolveComponent("VsLink");return vue.openBlock(),vue.createElementBlock("nav",{class:"vs-skip-to d-flex","data-test":"vs-skip-to","aria-label":t.skipToText},[vue.createElementVNode("p",_hoisted_2$c,vue.toDisplayString(t.skipToText)+": ",1),vue.createVNode(s,{href:"#main-nav","data-test":"vs-skip-to-main-menu",onClick:n[0]||(n[0]=i=>r.mainMenuFocus()),id:"main-menu"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"main-menu-text")]),_:3}),t.hasSearchLink?(vue.openBlock(),vue.createBlock(s,{key:0,href:"#site-search-btn","data-test":"vs-skip-to-search",class:"vs-skip-to__search"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"search-text")]),_:3})):vue.createCommentVNode("",!0),vue.createVNode(s,{href:"#main-heading","data-test":"vs-skip-to-main-content"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"main-content-text")]),_:3}),vue.createVNode(s,{href:"#site-footer",onClick:n[1]||(n[1]=i=>r.footerFocus()),"data-test":"vs-skip-to-footer"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"footer-text")]),_:3})],8,_hoisted_1$h)}const SkipTo=LoadingSpinner._export_sfc(_sfc_main$l,[["render",_sfc_render$b]]),_sfc_main$k={name:"VsSocialCreditLink",status:"prototype",release:"0.0.1",components:{VsLink,VsIcon:LoadingSpinner.VsIcon},props:{credit:{type:String,required:!0},socialPostUrl:{type:String,required:!0},source:{type:String,required:!0,validator:e=>e.match(/(instagram)/)}}},_hoisted_1$g={class:"social-credit","data-test":"vs-social-credit-link"};function _sfc_render$a(e,n,t,o,a,r){const s=vue.resolveComponent("VsIcon"),i=vue.resolveComponent("VsLink");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$g,[t.source?(vue.openBlock(),vue.createBlock(s,{key:0,icon:`fa-brands fa-${t.source}`,variant:"inverse",size:"xs",class:"me-025","data-test":"vs-social-credit-link__icon"},null,8,["icon"])):vue.createCommentVNode("",!0),vue.createVNode(i,{class:"social-credit__link","data-test":"vs-social-credit-link__link",href:t.socialPostUrl,variant:"on-dark",type:"external"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.credit),1)]),_:1},8,["href"])])}const SocialCreditLink=LoadingSpinner._export_sfc(_sfc_main$k,[["render",_sfc_render$a]]),_sfc_main$j={name:"VsSocialShare",status:"prototype",release:"0.0.1",components:{VsButton:LoadingSpinner.VsButton,VsHeading:LoadingSpinner.VsHeading,VsModuleWrapper,BPopover:LoadingSpinner.Ka,VsRow:LoadingSpinner.VsRow,VsContainer:LoadingSpinner.VsContainer,VsCol:LoadingSpinner.VsCol},provide(){return{referringPageUrl:this.pageUrl,pageTitle:this.pageTitle,noJs:this.noJs}},props:{shareBtnText:{type:String,required:!0},sharePopoverTitle:{type:String,required:!0},pageUrl:{type:String,required:!0},pageTitle:{type:String,default:""},closeAltText:{type:String,required:!0},id:{type:String,required:!0},noJs:{type:Boolean,default:!1}},data(){return{copyLink:!1,renderPopover:!1}},mounted(){this.renderPopover=!0},methods:{onClose(e){this.$refs.popover.hide(e)},onShown(){this.focusFirst()},onHidden(){this.focusRef(this.$refs.shareButton)},onHide(e){this.copyLink&&(e.preventDefault(),this.focusFirst(),this.copyLink=!1)},onCopyLink(){this.copyLink=!0},focusRef(e){this.$nextTick(()=>{this.$nextTick(()=>{(e.$el||e).focus()})})},focusFirst(){this.$nextTick(()=>{this.$nextTick(()=>{this.$refs.popoverShareRow.$el.querySelector(".vs-social-share-item a ").focus()})})},tabFromClose(e){e.shiftKey||(e.preventDefault(),this.focusFirst())},tabBackFromHidden(e){e.shiftKey&&(e.preventDefault(),this.focusRef(this.$refs.closeButton))}}};function _sfc_render$9(e,n,t,o,a,r){const s=vue.resolveComponent("VsButton"),i=vue.resolveComponent("VsHeading"),l=vue.resolveComponent("VsRow"),u=vue.resolveComponent("BPopover"),c=vue.resolveComponent("VsCol"),d=vue.resolveComponent("VsContainer"),v=vue.resolveComponent("VsModuleWrapper");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-social-share",t.noJs?"vs-module-wrapper__outer--hidden":"vs-module-wrapper__outer--light"]),"data-test":"vs-social-share",ref:"socialShareContainer"},[t.noJs?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createBlock(s,{key:0,class:"vs-social-share__share-btn",variant:"subtle",icon:"fa-regular fa-share-nodes",id:`vs-social-share-popover--${t.id}`,ref:"shareButton"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.shareBtnText),1)]),_:1},8,["id"])),!t.noJs&&a.renderPopover?(vue.openBlock(),vue.createBlock(u,{key:1,"custom-class":"vs-social-share__popover",target:`vs-social-share-popover--${t.id}`,click:!0,container:"body",placement:"left-end",offset:"-100",onShown:r.onShown,onHidden:r.onHidden,onHide:r.onHide,ref:"popover"},{default:vue.withCtx(()=>[vue.createVNode(i,{level:"3",tabindex:"0","heading-style":"heading-m",ref:"shareHeader",class:"vs-social-share__header",onKeydown:n[0]||(n[0]=vue.withKeys(m=>r.tabBackFromHidden(m),["tab"]))},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.sharePopoverTitle),1)]),_:1},512),vue.createVNode(l,{ref:"popoverShareRow"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default",{onCopyLink:r.onCopyLink})]),_:3},512),vue.createVNode(s,{"icon-only":"",class:"vs-social-share__close-btn",icon:"vs-icon-control-dismiss",variant:"subtle",ref:"closeButton",onClick:r.onClose,onKeydown:n[1]||(n[1]=vue.withKeys(m=>r.tabFromClose(m),["tab"]))},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.closeAltText),1)]),_:1},8,["onClick"])]),_:3},8,["target","onShown","onHidden","onHide"])):vue.createCommentVNode("",!0),t.noJs?(vue.openBlock(),vue.createBlock(v,{key:2,class:"vs-social-share--module-list"},{default:vue.withCtx(()=>[vue.createVNode(d,null,{default:vue.withCtx(()=>[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.createVNode(c,{cols:"12"},{default:vue.withCtx(()=>[vue.createVNode(i,{level:"2","heading-style":"heading-l",class:"mb-300 mt-0"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.sharePopoverTitle),1)]),_:1})]),_:1})]),_:1}),vue.createVNode(l,{class:"justify-content-center"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3})]),_:3})]),_:3})):vue.createCommentVNode("",!0)],2)}const SocialShare=LoadingSpinner._export_sfc(_sfc_main$j,[["render",_sfc_render$9]]),socialMediaData={facebook:{color:"#1877f2",icon:"fa-brands fa-facebook",getUrl:(e,n)=>`https://www.facebook.com/sharer/sharer.php?u=${e}&t=${n}`},"x-twitter":{color:"#0F1419",icon:"fa-brands fa-x-twitter",getUrl:(e,n)=>`https://twitter.com/intent/tweet?text=${n}%20@VisitScotland&url=${e}`},pinterest:{color:"#E60023",icon:"fa-brands fa-pinterest",getUrl:e=>`https://www.pinterest.com/pin/create/button/?url=${e}`},whatsapp:{color:"#455a64",icon:"fa-brands fa-whatsapp",getUrl:(e,n)=>`https://wa.me/?text=${n}%20-%20${e}`},email:{color:"#000000",icon:"fa-regular fa-envelope",getUrl:(e,n)=>`mailto:?body=${n}%20-%20${e}&subject=${n}`},link:{color:"#000000",icon:"fa-regular fa-link",getUrl:()=>"#"}},_sfc_main$i={name:"VsSocialShareItem",status:"prototype",release:"0.0.1",components:{VsCol:LoadingSpinner.VsCol,VsLink,VsIcon:LoadingSpinner.VsIcon},mixins:[LoadingSpinner.dataLayerMixin],inject:{referringPageUrl:{default:""},pageTitle:{default:""},noJs:{default:""}},props:{name:{type:String,required:!0,validator:e=>e.match(/(facebook|twitter|pinterest|link|email|whatsapp)/)},linkText:{type:String,required:!0},linkCopiedText:{type:String,default:""}},emits:["copyLinkClicked"],data(){return{show:!1}},computed:{iconColour(){var e;return((e=socialMediaData[this.name])==null?void 0:e.color)||"#200F2E"},iconName(){var e;return((e=socialMediaData[this.name])==null?void 0:e.icon)||"fa-solid fa-link"},shareUrl(){const e=socialMediaData[this.name];return(e==null?void 0:e.getUrl(this.referringPageUrl,this.encodedPageTitle))||"#"},encodedPageTitle(){return encodeURI(this.pageTitle)}},methods:{copyToClipboard(e){if(this.name==="link"){if(this.$emit("copyLinkClicked"),!navigator.clipboard)return;navigator.clipboard.writeText&&navigator.clipboard.writeText(this.referringPageUrl),this.show=!0,setTimeout(()=>{this.show=!1},2e3)}this.trackShareClick(e)},trackShareClick(e){this.createDataLayerObject("socialShareDataEvent",e,this.href)}}},_hoisted_1$f={class:"vs-social-share-item__text"};function _sfc_render$8(e,n,t,o,a,r){const s=vue.resolveComponent("VsIcon"),i=vue.resolveComponent("VsLink"),l=vue.resolveComponent("VsCol");return vue.openBlock(),vue.createBlock(l,{class:"vs-social-share-item","data-test":"vs-social-share-item",cols:4,md:r.noJs?2:4},{default:vue.withCtx(()=>[vue.createVNode(i,{class:"vs-social-share-item__link",href:r.shareUrl,onClick:n[0]||(n[0]=u=>r.copyToClipboard(u)),id:`vs-share-${t.name}`},{default:vue.withCtx(()=>[vue.createVNode(s,{icon:r.iconName,"custom-colour":r.iconColour,size:"xl","small-size":"lg"},null,8,["icon","custom-colour"]),vue.createElementVNode("span",_hoisted_1$f,vue.toDisplayString(a.show?t.linkCopiedText:t.linkText),1)]),_:1},8,["href","id"])]),_:1},8,["md"])}const SocialShareItem=LoadingSpinner._export_sfc(_sfc_main$i,[["render",_sfc_render$8]]),_sfc_main$h={name:"VsSpotlightSection",status:"prototype",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading,VsBody:LoadingSpinner.VsBody,VsButton:LoadingSpinner.VsButton},props:{heading:{type:String,required:!0},description:{type:String,default:""},ctaLink:{type:String,required:!0},ctaText:{type:String,required:!0},imageSrc:{type:String,default:""},compact:{type:Boolean,default:!1}},computed:{spotlightSectionClasses(){return{"vs-spotlight-section":!0,"vs-spotlight-section--compact":this.compact,"vs-spotlight-section--standard":!this.compact,"vs-spotlight-section--no-image":!this.imageSrc}}}},_hoisted_1$e={class:"vs-spotlight-section__content-overlay"},_hoisted_2$b={class:"row w-100 m-0"},_hoisted_3$7={class:"col-12 col-sm-7 col-md-8 col-lg-7 col-xl-6 align-self-end p-0"},_hoisted_4$6={key:0,class:"col-12 col-sm-5 col-md-4 col-lg-5 col-xl-6 align-self-sm-end text-sm-end p-0"},_hoisted_5$6={key:0,class:"vs-spotlight-section__media"},_hoisted_6$6={key:1,class:"vs-spotlight-section__overlay-controls"};function _sfc_render$7(e,n,t,o,a,r){const s=vue.resolveComponent("VsHeading"),i=vue.resolveComponent("VsBody"),l=vue.resolveComponent("VsButton");return vue.openBlock(),vue.createElementBlock("section",{class:vue.normalizeClass(r.spotlightSectionClasses),style:vue.normalizeStyle(t.imageSrc?{backgroundImage:`url(${t.imageSrc})`}:{}),"data-test":"vs-spotlight-section"},[vue.createElementVNode("div",_hoisted_1$e,[vue.createElementVNode("div",_hoisted_2$b,[vue.createElementVNode("div",_hoisted_3$7,[vue.createVNode(s,{class:"vs-spotlight-section__heading",level:"2","no-margins":"","heading-style":"heading-xs"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.heading),1)]),_:1}),t.description?(vue.openBlock(),vue.createBlock(i,{key:0,class:"vs-spotlight-section__description","no-margins":""},{default:vue.withCtx(()=>[vue.createElementVNode("p",null,vue.toDisplayString(t.description),1)]),_:1})):vue.createCommentVNode("",!0),t.compact?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createBlock(l,{key:1,class:"vs-spotlight-section__cta-button",href:t.ctaLink,size:"sm",variant:"secondary"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.ctaText),1)]),_:1},8,["href"]))]),t.compact?(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$6,[vue.createVNode(l,{class:"vs-spotlight-section__cta-button",href:t.ctaLink,size:"sm",variant:"secondary"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.ctaText),1)]),_:1},8,["href"])])):vue.createCommentVNode("",!0)])]),e.$slots["vs-spotlight-section-media"]&&e.$slots["vs-spotlight-section-media"]()?(vue.openBlock(),vue.createElementBlock("div",_hoisted_5$6,[vue.renderSlot(e.$slots,"vs-spotlight-section-media")])):vue.createCommentVNode("",!0),e.$slots["vs-spotlight-section-overlay-controls"]&&e.$slots["vs-spotlight-section-overlay-controls"]()?(vue.openBlock(),vue.createElementBlock("div",_hoisted_6$6,[vue.renderSlot(e.$slots,"vs-spotlight-section-overlay-controls")])):vue.createCommentVNode("",!0),n[0]||(n[0]=vue.createElementVNode("div",{class:"vs-spotlight-section__gradient-overlay"},null,-1))],6)}const SpotlightSection=LoadingSpinner._export_sfc(_sfc_main$h,[["render",_sfc_render$7]]),_hoisted_1$d={class:"vs-styled-list__list"},_hoisted_2$a={class:"vs-styled-list__source"},_sfc_main$g={__name:"StyledList",props:{source:{type:String,default:null},variant:{type:String,default:"icon",validator:e=>["icon","image","image-horizontal","numbered"].includes(e)}},setup(e){const n=e;return(t,o)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-styled-list",`vs-styled-list--${n.variant}`]),"data-test":"vs-styled-list"},[vue.createVNode(vue.unref(LoadingSpinner.VsContainer),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(LoadingSpinner.VsRow),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(LoadingSpinner.VsCol),{md:n.variant==="icon"?"8":null},{default:vue.withCtx(()=>[vue.createElementVNode("ul",_hoisted_1$d,[vue.renderSlot(t.$slots,"default")])]),_:3},8,["md"])]),_:3}),t.$slots["list-source"]&&t.$slots["list-source"]()?(vue.openBlock(),vue.createBlock(vue.unref(LoadingSpinner.VsRow),{key:0},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_2$a,[vue.renderSlot(t.$slots,"list-source")])]),_:3})):vue.createCommentVNode("",!0)]),_:3})],2))}},_hoisted_1$c={class:"vs-styled-list__item","data-test":"vs-styled-list__item"},_sfc_main$f={__name:"StyledListItem",props:{heading:{type:String,required:!0},headingLevel:{type:Number,default:3,validator:e=>LoadingSpinner.lodashExports.isNumber(e)?e>0&&e<7:e.match(/(1|2|3|4|5|6)/)},imageSrc:{type:String,default:null},variant:{type:String,default:"icon",validator:e=>["icon","image","image-horizontal","numbered"].includes(e)},anchorLink:{type:String,default:""}},setup(e){const n=e;return(t,o)=>(vue.openBlock(),vue.createElementBlock("li",_hoisted_1$c,[vue.createVNode(vue.unref(LoadingSpinner.VsRow),null,{default:vue.withCtx(()=>[n.variant==="image"?(vue.openBlock(),vue.createBlock(vue.unref(LoadingSpinner.VsCol),{key:0,cols:"12",md:"2"},{default:vue.withCtx(()=>[vue.createVNode(LoadingSpinner.VsImg,{src:n.imageSrc},null,8,["src"])]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(vue.unref(LoadingSpinner.VsCol),{md:n.variant==="image"?"10":"12"},{default:vue.withCtx(()=>[n.variant==="image-horizontal"?(vue.openBlock(),vue.createBlock(LoadingSpinner.VsImg,{key:0,src:n.imageSrc},null,8,["src"])):vue.createCommentVNode("",!0),vue.createVNode(LoadingSpinner.VsHeading,{level:n.headingLevel,"heading-style":"heading-xxs",id:e.anchorLink?e.anchorLink:""},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(e.heading),1)]),_:1},8,["level","id"]),vue.createVNode(LoadingSpinner.VsBody,null,{default:vue.withCtx(()=>[vue.renderSlot(t.$slots,"default")]),_:3})]),_:3},8,["md"])]),_:3})]))}},_sfc_main$e={name:"VsSummaryBoxList",status:"prototype",release:"0.0.1"},_hoisted_1$b={class:"vs-summary-box","data-test":"vs-summary-box-list"},_hoisted_2$9={class:"vs-summary-box__list list-unstyled d-flex flex-wrap p-050 p-sm-075"};function _sfc_render$6(e,n,t,o,a,r){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$b,[vue.createElementVNode("ul",_hoisted_2$9,[vue.renderSlot(e.$slots,"default")])])}const SummaryBoxList=LoadingSpinner._export_sfc(_sfc_main$e,[["render",_sfc_render$6]]),_sfc_main$d={name:"VsSummaryBoxListItem",status:"prototype",release:"0.0.1",components:{VsIcon:LoadingSpinner.VsIcon},props:{text:{type:String,default:""},label:{type:String,default:""},icon:{type:String,default:""},iconLabel:{type:String,default:""}}},_hoisted_1$a={class:"vs-summary-box-item position-relative","data-test":"vs-summary-box-list-item"},_hoisted_2$8={key:0,class:"text-center vs-summary-box-item__label d-block position-absolute w-100","data-test":"vs-summary-box-list-item-label"},_hoisted_3$6={class:"vs-summary-box-item__label-inner"},_hoisted_4$5={key:1,class:"vs-summary-box-item__display position-absolute d-block text-center w-100","data-test":"vs-summary-box-list-item-display"},_hoisted_5$5={key:2,class:"vs-summary-box-item__icon d-flex align-items-center position-absolute justify-content-center w-100","data-test":"vs-summary-box-list-item-icon-with-label"},_hoisted_6$5={class:"icon-wrapper text-end"},_hoisted_7$5={class:"text-wrapper d-block w-auto pt-100"};function _sfc_render$5(e,n,t,o,a,r){const s=vue.resolveComponent("VsIcon");return vue.openBlock(),vue.createElementBlock("li",_hoisted_1$a,[t.label?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$8,[vue.createElementVNode("span",_hoisted_3$6,vue.toDisplayString(t.label),1)])):vue.createCommentVNode("",!0),t.text?(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$5,[vue.createElementVNode("span",null,vue.toDisplayString(t.text),1)])):vue.createCommentVNode("",!0),t.icon?(vue.openBlock(),vue.createElementBlock("div",_hoisted_5$5,[vue.createElementVNode("div",_hoisted_6$5,[vue.createVNode(s,{icon:t.icon,size:"xl"},null,8,["icon"])]),vue.createElementVNode("div",_hoisted_7$5,[vue.createElementVNode("span",null,vue.toDisplayString(t.iconLabel),1)])])):vue.createCommentVNode("",!0)])}const SummaryBoxListItem=LoadingSpinner._export_sfc(_sfc_main$d,[["render",_sfc_render$5],["__scopeId","data-v-eab4f595"]]),_sfc_main$c={name:"VsSummaryBoxDistanceListItem",status:"prototype",release:"0.0.1",props:{miles:{type:String,default:""},kilometres:{type:String,default:""},distanceLabel:{type:String,default:"Distance"},milesLabel:{type:String,default:"miles"},kilometresLabel:{type:String,default:"km"},showMiles:{type:Boolean,default:!0}}},_hoisted_1$9={class:"vs-summary-box-distance position-relative","data-test":"vs-summary-box-distance-list-item"},_hoisted_2$7={key:0,class:"text-center vs-summary-box-distance__label d-block position-absolute w-100","data-test":"vs-summary-box-distance-list-item-label"},_hoisted_3$5={class:"vs-summary-box-distance__label-inner"},_hoisted_4$4={class:"vs-summary-box-distance__display position-absolute d-block text-center w-100","data-test":"vs-summary-box-distance-display"},_hoisted_5$4={class:"vs-summary-box-distance__display-entry"},_hoisted_6$4={class:"vs-summary-box-distance__display-value"},_hoisted_7$4={class:"vs-summary-box-distance__display-label"},_hoisted_8$1={class:"vs-summary-box-distance__display-entry"},_hoisted_9$1={class:"vs-summary-box-distance__display-value"},_hoisted_10$1={class:"vs-summary-box-distance__display-label"};function _sfc_render$4(e,n,t,o,a,r){return vue.openBlock(),vue.createElementBlock("li",_hoisted_1$9,[t.distanceLabel?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$7,[vue.createElementVNode("span",_hoisted_3$5,vue.toDisplayString(t.distanceLabel),1)])):vue.createCommentVNode("",!0),vue.createElementVNode("div",_hoisted_4$4,[vue.createElementVNode("div",_hoisted_5$4,[vue.createElementVNode("span",_hoisted_6$4,vue.toDisplayString(t.miles),1),vue.createElementVNode("span",_hoisted_7$4,vue.toDisplayString(t.milesLabel),1)]),n[0]||(n[0]=vue.createElementVNode("hr",{class:"vs-summary-box-distance__divider"},null,-1)),vue.createElementVNode("div",_hoisted_8$1,[vue.createElementVNode("span",_hoisted_9$1,vue.toDisplayString(t.kilometres),1),vue.createElementVNode("span",_hoisted_10$1,vue.toDisplayString(t.kilometresLabel),1)])])])}const SummaryBoxDistanceListItem=LoadingSpinner._export_sfc(_sfc_main$c,[["render",_sfc_render$4],["__scopeId","data-v-f36a8377"]]),_sfc_main$b={name:"VsTabs",status:"prototype",release:"0.0.1",components:{BTabs:LoadingSpinner.vc},provide(){return{noContainer:vue.computed(()=>this.noContainer)}},props:{noContainer:{type:Boolean,default:!1}}};function _sfc_render$3(e,n,t,o,a,r){const s=vue.resolveComponent("BTabs");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(t.noContainer?"vs-tabs--no-container":"vs-tabs"),"data-test":"vs-tabs"},[vue.createVNode(s,{"no-container":t.noContainer,align:t.noContainer?"center":null},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},8,["no-container","align"])],2)}const Tabs=LoadingSpinner._export_sfc(_sfc_main$b,[["render",_sfc_render$3]]),_sfc_main$a={name:"VsTabItem",status:"prototype",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading,BTab:LoadingSpinner.dc},mixins:[LoadingSpinner.dataLayerMixin],inject:["noContainer"],props:{title:{type:String,required:!0}},methods:{trackClick(e){this.createDataLayerObject("tabClickEvent",e,null)}}};function _sfc_render$2(e,n,t,o,a,r){const s=vue.resolveComponent("VsHeading"),i=vue.resolveComponent("BTab");return vue.openBlock(),vue.createBlock(i,{class:"vs-tab__item","data-test":"vs-tab__item","title-link-class":r.noContainer?"vs-tab-link--no-container vs-heading":"vs-tab-link vs-heading",title:t.title,onClick:r.trackClick},{default:vue.withCtx(()=>[vue.createVNode(s,{level:"3","heading-style":"heading-xxs",class:"vs-tab__item__heading"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.title),1)]),_:1}),vue.renderSlot(e.$slots,"default")]),_:3},8,["title-link-class","title","onClick"])}const TabItem=LoadingSpinner._export_sfc(_sfc_main$a,[["render",_sfc_render$2]]),_sfc_main$9={name:"VsTag",status:"prototype",release:"0.0.1",components:{VsLink},props:{href:{type:String,required:!0}}};function _sfc_render$1(e,n,t,o,a,r){const s=vue.resolveComponent("VsLink");return vue.openBlock(),vue.createBlock(s,{class:"vs-tag me-050 mb-100","data-test":"vs-tag",href:t.href},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},8,["href"])}const Tag=LoadingSpinner._export_sfc(_sfc_main$9,[["render",_sfc_render$1]]),_sfc_main$8={name:"VsTagManagerWrapper",status:"prototype",release:"0.0.1",mixins:[LoadingSpinner.dataLayerMixin],props:{payload:{type:Object,default:()=>{}}},mounted(){this.processPayload(this.payload),document.addEventListener("DOMContentLoaded",()=>{this.dataLayerStore.setTestRun(!0),this.dataLayerStore.setPageUrl(window.location.href)}),this.createDataLayerObject("pageViewTemplateDataEvent")},methods:{processPayload(e){e!==void 0&&Object.keys(e).forEach(n=>{const t=n.replace(/-/g,"_");this.dataLayerStore.processPayload({key:t,value:e[n]})})}}},_hoisted_1$8={"data-test":"vs-tag-manager-wrapper",class:"d-none"};function _sfc_render(e,n,t,o,a,r){return vue.openBlock(),vue.createElementBlock("span",_hoisted_1$8)}const TagManagerWrapper=LoadingSpinner._export_sfc(_sfc_main$8,[["render",_sfc_render]]);function cleanData$1(e){return e.TypedDocuments.map(o=>{var a;return{id:o.Fields.Id.Value||"",title:o.Fields.Title.Value||"",description:o.Fields.Description.Value||"",imgSrc:((a=o.Fields.Image)==null?void 0:a.Value)||"",url:o.Fields.Url.Value||"",dataSrc:"cludo",categoryCard:o.Fields.categoryCard.Value||""}})}async function cludoSearch(e,n,t,o,a,r){const{apiKey:s,customerId:i,engineId:l}=n,u=`https://api-eu1.cludo.com/api/v3/${i}/${l}/search`,c=`${i}:${s}`,d=useFederatedSearchStore();if(d.eventsApiError=!1,d.cludoError=!1,!n)return d.cludoError=!0,d.isLoading=!1,{results:[],totalResults:0};if(a==="events")return{results:[],totalResults:0};try{const v=await fetch(u,{method:"POST",body:JSON.stringify({query:e||"*",operator:r,responseType:"JsonObject",perPage:6,page:t,facets:{Category:a?[a]:null}}),headers:{"Content-Type":"application/json",Authorization:`Basic ${btoa(c)}`}});if(!v.ok)throw d.cludoError=!0,d.isLoading=!1,new Error(`Cludo response message: ${v.status}`);const m=await v.json();return{results:cleanData$1(m),totalResults:m.TotalDocument}}catch{return d.cludoError=!0,d.isLoading=!1,{results:[],totalResults:0}}}function cleanData(e){return e.events.map(o=>{var a,r,s,i,l,u,c;return{id:o.id,parentId:o.parentId,title:o.name,description:((r=(a=o.descriptions)==null?void 0:a[0])==null?void 0:r.description)||"",imgSrc:((i=(s=o.images)==null?void 0:s[0])==null?void 0:i.url)||"",url:((u=(l=o.performances)==null?void 0:l[0])==null?void 0:u.url)||"",placeUrl:o.place.website,location:o.place.town,startDate:o.startFormatted,endDate:o.endFormatted,minPrice:(c=o.minPrice)==null?void 0:c.toString(),dataSrc:"data-thistle",categoryCard:o.categoryCard||""}})}async function eventSearch(e,n,t,o,a,r,s,i,l,u,c,d,v){const m=useFederatedSearchStore();m.eventsApiError=!1,m.cludoError=!1;let f=`${e}?query=${n}&lang=${l}`;f=t>1?`${f}&page=${t}`:f,f=r!==""?`${f}&startDate=${r}`:f,f=s!==""?`${f}&endDate=${s}`:f,f=i?`${f}&sort=${i}`:f,f=o==="events"?`${f}&pageSize=12`:`${f}&pageSize=6`,f=u?`${f}&postcode=${u}`:f,f=c?`${f}&location=${c}`:f,f=d?`${f}&radius=${d}`:f,f=v?`${f}&postcodeareas=${v}`:f,a.forEach(p=>{f+=`&category=${p}`}),o&&o!=="events"&&(f+=`&category=${o}`);try{const p=await fetch(f);if(!p.ok)throw m.isLoading=!1,m.eventsApiError=!0,new Error(`Events response message: ${p.status}`);const g=await p.json();return{results:cleanData(g),totalResults:g.totalResults}}catch{return m.isLoading=!1,m.eventsApiError=!0,{results:[],totalResults:0}}}async function cludoAutocomplete(e,n){const{apiKey:t,customerId:o,engineId:a}=n,s=`https://api-eu1.cludo.com/api/v3/${o}/${a}/Autocomplete`,i=`${o}:${t}`;try{const l=await fetch(s,{method:"POST",body:JSON.stringify({text:e}),headers:{"Content-Type":"application/json",Authorization:`Basic ${btoa(i)}`}});if(!l.ok)throw new Error(`Autocomplete search error ${l.status}`);return await l.json()}catch(l){throw new Error(`Autocomplete search error: ${l}`)}}const useFederatedSearchStore=pinia.defineStore("federatedSearch",()=>{const e=vue.ref(null),n=vue.ref(void 0),t=vue.ref(!1),o=vue.ref(1),a=vue.ref(void 0),r=vue.ref(!1),s=vue.ref(!1),i=vue.ref(null),l=vue.ref(""),u=vue.ref(null),c=vue.ref(null),d=vue.ref([]),v=vue.ref([]),m=vue.ref(void 0),f=vue.ref(void 0),p=vue.ref(void 0),g=vue.ref(!1),_=vue.ref(""),h=vue.ref(""),b=vue.ref(void 0),V=vue.ref(void 0),S=vue.ref(void 0),$=vue.ref(-1),w=vue.ref(""),k=vue.ref(""),P=vue.ref(""),O=vue.ref(0),B=vue.ref(""),T=vue.ref("or");async function L(F=!1){s.value=!0,F||($.value+=1);const A=await cludoSearch(l.value,n.value,o.value,u.value,c.value,T.value),C=await eventSearch(a.value,l.value,o.value,c.value,v.value,_.value,h.value,b.value,S.value,k.value,P.value,O.value,B.value);i.value=[...A.results,...C.results],f.value=A.totalResults,p.value=C.totalResults,m.value=A.totalResults+C.totalResults,s.value=!1}async function E(){return cludoAutocomplete(l.value,n.value)}async function z(F,A){const C=new URL(window.location.href);if(A?w.value="Autosuggestion":w.value="User input",l.value?C.searchParams.set("search-term",l.value):C.searchParams.delete("search-term"),c.value?C.searchParams.set("category",encodeURIComponent(c.value)):C.searchParams.delete("category"),v.value.length>0?C.searchParams.set("sub-category",encodeURIComponent(v.value.join(","))):C.searchParams.delete("sub-category"),F?(o.value=1,C.searchParams.set("page",o.value.toString())):o.value&&o.value>1?C.searchParams.set("page",o.value.toString()):C.searchParams.delete("page"),_.value?C.searchParams.set("start-date",_.value):C.searchParams.delete("start-date"),h.value?C.searchParams.set("end-date",h.value):C.searchParams.delete("end-date"),b.value?C.searchParams.set("sort-by",b.value):C.searchParams.delete("sort-by"),!g.value)window.history.pushState({},"",C),await L();else{const D=`${V.value}/${C.search}`;window.location.href=D}}return{filters:e,currentPage:o,cludoCredentials:n,cludoError:t,eventsApi:a,eventsApiError:r,getAutoComplete:E,getSearchResults:L,isLoading:s,results:i,searchTerm:l,searchUrl:V,selectedCategory:u,selectedCategoryKey:c,selectedSubCategory:d,selectedSubCategoryKey:v,totalResults:m,totalResultsCludo:f,totalResultsEvents:p,navigateToResultsPage:z,isHomePage:g,startDate:_,endDate:h,sortBy:b,siteLanguage:S,searchInSessionCount:$,queryInput:w,postcode:k,location:P,radius:O,postcodeareas:B,cludoApiOperator:T}}),_hoisted_1$7={class:"vs-fed-filter"},_hoisted_2$6={class:"vs-fed-filter__scroll-container"},_hoisted_3$4=["id"],_sfc_main$7={__name:"FedFilter",props:{filterCategories:{type:Array,required:!0},variant:{type:String,default:"primary",validator:e=>/^(primary|secondary)$/.test(e)},wrap:{type:Boolean,default:!1},activeFilter:{type:[String,Array],default:""},scrollButtons:{type:Boolean,default:!1},scrollLeftText:{type:String,default:""},scrollRightText:{type:String,default:""}},emits:["filter-updated"],setup(e,{expose:n}){const t=e,o=vue.ref(null);function a(c){return typeof t.activeFilter=="string"?t.activeFilter===c:t.activeFilter&&typeof t.activeFilter=="object"?t.activeFilter.includes(c):!1}function r(c){var d,v;c==="left"?(d=o.value)==null||d.scrollBy(-200,0):c==="right"&&((v=o.value)==null||v.scrollBy(200,0))}function s(){var c;(c=o.value)==null||c.scrollTo(0,0)}n({resetScroll:s});function i(){return[`vs-fed-filter__scroll-rail--${t.variant}`,t.wrap?"vs-fed-filter__scroll-rail--wrap":""]}const l=vue.computed(()=>[...t.filterCategories].sort((d,v)=>{const m=(d.Label||d.Key||"").toLowerCase(),f=(v.Label||v.Key||"").toLowerCase();return m<f?-1:m>f?1:0}));function u(c){let d;switch(c){case"accommodation":d="fa-regular fa-bed";break;case"active-adventure":d="fa-kit fa-vs-landscape";break;case"city-break":d="fa-regular fa-city";break;case"culture-history":d="fa-regular fa-chess-rook";break;case"events":d="fa-regular fa-calendar-range";break;case"family-friendly":d="fa-regular fa-family";break;case"food-drink":d="fa-regular fa-utensils";break;case"nature-outdoors":d="fa-regular fa-leaf";break;case"tours":d="fa-regular fa-binoculars";break;case"travel-information":d="fa-regular fa-circle-info";break;case"wellness":d="fa-regular fa-spa";break;default:d=null;break}return d}return(c,d)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$7,[c.$slots["fed-filter-header"]&&c.$slots["fed-filter-header"]()?(vue.openBlock(),vue.createBlock(LoadingSpinner.VsBody,{key:0,class:"vs-fed-filter__header mb-025 ms-025","data-test":"vs-fed-filter__header"},{default:vue.withCtx(()=>[vue.renderSlot(c.$slots,"fed-filter-header")]),_:3})):vue.createCommentVNode("",!0),vue.createElementVNode("div",_hoisted_2$6,[e.scrollButtons?(vue.openBlock(),vue.createBlock(LoadingSpinner.VsButton,{key:0,variant:"secondary",icon:"fa-regular fa-chevron-left","icon-only":"",class:"vs-fed-filter__scroll-button me-050","data-test":"vs-fed-filter__scroll-button--left",onClick:d[0]||(d[0]=v=>r("left")),"aria-label":t.scrollLeftText},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.scrollLeftText),1)]),_:1},8,["aria-label"])):vue.createCommentVNode("",!0),vue.createElementVNode("div",{class:vue.normalizeClass(["vs-fed-filter__scroll-rail",i()]),id:`vs-fed-filter__scroll-rail--${t.variant}`,ref_key:"scrollRail",ref:o},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(l.value,(v,m)=>(vue.openBlock(),vue.createBlock(LoadingSpinner.VsButton,{key:m,class:"vs-fed-filter__category-button","data-test":`vs-fed-filter__category-button--${v.Key}`,icon:t.variant==="primary"?u(v.Key):null,variant:a(v.Key)?"primary":"secondary",size:t.variant==="secondary"?"sm":"md",onClick:f=>c.$emit("filter-updated",v)},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(v.Label||v.Key),1)]),_:2},1032,["data-test","icon","variant","size","onClick"]))),128))],10,_hoisted_3$4),e.scrollButtons?(vue.openBlock(),vue.createBlock(LoadingSpinner.VsButton,{key:1,variant:"secondary",icon:"fa-regular fa-chevron-right","icon-only":"",class:"vs-fed-filter__scroll-button ms-050","data-test":"vs-fed-filter__scroll-button--right",onClick:d[1]||(d[1]=v=>r("right")),"aria-label":t.scrollRightText},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.scrollRightText),1)]),_:1},8,["aria-label"])):vue.createCommentVNode("",!0)])]))}};function dataLayerComposable$1(){const e=LoadingSpinner.useDataLayerStore(),n=vue.ref(!1),t=vue.computed(()=>e.pageUrl);function o(l,u){const c={};return l.forEach(d=>{c[d]=u[d]||void 0,d==="language"&&c[d]===void 0&&(c[d]=u.site_language||void 0)}),c}function a(){return new Date(Date.now()).toISOString()}function r(l){const c={...e.GTMData,...l};return c.hit_timestamp=a(),c}function s(l){n.value?window.dataLayer.push(l):LoadingSpinner.checkVendorLibrary("dataLayer",()=>{n.value=!0,window.dataLayer.push(l)})}function i(l,u){let c,d,v,m;switch(l){case"siteSearchOpenEvent":c="site_search_open",d={event:c,referrer_page:u.referrer_page},v=r(d),m=o(LoadingSpinner.siteSearchOpenTemplate,v);break;case"siteSearchUsageEvent":c="site_search_event",d={event:c,search_query:u.search_query,query_input:u.query_input,results_count:u.results_count,search_usage_index:u.search_usage_index,search_type:u.search_type,search_origin:u.search_origin||"results_page",interaction_type:"search_input"},v=r(d),m=o(LoadingSpinner.siteSearchUsageTemplate,v);break;case"siteSearchClickEvent":c="site_search_click",d={event:c,interaction_type:u.interaction_type,search_query:u.search_query,query_input:u.query_input,page_number:u.page_number,page_navigation_direction:u.page_navigation_direction,click_text:u.click_text,click_url:u.click_url,click_category:u.click_category,search_usage_index:u.search_usage_index,results_count:u.results_count},v=r(d),m=o(LoadingSpinner.siteSearchClickTemplate,v);break;case"siteSearchCloseEvent":c="site_search_close",d={event:c,search_usage_index:u.search_usage_index,search_query:u.search_query,query_input:u.query_input,page_number:u.page_number,results_count:u.results_count},v=r(d),m=o(LoadingSpinner.siteSearchCloseTemplate,v);break}m&&s(m)}return{pageUrl:t,createDataLayerObject:i,templateFiller:o,compileFullTemplate:r,returnIsoDate:a,pushToDataLayer:s,dataLayerStore:e}}const _hoisted_1$6={class:"vs-fed-search-input"},_hoisted_2$5={class:"vs-fed-search__input"},_hoisted_3$3={class:"vs-fed-search__text-input"},_hoisted_4$3={for:"federated-search",class:"vs-federated-search__label"},_hoisted_5$3={key:0,class:"position-relative"},_hoisted_6$3={class:"vs-fed-search-input__autocomplete"},_hoisted_7$3=["onClick","onKeyup","innerHTML"],_sfc_main$6={__name:"FedSearchInput",props:{cludoApiKey:{type:String,default:getEnvValue("CLUDO_API_KEY")},cludoCustomerId:{type:Number,default:Number(getEnvValue("CLUDO_CUSTOMER_ID"))},cludoEngineId:{type:Number,default:Number(getEnvValue("CLUDO_ENGINE_ID"))},isHomePage:{type:Boolean,default:!1},searchUrl:{type:String,default:void 0},filters:{type:Array,default:void 0},subFilters:{type:Array,default:void 0},labels:{type:Object,required:!0}},setup(e){const n=dataLayerComposable$1(),t=e,o=useFederatedSearchStore(),{isLoading:a}=pinia.storeToRefs(o),r=vue.ref(),s=vue.ref(null),i=vue.ref(null);async function l(h){o.currentPage=1,o.searchTerm=h.value.trim();const b=window.location.search,V=new URLSearchParams(b);o.searchTerm&&V.get("search-term")!==o.searchTerm&&(r.value=await o.getAutoComplete()),o.searchTerm||(r.value=null)}async function u(){r.value=null,await o.navigateToResultsPage(),n.createDataLayerObject("siteSearchUsageEvent",{search_query:o.searchTerm,query_input:o.queryInput,results_count:o.totalResults,search_usage_index:o.searchInSessionCount,search_type:o.searchInSessionCount===1?"initial":"follow-up"})}function c(h){n.createDataLayerObject("siteSearchClickEvent",{interaction_type:"search_autosuggest",search_query:o.searchTerm,page_number:o.currentPage,search_usage_index:o.searchInSessionCount,results_count:o.totalResults,click_text:h,query_input:o.queryInput})}function d(h){o.searchTerm=h,r.value=null,o.navigateToResultsPage(!1,!0),c(h)}function v(h){return h.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function m(h){return h.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function f(h){const b=(o.searchTerm||"").trim();if(!b)return m(h);const V=new RegExp(`(${v(b)})`,"gi");return m(h).replace(V,"<strong>$1</strong>")}function p(h){n.createDataLayerObject("siteSearchClickEvent",{interaction_type:"facet_click",search_query:o.searchTerm,page_number:o.currentPage,search_usage_index:o.searchInSessionCount,results_count:o.totalResults,click_text:h.Label||h.Key})}async function g(h){const b=new URL(window.location);b.searchParams.delete("page"),o.currentPage=1,b.searchParams.delete("start-date"),b.searchParams.delete("end-date"),o.startDate="",o.endDate="",o.sortBy=void 0,o.selectedSubCategory=[],o.selectedSubCategoryKey=[],o.selectedCategory=o.selectedCategory!==h.Label?h.Label:"",o.selectedCategoryKey=o.selectedCategoryKey!==h.Key?h.Key:"",await o.navigateToResultsPage(!0),p(h)}function _(h){if(!o.selectedSubCategoryKey.includes(h.Key))o.selectedSubCategory.push(h.Label),o.selectedSubCategoryKey.push(h.Key);else{const b=o.selectedSubCategoryKey.indexOf(h.Key);b>=0&&(o.selectedSubCategory.splice(b,1),o.selectedSubCategoryKey.splice(b,1))}o.navigateToResultsPage(!0),p(h)}return vue.onMounted(()=>{o.cludoCredentials={apiKey:t.cludoApiKey,customerId:t.cludoCustomerId,engineId:t.cludoEngineId},o.isHomePage=t.isHomePage,t.searchUrl&&(o.searchUrl=t.searchUrl);const h=window.location.search,b=new URLSearchParams(h);b.has("search-term")&&(o.searchTerm=b.get("search-term")),b.has("category")&&(o.selectedCategoryKey=decodeURIComponent(b.get("category"))),b.has("sub-category")&&decodeURIComponent(b.get("sub-category")).split(",").forEach(S=>o.selectedSubCategoryKey.push(S)),b.has("category")&&b.get("category")==="events"&&b.has("sort-by")&&(o.sortBy=b.get("sort-by")),b.has("start-date")&&(o.startDate=b.get("start-date")),b.has("end-date")&&(o.endDate=b.get("end-date")),b.has("postcode")&&(o.postcode=b.get("postcode")),b.has("location")&&(o.location=b.get("location")),b.has("radius")&&(o.radius=b.get("radius")),b.has("postcodeareas")&&(o.postcodeareas=b.get("postcodeareas")),(b.has("search-term")||b.has("category"))&&o.getSearchResults()}),vue.watch(a,h=>{var b,V;h||((b=s.value)==null||b.resetScroll(),(V=i.value)==null||V.resetScroll())}),(h,b)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$6,[vue.createElementVNode("div",_hoisted_2$5,[vue.createElementVNode("div",_hoisted_3$3,[vue.createElementVNode("label",_hoisted_4$3,[b[0]||(b[0]=vue.createElementVNode("span",{class:"visually-hidden"}," Search for something ",-1)),vue.createVNode(vue.unref(LoadingSpinner.VsIcon),{icon:"vs-icon-control-search",size:"xs"})]),vue.createVNode(vue.unref(VsInput),{"auto-complete":!1,class:"vs-federated-search__input w-100","field-name":"federated-search",name:"searchrequest",placeholder:t.labels.searchLabel,type:"search",value:vue.unref(o).searchTerm,onUpdated:l,onKeyup:vue.withKeys(u,["enter"])},null,8,["placeholder","value"])]),vue.createVNode(vue.unref(LoadingSpinner.VsButton),{class:"d-none d-lg-block px-200",disabled:vue.unref(a),onClick:u},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.labels.search),1)]),_:1},8,["disabled"])]),r.value&&r.value.length>0?(vue.openBlock(),vue.createElementBlock("div",_hoisted_5$3,[vue.createElementVNode("div",_hoisted_6$3,[vue.createVNode(vue.unref(VsList),{unstyled:""},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(r.value,V=>(vue.openBlock(),vue.createElementBlock("li",{key:V,class:"vs-fed-search-input__autocomplete__suggestion",onClick:S=>d(V),onKeyup:vue.withKeys(S=>d(V),["enter"]),tabindex:"0",innerHTML:f(V)},null,40,_hoisted_7$3))),128))]),_:1})])])):vue.createCommentVNode("",!0),t.filters?(vue.openBlock(),vue.createBlock(_sfc_main$7,{key:1,"active-filter":vue.unref(o).selectedCategoryKey,"filter-categories":t.filters,ref_key:"categoryFilter",ref:s,wrap:!0,onFilterUpdated:g},null,8,["active-filter","filter-categories"])):vue.createCommentVNode("",!0),vue.unref(o).selectedCategoryKey==="events"&&t.subFilters?(vue.openBlock(),vue.createBlock(_sfc_main$7,{key:2,"active-filter":vue.unref(o).selectedSubCategoryKey,class:"mt-200","filter-categories":t.subFilters,ref_key:"subCategoryFilter",ref:i,variant:"secondary",onFilterUpdated:_},{"fed-filter-header":vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.labels.refine),1)]),_:1},8,["active-filter","filter-categories"])):vue.createCommentVNode("",!0)]))}},_hoisted_1$5={key:0,for:"vs-fed-search-sort__from-date",class:"vs-fed-search-sort__label","data-test":"vs-fed-search-sort__from-date-label"},_hoisted_2$4={key:0,for:"vs-fed-search-sort__to-date",class:"vs-fed-search-sort__label","data-test":"vs-fed-search-sort__to-date-label"},_sfc_main$5={__name:"FedSearchSort",props:{dateFilterVisible:{type:Boolean,default:!1},sortOptions:{type:Array,required:!0},fromDateLabel:{type:String,required:!0},toDateLabel:{type:String,required:!0},sortLabel:{type:String,required:!0}},emits:["from-date-updated","end-date-updated","sort-order-updated"],setup(e){const n=useFederatedSearchStore(),t=e,o=vue.computed(()=>t.sortOptions.find(a=>a.key===n.sortBy));return(a,r)=>(vue.openBlock(),vue.createBlock(LoadingSpinner.VsRow,{class:"vs-fed-search-sort"},{default:vue.withCtx(()=>[t.dateFilterVisible?(vue.openBlock(),vue.createBlock(LoadingSpinner.VsCol,{key:0,cols:"6",md:"4"},{default:vue.withCtx(()=>[t.fromDateLabel?(vue.openBlock(),vue.createElementBlock("label",_hoisted_1$5,vue.toDisplayString(t.fromDateLabel),1)):vue.createCommentVNode("",!0),vue.createVNode(VsInput,{"field-name":"vs-fed-search-sort__from-date",value:vue.unref(n).startDate||new Date().toJSON().slice(0,10),type:"date","auto-complete":!1,onInput:r[0]||(r[0]=s=>a.$emit("from-date-updated",s.target.value)),"data-chromatic":"ignore"},null,8,["value"])]),_:1})):vue.createCommentVNode("",!0),t.dateFilterVisible?(vue.openBlock(),vue.createBlock(LoadingSpinner.VsCol,{key:1,cols:"6",md:"4"},{default:vue.withCtx(()=>[t.toDateLabel?(vue.openBlock(),vue.createElementBlock("label",_hoisted_2$4,vue.toDisplayString(t.toDateLabel),1)):vue.createCommentVNode("",!0),vue.createVNode(VsInput,{"field-name":"vs-fed-search-sort__to-date",type:"date","auto-complete":!1,onInput:r[1]||(r[1]=s=>a.$emit("end-date-updated",s.target.value)),value:vue.unref(n).endDate||""},null,8,["value"])]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(LoadingSpinner.VsCol,{cols:"12",md:"4",class:"vs-fed-search-sort__dropdown-wrapper"},{default:vue.withCtx(()=>[vue.createVNode(VsDropdown,{variant:"secondary",id:"vs-fed-search-sort__dropdown",name:"vs-fed-search-sort__dropdown",text:vue.unref(n).sortBy?`${t.sortLabel}: ${o.value.label}`:t.sortLabel},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.sortOptions,(s,i)=>(vue.openBlock(),vue.createBlock(VsDropdownItem,{key:i,onClick:l=>{a.$emit("sort-order-updated",s.key)},active:vue.unref(n).sortBy===s.key,"data-test":`vs-fed-search-sort__dropdown-item--${s.key}`},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(s.label),1)]),_:2},1032,["onClick","active","data-test"]))),128))]),_:1},8,["text"])]),_:1})]),_:1}))}},_hoisted_1$4={class:"vs-federated-search","data-test":"vs-federated-search"},_hoisted_2$3={class:"vs-federated-search__container"},_hoisted_3$2={key:0,class:"vs-federated-search__results","data-chromatic":"ignore"},_hoisted_4$2={key:2,"data-chromatic":"ignore"},_hoisted_5$2={class:"position-relative"},_hoisted_6$2={class:"position-absolute bottom-0 start-0 d-flex gap-2"},_hoisted_7$2={class:"position-absolute bottom-0 end-0 d-flex"},_hoisted_8={class:"truncate-3-lines text-break"},_hoisted_9={class:"d-flex justify-content-end align-items-end mt-050"},_hoisted_10={key:0,class:"d-flex align-items-start flex-grow-1"},_hoisted_11={key:3,class:"vs-federated-search__warning mb-300"},fallbackImg="https://static.visitscotland.com/img/fallback-img.png",_sfc_main$4={__name:"FederatedSearch",props:{cludoApiKey:{type:String,default:getEnvValue("CLUDO_API_KEY")},cludoCustomerId:{type:Number,default:Number(getEnvValue("CLUDO_CUSTOMER_ID"))},cludoEngineId:{type:Number,default:Number(getEnvValue("CLUDO_ENGINE_ID"))},eventsApi:{type:String,default:getEnvValue("EVENTS_API_URL")},filters:{type:Array,default:void 0},subFilters:{type:Array,default:void 0},errorMessages:{type:Object,required:!0},fromText:{type:String,default:""},paginationLabels:{type:Object,required:!0},searchLabels:{type:Object,required:!0},sortLabels:{type:Object,required:!0},cardCategoryLabels:{type:Object,required:!0,default:()=>{}},siteLanguage:{type:String,default:"en",validator:e=>e.match(/(en|es|it|de|nl|fr)/)},cludoApiOperator:{type:String,default:"or",validator:e=>["and","or"].includes(e)}},setup(e){const n=dataLayerComposable$1(),t=useFederatedSearchStore(),o=vue.ref({message:"",error:!1}),a=e,r=vue.ref(!1),s=vue.computed(()=>{let h;return t.selectedCategoryKey==="events"?h=Math.ceil(t.totalResultsEvents/12):h=t.totalResultsCludo>=t.totalResultsEvents?Math.ceil(t.totalResultsCludo/6):Math.ceil(t.totalResultsEvents/6),h});function i(){t.endDate&&t.startDate>t.endDate?(o.value.error=!0,o.value.message=a.errorMessages.incorrectDateOrder):t.selectedCategoryKey==="events"&&t.eventsApiError&&!t.isLoading?(o.value.error=!0,o.value.message=a.errorMessages.eventError):(t.searchTerm||t.selectedCategory)&&t.selectedCategoryKey!=="events"&&t.cludoError&&!t.isLoading?(o.value.error=!0,o.value.message=a.errorMessages.cludoError):t.totalResults===0&&!t.isLoading?(o.value.error=!0,o.value.message=a.errorMessages.noResults):(o.value.error=!1,o.value.message="")}vue.onMounted(async()=>{if(n.createDataLayerObject("siteSearchOpenEvent",{referrer_page:document.referrer}),t.cludoCredentials={apiKey:a.cludoApiKey,customerId:a.cludoCustomerId,engineId:a.cludoEngineId},t.eventsApi=a.eventsApi,t.filters=a.filters,t.siteLanguage=a.siteLanguage,t.cludoApiOperator=a.cludoApiOperator,i(),typeof window<"u"&&typeof document<"u"){window.onbeforeunload=()=>{_()};const h=new URLSearchParams(document.location.search),b=h.get("search-term"),V=parseInt(h.get("page"),10);V&&(t.currentPage=V),b&&(t.searchTerm=b),await t.getSearchResults(),b&&n.createDataLayerObject("siteSearchUsageEvent",{search_query:t.searchTerm,query_input:t.queryInput,results_count:t.totalResults,search_usage_index:t.searchInSessionCount,search_type:"initial",search_origin:"home_page"})}});function l(h){t.startDate=h,t.navigateToResultsPage(!0)}function u(h){t.endDate=h,t.navigateToResultsPage(!0)}function c(h){t.sortBy=h,t.navigateToResultsPage(!0)}function d(h){let b=!1;h>t.currentPage&&(b=!0),t.currentPage=h,typeof window<"u"&&window.scrollTo({top:0,left:0,behavior:"smooth"}),t.navigateToResultsPage(),g(b)}function v(h,b){return h===b?h:`${h} - ${b}`}function m(h){return h===null?"":h.match(/\b\d+\.\d\b/)?`£${h}0`:`£${h}`}function f(h){if(h.url)return h.url;if(h.placeUrl)return h.placeUrl;const b="https://www.datathistle.com/event/",V=encodeURIComponent(h.title.replaceAll(" ","-").toLowerCase());return`${b}${h.parentId}-${V}`}function p(h){r.value=!0,n.createDataLayerObject("siteSearchClickEvent",{interaction_type:"search_link_click",search_query:t.searchTerm,page_number:t.currentPage,click_text:h.title,click_url:f(h),click_category:h.categoryCard&&a.cardCategoryLabels[h.categoryCard]?a.cardCategoryLabels[h.categoryCard]:"",search_usage_index:t.searchInSessionCount,results_count:t.totalResults,query_input:t.queryInput})}function g(h){n.createDataLayerObject("siteSearchClickEvent",{interaction_type:"search_link_click",search_query:t.searchTerm,page_number:t.currentPage,page_navigation_direction:h?"forward":"back",search_usage_index:t.searchInSessionCount,results_count:t.totalResults,query_input:t.queryInput})}function _(){r.value||n.createDataLayerObject("siteSearchCloseEvent",{search_query:t.searchTerm,search_usage_index:t.searchInSessionCount,query_input:t.queryInput,page_number:t.currentPage,results_count:t.totalResults})}return vue.onUpdated(()=>{i()}),(h,b)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$4,[vue.createElementVNode("div",_hoisted_2$3,[vue.createVNode(_sfc_main$6,{"cludo-api-key":a.cludoApiKey,"cludo-customer-id":a.cludoCustomerId,"cludo-engine-id":a.cludoEngineId,filters:a.filters,"sub-filters":a.subFilters,labels:a.searchLabels},null,8,["cludo-api-key","cludo-customer-id","cludo-engine-id","filters","sub-filters","labels"]),vue.createVNode(_sfc_main$2B,{class:"my-200"}),(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(t).filters,(V,S)=>vue.withDirectives((vue.openBlock(),vue.createElementBlock("div",{key:S,class:"mb-200"},[vue.renderSlot(h.$slots,`federated-search__spotlight-${V.Key}`)],512)),[[vue.vShow,vue.unref(t).selectedCategoryKey===V.Key]])),128)),vue.unref(t).results?(vue.openBlock(),vue.createElementBlock("div",_hoisted_3$2,[vue.createElementVNode("div",null,[vue.createVNode(vue.unref(LoadingSpinner.VsHeading),{"heading-style":"heading-m",level:2,class:"my-0"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.searchLabels.searchResults),1)]),_:1}),vue.unref(t).totalResults!==0?(vue.openBlock(),vue.createBlock(vue.unref(VsDetail),{key:0},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.searchLabels.resultsFirst)+" "+vue.toDisplayString(vue.unref(t).totalResults)+" "+vue.toDisplayString(a.searchLabels.resultsSecond),1)]),_:1})):vue.createCommentVNode("",!0)]),vue.unref(t).selectedCategoryKey==="events"?(vue.openBlock(),vue.createBlock(_sfc_main$5,{key:0,"date-filter-visible":!0,"sort-options":a.sortLabels.sortOptions,"from-date-label":a.sortLabels.dateFrom,"to-date-label":a.sortLabels.dateTo,"sort-label":a.sortLabels.sort,onFromDateUpdated:l,onEndDateUpdated:u,onSortOrderUpdated:c},null,8,["sort-options","from-date-label","to-date-label","sort-label"])):vue.createCommentVNode("",!0)])):vue.createCommentVNode("",!0),vue.unref(t).isLoading?(vue.openBlock(),vue.createBlock(vue.unref(LoadingSpinner.VsLoading),{key:1})):vue.createCommentVNode("",!0),!vue.unref(t).isLoading&&vue.unref(t).results&&!vue.unref(t).eventsApiError?(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$2,[vue.createVNode(vue.unref(VsCardGroup),{"cards-per-row":3,class:vue.normalizeClass(vue.unref(t).results&&s.value<=1?"mb-300":null)},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(t).results,V=>(vue.openBlock(),vue.createBlock(vue.unref(VsCard),{key:V.id},{"vs-card-header":vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_5$2,[vue.createVNode(vue.unref(LoadingSpinner.VsImg),{src:V.imgSrc||fallbackImg,class:"w-100 aspect-ratio-3-2 rounded-1 object-fit-cover img-zoom-on-hover"},null,8,["src"]),vue.createElementVNode("div",_hoisted_6$2,[V.minPrice?(vue.openBlock(),vue.createBlock(vue.unref(VsBadge),{key:0,variant:"information",class:"rounded-top-end rounded-bottom-start"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.fromText)+" "+vue.toDisplayString(m(V.minPrice)),1)]),_:2},1024)):vue.createCommentVNode("",!0),V.startDate?(vue.openBlock(),vue.createBlock(vue.unref(VsBadge),{key:1,variant:"information",class:"rounded-top-end rounded-top-start"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(v(V.startDate,V.endDate)),1)]),_:2},1024)):vue.createCommentVNode("",!0)]),vue.createElementVNode("div",_hoisted_7$2,[V.categoryCard&&e.cardCategoryLabels[V.categoryCard]?(vue.openBlock(),vue.createBlock(vue.unref(VsBadge),{key:0,variant:"highlight",class:"rounded-top-start rounded-bottom-start mx-0"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(e.cardCategoryLabels[V.categoryCard]),1)]),_:2},1024)):vue.createCommentVNode("",!0)])])]),"vs-card-body":vue.withCtx(()=>[vue.createVNode(vue.unref(LoadingSpinner.VsHeading),{level:"3","heading-style":"heading-xs"},{default:vue.withCtx(()=>[vue.createVNode(vue.unref(VsLink),{href:f(V),onClick:S=>p(V),class:"stretched-link",variant:"secondary"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(V.title),1)]),_:2},1032,["href","onClick"])]),_:2},1024),vue.createVNode(vue.unref(LoadingSpinner.VsBody),null,{default:vue.withCtx(()=>[vue.createElementVNode("p",_hoisted_8,vue.toDisplayString(V.description),1)]),_:2},1024)]),"vs-card-footer":vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_9,[V.location?(vue.openBlock(),vue.createElementBlock("div",_hoisted_10,[vue.createVNode(vue.unref(LoadingSpinner.VsIcon),{icon:"fa-solid fa-location-dot",variant:"highlight",class:"me-050",size:"sm"}),vue.createVNode(vue.unref(VsDetail),{"no-margins":"",color:"tertiary"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(V.location),1)]),_:2},1024)])):vue.createCommentVNode("",!0),vue.createElementVNode("div",null,[V.dataSrc==="data-thistle"?(vue.openBlock(),vue.createBlock(vue.unref(LoadingSpinner.VsIcon),{key:0,icon:"vs-icon-control-external-link",variant:"highlight",size:"sm"})):vue.createCommentVNode("",!0)])])]),_:2},1024))),128))]),_:1},8,["class"]),vue.unref(t).results&&s.value>1?(vue.openBlock(),vue.createBlock(vue.unref(_sfc_main$D),{key:0,class:"vs-federated-search__pagination","number-of-pages":s.value,"next-button-label":a.paginationLabels.nextButtonLabel,"previous-button-label":a.paginationLabels.previousButtonLabel,"page-label":a.paginationLabels.pageLabel,"of-label":a.paginationLabels.ofLabel,modelValue:vue.unref(t).currentPage,"onUpdate:modelValue":b[0]||(b[0]=V=>vue.unref(t).currentPage=V),onPageClick:d},null,8,["number-of-pages","next-button-label","previous-button-label","page-label","of-label","modelValue"])):vue.createCommentVNode("",!0)])):vue.createCommentVNode("",!0),o.value.error?(vue.openBlock(),vue.createElementBlock("div",_hoisted_11,[o.value.error?(vue.openBlock(),vue.createBlock(vue.unref(LoadingSpinner.VsWarning),{key:0},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(o.value.message),1)]),_:1})):vue.createCommentVNode("",!0)])):vue.createCommentVNode("",!0)]),vue.createVNode(vue.unref(LoadingSpinner.VsWarning),{"data-test":"vs-federated-search__error--no-js",class:"vs-federated-search__error--no-js mb-300"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.searchLabels.noJs),1)]),_:1})]))}};var define_process_env_default={};function setScriptSrc(e,n){e.src=n}const bootstrap=e=>{var n,t,o,a="The Google Maps JavaScript API",r="google",s="importLibrary",i="__ib__",l=document,u=window,c=u[r]||(u[r]={}),d=c.maps||(c.maps={}),v=new Set,m=new URLSearchParams,f=()=>n||(n=new Promise(async(p,g)=>{var _;await(t=l.createElement("script")),m.set("libraries",[...v]+"");for(o in e)m.set(o.replace(/[A-Z]/g,h=>"_"+h[0].toLowerCase()),e[o]);m.set("callback",r+".maps."+i),setScriptSrc(t,"https://maps.googleapis.com/maps/api/js?"+m),d[i]=p,t.onerror=()=>n=g(Error(a+" could not load.")),t.nonce=((_=l.querySelector("script[nonce]"))==null?void 0:_.nonce)||"",l.head.append(t)}));d[s]?console.warn(a+" only loads once. Ignoring:",e):d[s]=(p,...g)=>v.add(p)&&f().then(()=>d[s](p,...g))},MSG_REPEATED_SET_OPTIONS=e=>`The setOptions() function should only be called once. The options passed to the additional call (${JSON.stringify(e)}) will be ignored.`,MSG_IMPORT_LIBRARY_EXISTS=e=>`The google.maps.importLibrary() function is already defined, and @googlemaps/js-api-loader will use the existing function instead of overwriting it. The options passed to setOptions (${JSON.stringify(e)}) will be ignored.`,MSG_SET_OPTIONS_NOT_CALLED="No options were set before calling importLibrary. Make sure to configure the loader using setOptions().",MSG_SCRIPT_ELEMENT_EXISTS="There already is a script loading the Google Maps JavaScript API, and no google.maps.importLibrary function is defined. @googlemaps/js-api-loader will proceed to bootstrap the API with the specified options, but the existing script might cause problems using the API. Make sure to remove the script loading the API.",logDevWarning=define_process_env_default.NODE_ENV!=="production"?e=>{console.warn(`[@googlemaps/js-api-loader] ${e}`)}:()=>{},logDevNotice=define_process_env_default.NODE_ENV!=="production"?e=>{console.info(`[@googlemaps/js-api-loader] ${e}`)}:()=>{};let setOptionsWasCalled_=!1;function setOptions(e){if(setOptionsWasCalled_){logDevWarning(MSG_REPEATED_SET_OPTIONS(e));return}installImportLibrary_(e),setOptionsWasCalled_=!0}async function importLibrary(e){var n,t;if(setOptionsWasCalled_||logDevWarning(MSG_SET_OPTIONS_NOT_CALLED),!((t=(n=window==null?void 0:window.google)==null?void 0:n.maps)!=null&&t.importLibrary))throw new Error("google.maps.importLibrary is not installed.");return await google.maps.importLibrary(e)}function installImportLibrary_(e){var t,o;const n=!!((o=(t=window.google)==null?void 0:t.maps)!=null&&o.importLibrary);n?logDevNotice(MSG_IMPORT_LIBRARY_EXISTS(e)):define_process_env_default.NODE_ENV!=="production"&&document.querySelector('script[src*="maps.googleapis.com/maps/api/js"]')&&logDevWarning(MSG_SCRIPT_ELEMENT_EXISTS),n||bootstrap(e)}const useGoogleMapStore=pinia.defineStore("googleMap",()=>{const e=vue.ref(!0),n=vue.ref(Date.now()),t=vue.ref(!1),o=vue.ref(0),a=vue.ref(0);return{sidebarOpen:e,timeMounted:n,firstInteraction:t,searchesCount:o,filterUsesCount:a}}),_hoisted_1$3={class:"px-125 pb-125"},_sfc_main$3={__name:"MapFeaturedLocationItem",props:{place:{type:Object,default:()=>{}}},setup(e){const n=e,t=vue.inject("onFeaturedLocationClick");function o(a){t(a)}return(a,r)=>(vue.openBlock(),vue.createBlock(VsCard,{"card-style":"overlay",class:"vs-map__controls-featured-place-card",onClick:r[2]||(r[2]=s=>o(n.place))},vue.createSlots({"vs-card-footer":vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$3,[vue.createVNode(LoadingSpinner.VsHeading,{class:"vs-map__controls-featured-place-card-heading","heading-style":"heading-xxxs",level:"2","no-margins":""},{default:vue.withCtx(()=>[vue.createVNode(VsLink,{class:"stretched-link text-decoration-none",href:"#",variant:"on-dark",onKeyup:[r[0]||(r[0]=vue.withKeys(vue.withModifiers(s=>o(n.place),["prevent"]),["enter"])),r[1]||(r[1]=vue.withKeys(vue.withModifiers(s=>o(n.place),["prevent"]),["space"]))]},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(n.place.properties.title),1)]),_:1})]),_:1})])]),_:2},[n.place.properties.image?{name:"vs-card-image",fn:vue.withCtx(()=>[vue.createVNode(LoadingSpinner.VsImg,{class:"vs-map__controls-featured-place-img w-100 rounded-1 object-fit-cover img-zoom-on-hover",src:n.place.properties.image,"use-lazy-loading":!1},null,8,["src"])]),key:"0"}:void 0]),1024))}},_hoisted_1$2={class:"category-title"},_hoisted_2$2={class:"vs-map__controls-featured-place-accordion-content p-075"},_sfc_main$2={__name:"MapFeaturedLocation",setup(e){const{categories:n,places:t}=vue.inject("featuredPlaces");function o(a){switch(a){case"cities":return"fa-regular fa-city";case"regions":return"fa-regular fa-map-location-dot";case"islands":return"fa-regular fa-island-tropical";case"towns":return"fa-regular fa-house-chimney-window";case"national-parks":return"fa-kit fa-vs-icon-national-park";default:return null}}return(a,r)=>vue.unref(n)&&vue.unref(t)?(vue.openBlock(),vue.createBlock(VsAccordion,{key:0},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(n),(s,i)=>(vue.openBlock(),vue.createBlock(VsAccordionItem,{key:i,"control-id":s.id,"open-by-default":s.id==="cities"},{title:vue.withCtx(()=>[vue.createVNode(LoadingSpinner.VsIcon,{class:"me-025 fa-fw","custom-colour":"#200F2E",icon:o(s.id),size:"sm",variant:"highlight"},null,8,["icon"]),vue.createElementVNode("span",_hoisted_1$2,vue.toDisplayString(s.label),1)]),default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_2$2,[vue.createVNode(VsCardGroup,{"scroll-snap":"always"},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(t),l=>(vue.openBlock(),vue.createElementBlock(vue.Fragment,null,[l.properties.category.id===s.id?(vue.openBlock(),vue.createBlock(_sfc_main$3,{key:l.properties.id,place:l},null,8,["place"])):vue.createCommentVNode("",!0)],64))),256))]),_:2},1024)])]),_:2},1032,["control-id","open-by-default"]))),128))]),_:1})):vue.createCommentVNode("",!0)}},_hoisted_1$1={class:"vs-map-sidebar__header d-flex"},_hoisted_2$1={class:"vs-map-sidebar__content"},_hoisted_3$1={class:"vs-map-sidebar__input d-flex mt-100 mb-050"},_hoisted_4$1={key:1,class:"vs-map-sidebar__sub-filters-wrapper"},_hoisted_5$1={class:"vs-map-sidebar__search-results"},_hoisted_6$1={class:"vs-map-sidebar__google-maps-container mt-075"},_hoisted_7$1={key:0,class:"vs-map-sidebar__footer"},_sfc_main$1=vue.defineComponent({__name:"MapSidebar",props:{query:{type:String,default:""},selectedCategories:{type:String,default:""},headerLabel:{type:String,default:""},closeSidebarButtonLabel:{type:String,default:""},searchBarAriaLabel:{type:String,default:""},inputPlaceholderLabel:{type:String,default:""},searchButtonLabel:{type:String,default:""},clearMapLabel:{type:String,default:""},subFilterHeaderLabel:{type:String,default:""},searchResultsLabel:{type:String,default:""},openSidebarButtonLabel:{type:String,default:""}},emits:["search-input-changed","reset-map"],setup(e){const n=useGoogleMapStore(),t=e;return(o,a)=>(vue.openBlock(),vue.createElementBlock(vue.Fragment,null,[vue.createElementVNode("div",{class:vue.normalizeClass(["vs-map-sidebar px-125",vue.unref(n).sidebarOpen?"d-block":"d-none"]),"data-test":"vs-map-sidebar",ref:"vsMapSidebar"},[vue.createElementVNode("div",_hoisted_1$1,[t.headerLabel?(vue.openBlock(),vue.createBlock(LoadingSpinner.VsHeading,{key:0,level:"1","heading-style":"heading-xxs",class:"flex-grow-1",id:"vs-map-sidebar__heading","data-test":"vs-map-sidebar__heading"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.headerLabel),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(LoadingSpinner.VsButton,{class:"vs-map-sidebar__sidebar-control vs-map-siderbar__sidebar-control--dismiss","data-test":"vs-map-siderbar__sidebar-control--dismiss",icon:"vs-icon-control-dismiss","icon-only":"",variant:"subtle",onClick:a[0]||(a[0]=r=>vue.unref(n).sidebarOpen=!1)},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.closeSidebarButtonLabel),1)]),_:1})]),vue.createElementVNode("div",_hoisted_2$1,[vue.createElementVNode("div",_hoisted_3$1,[vue.createVNode(VsInput,{type:"text",autocomplete:"off","field-name":"vs-map-search-input","data-test":"vs-map-search-input",ref:"vs-search-input",placeholder:t.inputPlaceholderLabel,class:"vs-map-sidebar__input flex-grow-1","aria-label":t.searchBarAriaLabel,onKeyup:a[1]||(a[1]=vue.withKeys(vue.withModifiers(r=>o.$emit("search-input-changed"),["prevent"]),["enter"]))},null,8,["placeholder","aria-label"]),vue.createVNode(LoadingSpinner.VsButton,{class:"vs-map-sidebar__search-button","data-test":"vs-map-sidebar__search-button",icon:"vs-icon-control-search","icon-only":"",rounded:!1,size:"lg",onClick:a[2]||(a[2]=vue.withModifiers(r=>o.$emit("search-input-changed"),["prevent"])),onKeyup:a[3]||(a[3]=vue.withKeys(vue.withModifiers(r=>o.$emit("search-input-changed"),["prevent"]),["enter"]))},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.searchButtonLabel),1)]),_:1})]),o.$props.query||o.$props.selectedCategories?(vue.openBlock(),vue.createElementBlock("a",{key:0,href:"#",class:"d-block","data-test":"vs-map-sidebar__reset-map",onClick:a[4]||(a[4]=vue.withModifiers(r=>o.$emit("reset-map"),["prevent"])),onKeyup:a[5]||(a[5]=vue.withKeys(vue.withModifiers(r=>o.$emit("reset-map"),["prevent"]),["enter"]))},vue.toDisplayString(t.clearMapLabel),33)):vue.createCommentVNode("",!0),o.$slots["vs-map-sidebar-sub-filters"]&&o.$slots["vs-map-sidebar-sub-filters"]()?(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$1,[vue.createVNode(VsDetail,{class:"vs-map-sidebar__sub-filter-header",size:"small",color:"secondary"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.subFilterHeaderLabel),1)]),_:1}),vue.renderSlot(o.$slots,"vs-map-sidebar-sub-filters")])):vue.createCommentVNode("",!0),vue.createElementVNode("div",_hoisted_5$1,[o.$props.query||o.$props.selectedCategories?(vue.openBlock(),vue.createBlock(LoadingSpinner.VsHeading,{key:0,level:"2","heading-style":"heading-xxxs","data-test":"vs-map-sidebar__search-result-query"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.searchResultsLabel)+' "'+vue.toDisplayString(t.query||t.selectedCategories)+'" ',1)]),_:1})):vue.createCommentVNode("",!0),vue.createElementVNode("div",_hoisted_6$1,[vue.renderSlot(o.$slots,"vs-map-sidebar-search-results")])]),vue.createVNode(_sfc_main$2,{class:vue.normalizeClass(["mb-100",o.$props.query||o.$props.selectedCategories?"d-none":"d-block"])},null,8,["class"])]),o.$props.query||o.$props.selectedCategories?(vue.openBlock(),vue.createElementBlock("div",_hoisted_7$1,[...a[7]||(a[7]=[vue.createElementVNode("hr",{class:"vs-map-sidebar__swipe-tab"},null,-1)])])):vue.createCommentVNode("",!0)],2),vue.createVNode(LoadingSpinner.VsButton,{class:vue.normalizeClass(["vs-map-sidebar__sidebar-control vs-map-sidebar__sidebar-control--open",vue.unref(n).sidebarOpen?"d-none":"d-block"]),"data-test":"vs-map-sidebar__sidebar-control--open",size:"sm",icon:"fa-regular fa-sliders","icon-only":"",onClick:a[6]||(a[6]=r=>vue.unref(n).sidebarOpen=!0)},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.openSidebarButtonLabel),1)]),_:1},8,["class"])],64))}}),cookieCheckerComposable=()=>{const e=vue.ref([]),n=vue.ref(!1),t=vue.ref(!1),o=vue.computed(()=>typeof window<"u"&&window.bypassCookiesRequired?!0:n.value),a=vue.computed(()=>typeof window<"u"&&window.bypassCookiesLoaded?!0:{cookieManagerLoaded:t});function r(){t.value=!0}function s(){let i=!1;typeof CookieControl<"u"&&e.value&&(i=e.value.every(l=>CookieControl.getCategoryConsent(l)===!0)),n.value=i}return vue.onMounted(()=>{window.addEventListener("cookieManagerLoaded",()=>{r()}),window.addEventListener("cookiesUpdated",()=>{s()})}),{requiredCookies:e,cookiesAllowed:o,cookiesLoaded:a}};function dataLayerComposable(){const e=LoadingSpinner.useDataLayerStore(),n=vue.ref(!1),t=vue.computed(()=>e.pageUrl);function o(l,u){const c={};return l.forEach(d=>{c[d]=u[d]||void 0,d==="language"&&c[d]===void 0&&(c[d]=u.site_language||void 0)}),c}function a(){return new Date(Date.now()).toISOString()}function r(l){const c={...e.GTMData,...l};return c.hit_timestamp=a(),c}function s(l){n.value?window.dataLayer.push(l):LoadingSpinner.checkVendorLibrary("dataLayer",()=>{n.value=!0,window.dataLayer.push(l)})}function i(l,u){let c,d,v,m;switch(l){case"googleMapSearchEvent":c="map_search",d={event:c,search_query:u.search_query,search_map_location:u.search_map_location,search_results_count:u.search_results_count,search_usage_index:u.search_usage_index},v=r(d),m=o(LoadingSpinner.googleMapSearchTemplate,v);break;case"googleMapFilterEvent":c="map_filter_interaction",d={event:c,filter_type:u.filter_type,search_map_location:u.search_map_location,filter_selection:u.filter_selection,results_count:u.results_count,filter_usage_index:u.filter_usage_index},v=r(d),m=o(LoadingSpinner.googleMapFilterInteractionTemplate,v);break;case"googleMapTimeToFirstInteractionEvent":c="map_time_to_first_interaction",d={event:c,time_to_first_interaction_ms:u.time_to_first_interaction_ms,first_interaction_type:u.first_interaction_type},v=r(d),m=o(LoadingSpinner.googleMapTimeToFirstInteractionTemplate,v);break;case"googleMapInteractionEvent":c="map_interaction_click",d={event:c,interaction_type:u.interaction_type,search_query:u.search_query,map_location:u.map_location,visible_attractions_count:u.visible_attractions_count,card_attraction_name:u.card_attraction_name,card_attraction_category:u.card_attraction_category,card_attraction_url:u.card_attraction_url,card_attraction_rating:u.card_attraction_rating,interaction_timestamp_ms:u.interaction_timestamp_ms},v=r(d),m=o(LoadingSpinner.googleMapInteractionTemplate,v);break}m&&s(m)}return{pageUrl:t,createDataLayerObject:i,templateFiller:o,compileFullTemplate:r,returnIsoDate:a,pushToDataLayer:s,dataLayerStore:e}}const _hoisted_1={class:"vs-map"},_hoisted_2={class:"vs-map__controls"},_hoisted_3={class:"vs-map-sidebar__sub-filters"},_hoisted_4={key:0},_hoisted_5={key:0,class:"vs-map__filter-controls"},_hoisted_6={class:"vs-map__wrapper"},_hoisted_7={id:"vs-map","map-id":"vs-map",ref:"vsMap"},MAX_ZOOM=17,CATEGORY_VISIBLE_ZOOM=11,NUMBER_OF_RESULTS=20,_sfc_main={__name:"MainMap",props:{apiKey:{type:String,default:getEnvValue("GOOGLE_MAPS_API_KEY")},mapId:{type:String,default:"vs-map"},mapTypeVector:{type:Boolean,default:!1},center:{type:Object,default:()=>({lat:56.490153,lng:-4.10959})},zoom:{type:Number,default:6},radius:{type:Number,default:1e3},labels:{type:Object,default:()=>{}},languageCode:{type:String,default:"en",validator:e=>e.match(/(en|es|it|de|nl|fr)/)},categoriesLocation:{type:String,default:""},categoryLabels:{type:Object,default:()=>{}},featuredPlaces:{type:Object,default:void 0},jsDisabled:{type:Boolean,required:!0},noJsMessage:{type:String,required:!0},noCookiesMessage:{type:String,required:!0},cookieBtnText:{type:String,required:!0},noResultsMessage:{type:String,required:!0},resetMapNoResultsMessage:{type:String,required:!0},alertText:{type:String,default:void 0}},setup(e){const n=dataLayerComposable(),t=e,o=t.categoryLabels.find(N=>N.id==="destinations"),a=o?o.subCategory:null;vue.provide("featuredPlaces",{categories:a,places:t.featuredPlaces}),vue.provide("onFeaturedLocationClick",ye);let r,s,i,l,u,c,d,v,m,f,p={},g;const _=vue.ref(),h=vue.ref(new Set),b=vue.ref(),V=vue.ref(new Set),S=vue.ref(new Set),$=vue.ref(new Set),w=vue.ref(new Set),k=vue.ref(),P=vue.ref(),O=vue.ref(t.zoom),B=vue.ref(!1),T=vue.ref(),L=vue.ref(new Set),E=vue.ref(),z=vue.ref(!1),F=vue.ref(void 0),A=vue.computed(()=>{const N=new Map,I=Y[_.value].subCategory;return Object.values(I).forEach(M=>{N.set(M.id,{includedTypes:M.includedType,excludedTypes:M.excludedType})}),N}),C=useGoogleMapStore(),D=vue.ref(void 0);let R;const G=vue.ref(void 0),U={north:60.8,south:54.8,west:-8.5,east:-.7};let Y={};const X=t.categoryLabels;let W=0;vue.onBeforeMount(()=>{const N=cookieCheckerComposable();N.requiredCookies.value=cookieValues$5.google_maps,R=vue.computed(()=>!N.cookiesAllowed.value&&N.cookiesLoaded.value===!0||!N.cookiesLoaded.value?(G.value="noCookie",!0):!1)}),vue.onMounted(async()=>{if(t.categoriesLocation&&LoadingSpinner.axios.get(t.categoriesLocation).then(I=>{Y=I.data,F.value=I.data.accommodation.keywords}).catch(()=>{}),R.value===!1){setOptions({key:t.apiKey,v:"quarterly",libraries:["maps","places","marker","core","geometry"],region:"GB",language:t.languageCode});try{await importLibrary("maps"),await importLibrary("places"),await importLibrary("marker"),await importLibrary("core"),await importLibrary("geometry")}catch{console.error("Google Maps Library load error")}}s=document.getElementById("vs-map"),i=document.getElementById("nearbySearch"),l=document.getElementById("textSearch"),u=document.querySelector("gmp-place-text-search-request"),c=document.querySelector("gmp-place-nearby-search-request"),d=document.querySelector("gmp-place-details"),v=document.getElementById("placeRequest"),m=document.getElementById("vs-map-search-input");async function N(){try{const I={center:{lat:t.center.lat,lng:t.center.lng},renderingType:t.mapTypeVector?google.maps.RenderingType.VECTOR:google.maps.RenderingType.RASTER,zoom:t.zoom,isFractionalZoomEnabled:!0,mapId:t.mapId,restriction:{latLngBounds:U},zoomControl:!0,fullscreenControl:!1,mapTypeControl:!1,cameraControl:!1,streetViewControl:!1,gestureHandling:"greedy"};if(s)r=new google.maps.Map(s,I),r.fitBounds(U);else throw new Error("Init error, mapContainer undefined")}catch(I){console.error("Maps init error",I.message)}f=new google.maps.InfoWindow,f.addListener("closeclick",()=>{se("card_close",v.place)}),Z(),r.addListener("zoom_changed",()=>{O.value=r.getZoom(),O.value<CATEGORY_VISIBLE_ZOOM?Z():Z(!0)}),r.addListener("idle",()=>{g=_e()}),i.addEventListener("gmp-select",({place:I})=>{p[I.id]&&ce(I,p[I.id])}),l.addEventListener("gmp-select",({place:I})=>{p[I.id]&&ce(I,p[I.id])})}C.firstInteraction=!1,C.searchesCount=0,C.filterUsesCount=0,R.value===!1&&await N()});function Z(N){const I={strokeColor:"#A3A3CC",strokeOpacity:1,strokeWeight:1,fillColor:"#A3A3CC",fillOpacity:.5},M=["ChIJ39UebIqp0EcRqI4tMyWV4fQ","ChIJdZmmmcoQXkgR2OO3bu8o5fc","ChIJ-ydAXOS6WUgRCPTbzjQSfM8","ChIJ7Q8cbLY0ZEgRouilirxxux4","ChIJ1YEuRDCFY0gRDeDw8bxbAuo","ChIJv-VNj0VoEkYRK9BkuJ07sKE","ChIJ-1-U7rYnS0YRzZLgw9BDh1I","ChIJ8fA1bTmyXEYRYm-tjaLruCI","ChIJ6_ktdpMVvEgRJBv3ZEgxsD8","ChIJa76xwh5ymkcRW-WRjmtd6HU","ChIJu-SH28MJxkcRnwq9_851obM","ChIJuwtkpGSZAEcR6lXMScpzdQk","ChIJl5fz7WR9wUcR8g_mObTy60c","ChIJMVd4MymgVA0R99lHx5Y__Ws","ChIJ_ZqKe2cw6UYREPzyaM3PAAA","ChIJE74zDxSU3UYRubpdpdNUCvM","ChIJ4wsuREWc40YRewI60MRYJR4","ChIJ_UuggpyUkkYRwyW0T7qf6kA","ChIJ3fYyS9_KgUYREKh1PNZGAQA","ChIJQ2Dro1Ir0kgRmkXB5TQEim8","ChIJFXfA47sNok4RGOIUAYOdzzQ","ChIJI9HkgQm_ikYR8i7GR23fEbY","ChIJUXXYvLMei0YR7zdFQUIM8bA","ChIJRyEhyrlFlUcR75LTAvZg22Q"],q=["ChIJ39UebIqp0EcRqI4tMyWV4fQ","ChIJdZmmmcoQXkgR2OO3bu8o5fc","ChIJ-ydAXOS6WUgRCPTbzjQSfM8","ChIJ6_ktdpMVvEgRJBv3ZEgxsD8"],H=r.getFeatureLayer(google.maps.FeatureType.COUNTRY),j=r.getFeatureLayer(google.maps.FeatureType.ADMINISTRATIVE_AREA_LEVEL_1);N?(H.style=null,j.style=null,H.style=J=>{if(q.includes(J.feature.placeId))return I},j.style=J=>{if(q.includes(J.feature.placeId))return I}):(H.style=J=>{if(M.includes(J.feature.placeId))return I},j.style=J=>{if(M.includes(J.feature.placeId))return I})}function te(N,I){ue(),_.value=N,Y[N].includedType&&V.value.add(Y[N].includedType),Object.values(Y[N].subCategory).forEach(M=>V.value.add(M.includedType)),Object.values(Y[N].subCategory).forEach(M=>{M.excludedType&&S.value.add(M.excludedType)}),V.value=new Set(Array.from(V.value).flat()),S.value=new Set(Array.from(S.value).flat()),V.value.forEach(M=>{S.value.has(M)&&S.value.delete(M)}),b.value=Y[N],k.value=I,de({includedTypes:Array.from(V.value),excludedTypes:Array.from(S.value)}),T.value=X[k.value].label,m.value=T.value}function ee(N,I){const M=vue.ref([]),q=vue.ref();return N.forEach(()=>{X.forEach(H=>{H.id===_.value&&(M.value=H)}),Object.values(M.value).forEach(H=>{Object.values(H).forEach(j=>{I===j.id&&(q.value=j.label)})})}),q}function oe(){$.value.forEach(N=>{w.value.has(N)&&w.value.delete(N)})}function ae(N,{includeTypes:I=!1,excludeTypes:M=!1,removeIncludedTypes:q=!1,removeExcludedTypes:H=!1}={}){var J;const j=A.value.get(N);I&&j.includedTypes.forEach(Q=>{I&&$.value.add(Q),q&&$.value.delete(Q)}),(M||H)&&((J=j.excludedTypes)==null||J.forEach(Q=>{M&&w.value.add(Q),H&&w.value.delete(Q)}))}function ie(N,I){if(P.value=I,N==="self-catering"){z.value=!0,ve(),h.value=new Set,h.value.add(N);const M=ee(h.value,N).value;T.value=ee(h.value,N).value,ue(),m.value=T.value,fe(),m.value=M}else h.value.has(N)?(h.value.delete(N),$.value=new Set,w.value=new Set,h.value.forEach(M=>{ae(M,{includeTypes:!0,excludeTypes:!0})}),oe(),L.value.delete(ee(h.value,N).value),h.value.size===0?(L.value=new Set,te(_.value,k.value)):(de({includedTypes:Array.from($.value).flat(),excludedTypes:Array.from(w.value).flat()}),T.value=Array.from(L.value).join(", "),m.value=T.value)):(h.value.add(N),ae(N,{includeTypes:!0,excludeTypes:!0}),oe(),de({includedTypes:Array.from($.value).flat(),excludedTypes:Array.from(w.value).flat()}),L.value.add(ee(h.value,N).value),T.value=Array.from(L.value).join(", "),m.value=T.value)}async function de({includedTypes:N=[],excludedTypes:I=[]}={}){le(),ve(),W+=1;const M=W;C.filterUsesCount+=1,E.value="nearby";const q=r.getBounds(),H=q.getNorthEast(),j=q.getSouthWest(),J=google.maps.geometry.spherical.computeDistanceBetween(H,j),Q=Math.min(J/2,25e3);c.includedTypes=N,c.excludedTypes=I??[],c.maxResultCount=NUMBER_OF_RESULTS,c.locationRestriction={center:r.getCenter(),radius:Q},i.style.display="block",i.addEventListener("gmp-load",()=>{if(M!==W)return;pe(M);let ne="main",he=_.value;h.value.size&&(ne="sub",he=Array.from(h.value).join(", ")),n.createDataLayerObject("googleMapFilterEvent",{filter_type:ne,search_map_location:r.getCenter().toString(),filter_selection:he,results_count:i.places.length,filter_usage_index:C.filterUsesCount}),me("map_filter")},{once:!0})}async function fe(){le(),ue(),W+=1;const N=W;C.searchesCount+=1,E.value="text",T.value=m.value.trim(),T.value&&(z.value?(u.locationBias=null,u.locationRestriction=r.getBounds()):(u.locationRestriction=null,u.locationBias=r.getCenter()),u.includedType=F.value.some(I=>T.value.toLowerCase().includes(I))?"lodging":null,u.textQuery=`${T.value} in Scotland`,u.maxResultCount=NUMBER_OF_RESULTS,l.style.display="block",l.addEventListener("gmp-load",()=>{N===W&&(pe(N),z.value=!1,n.createDataLayerObject("googleMapSearchEvent",{search_query:T.value,search_map_location:r.getCenter().toString(),search_results_count:l.places.length,search_usage_index:C.searchesCount}),me("map_search"))},{once:!0}))}async function pe(N){const{AdvancedMarkerElement:I}=await importLibrary("marker"),{LatLngBounds:M}=await importLibrary("core");if(N!==W)return;const q=vue.ref();E.value==="nearby"?q.value=i:E.value==="text"?q.value=l:console.error("Unrecognised Search type"),q.value.places.length===0?(D.value=!0,q.value.style.display="none"):(D.value=!1,q.value.style.display="block");const H=new M;q.value.places&&q.value.places.forEach(j=>{const J=document.createElement("div");J.classList.add("vs-map-marker");const Q=document.createElement("i");Q.classList.add("fa-solid","fa-location-dot"),J.appendChild(Q);const ne=new I({map:r,position:j.location,content:J,title:"Map pin"});ne.addEventListener("gmp-placeclick",()=>{ce(j)}),ne.addListener("click",()=>{ce(j)}),ne.metadata={id:j.id},p[j.id]=ne,H.extend(j.location),q.value.places.length===1?(r.setCenter({lat:j.location.lat(),lng:j.location.lng()}),r.setZoom(14),r.fitBounds(j.viewport)):(r.setCenter(H.getCenter()),r.fitBounds(H))})}function le(N,I){ge(),E.value="",i.style.display="none",l.style.display="none",u.textQuery=null,B.value=!1,f&&f.close&&f.close(),D.value=void 0,N&&(ve(),ue(),se("clear_all")),I&&(r.setCenter(t.center),r.setZoom(t.zoom),r.fitBounds(U),se("reset_map"))}function ve(){T.value=null,m.value=""}function ue(){_.value=void 0,h.value=new Set,V.value=new Set,S.value=new Set,$.value=new Set,w.value=new Set,L.value=new Set,k.value=void 0,P.value=void 0}function ge(){for(const N in p)p[N]&&(p[N].map=null);p={}}function ce(N){f.isOpen&&(f.close(),se("card_close",v.place)),v.place=N,window.innerWidth<=768?(d.style.width="85vw",d.style.height="32em",C.sidebarOpen=!1):(d.style.width="20em",d.style.height="32em"),d.style.display="block",d.style.overflowY="auto",d.style.overflowX="hidden",d.style.boxSizing="border-box",d.style.maxHeight="32em",f.setOptions({content:d,maxWidth:"25em",position:N.location,pixelOffset:new google.maps.Size(0,-32)}),f.open({map:r}),google.maps.event.addListenerOnce(r,"idle",()=>{r.getZoom()>MAX_ZOOM&&r.setZoom(MAX_ZOOM),se("card_open",N)}),r.setCenter(N.location)}async function se(N,I){let M="",q="",H="",j="";I&&(await I.fetchFields({fields:["displayName","primaryType","rating","websiteURI"]}),M=I.displayName,q=I.rating,H=I.websiteURI,j=I.primaryType),n.createDataLayerObject("googleMapInteractionEvent",{interaction_type:N,search_query:m.value.trim(),map_location:r.getCenter().toString(),visible_attractions_count:g,card_attraction_name:M,card_attraction_category:j,card_attraction_rating:q,card_attraction_url:H,interaction_timestamp_ms:Date.now()}),me(N)}function me(N){if(!C.firstInteraction){const M=Date.now()-C.timeMounted;n.createDataLayerObject("googleMapTimeToFirstInteractionEvent",{time_to_first_interaction_ms:M,first_interaction_type:N}),C.firstInteraction=!0}}function _e(){const N=r.getBounds();if(!N)return 0;let I=0;for(let M=0;M<Object.keys(p).length;M++){const H=p[Object.keys(p)[M]].position;N.contains(H)&&(I+=1)}return I}function ye(N){r.fitBounds(new google.maps.LatLngBounds(new google.maps.LatLng(N.properties.viewport.low.latitude,N.properties.viewport.low.longitude),new google.maps.LatLng(N.properties.viewport.high.latitude,N.properties.viewport.high.longitude))),r.setCenter(new google.maps.LatLng(N.properties.locationCentre.latitude,N.properties.locationCentre.longitude)),te("things-to-do",2),B.value=!0}return(N,I)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1,[vue.createElementVNode("div",{class:vue.normalizeClass(["vs-map__container",vue.unref(R)?"d-none":""])},[vue.createElementVNode("div",_hoisted_2,[vue.createVNode(_sfc_main$1,{query:T.value,"selected-categories":_.value,"header-label":t.labels.heading,"close-sidebar-button-label":t.labels.closeSidebarBtn,"search-bar-aria-label":t.labels.searchBarAriaLabel,"input-placeholder-label":t.labels.inputPlaceholder,"search-button-label":t.labels.searchButton,"clear-map-label":t.labels.clearMap,"sub-filter-header-label":t.labels.subFilterHeader,"search-results-label":t.labels.searchResults,"open-sidebar-button-label":t.labels.openSidebarButton,onSearchInputChanged:fe,onResetMap:I[1]||(I[1]=M=>le(!0))},vue.createSlots({"vs-map-sidebar-search-results":vue.withCtx(()=>[D.value||t.alertText&&D.value===!1?(vue.openBlock(),vue.createBlock(vue.unref(VsAlert),{key:0,class:"mt-075 mb-150",id:"vs-map__alert",size:"small"},{default:vue.withCtx(()=>[D.value?(vue.openBlock(),vue.createElementBlock("span",_hoisted_4,[vue.createTextVNode(vue.toDisplayString(e.noResultsMessage)+" ",1),vue.createElementVNode("a",{href:"#",onClick:I[0]||(I[0]=vue.withModifiers(M=>le(!0,!0),["prevent"]))},vue.toDisplayString(e.resetMapNoResultsMessage),1)])):(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[vue.createTextVNode(vue.toDisplayString(e.alertText),1)],64))]),_:1})):vue.createCommentVNode("",!0),(vue.openBlock(),vue.createBlock(vue.Suspense,null,{default:vue.withCtx(()=>[...I[2]||(I[2]=[vue.createElementVNode("div",{id:"search-container"},[vue.createElementVNode("gmp-place-search",{id:"nearbySearch",orientation:"vertical",selectable:"",style:{display:"none"}},[vue.createElementVNode("gmp-place-nearby-search-request",{id:"nearbySearchQuery"}),vue.createElementVNode("gmp-place-content-config",null,[vue.createElementVNode("gmp-place-address"),vue.createElementVNode("gmp-place-rating"),vue.createElementVNode("gmp-place-type"),vue.createElementVNode("gmp-place-price"),vue.createElementVNode("gmp-place-accessible-entrance-icon"),vue.createElementVNode("gmp-place-opening-hours"),vue.createElementVNode("gmp-place-reviews"),vue.createElementVNode("gmp-place-attribution",{"light-scheme-color":"gray","dark-scheme-color":"gray"})])]),vue.createElementVNode("gmp-place-search",{id:"textSearch",orientation:"vertical",selectable:"",style:{display:"none"}},[vue.createElementVNode("gmp-place-text-search-request",{id:"textSearchQuery"}),vue.createElementVNode("gmp-place-content-config",null,[vue.createElementVNode("gmp-place-address"),vue.createElementVNode("gmp-place-rating"),vue.createElementVNode("gmp-place-type"),vue.createElementVNode("gmp-place-price"),vue.createElementVNode("gmp-place-accessible-entrance-icon"),vue.createElementVNode("gmp-place-opening-hours"),vue.createElementVNode("gmp-place-reviews"),vue.createElementVNode("gmp-place-attribution",{"light-scheme-color":"gray","dark-scheme-color":"gray"})])])],-1)])]),_:1}))]),_:2},[_.value?{name:"vs-map-sidebar-sub-filters",fn:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_3,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(X)[k.value].subCategory,(M,q)=>(vue.openBlock(),vue.createBlock(vue.unref(LoadingSpinner.VsButton),{key:q,variant:h.value.has(M.id)?"primary":"secondary",size:"sm",onClick:H=>ie(M.id,q)},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(M.label),1)]),_:2},1032,["variant","onClick"]))),128))])]),key:"0"}:void 0]),1032,["query","selected-categories","header-label","close-sidebar-button-label","search-bar-aria-label","input-placeholder-label","search-button-label","clear-map-label","sub-filter-header-label","search-results-label","open-sidebar-button-label"]),(O.value>=CATEGORY_VISIBLE_ZOOM||B.value)&&vue.unref(C).sidebarOpen&&Object.keys(vue.unref(Y)).length>0?(vue.openBlock(),vue.createElementBlock("div",_hoisted_5,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(X),(M,q)=>(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:q},[M.cmsData?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createBlock(vue.unref(LoadingSpinner.VsButton),{key:0,class:"vs-map__filter-controls-button",variant:_.value===M.id?"primary":"secondary",onClick:vue.withModifiers(H=>te(M.id,q),["prevent"]),icon:Object.values(vue.unref(Y))[q].icon},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(M.label),1)]),_:2},1032,["variant","onClick","icon"]))],64))),128))])):vue.createCommentVNode("",!0)]),vue.createElementVNode("div",_hoisted_6,[vue.createElementVNode("div",_hoisted_7,null,512),(vue.openBlock(),vue.createBlock(vue.Suspense,null,{default:vue.withCtx(()=>[...I[3]||(I[3]=[vue.createElementVNode("div",{id:"detail-container"},[vue.createElementVNode("gmp-place-details",{id:"placeDetails",style:{display:"none"}},[vue.createElementVNode("gmp-place-details-place-request",{id:"placeRequest"}),vue.createElementVNode("gmp-place-content-config",null,[vue.createElementVNode("gmp-place-address"),vue.createElementVNode("gmp-place-rating"),vue.createElementVNode("gmp-place-type"),vue.createElementVNode("gmp-place-price"),vue.createElementVNode("gmp-place-accessible-entrance-icon"),vue.createElementVNode("gmp-place-opening-hours"),vue.createElementVNode("gmp-place-website"),vue.createElementVNode("gmp-place-phone-number"),vue.createElementVNode("gmp-place-summary"),vue.createElementVNode("gmp-place-type-specific-highlights"),vue.createElementVNode("gmp-place-reviews"),vue.createElementVNode("gmp-place-feature-list"),vue.createElementVNode("gmp-place-media",{"lightbox-preferred":""}),vue.createElementVNode("gmp-place-attribution",{"light-scheme-color":"gray","dark-scheme-color":"gray"})])])],-1)])]),_:1}))])],2),vue.unref(R)&&G.value==="noCookie"?(vue.openBlock(),vue.createBlock(vue.unref(LoadingSpinner.VsWarning),{key:0,type:"cookie",class:vue.normalizeClass(["vs-map__error vs-map__error--no-cookies",vue.unref(R)?"d-block":"d-none"]),"data-test":"vs-map__warning--no-cookies"},{"button-text":vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.cookieBtnText),1)]),default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.noCookiesMessage)+" ",1)]),_:1},8,["class"])):vue.createCommentVNode("",!0),vue.createVNode(vue.unref(LoadingSpinner.VsWarning),{class:"vs-map__warning vs-map__warning--no-js","data-test":"vs-map__warning--no-js"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(e.noJsMessage),1)]),_:1})]))}};exports.VsBody=LoadingSpinner.VsBody;exports.VsButton=LoadingSpinner.VsButton;exports.VsButtonToggleGroup=LoadingSpinner.VsButtonToggleGroup;exports.VsCol=LoadingSpinner.VsCol;exports.VsContainer=LoadingSpinner.VsContainer;exports.VsHeading=LoadingSpinner.VsHeading;exports.VsIcon=LoadingSpinner.VsIcon;exports.VsImg=LoadingSpinner.VsImg;exports.VsLoadingSpinner=LoadingSpinner.VsLoading;exports.VsRow=LoadingSpinner.VsRow;exports.VsWarning=LoadingSpinner.VsWarning;exports.VsAccordion=VsAccordion;exports.VsAccordionItem=VsAccordionItem;exports.VsAccordionToggle=VsAccordionToggle;exports.VsAddress=Address;exports.VsAlert=VsAlert;exports.VsArticle=Article;exports.VsArticleDetails=ArticleDetails;exports.VsArticleSection=ArticleSection;exports.VsArticleSidebar=ArticleSidebar;exports.VsBackToTop=_sfc_main$2u;exports.VsBadge=VsBadge;exports.VsBanner=Banner;exports.VsBreadcrumb=Breadcrumb;exports.VsBreadcrumbItem=BreadcrumbItem;exports.VsCannedSearch=CannedSearch;exports.VsCaption=Caption;exports.VsCarbonCalculator=CarbonCalculator;exports.VsCard=VsCard;exports.VsCardGroup=VsCardGroup;exports.VsCarousel=VsCarousel;exports.VsCarouselSlide=CarouselSlide;exports.VsCheckbox=VsCheckbox;exports.VsDescriptionList=DescriptionList;exports.VsDescriptionListItem=DescriptionListItem;exports.VsDetail=VsDetail;exports.VsDropdown=VsDropdown;exports.VsDropdownItem=VsDropdownItem;exports.VsEmbedWrapper=EmbedWrapper;exports.VsEventCard=EventCard;exports.VsFederatedSearch=_sfc_main$4;exports.VsFederatedSearchInput=_sfc_main$6;exports.VsFilter=_sfc_main$1K;exports.VsFilterSection=_sfc_main$1J;exports.VsFooter=Footer;exports.VsFooterAccordionItem=FooterAccordionItem;exports.VsFooterCopyright=FooterCopyright;exports.VsFooterNavListItem=FooterNavListItem;exports.VsFooterSocialItem=FooterSocialItem;exports.VsFooterSocialMenu=FooterSocialMenu;exports.VsFooterUtilityList=FooterUtilityList;exports.VsForm=Form;exports.VsGlobalMenu=GlobalMenu;exports.VsGlobalMenuLanguage=GlobalMenuLanguage;exports.VsGlobalMenuLanguageItem=GlobalMenuLanguageItem;exports.VsHeroSection=HeroSection;exports.VsHtmlError=HtmlError;exports.VsIconList=IconList;exports.VsIconListItem=IconListItem;exports.VsIllustratedMap=IllustratedMap;exports.VsImageWithCaption=ImageWithCaption;exports.VsInput=VsInput;exports.VsItinerary=Itinerary;exports.VsItineraryBorderOverlapWrapper=ItineraryBorderOverlapWrapper;exports.VsItineraryDay=ItineraryDay;exports.VsItineraryStop=ItineraryStop;exports.VsItineraryStopInfo=ItineraryStopInfo;exports.VsItineraryTips=ItineraryTips;exports.VsLink=VsLink;exports.VsLinkList=VsLinkList;exports.VsLinkListItem=LinkListItem;exports.VsList=VsList;exports.VsListicleItem=ListicleItem;exports.VsMainMap=_sfc_main;exports.VsMediaCaption=VsMediaCaption;exports.VsMegaNavAccordionItem=MegaNavAccordionItem;exports.VsMegaNavDropdownContainer=MegaNavDropdownContainer;exports.VsMegaNavFeaturedEvent=MegaNavFeaturedEvent;exports.VsMegaNavFeaturedItem=MegaNavFeaturedItem;exports.VsMegaNavList=MegaNavList;exports.VsMegaNavListItem=MegaNavListItem;exports.VsMegaNavStaticLink=MegaNavStaticLink;exports.VsMegalinkLinkList=MegalinkLinkList;exports.VsMegalinkMultiImage=MegalinkMultiImage;exports.VsMegalinkSingleImage=MegalinkSingleImage;exports.VsMegalinks=Megalinks;exports.VsMeganav=MegaNav;exports.VsModal=Modal;exports.VsModuleWrapper=VsModuleWrapper;exports.VsNavigationBar=NavigationBar;exports.VsNavigationBarMenu=NavigationBarMenu;exports.VsNavigationBarMenuDropdown=NavigationBarMenuDropdown;exports.VsNavigationBarMenuItem=NavigationBarMenuItem;exports.VsNavigationBarSearch=NavigationBarSearch;exports.VsNavigationBarSidebar=VsNavigationSidebar;exports.VsNavigationBarSidebarButton=VsNavigationBarSidebarButton;exports.VsNumberInput=VsNumberInput;exports.VsPageIntro=PageIntro;exports.VsPagination=_sfc_main$D;exports.VsPanel=Panel;exports.VsProductSearch=ProductSearch;exports.VsProgressBar=VsProgressBar;exports.VsQuote=Quote;exports.VsRadioButton=VsRadioButton;exports.VsRecaptcha=VsRecaptcha;exports.VsSectionHeader=SectionHeader;exports.VsSelect=VsSelect;exports.VsSiteSearch=VsSiteSearch;exports.VsSiteSearchForm=VsSiteSearchForm;exports.VsSkiScotlandCard=SkiScotlandCard;exports.VsSkiScotlandStatus=SkiScotlandStatus;exports.VsSkipTo=SkipTo;exports.VsSocialCreditLink=SocialCreditLink;exports.VsSocialShare=SocialShare;exports.VsSocialShareItem=SocialShareItem;exports.VsSpotlightSection=SpotlightSection;exports.VsStretchedLinkCard=VsStretchedLinkCard;exports.VsStretchedLinkPanel=VsStretchedLinkPanels;exports.VsStyledList=_sfc_main$g;exports.VsStyledListItem=_sfc_main$f;exports.VsSummaryBoxDistanceListItem=SummaryBoxDistanceListItem;exports.VsSummaryBoxList=SummaryBoxList;exports.VsSummaryBoxListItem=SummaryBoxListItem;exports.VsSvg=VsSvg;exports.VsSvgLink=VsSvgLink;exports.VsTabItem=TabItem;exports.VsTable=VsTable;exports.VsTableBody=VsTableBody;exports.VsTableDataCell=VsTableDataCell;exports.VsTableFooter=VsTableFooter;exports.VsTableHead=VsTableHead;exports.VsTableHeaderCell=VsTableHeaderCell;exports.VsTableRow=VsTableRow;exports.VsTabs=Tabs;exports.VsTag=Tag;exports.VsTagManagerWrapper=TagManagerWrapper;exports.VsTextarea=VsTextarea;exports.VsToggleButton=VsToggleButton;exports.VsTooltip=VsTooltip;exports.VsTourismInfo=TourismInfo;exports.VsVideo=VsVideo;exports.VsVideoCaption=VsVideoCaption;
|
|
153
|
+
*/Sister=function(){var e={},n={};return e.on=function(t,o){var r={name:t,handler:o};return n[t]=n[t]||[],n[t].unshift(r),r},e.off=function(t){var o=n[t.name].indexOf(t);o!==-1&&n[t.name].splice(o,1)},e.trigger=function(t,o){var r=n[t],a;if(r)for(a=r.length;a--;)r[a].handler(o)},e};var sister=Sister,YouTubePlayer={exports:{}},browser={exports:{}},ms,hasRequiredMs;function requireMs(){if(hasRequiredMs)return ms;hasRequiredMs=1;var e=1e3,n=e*60,t=n*60,o=t*24,r=o*7,a=o*365.25;ms=function(c,d){d=d||{};var v=typeof c;if(v==="string"&&c.length>0)return s(c);if(v==="number"&&isFinite(c))return d.long?l(c):i(c);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(c))};function s(c){if(c=String(c),!(c.length>100)){var d=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(c);if(d){var v=parseFloat(d[1]),m=(d[2]||"ms").toLowerCase();switch(m){case"years":case"year":case"yrs":case"yr":case"y":return v*a;case"weeks":case"week":case"w":return v*r;case"days":case"day":case"d":return v*o;case"hours":case"hour":case"hrs":case"hr":case"h":return v*t;case"minutes":case"minute":case"mins":case"min":case"m":return v*n;case"seconds":case"second":case"secs":case"sec":case"s":return v*e;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return v;default:return}}}}function i(c){var d=Math.abs(c);return d>=o?Math.round(c/o)+"d":d>=t?Math.round(c/t)+"h":d>=n?Math.round(c/n)+"m":d>=e?Math.round(c/e)+"s":c+"ms"}function l(c){var d=Math.abs(c);return d>=o?u(c,d,o,"day"):d>=t?u(c,d,t,"hour"):d>=n?u(c,d,n,"minute"):d>=e?u(c,d,e,"second"):c+" ms"}function u(c,d,v,m){var f=d>=v*1.5;return Math.round(c/v)+" "+m+(f?"s":"")}return ms}function setup(e){t.debug=t,t.default=t,t.coerce=l,t.disable=s,t.enable=r,t.enabled=i,t.humanize=requireMs(),t.destroy=u,Object.keys(e).forEach(c=>{t[c]=e[c]}),t.names=[],t.skips=[],t.formatters={};function n(c){let d=0;for(let v=0;v<c.length;v++)d=(d<<5)-d+c.charCodeAt(v),d|=0;return t.colors[Math.abs(d)%t.colors.length]}t.selectColor=n;function t(c){let d,v=null,m,f;function p(...g){if(!p.enabled)return;const _=p,h=Number(new Date),b=h-(d||h);_.diff=b,_.prev=d,_.curr=h,d=h,g[0]=t.coerce(g[0]),typeof g[0]!="string"&&g.unshift("%O");let V=0;g[0]=g[0].replace(/%([a-zA-Z%])/g,($,w)=>{if($==="%%")return"%";V++;const k=t.formatters[w];if(typeof k=="function"){const P=g[V];$=k.call(_,P),g.splice(V,1),V--}return $}),t.formatArgs.call(_,g),(_.log||t.log).apply(_,g)}return p.namespace=c,p.useColors=t.useColors(),p.color=t.selectColor(c),p.extend=o,p.destroy=t.destroy,Object.defineProperty(p,"enabled",{enumerable:!0,configurable:!1,get:()=>v!==null?v:(m!==t.namespaces&&(m=t.namespaces,f=t.enabled(c)),f),set:g=>{v=g}}),typeof t.init=="function"&&t.init(p),p}function o(c,d){const v=t(this.namespace+(typeof d>"u"?":":d)+c);return v.log=this.log,v}function r(c){t.save(c),t.namespaces=c,t.names=[],t.skips=[];const d=(typeof c=="string"?c:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(const v of d)v[0]==="-"?t.skips.push(v.slice(1)):t.names.push(v)}function a(c,d){let v=0,m=0,f=-1,p=0;for(;v<c.length;)if(m<d.length&&(d[m]===c[v]||d[m]==="*"))d[m]==="*"?(f=m,p=v,m++):(v++,m++);else if(f!==-1)m=f+1,p++,v=p;else return!1;for(;m<d.length&&d[m]==="*";)m++;return m===d.length}function s(){const c=[...t.names,...t.skips.map(d=>"-"+d)].join(",");return t.enable(""),c}function i(c){for(const d of t.skips)if(a(c,d))return!1;for(const d of t.names)if(a(c,d))return!0;return!1}function l(c){return c instanceof Error?c.stack||c.message:c}function u(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return t.enable(t.load()),t}var common=setup;(function(e,n){var t={};n.formatArgs=r,n.save=a,n.load=s,n.useColors=o,n.storage=i(),n.destroy=(()=>{let u=!1;return()=>{u||(u=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})(),n.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function o(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let u;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(u=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(u[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function r(u){if(u[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+u[0]+(this.useColors?"%c ":" ")+"+"+e.exports.humanize(this.diff),!this.useColors)return;const c="color: "+this.color;u.splice(1,0,c,"color: inherit");let d=0,v=0;u[0].replace(/%[a-zA-Z%]/g,m=>{m!=="%%"&&(d++,m==="%c"&&(v=d))}),u.splice(v,0,c)}n.log=console.debug||console.log||(()=>{});function a(u){try{u?n.storage.setItem("debug",u):n.storage.removeItem("debug")}catch{}}function s(){let u;try{u=n.storage.getItem("debug")||n.storage.getItem("DEBUG")}catch{}return!u&&typeof process<"u"&&"env"in process&&(u=t.DEBUG),u}function i(){try{return localStorage}catch{}}e.exports=common(n);const{formatters:l}=e.exports;l.j=function(u){try{return JSON.stringify(u)}catch(c){return"[UnexpectedJSONParseError]: "+c.message}}})(browser,browser.exports);var browserExports=browser.exports,FunctionStateMap={exports:{}},PlayerStates={exports:{}};(function(e,n){Object.defineProperty(n,"__esModule",{value:!0}),n.default={BUFFERING:3,ENDED:0,PAUSED:2,PLAYING:1,UNSTARTED:-1,VIDEO_CUED:5},e.exports=n.default})(PlayerStates,PlayerStates.exports);var PlayerStatesExports=PlayerStates.exports;(function(e,n){Object.defineProperty(n,"__esModule",{value:!0});var t=PlayerStatesExports,o=r(t);function r(a){return a&&a.__esModule?a:{default:a}}n.default={pauseVideo:{acceptableStates:[o.default.ENDED,o.default.PAUSED],stateChangeRequired:!1},playVideo:{acceptableStates:[o.default.ENDED,o.default.PLAYING],stateChangeRequired:!1},seekTo:{acceptableStates:[o.default.ENDED,o.default.PLAYING,o.default.PAUSED],stateChangeRequired:!0,timeout:3e3}},e.exports=n.default})(FunctionStateMap,FunctionStateMap.exports);var FunctionStateMapExports=FunctionStateMap.exports,eventNames={exports:{}};(function(e,n){Object.defineProperty(n,"__esModule",{value:!0}),n.default=["ready","stateChange","playbackQualityChange","playbackRateChange","error","apiChange","volumeChange"],e.exports=n.default})(eventNames,eventNames.exports);var eventNamesExports=eventNames.exports,functionNames={exports:{}};(function(e,n){Object.defineProperty(n,"__esModule",{value:!0}),n.default=["cueVideoById","loadVideoById","cueVideoByUrl","loadVideoByUrl","playVideo","pauseVideo","stopVideo","getVideoLoadedFraction","cuePlaylist","loadPlaylist","nextVideo","previousVideo","playVideoAt","setShuffle","setLoop","getPlaylist","getPlaylistIndex","setOption","mute","unMute","isMuted","setVolume","getVolume","seekTo","getPlayerState","getPlaybackRate","setPlaybackRate","getAvailablePlaybackRates","getPlaybackQuality","setPlaybackQuality","getAvailableQualityLevels","getCurrentTime","getDuration","removeEventListener","getVideoUrl","getVideoEmbedCode","getOptions","getOption","addEventListener","destroy","setSize","getIframe","getSphericalProperties","setSphericalProperties"],e.exports=n.default})(functionNames,functionNames.exports);var functionNamesExports=functionNames.exports;(function(e,n){Object.defineProperty(n,"__esModule",{value:!0});var t=browserExports,o=c(t),r=FunctionStateMapExports,a=c(r),s=eventNamesExports,i=c(s),l=functionNamesExports,u=c(l);function c(m){return m&&m.__esModule?m:{default:m}}const d=(0,o.default)("youtube-player"),v={};v.proxyEvents=m=>{const f={};for(const p of i.default){const g="on"+p.slice(0,1).toUpperCase()+p.slice(1);f[g]=_=>{d('event "%s"',g,_),m.trigger(p,_)}}return f},v.promisifyPlayer=(m,f=!1)=>{const p={};for(const g of u.default)f&&a.default[g]?p[g]=(..._)=>m.then(h=>{const b=a.default[g],V=h.getPlayerState(),S=h[g].apply(h,_);return b.stateChangeRequired||Array.isArray(b.acceptableStates)&&!b.acceptableStates.includes(V)?new Promise($=>{const w=()=>{const k=h.getPlayerState();let P;typeof b.timeout=="number"&&(P=setTimeout(()=>{h.removeEventListener("onStateChange",w),$()},b.timeout)),Array.isArray(b.acceptableStates)&&b.acceptableStates.includes(k)&&(h.removeEventListener("onStateChange",w),clearTimeout(P),$())};h.addEventListener("onStateChange",w)}).then(()=>S):S}):p[g]=(..._)=>m.then(h=>h[g].apply(h,_));return p},n.default=v,e.exports=n.default})(YouTubePlayer,YouTubePlayer.exports);var YouTubePlayerExports=YouTubePlayer.exports,loadYouTubeIframeApi={exports:{}},loadScript=function e(n,t,o){var r=document.head||document.getElementsByTagName("head")[0],a=document.createElement("script");typeof t=="function"&&(o=t,t={}),t=t||{},o=o||function(){},a.type=t.type||"text/javascript",a.charset=t.charset||"utf8",a.async="async"in t?!!t.async:!0,a.src=n,t.attrs&&setAttributes(a,t.attrs),t.text&&(a.text=""+t.text);var s="onload"in a?stdOnEnd:ieOnEnd;s(a,o),a.onload||stdOnEnd(a,o),r.appendChild(a)};function setAttributes(e,n){for(var t in n)e.setAttribute(t,n[t])}function stdOnEnd(e,n){e.onload=function(){this.onerror=this.onload=null,n(null,e)},e.onerror=function(){this.onerror=this.onload=null,n(new Error("Failed to load "+this.src),e)}}function ieOnEnd(e,n){e.onreadystatechange=function(){this.readyState!="complete"&&this.readyState!="loaded"||(this.onreadystatechange=null,n(null,e))}}(function(e,n){Object.defineProperty(n,"__esModule",{value:!0});var t=loadScript,o=r(t);function r(a){return a&&a.__esModule?a:{default:a}}n.default=a=>new Promise(i=>{if(window.YT&&window.YT.Player&&window.YT.Player instanceof Function){i(window.YT);return}else{const u=window.location.protocol==="http:"?"http:":"https:";(0,o.default)(u+"//www.youtube.com/iframe_api",c=>{c&&a.trigger("error",c)})}const l=window.onYouTubeIframeAPIReady;window.onYouTubeIframeAPIReady=()=>{l&&l(),i(window.YT)}}),e.exports=n.default})(loadYouTubeIframeApi,loadYouTubeIframeApi.exports);var loadYouTubeIframeApiExports=loadYouTubeIframeApi.exports;(function(e,n){Object.defineProperty(n,"__esModule",{value:!0});var t=sister,o=l(t),r=YouTubePlayerExports,a=l(r),s=loadYouTubeIframeApiExports,i=l(s);function l(c){return c&&c.__esModule?c:{default:c}}let u;n.default=(c,d={},v=!1)=>{const m=(0,o.default)();if(u||(u=(0,i.default)(m)),d.events)throw new Error("Event handlers cannot be overwritten.");if(typeof c=="string"&&!document.getElementById(c))throw new Error('Element "'+c+'" does not exist.');d.events=a.default.proxyEvents(m);const f=new Promise(g=>{typeof c=="object"&&c.playVideo instanceof Function?g(c):u.then(_=>{const h=new _.Player(c,d);return m.on("ready",()=>{g(h)}),null})}),p=a.default.promisifyPlayer(f,v);return p.on=m.on,p.off=m.off,p},e.exports=n.default})(dist,dist.exports);var distExports=dist.exports;const player=LoadingSpinner.getDefaultExportFromCjs(distExports),UNSTARTED=-1,ENDED=0,PLAYING=1,PAUSED=2,BUFFERING=3,CUED=5,VueYoutube={name:"Youtube",props:{videoId:String,playerVars:{type:Object,default:()=>({})},height:{type:[Number,String],default:360},width:{type:[Number,String],default:640},resize:{type:Boolean,default:!1},resizeDelay:{type:Number,default:100},nocookie:{type:Boolean,default:!1},fitParent:{type:Boolean,default:!1}},data(){return{player:{},events:{[UNSTARTED]:"unstarted",[PLAYING]:"playing",[PAUSED]:"paused",[ENDED]:"ended",[BUFFERING]:"buffering",[CUED]:"cued"},resizeTimeout:null}},computed:{aspectRatio(){return this.width/this.height}},methods:{playerReady(e){this.$emit("ready",e.target)},playerStateChange(e){e.data!==null&&e.data!==UNSTARTED&&this.$emit(this.events[e.data],e.target)},playerError(e){this.$emit("error",e.target)},updatePlayer(e){if(!e){this.player.stopVideo();return}const n={videoId:e};if(typeof this.playerVars.start=="number"&&(n.startSeconds=this.playerVars.start),typeof this.playerVars.end=="number"&&(n.endSeconds=this.playerVars.end),this.playerVars.autoplay===1){this.player.loadVideoById(n);return}this.player.cueVideoById(n)},resizeProportionally(){this.player.getIframe().then(e=>{const n=this.fitParent?e.parentElement.offsetWidth:e.offsetWidth,t=n/this.aspectRatio;this.player.setSize(n,t)})},onResize(){clearTimeout(this.resizeTimeout),this.resizeTimeout=setTimeout(this.resizeProportionally,this.resizeDelay)}},watch:{videoId:"updatePlayer",resize(e){e?(window.addEventListener("resize",this.onResize),this.resizeProportionally()):(window.removeEventListener("resize",this.onResize),this.player.setSize(this.width,this.height))},width(e){this.player.setSize(e,this.height)},height(e){this.player.setSize(this.width,e)}},beforeUnmount(){this.player!==null&&this.player.destroy&&(this.player.destroy(),delete this.player),this.resize&&window.removeEventListener("resize",this.onResize)},mounted(){window.YTConfig={host:"https://www.youtube.com/iframe_api"};const e=this.nocookie?"https://www.youtube-nocookie.com":"https://www.youtube.com";this.player=player(this.$el,{host:e,width:this.width,height:this.height,videoId:this.videoId,playerVars:this.playerVars}),this.player.on("ready",this.playerReady),this.player.on("stateChange",this.playerStateChange),this.player.on("error",this.playerError),this.resize&&window.addEventListener("resize",this.onResize),this.fitParent&&this.resizeProportionally()},render(){return vue.h("div")}},cookieValues$2=cookieValues$5.youtube;let videoStore=null;const _sfc_main$1s={name:"VsVideoYoutube",components:{VueYoutube,VsWarning:LoadingSpinner.VsWarning},mixins:[LoadingSpinner.dataLayerMixin,cookieCheckerMixin],props:{videoId:{type:String,required:!0},videoTitle:{type:String,default:""},language:{type:String,default:"en"},singleMinuteDescriptor:{type:String,default:"%s minute video"},pluralMinuteDescriptor:{type:String,default:"%s minute video"},noCookiesMessage:{type:String,required:!0},cookieBtnText:{type:String,required:!0},noJsMessage:{type:String,required:!0},lazyLoad:{type:Boolean,default:!1}},data(){return{playerVars:{hl:this.language},requiredCookies:cookieValues$2,duration:{minutes:0,seconds:0,roundedMinutes:""},jsDisabled:!0,isLoaded:!1,observer:null}},computed:{player(){return this.$refs.youtube?this.$refs.youtube.player:null},showError(){return!this.cookiesAllowed&&this.cookiesLoaded===!0||this.cookiesLoaded===!1},warningText(){let e="";return this.videoId&&this.jsDisabled&&(e=this.noJsMessage),!this.cookiesAllowed&&this.cookiesLoaded===!0&&(e=this.noCookiesMessage),e}},mounted(){this.jsDisabled=jsIsDisabled(),videoStore=useVideoStore(),this.setEventListeners(),this.lazyLoad?this.setupIntersectionObserver():this.isLoaded=!0},beforeUnmount(){this.observer&&this.observer.disconnect()},methods:{async playerReady(){await this.getPlayerDetails(),this.shouldAutoPlay&&(this.shouldAutoPlay=!1,this.playVideo())},async playVideo(){this.player&&await this.player.playVideo()},async pauseVideo(){this.player&&await this.player.pauseVideo()},async toggleVideo(){if(!this.player)return;await this.player.getPlayerState()===1?this.pauseVideo():this.playVideo()},async stopVideo(){this.player&&await this.player.stopVideo()},youtubePlaying(){this.analyticsEvent("play")},youtubePaused(){this.analyticsEvent("pause")},youtubeEnded(){this.analyticsEvent("ended")},analyticsEvent(e){let n=0,t=0;this.player.getCurrentTime().then(o=>(n=o,this.player?this.player.getDuration():null)).then(o=>{t=o}).then(()=>{const o=n/t*100;this.createDataLayerObject("videoTrackingDataEvent",{title:this.videoTitle,status:e,percent:Math.round(o)})})},async getPlayerDetails(){this.player&&await this.player.getDuration().then(e=>{this.formatTime(e),this.storeVideoDetails()})},formatTime(e){const n=Math.floor(e/60),t=Math.round(e-n*60);this.duration.minutes=n,this.duration.seconds=t;const o=this.getRoundedMinutes(n,t);this.duration.roundedMinutes=this.formatSingularOrPlural(o)},getRoundedMinutes(e,n){return n<30&&e!==0?e:e+1},formatSingularOrPlural(e){return e===1?this.singleMinuteDescriptor.replace("%s",e):this.pluralMinuteDescriptor.replace("%s",e)},pad(e){return e>=10?e:`0${e}`},storeVideoDetails(){videoStore.addVideo({videoId:this.videoId,videoDurationMsg:this.duration.roundedMinutes,videoDuration:this.duration.minutes*60+this.duration.seconds,videoFullDuration:this.duration})},setEventListeners(){this.emitter&&this.emitter.on("video-controls",e=>{e.id===this.videoId&&(e.action==="modal-opened"&&this.playVideo(),e.action==="modal-closed"&&this.stopVideo(),e.action==="play"?this.playVideo():e.action==="pause"&&this.pauseVideo())})},setupIntersectionObserver(){if(!("IntersectionObserver"in window)){this.isLoaded=!0;return}this.observer=new IntersectionObserver(e=>{e[0].intersectionRatio>0&&(this.observer.unobserve(this.$el),this.isLoaded=!0,this.$nextTick(()=>{this.playVideo()}))},{rootMargin:"50px",threshold:0}),this.observer.observe(this.$el)}}},_hoisted_1$16={class:"vs-video-youtube","data-test":"vs-video-youtube"},_hoisted_2$P={key:0};function _sfc_render$1d(e,n,t,o,r,a){const s=vue.resolveComponent("VueYoutube"),i=vue.resolveComponent("VsWarning");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$16,[e.cookiesAllowed&&(!t.lazyLoad||r.isLoaded)?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$P,[vue.createVNode(s,{autoplay:0,"video-id":t.videoId,vars:r.playerVars,ref:"youtube",nocookie:!0,class:"vs-video-youtube__player",onPlaying:a.youtubePlaying,onPaused:a.youtubePaused,onEnded:a.youtubeEnded,onReady:a.playerReady},null,8,["video-id","vars","onPlaying","onPaused","onEnded","onReady"])])):vue.createCommentVNode("",!0),a.showError?(vue.openBlock(),vue.createBlock(i,{key:1,type:e.cookiesLoaded===!0?"cookie":"normal",class:"vs-video-youtube__warning","data-test":"vs-video-youtube__warning"},vue.createSlots({default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.warningText)+" ",1)]),_:2},[!e.cookiesAllowed&&e.cookiesLoaded===!0?{name:"button-text",fn:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.cookieBtnText),1)]),key:"0"}:void 0]),1032,["type"])):vue.createCommentVNode("",!0),vue.createVNode(i,{class:"vs-video-youtube__warning vs-video-youtube__warning--no-js","data-test":"vs-video-youtube__warning--no-js"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.noJsMessage),1)]),_:1})])}const VsVideoYoutube=LoadingSpinner._export_sfc(_sfc_main$1s,[["render",_sfc_render$1d]]),_sfc_main$1r={name:"VsToggleButton",status:"prototype",release:"0.0.1",components:{VsButton:LoadingSpinner.VsButton,BButton:LoadingSpinner.vt,VsIcon:LoadingSpinner.VsIcon},props:{toggleId:{type:String,default:""},variant:{type:String,default:"default",validator:e=>e.match(/(default|overlay|overlay-strong)/)},icon:{type:String,default:""},pressedIcon:{type:String,default:null},modelValue:{type:Boolean,default:void 0},label:{type:String,default:""},pressedLabel:{type:String,default:""},labelBreakpoint:{type:String,default:null,validator:e=>e===null||/^(xs|sm|md|lg|xl|xxl)$/.test(e)}},emits:["toggleAction","update:modelValue","click"],data(){return{show:!1,internalPressed:!1}},computed:{isLegacyMode(){return!this.icon&&!this.pressedIcon},isPressed(){return this.modelValue!==void 0?this.modelValue:this.internalPressed},buttonClasses(){return{"vs-toggle-button--pressed":this.isPressed,[`vs-toggle-button--label-${this.labelBreakpoint}-up`]:this.labelBreakpoint}},buttonLabelClasses(){return{[`visible-${this.labelBreakpoint}-up`]:this.labelBreakpoint}},currentIcon(){return this.isPressed&&this.pressedIcon?this.pressedIcon:this.icon},computedLabel(){return this.isPressed&&this.pressedLabel?this.pressedLabel:this.label}},methods:{toggleLegacy(e){this.show=!this.show,this.$emit("toggleAction",this.show),this.$emit("click",e)},handleClick(e){const n=!this.isPressed;this.modelValue!==void 0?this.$emit("update:modelValue",n):this.internalPressed=n,this.$emit("click",e)}}};function _sfc_render$1c(e,n,t,o,r,a){const s=vue.resolveComponent("VsIcon"),i=vue.resolveComponent("BButton"),l=vue.resolveComponent("VsButton");return a.isLegacyMode?(vue.openBlock(),vue.createBlock(l,{key:1,class:"vs-toggle-btn","data-test":"vs-toggle-btn",variant:"subtle","aria-controls":t.toggleId,"aria-expanded":r.show?"true":"false",onClick:a.toggleLegacy},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default"),r.show?(vue.openBlock(),vue.createBlock(s,{key:0,class:"fa-icon-colours fa-icon-colours--white",icon:"fa-duotone fa-solid fa-circle-xmark"})):vue.renderSlot(e.$slots,"toggle-icon",{key:1},()=>[vue.createVNode(s,{class:"fa-icon-colours",icon:"fa-duotone fa-solid fa-circle-info"})])]),_:3},8,["aria-controls","aria-expanded","onClick"])):(vue.openBlock(),vue.createBlock(i,{key:0,variant:t.variant,class:vue.normalizeClass(["vs-toggle-button",a.buttonClasses]),size:"sm","aria-label":a.computedLabel,onClick:a.handleClick},{default:vue.withCtx(()=>[vue.createVNode(s,{icon:a.currentIcon,size:"xs",padding:0},null,8,["icon"]),t.label?(vue.openBlock(),vue.createElementBlock("span",{key:0,class:vue.normalizeClass(["visually-hidden",a.buttonLabelClasses])},vue.toDisplayString(a.computedLabel),3)):vue.createCommentVNode("",!0)]),_:1},8,["variant","class","aria-label","onClick"]))}const VsToggleButton=LoadingSpinner._export_sfc(_sfc_main$1r,[["render",_sfc_render$1c]]),prefersReducedMotion=()=>window&&window.matchMedia("(prefers-reduced-motion: reduce)").matches,_sfc_main$1q={name:"VsVideoHtml5",status:"prototype",release:"0.0.1",components:{VsToggleButton,VsImg:LoadingSpinner.VsImg},inject:{registerMedia:{default:null}},props:{videoSrc:{type:String,required:!0},videoId:{type:String,required:!0},posterImageSrc:{type:String,default:""},lazyLoad:{type:Boolean,default:!1},playButtonLabel:{type:String,default:""},pauseButtonLabel:{type:String,default:""},showToggle:{type:Boolean,default:!0}},data(){return{isLoaded:!1,isPlaying:!1,observer:null,isReducedMotion:prefersReducedMotion()}},mounted(){var e;(e=this.registerMedia)==null||e.call(this,this),this.lazyLoad?this.setupIntersectionObserver():(this.isLoaded=!0,this.isPlaying=!0)},beforeUnmount(){this.observer&&this.observer.disconnect()},methods:{playVideo(){const e=this.$refs.videoRef;e&&e.play()},pauseVideo(){const e=this.$refs.videoRef;e&&e.pause()},stopVideo(){const e=this.$refs.videoRef;e&&(e.pause(),e.currentTime=0)},toggleVideo(){const e=this.$refs.videoRef;e&&(e.paused?e.play():e.pause())},setupIntersectionObserver(){if(!("IntersectionObserver"in window)){this.isLoaded=!0;return}this.observer=new IntersectionObserver(e=>{e[0].intersectionRatio>0&&(this.observer.unobserve(this.$el),this.isLoaded=!0,this.$nextTick(()=>{var n;(n=this.$refs.videoRef)==null||n.play()}))},{rootMargin:"50px",threshold:0}),this.observer.observe(this.$el)}}},_hoisted_1$15={class:"vs-video-html5","data-test":"vs-video-html5"},_hoisted_2$O=["id","poster","loop","muted","autoplay","preload","fetchpriority"],_hoisted_3$D=["src"];function _sfc_render$1b(e,n,t,o,r,a){const s=vue.resolveComponent("VsImg"),i=vue.resolveComponent("VsToggleButton");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$15,[r.isReducedMotion||!t.videoSrc?(vue.openBlock(),vue.createBlock(s,{key:0,class:"vs-video-html5__fallback-image",src:t.posterImageSrc},null,8,["src"])):(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[vue.createElementVNode("video",{ref:"videoRef",onPlay:n[0]||(n[0]=l=>r.isPlaying=!0),onPause:n[1]||(n[1]=l=>r.isPlaying=!1),onEnded:n[2]||(n[2]=l=>r.isPlaying=!1),id:t.videoId,class:"vs-video-html5__player img-zoom-on-hover",poster:t.posterImageSrc,"aria-hidden":"true",loop:!t.lazyLoad||r.isLoaded,muted:!t.lazyLoad||r.isLoaded,autoplay:!t.lazyLoad||r.isLoaded,playsinline:"",preload:t.lazyLoad?"none":"auto",fetchpriority:t.lazyLoad?"low":"high",tabindex:"-1"},[vue.createElementVNode("source",{src:t.videoSrc,type:"video/mp4"},null,8,_hoisted_3$D)],40,_hoisted_2$O),t.showToggle?(vue.openBlock(),vue.createBlock(i,{key:0,class:"vs-video-html5__toggle-video",variant:"overlay",icon:"vs-icon-control-pause","pressed-icon":"vs-icon-control-play",label:t.pauseButtonLabel,"pressed-label":t.playButtonLabel,"aria-controls":t.videoId,"model-value":!r.isPlaying,onClick:a.toggleVideo},null,8,["label","pressed-label","aria-controls","model-value","onClick"])):vue.createCommentVNode("",!0)],64))])}const VsVideoHtml5=LoadingSpinner._export_sfc(_sfc_main$1q,[["render",_sfc_render$1b]]),_sfc_main$1p={name:"VsVideo",props:{videoType:{type:String,default:"youtube",validator:e=>["youtube","html5"].includes(e)},videoSrc:{type:String,default:""},posterImageSrc:{type:String,default:""},videoId:{type:String,default:""},videoTitle:{type:String,default:""},language:{type:String,default:"en"},singleMinuteDescriptor:{type:String,default:"%s minute video"},pluralMinuteDescriptor:{type:String,default:"%s minute video"},noCookiesMessage:{type:String,default:""},cookieBtnText:{type:String,default:""},noJsMessage:{type:String,default:""},playButtonLabel:{type:String,default:"Play video"},pauseButtonLabel:{type:String,default:"Pause video"},showToggle:{type:Boolean,default:!0},lazyLoad:{type:Boolean,default:!1}},data(){return{reRendering:!1}},computed:{playerComponent(){return this.videoType==="html5"?VsVideoHtml5:VsVideoYoutube}},methods:{playVideo(){var e,n;(n=(e=this.$refs.player)==null?void 0:e.playVideo)==null||n.call(e)},pauseVideo(){var e,n;(n=(e=this.$refs.player)==null?void 0:e.pauseVideo)==null||n.call(e)},stopVideo(){var e,n;(n=(e=this.$refs.player)==null?void 0:e.stopVideo)==null||n.call(e)},toggleVideo(){var e,n;(n=(e=this.$refs.player)==null?void 0:e.toggleVideo)==null||n.call(e)}}},_hoisted_1$14={key:0,class:"vs-video","data-test":"vs-video"};function _sfc_render$1a(e,n,t,o,r,a){return r.reRendering?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$14,[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(a.playerComponent),vue.mergeProps({ref:"player"},e.$props,{"lazy-load":t.lazyLoad}),null,16,["lazy-load"]))]))}const VsVideo=LoadingSpinner._export_sfc(_sfc_main$1p,[["render",_sfc_render$1a]]),_sfc_main$1o={name:"VsHeroSection",status:"prototype",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading,VsBody:LoadingSpinner.VsBody,VsHeroSectionImage,VsVideo},provide(){return{videoPlayingStatus:this.videoPlayingStatus,videoPausedStatus:this.videoPausedStatus}},props:{heading:{type:String,default:"",required:!0},lede:{type:String,default:"",required:!0},imgSrc:{type:String,default:""},imgAlt:{type:String,default:""},imgCaption:{type:String,default:""},imgCredit:{type:String,default:""},inset:{type:Boolean,default:!1},split:{type:Boolean,default:!1},videoSrc:{type:String,default:""},videoBtnText:{type:String,default:""},videoPlayingStatus:{type:String,default:""},videoPausedStatus:{type:String,default:""},playButtonLabel:{type:String,default:""},pauseButtonLabel:{type:String,default:""}},computed:{imageClasses(){return{"vs-hero-section__image--inset":this.inset}},textContainerClasses(){return[{"vs-hero-section__text-container--video":this.videoSrc},"vs-hero-section__text-container"]}}},_hoisted_1$13={class:"vs-hero-section__grid"},_hoisted_2$N={key:1,class:"vs-hero-section__video-wrapper"},_hoisted_3$C={key:2,class:"vs-hero-section__divider"},_hoisted_4$t={class:"vs-hero-section__text"},_hoisted_5$l=["innerHTML"],_hoisted_6$h={class:"mb-0"},_hoisted_7$f={key:1,class:"vs-hero-section__article-details","data-test":"vs-hero-section__article-details"};function _sfc_render$19(e,n,t,o,r,a){const s=vue.resolveComponent("VsHeroSectionImage"),i=vue.resolveComponent("VsVideo"),l=vue.resolveComponent("VsHeading"),u=vue.resolveComponent("VsBody");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-hero-section",{"vs-hero-section--split":t.split}]),"data-test":"vs-hero-section"},[vue.createElementVNode("div",_hoisted_1$13,[t.imgSrc&&!t.videoSrc?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(["vs-hero-section__image",a.imageClasses])},[vue.createVNode(s,{"img-alt":t.imgAlt,src:t.imgSrc,"img-caption":t.imgCaption,"img-credit":t.imgCredit,split:t.split},null,8,["img-alt","src","img-caption","img-credit","split"])],2)):t.videoSrc?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$N,[vue.createVNode(i,{"video-type":"html5","video-id":"hero-video","poster-image-src":t.imgSrc,"video-src":t.videoSrc,"play-button-label":t.videoPlayingStatus?t.videoPlayingStatus:t.playButtonLabel,"pause-button-label":t.videoPausedStatus?t.videoPausedStatus:t.pauseButtonLabel,class:"vs-hero-section__video"},null,8,["poster-image-src","video-src","play-button-label","pause-button-label"]),n[0]||(n[0]=vue.createElementVNode("div",{class:"vs-hero-section__video-overlay"},null,-1))])):(vue.openBlock(),vue.createElementBlock("hr",_hoisted_3$C)),vue.createElementVNode("div",{class:vue.normalizeClass(a.textContainerClasses)},[vue.createElementVNode("div",_hoisted_4$t,[vue.createVNode(l,{class:"vs-hero-section__heading","data-test":"vs-hero-section__heading",level:"1","heading-style":"display-s",id:"main-heading"},{default:vue.withCtx(()=>[vue.createElementVNode("span",{innerHTML:t.heading},null,8,_hoisted_5$l)]),_:1}),t.lede?(vue.openBlock(),vue.createBlock(u,{key:0,class:"vs-hero-section__lede","data-test":"vs-hero-section__lede",variant:"lead"},{default:vue.withCtx(()=>[vue.createElementVNode("p",_hoisted_6$h,vue.toDisplayString(t.lede),1)]),_:1})):vue.createCommentVNode("",!0),e.$slots["hero-section-article-details"]?(vue.openBlock(),vue.createElementBlock("div",_hoisted_7$f,[vue.renderSlot(e.$slots,"hero-section-article-details")])):vue.createCommentVNode("",!0)])],2)])],2)}const HeroSection=LoadingSpinner._export_sfc(_sfc_main$1o,[["render",_sfc_render$19]]),_sfc_main$1n={name:"VsHtmlError",status:"prototype",release:"0.1.0",mixins:[LoadingSpinner.dataLayerMixin],props:{statusCode:{type:String,required:!0}},mounted(){this.createDataLayerObject("errorDataEvent",{error_type:"System Error",error_details:this.statusCode})}},_hoisted_1$12={class:"d-none"};function _sfc_render$18(e,n,t,o,r,a){return vue.openBlock(),vue.createElementBlock("span",_hoisted_1$12)}const HtmlError=LoadingSpinner._export_sfc(_sfc_main$1n,[["render",_sfc_render$18]]),_sfc_main$1m={name:"VsTourismInfo",status:"prototype",release:"0.0.1",components:{VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol}},_hoisted_1$11={class:"vs-tourism-info","data-test":"vs-tourism-info"},_hoisted_2$M={key:0,class:"vs-tourism-info__links","data-test":"vs-tourism-info__standalone-links"},_hoisted_3$B={class:"vs-tourism-info__quote-block"},_hoisted_4$s={key:0,class:"vs-tourism-info__links-contained","data-test":"vs-tourism-info__embedded-links"};function _sfc_render$17(e,n,t,o,r,a){const s=vue.resolveComponent("VsCol"),i=vue.resolveComponent("VsRow"),l=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$11,[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.createVNode(i,null,{default:vue.withCtx(()=>[vue.createVNode(s,{cols:"10",offset:"1",md:"8","offset-md":"2",lg:"6","offset-lg":"3",class:"vs-tourism-info__intro-content"},{default:vue.withCtx(()=>[e.$slots["tourism-info-links"]&&e.$slots["tourism-info-links"]()&&!(e.$slots["tourism-info-quote"]&&e.$slots["tourism-info-quote"]())?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$M,[vue.renderSlot(e.$slots,"tourism-info-links")])):vue.createCommentVNode("",!0)]),_:3}),vue.createVNode(s,{cols:"12",md:"10","offset-md":"1",class:vue.normalizeClass({"vs-tourism-info__image-offset":e.$slots["tourism-info-quote"]&&e.$slots["tourism-info-quote"]()})},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"tourism-info-image-with-caption")]),_:3},8,["class"]),e.$slots["tourism-info-quote"]&&e.$slots["tourism-info-quote"]()?(vue.openBlock(),vue.createBlock(s,{key:0,cols:"12",md:"10","offset-md":"1",lg:"7","offset-lg":"5",class:"vs-tourism-info__quote-block-container"},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_3$B,[vue.renderSlot(e.$slots,"tourism-info-quote"),e.$slots["tourism-info-links"]?(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$s,[vue.renderSlot(e.$slots,"tourism-info-links")])):vue.createCommentVNode("",!0)])]),_:3})):vue.createCommentVNode("",!0)]),_:3})]),_:3})])}const TourismInfo=LoadingSpinner._export_sfc(_sfc_main$1m,[["render",_sfc_render$17]]),_sfc_main$1l={name:"VsIconList",status:"prototype",release:"0.0.1",props:{title:{type:String,default:""}}},_hoisted_1$10={class:"vs-icon-list","data-test":"vs-icon-list"},_hoisted_2$L={key:0,class:"vs-icon-list__title"},_hoisted_3$A={class:"vs-icon-list__list mb-0"};function _sfc_render$16(e,n,t,o,r,a){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$10,[t.title?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$L,vue.toDisplayString(t.title),1)):vue.createCommentVNode("",!0),vue.createElementVNode("ul",_hoisted_3$A,[vue.renderSlot(e.$slots,"default")])])}const IconList=LoadingSpinner._export_sfc(_sfc_main$1l,[["render",_sfc_render$16]]),_sfc_main$1k={name:"VsIconListItem",status:"prototype",release:"0.0.1",components:{VsIcon:LoadingSpinner.VsIcon},props:{label:{type:String,required:!0},icon:{type:String,required:!0}}},_hoisted_1$$={class:"vs-icon-list__item","data-test":"vs-icon-list__item"};function _sfc_render$15(e,n,t,o,r,a){const s=vue.resolveComponent("VsIcon");return vue.openBlock(),vue.createElementBlock("li",_hoisted_1$$,[vue.createVNode(s,{icon:t.icon,size:"md",class:"d-block mx-auto"},null,8,["icon"]),vue.createTextVNode(" "+vue.toDisplayString(t.label),1)])}const IconListItem=LoadingSpinner._export_sfc(_sfc_main$1k,[["render",_sfc_render$15]]),cookieValues$1=cookieValues$5.youtube,_sfc_main$1j={name:"VsVideoCaption",status:"deprecated",release:"0.0.1",components:{VsButton:LoadingSpinner.VsButton,VsToggleButton,VsWarning:LoadingSpinner.VsWarning},mixins:[cookieCheckerMixin],inject:{noJsMessage:{default:""},noCookiesMessage:{default:""},cookieLinkText:{default:""},errorMessage:{default:""}},props:{videoBtnText:{type:String,default:""},withToggleBtn:{type:Boolean,default:!1},videoId:{type:String,required:!0},variant:{type:String,default:"wide",validator:e=>e.match(/(wide|narrow)/)}},emits:["toggleAction"],setup(){return{videoStore:useVideoStore()}},data(){return{showErrorMessage:!1,requiredCookies:cookieValues$1}},computed:{videoDetails(){return this.videoStore.videos[this.videoId]},videoLoaded(){return typeof this.videoDetails<"u"&&this.videoDetails.videoDuration>0},showCookieMessage(){return!!(!this.cookiesAllowed&&this.noCookiesMessage)}},methods:{emitToggle(){this.$emit("toggleAction")},emitShowModal(){this.emitter&&this.emitter.emit("showModal",this.videoId,"#videoShow")}}},_hoisted_1$_={key:0,class:"vs-video-caption__buttons-container"},_hoisted_2$K={class:"container"},_hoisted_3$z={key:1,class:"vs-video-caption__details"},_hoisted_4$r={class:"vs-video-caption__title"},_hoisted_5$k={class:"vs-video-caption__duration"},_hoisted_6$g={key:1,class:"vs-video-caption vs-video-caption--warning"},_hoisted_7$e={key:2,class:"vs-video-caption vs-video-caption--no-js vs-video-caption--warning","data-test":"video-caption-nojs"};function _sfc_render$14(e,n,t,o,r,a){const s=vue.resolveComponent("VsButton"),i=vue.resolveComponent("VsToggleButton"),l=vue.resolveComponent("VsWarning");return vue.openBlock(),vue.createElementBlock("div",{"data-test":"video-caption",class:vue.normalizeClass(["vs-video-caption__wrapper",`vs-video-caption__wrapper--${t.variant}`])},[a.videoLoaded&&e.cookiesAllowed?(vue.openBlock(),vue.createElementBlock("div",{"data-test":"video-caption-variants",class:vue.normalizeClass(["vs-video-caption",`vs-video-caption--${t.variant}`]),key:"video-caption"},[t.videoBtnText?(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$_,[vue.createElementVNode("div",_hoisted_2$K,[vue.createVNode(s,{class:"vs-video-caption__button",icon:"vs-icon-control-play","icon-position":"left",size:"md",ref:"videoShow",rounded:!1,onClick:a.emitShowModal},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.videoBtnText),1)]),_:1},8,["onClick"])]),t.withToggleBtn?(vue.openBlock(),vue.createBlock(i,{key:0,onToggleAction:a.emitToggle},{default:vue.withCtx(()=>[...n[0]||(n[0]=[vue.createElementVNode("span",{class:"visually-hidden"}," Toggle caption ",-1)])]),_:1},8,["onToggleAction"])):vue.createCommentVNode("",!0)])):vue.createCommentVNode("",!0),e.cookiesAllowed?(vue.openBlock(),vue.createElementBlock("div",_hoisted_3$z,[vue.createElementVNode("p",_hoisted_4$r,[vue.renderSlot(e.$slots,"video-title")]),vue.createElementVNode("p",_hoisted_5$k,vue.toDisplayString(a.videoDetails.videoDurationMsg),1)])):vue.createCommentVNode("",!0)],2)):vue.createCommentVNode("",!0),!(a.videoLoaded&&e.cookiesAllowed)&&a.showCookieMessage?(vue.openBlock(),vue.createElementBlock("div",_hoisted_6$g,[vue.createVNode(l,{size:"small",type:"cookie"},{"button-text":vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.cookieLinkText),1)]),default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.noCookiesMessage)+" ",1)]),_:1})])):vue.createCommentVNode("",!0),a.noJsMessage?(vue.openBlock(),vue.createElementBlock("div",_hoisted_7$e,[vue.createVNode(l,{size:"small"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.noJsMessage),1)]),_:1})])):vue.createCommentVNode("",!0)],2)}const VsVideoCaption=LoadingSpinner._export_sfc(_sfc_main$1j,[["render",_sfc_render$14]]),cookieValues=cookieValues$5.youtube,_sfc_main$1i={name:"VsImageWithCaption",status:"prototype",release:"0.0.1",components:{VsImg:LoadingSpinner.VsImg,VsToggleButton,VsVideoCaption},mixins:[cookieCheckerMixin],provide(){return{noJsMessage:this.noJsMessage,errorMessage:this.errorMessage,noCookiesMessage:this.noCookiesMessage,cookieLinkText:this.cookieLinkText}},props:{altText:{type:String,default:""},closedDefaultCaption:{type:Boolean,default:!1},imageSrc:{type:String,default:""},isHeroImage:{type:Boolean,default:!1},isVideo:{type:Boolean,default:!1},mobileOverlap:{type:Boolean,default:!1},toggleButtonText:{type:String,default:""},playButtonText:{type:String,default:""},videoId:{type:String,default:""},smallPlayButton:{type:Boolean,default:!1},noCookiesMessage:{type:String,default:""},cookieLinkText:{type:String,default:""},noJsMessage:{type:String,default:""},useLazyLoading:{type:Boolean,default:!0},errorMessage:{type:String,default:""},showToggle:{type:Boolean,default:!0}},data(){return{showCaption:!1,uniqueCaptionId:"",requiredCookies:cookieValues}},computed:{isSvg(){return this.imageSrc.endsWith(".svg")},imageWithCaptionClasses(){return{"vs-image-with-caption--closed-default":this.closedDefaultCaption,"vs-image-with-caption--hero":this.isHeroImage,"vs-image-with-caption--show-caption":!this.cookiesAllowed&&this.cookiesLoaded,"vs-image-with-caption--video":this.isVideo,"vs-image-with-caption--svg":this.isSvg}},captionWrapperClasses(){return{"d-block":this.showCaption&&!this.isHeroImage,"d-flex":this.showCaption&&this.isHeroImage||this.showCaption&&this.isVideo,container:this.isHeroImage}}},mounted(){this.uniqueCaptionId=this._uid},methods:{toggleCaption(){this.showCaption=!this.showCaption}}},_hoisted_1$Z={class:"visually-hidden"},_hoisted_2$J={class:"vs-image-with-caption__captions"},_hoisted_3$y=["id"];function _sfc_render$13(e,n,t,o,r,a){const s=vue.resolveComponent("VsImg"),i=vue.resolveComponent("VsToggleButton"),l=vue.resolveComponent("VsVideoCaption");return vue.openBlock(),vue.createElementBlock("figure",{class:vue.normalizeClass(["vs-image-with-caption",a.imageWithCaptionClasses]),"data-test":"vs-image-with-caption"},[vue.createElementVNode("div",{class:vue.normalizeClass(["vs-image-with-caption__image-wrapper",t.mobileOverlap?"vs-image-with-caption--overlapped":""])},[vue.renderSlot(e.$slots,"default",{},()=>[t.imageSrc?(vue.openBlock(),vue.createBlock(s,{key:0,src:t.imageSrc,alt:t.altText,"use-lazy-loading":t.useLazyLoading},null,8,["src","alt","use-lazy-loading"])):vue.createCommentVNode("",!0)]),t.showToggle?(vue.openBlock(),vue.createBlock(i,{key:0,"img-src":t.imageSrc,"toggle-id":r.uniqueCaptionId,onToggleAction:a.toggleCaption},{"toggle-icon":vue.withCtx(()=>[vue.renderSlot(e.$slots,"toggle-icon")]),default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_1$Z,vue.toDisplayString(t.toggleButtonText),1)]),_:3},8,["img-src","toggle-id","onToggleAction"])):vue.createCommentVNode("",!0)],2),vue.createElementVNode("figcaption",_hoisted_2$J,[t.isVideo?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(["vs-image-with-caption__video-caption-wrapper",t.isHeroImage?"container-lg":""])},[vue.createVNode(l,{"video-btn-text":t.playButtonText,"with-toggle-btn":t.showToggle,onToggleAction:a.toggleCaption,"video-id":t.videoId,"cookie-link-text":t.cookieLinkText,"error-message":t.errorMessage,variant:t.smallPlayButton?"narrow":"wide"},{"video-title":vue.withCtx(()=>[vue.renderSlot(e.$slots,"video-title")]),_:3},8,["video-btn-text","with-toggle-btn","onToggleAction","video-id","cookie-link-text","error-message","variant"])],2)):vue.createCommentVNode("",!0),vue.createElementVNode("div",{class:vue.normalizeClass(["vs-image-with-caption__caption-wrapper",a.captionWrapperClasses]),id:r.uniqueCaptionId},[vue.renderSlot(e.$slots,"img-caption")],10,_hoisted_3$y)])],2)}const ImageWithCaption=LoadingSpinner._export_sfc(_sfc_main$1i,[["render",_sfc_render$13]]),_sfc_main$1h={name:"VsIllustratedMap",props:{highlightedRegions:{type:Array,default:()=>[],validator:e=>e.every(n=>/^(borders|dumfries|highlands|outerhebs|shetland|orkney|edinburgh|glasgow|fife|dundee|aberdeen|perth|lomond|arranayr|argyll)$/.test(n))},ariaLabel:{type:String,default:()=>"Illustrated map of Scotland showing regions"},title:{type:String,default:()=>"Map of Scotland"},width:{type:String,default:null}},methods:{isHighlighted(e){return this.highlightedRegions.includes(e)}}},_hoisted_1$Y=["aria-label","width"];function _sfc_render$12(e,n,t,o,r,a){return vue.openBlock(),vue.createElementBlock("svg",{class:"vs-illustrated-map",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 147 259",fill:"none","aria-label":t.ariaLabel,width:t.width},[vue.createElementVNode("title",null,vue.toDisplayString(t.title),1),vue.createElementVNode("path",{id:"region-borders",d:"M94.8908 215.531L93.0078 228.835L107.675 235.709V243.242L113.032 241.534L128.139 211.014L120.114 207.334L105.422 215.196L94.8908 215.531Z",class:vue.normalizeClass({"is-highlighted":a.isHighlighted("borders")})},null,2),vue.createElementVNode("path",{id:"region-dumfries",d:"M107.678 243.242V235.709L93.0105 228.835L82.3684 227.947L56.8945 246.364L61.8447 258.049L107.678 243.242Z",class:vue.normalizeClass({"is-highlighted":a.isHighlighted("dumfries")})},null,2),vue.createElementVNode("path",{id:"region-highlands",d:"M76.3875 143.097L95.2198 133.991L113.324 133.608L97.0838 160.469L75.7941 169.254L55.0816 173.951L39.152 171.715L42.8855 166.308L22.8906 149.472L26.9695 134.771L40.5413 142.884L40.5683 128.034L58.977 94.2952L75.2383 98.8575L103.725 94.2952L103.831 105.06L76.3875 143.097Z",class:vue.normalizeClass({"is-highlighted":a.isHighlighted("highlands")})},null,2),vue.createElementVNode("path",{id:"region-outerhebs",d:"M32.2773 100.625L28.2335 123.863L12.5575 138.325L6.67127 161.517L0 166.276L2.87299 130.376L15.7839 111.868L32.2773 100.625Z",class:vue.normalizeClass({"is-highlighted":a.isHighlighted("outerhebs")})},null,2),vue.createElementVNode("path",{id:"region-shetland",d:"M137.044 28.8822L146.094 6.08942L143.526 0L123.234 20.1191L130.38 32.3789L137.044 28.8822Z",class:vue.normalizeClass({"is-highlighted":a.isHighlighted("shetland")})},null,2),vue.createElementVNode("path",{id:"region-orkney",d:"M122.546 56.7442L104.383 67.0074L102.082 77.7078L110.938 85.416L123.687 65.4372L122.546 56.7442Z",class:vue.normalizeClass({"is-highlighted":a.isHighlighted("orkney")})},null,2),vue.createElementVNode("path",{id:"region-edinburgh",d:"M91.4266 205.144L85.8047 209.876L88.6156 214.643L94.893 215.531L105.425 215.196L120.116 207.334L109.493 202.467L96.7193 207.453L91.4266 205.144Z",class:vue.normalizeClass({"is-highlighted":a.isHighlighted("edinburgh")})},null,2),vue.createElementVNode("path",{id:"region-glasgow",d:"M82.3716 227.947L61.3516 207.458L69.5119 201.782L85.8084 209.876L88.6193 214.643L94.8967 215.531L93.0138 228.835L82.3716 227.947Z",class:vue.normalizeClass({"is-highlighted":a.isHighlighted("glasgow")})},null,2),vue.createElementVNode("path",{id:"region-fife",d:"M87.6797 202.205L92.2306 196.904L96.9973 195.69L98.0602 189.406L110.434 188.702L114.378 195.922L98.7427 203.034L87.6797 202.205Z",class:vue.normalizeClass({"is-highlighted":a.isHighlighted("fife")})},null,2),vue.createElementVNode("path",{id:"region-dundee",d:"M104.384 186.969L95.3438 167.854L109.865 163.084L113.858 171.955L120.915 172.433L116.269 182.388L104.384 186.969Z",class:vue.normalizeClass({"is-highlighted":a.isHighlighted("dundee")})},null,2),vue.createElementVNode("path",{id:"region-aberdeen",d:"M113.318 133.608L126.213 133.333L135.806 140.523L120.907 172.433L113.85 171.955L109.857 163.084L95.336 167.854L83.0078 166.276L97.0787 160.47L113.318 133.608Z",class:vue.normalizeClass({"is-highlighted":a.isHighlighted("aberdeen")})},null,2),vue.createElementVNode("path",{id:"region-perth",d:"M75.7936 169.255L69.8615 170.601L65.6289 186.368L73.8324 183.044L78.7125 185.704L76.1605 192.023L92.2357 196.904L97.0025 195.69L98.0653 189.406L104.381 186.97L95.3407 167.854L83.0125 166.276L75.7936 169.255Z",class:vue.normalizeClass({"is-highlighted":a.isHighlighted("perth")})},null,2),vue.createElementVNode("path",{id:"region-lomond",d:"M62.4171 188.701L65.63 186.368L73.8335 183.044L78.7136 185.704L76.1616 192.023L92.2368 196.903L87.6859 202.205H85.0072L91.4303 205.143L85.8084 209.875L69.5119 201.781L61.3516 207.458L61.5296 202.467L63.1914 194.13L62.4171 188.701Z",class:vue.normalizeClass({"is-highlighted":a.isHighlighted("lomond")})},null,2),vue.createElementVNode("path",{id:"region-arran",d:"M51.7287 220.725L49.1875 231.015C49.1875 231.015 54.9712 233.435 55.1709 233.168C55.3732 232.898 61.1542 222.611 60.9546 222.543C60.755 222.476 51.7287 220.728 51.7287 220.728V220.725Z",class:vue.normalizeClass({"is-highlighted":a.isHighlighted("arranayr")})},null,2),vue.createElementVNode("path",{id:"region-ayrshire",d:"M61.3483 207.458L60.9653 218.253L66.8434 223.663L56.8945 246.364L82.3684 227.947L61.3483 207.458Z",class:vue.normalizeClass({"is-highlighted":a.isHighlighted("arranayr")})},null,2),vue.createElementVNode("path",{id:"region-argyll",d:"M42.2625 231.565L48.5831 221.483L52.2519 210.237L60.9598 218.253L61.521 202.467L63.1827 194.13L62.4085 188.702L65.6214 186.368L69.854 170.601L55.0736 173.952L39.144 171.715L27.6386 179.013L26.6485 193.901L39.2061 192.377L52.0981 177.832L42.8937 196.909L25.9768 208.276L23.9023 213.801L28.5207 221.82L43.2148 204.755L44.364 206.684L37.396 224.232L42.2625 231.565Z",class:vue.normalizeClass({"is-highlighted":a.isHighlighted("argyll")})},null,2)],8,_hoisted_1$Y)}const IllustratedMap=LoadingSpinner._export_sfc(_sfc_main$1h,[["render",_sfc_render$12],["__scopeId","data-v-ecb2305b"]]),_sfc_main$1g={name:"VsInput",status:"prototype",release:"0.0.1",components:{BFormInput:LoadingSpinner.Tu,VsButton:LoadingSpinner.VsButton},mixins:[validateFormElementMixin,ariaDescriptionMixin],props:{value:{type:String,default:""},fieldName:{type:String,required:!0},name:{type:String,default:""},type:{type:String,default:"text"},autoComplete:{type:Boolean,default:!0},validationRules:{type:Object,default(){return{}}},invalid:{type:Boolean,default:!1},ariaLabel:{type:String,default:""},disabled:{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:""},placeholder:{type:String,default:""},reAlertErrors:{type:Boolean,default:!1}},emits:["updated"],setup:()=>({v$:useVuelidate()}),data(){return{inputVal:this.value,clearErrorsOnFocus:!1}},computed:{elementClass(){let e="";return(this.isInvalid||this.errorsList.length)&&(e="vs-input--error"),`${`vs-input--${this.fieldName}`} ${e}`},showClearButton(){return!!(this.inputVal.length&&this.clearButtonText!=="")}},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()})},clearInputAndFocus(){this.clearInput(),this.focusOnInput()},autocompleteValue(e){let n;switch(e){case"firstName":n="given-name";break;case"lastName":n="family-name";break;case"Email":n="email";break;case"PostalCode":n="postal-code";break;default:n=this.autoComplete?"on":"off";break}return n},validateErrors(){this.clearErrorsOnFocus=!1,this.emitStatus()},resetErrors(){this.clearErrorsOnFocus=!0}},validations(){return this.rules}},_hoisted_1$X={"data-test":"vs-input"},_hoisted_2$I=["id"],_hoisted_3$x=["id"],_hoisted_4$q={class:"visually-hidden"};function _sfc_render$11(e,n,t,o,r,a){const s=vue.resolveComponent("BFormInput"),i=vue.resolveComponent("VsButton");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$X,[t.hintText?(vue.openBlock(),vue.createElementBlock("p",{key:0,class:"hint-text",id:`hint-${t.fieldName}`},vue.toDisplayString(t.hintText),9,_hoisted_2$I)):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$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_3$x)):vue.createCommentVNode("",!0),vue.createVNode(s,{ref:"input",type:t.type,class:vue.normalizeClass(["vs-input",[r.inputVal?"show-cancel":"",a.elementClass]]),modelValue:r.inputVal,"onUpdate:modelValue":n[0]||(n[0]=l=>r.inputVal=l),id:t.fieldName,name:t.name?t.name:t.fieldName,placeholder:t.placeholder,required:e.isRequired,autocomplete:a.autocompleteValue(t.fieldName),v:r.inputVal,"aria-invalid":e.v$.inputVal&&e.v$.inputVal.$anyError||t.invalid,"aria-label":t.ariaLabel?t.ariaLabel:null,"aria-describedby":e.ariaDescription,maxlength:t.validationRules.maxLength?t.validationRules.maxLength:null,minlength:t.validationRules.minLength?t.validationRules.minLength:null,min:t.validationRules.min!==void 0?t.validationRules.min:null,max:t.validationRules.max!==void 0?t.validationRules.max:null,disabled:t.disabled,onBlur:a.validateErrors,onChange:a.validateErrors,onFocus:a.resetErrors},null,8,["type","modelValue","class","id","name","placeholder","required","autocomplete","v","aria-invalid","aria-label","aria-describedby","maxlength","minlength","min","max","disabled","onBlur","onChange","onFocus"]),a.showClearButton?(vue.openBlock(),vue.createBlock(i,{key:2,class:"vs-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=>a.clearInputAndFocus(),["prevent"]))},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.clearButtonText),1)]),_:1})):vue.createCommentVNode("",!0)])}const VsInput=LoadingSpinner._export_sfc(_sfc_main$1g,[["render",_sfc_render$11]]),_sfc_main$1f={name:"VsItinerary",status:"prototype",release:"0.0.1",components:{VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,VsAccordion,VsButton:LoadingSpinner.VsButton},props:{listViewText:{type:String,default:"List view"},mapViewText:{type:String,default:"Map view"}},data(){return{showMap:!1,isDesktop:!1,withinItineraryMain:!1}},mounted(){const e=document.querySelector(".vds-example");window.addEventListener("resize",this.resizeWidth),e===null?window.addEventListener("scroll",this.onScroll):e.addEventListener("scroll",this.onScroll),this.resizeWidth()},unmounted(){window.removeEventListener("resize",this.resizeWidth)},methods:{resizeWidth(){this.isDesktop=window.innerWidth>=1200,this.showMap=window.innerWidth>=1200},onScroll(){const e=this.$el.getBoundingClientRect(),n=e.top<=(window.innerHeight||document.documentElement.clientHeight),t=e.bottom<=(window.innerHeight||document.documentElement.clientHeight);this.withinItineraryMain=!!(n&&!t)},toggleShowMap(){this.showMap=!this.showMap}}},_hoisted_1$W={class:"vs-itinerary","data-test":"vs-itinerary"},_hoisted_2$H={class:"fixed-bottom"},_hoisted_3$w={class:"d-flex justify-content-center pb-050"},_hoisted_4$p={key:0,class:"vs-itinerary__map-container","data-chromatic":"ignore"};function _sfc_render$10(e,n,t,o,r,a){const s=vue.resolveComponent("VsButton"),i=vue.resolveComponent("VsAccordion"),l=vue.resolveComponent("VsCol"),u=vue.resolveComponent("VsRow"),c=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("section",_hoisted_1$W,[vue.withDirectives(vue.createElementVNode("div",_hoisted_2$H,[vue.createElementVNode("div",_hoisted_3$w,[vue.createVNode(s,{class:"vs-itinerary__map-toggle-button",onClick:n[0]||(n[0]=d=>a.toggleShowMap()),icon:r.showMap?"fa-regular fa-list":"fa-regular fa-map","data-test":"vs-itinerary-btn"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.showMap?t.listViewText:t.mapViewText),1)]),_:1},8,["icon"])])],512),[[vue.vShow,!r.isDesktop&&r.withinItineraryMain]]),r.isDesktop||r.showMap?(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$p,[vue.renderSlot(e.$slots,"map")])):vue.createCommentVNode("",!0),vue.createVNode(c,{class:"vs-itinerary__outer-container"},{default:vue.withCtx(()=>[vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(l,{cols:"12",class:"p-0 vs-itinerary__accordion-container"},{default:vue.withCtx(()=>[vue.createVNode(i,{"break-point":"lg"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"list")]),_:3})]),_:3})]),_:3})]),_:3})])}const Itinerary=LoadingSpinner._export_sfc(_sfc_main$1f,[["render",_sfc_render$10]]),_sfc_main$1e={name:"VsItineraryDay",status:"prototype",release:"0.0.1",components:{VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,VsIcon:LoadingSpinner.VsIcon,VsAccordionItem},props:{defaultShow:{type:Boolean,default:!0},dayLabel:{type:String,required:!0},dayNumber:{type:String,required:!0},dayTitle:{type:String,required:!0}},data(){return{show:this.defaultShow}}},_hoisted_1$V={class:"vs-itinerary-day"},_hoisted_2$G={class:"vs-itinerary-day__header"},_hoisted_3$v={class:"vs-itinerary-day__title"},_hoisted_4$o={class:"vs-itinerary-day__sub-heading"},_hoisted_5$j=["id"],_hoisted_6$f={class:"vs-itinerary-day__intro-content"},_hoisted_7$d={class:"list-unstyled"};function _sfc_render$$(e,n,t,o,r,a){const s=vue.resolveComponent("VsIcon"),i=vue.resolveComponent("VsAccordionItem"),l=vue.resolveComponent("VsCol"),u=vue.resolveComponent("VsRow"),c=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$V,[vue.createVNode(c,null,{default:vue.withCtx(()=>[vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.createVNode(i,{"open-by-default":r.show,"control-id":`itinerary-day-${t.dayNumber}`,variant:"subtle","item-break-point":"lg",class:"vs-itinerary-day__list-item"},{title:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_2$G,[vue.createElementVNode("span",_hoisted_3$v,vue.toDisplayString(t.dayLabel)+" "+vue.toDisplayString(t.dayNumber),1),vue.createElementVNode("span",_hoisted_4$o,vue.toDisplayString(t.dayTitle),1)])]),"icon-open":vue.withCtx(()=>[vue.createVNode(s,{icon:"vs-icon-control-collapse",size:"lg",padding:3,class:"vs-itinerary-day__toggle-button"})]),"icon-closed":vue.withCtx(()=>[vue.createVNode(s,{icon:"vs-icon-control-expand",size:"lg",padding:3,class:"vs-itinerary-day__toggle-button"})]),default:vue.withCtx(()=>[vue.createElementVNode("div",{id:`dayPanel_${t.dayNumber}`,class:"vs-itinerary-day__panel"},[vue.createElementVNode("div",_hoisted_6$f,[vue.renderSlot(e.$slots,"day-transport"),vue.renderSlot(e.$slots,"day-introduction")]),vue.createElementVNode("ul",_hoisted_7$d,[vue.renderSlot(e.$slots,"stops")])],8,_hoisted_5$j)]),_:3},8,["open-by-default","control-id"])]),_:3})]),_:3})]),_:3})])}const ItineraryDay=LoadingSpinner._export_sfc(_sfc_main$1e,[["render",_sfc_render$$]]),_sfc_main$1d={name:"VsItineraryStop",status:"prototype",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading,VsIcon:LoadingSpinner.VsIcon,VsBody:LoadingSpinner.VsBody,VsDetail},props:{stopLabel:{type:String,required:!0},stopNumber:{type:String,required:!0},stopTitle:{type:String,required:!0}}},_hoisted_1$U={class:"vs-itinerary-stop","data-test":"vs-itinerary-stop"},_hoisted_2$F={class:"vs-itinerary-stop__border"},_hoisted_3$u={class:"vs-itinerary-stop__header","data-test":"vs-itinerary-stop-heading"},_hoisted_4$n={class:"vs-itinerary-stop__marker"},_hoisted_5$i={class:"vs-itinerary-stop__count","aria-hidden":"true","data-test":"vs-itinerary-stop-marker"},_hoisted_6$e={class:"vs-itinerary-stop__details-container","data-chromatic":"ignore"},_hoisted_7$c={key:0,class:"vs-itinerary-stop__address","data-test":"vs-itinerary-stop-address"};function _sfc_render$_(e,n,t,o,r,a){const s=vue.resolveComponent("VsIcon"),i=vue.resolveComponent("VsHeading"),l=vue.resolveComponent("VsDetail"),u=vue.resolveComponent("VsBody");return vue.openBlock(),vue.createElementBlock("li",_hoisted_1$U,[vue.createElementVNode("div",_hoisted_2$F,[vue.createElementVNode("div",_hoisted_3$u,[vue.createElementVNode("div",_hoisted_4$n,[vue.createVNode(s,{icon:"fa-solid fa-location-pin",variant:"highlight",size:"xl"}),vue.createElementVNode("span",_hoisted_5$i,vue.toDisplayString(t.stopNumber),1)]),vue.createVNode(i,{level:"3","heading-style":"heading-s",class:"vs-itinerary-stop__title mb-025","no-margins":""},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.stopLabel),1)]),_:1}),vue.createVNode(l,{class:"vs-itinerary-stop__detail","no-margins":""},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.stopTitle),1)]),_:1})]),vue.renderSlot(e.$slots,"default"),vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"stop-description")]),_:3}),vue.renderSlot(e.$slots,"stop-time-to-explore"),vue.renderSlot(e.$slots,"stop-tips"),vue.createElementVNode("div",_hoisted_6$e,[e.$slots["stop-address"]?(vue.openBlock(),vue.createElementBlock("div",_hoisted_7$c,[vue.renderSlot(e.$slots,"stop-address")])):vue.createCommentVNode("",!0),vue.renderSlot(e.$slots,"stop-info")]),vue.renderSlot(e.$slots,"stop-facilities")]),e.$slots["stop-buttons"]?vue.renderSlot(e.$slots,"stop-buttons",{key:0}):vue.createCommentVNode("",!0)])}const ItineraryStop=LoadingSpinner._export_sfc(_sfc_main$1d,[["render",_sfc_render$_]]),_sfc_main$1c={name:"VsItineraryStopInfo",status:"prototype",release:"0.0.1",components:{VsIcon:LoadingSpinner.VsIcon,VsLink},props:{openingHours:{type:[String,Object],required:!1,default:null},openingTimesLink:{type:String,required:!1,default:null},closedText:{type:String,required:!0},closingSoonText:{type:String,required:!0},openText:{type:String,required:!0},usualText:{type:String,required:!0},provisionalText:{type:String,required:!0},temporarilyClosedText:{type:String,required:!0},toText:{type:String,required:!0},andText:{type:String,required:!0}},data(){return{openingMessage:"",currentDayData:{},currentTime:{},dayDataIndex:0,closedLongTerm:!1,ukDate:"",isCurrentTimeframe:!1,parsedHours:{}}},computed:{hoursMessage(){let e="";if(this.closedLongTerm)e=this.temporarilyClosedText;else if(this.currentDayData.length>0)switch(this.openingMessage){case"closed":e=this.closedText;break;case"closing soon":e=this.closingSoonText;break;case"open":e=this.openText;break;default:e=""}return e},provisionalMessage(){let e="";if(typeof this.currentDayData[0]<"u"){const n=this.currentDayData[0].state==="open"?this.openText:this.closedText;this.currentDayData[0].provisional?e=`${this.provisionalText} ${n.toLowerCase()} ${this.currentDayData[0].day}`:e=`${this.usualText} ${n.toLowerCase()} ${this.currentDayData[0].day}`,this.currentDayData[0].state!=="closed"&&typeof this.currentDayData[this.dayDataIndex]<"u"&&typeof this.currentDayData[this.dayDataIndex].startTime<"u"&&typeof this.currentDayData[this.dayDataIndex].endTime<"u"&&this.currentDayData[this.dayDataIndex].startTime!==""&&this.currentDayData[this.dayDataIndex].endTime!==""&&this.currentDayData.forEach((t,o)=>{e+=` ${t.startTime} ${this.toText} ${t.endTime}`,o+1<this.currentDayData.length&&(e+=` ${this.andText} `)})}return e}},created(){this.parseIncomingData(),this.getCurrentTime(),this.isActiveDate(),this.getCurrentHoursInfo()},methods:{parseIncomingData(){if(typeof this.openingHours!="object"){const e=this.openingHours.replace(/'/g,'"');this.parsedHours=JSON.parse(e)}else this.parsedHours=this.openingHours;this.parsedHours.closedLongTerm&&(this.closedLongTerm=!0)},getCurrentTime(){const e=new Date,n=e.toLocaleTimeString("en-GB",{timeZone:"Europe/London"});this.ukDate=e.toLocaleDateString("en-GB",{timeZone:"Europe/London"});const t=n.substring(0,2),o=n.substring(3,6),r=e.getDay();this.currentTime.hours=parseInt(t,10),this.currentTime.minutes=parseInt(o,10),this.currentTime.day=r},isActiveDate(){if(typeof this.parsedHours.period<"u"){const e=`${this.ukDate.substring(3,5)}/${this.ukDate.substring(0,2)}/${this.ukDate.substring(6,10)}`,n=new Date(this.parsedHours.period.startDay),t=new Date(this.parsedHours.period.endDay),o=new Date(e);o<t&&o>n?this.isCurrentTimeframe=!0:this.isCurrentTimeframe=!1}else this.isCurrentTimeframe=!0},getCurrentHoursInfo(){const e=this.returnDayName(this.currentTime.day);if(typeof this.parsedHours.days<"u"){const n=this.parsedHours.days.filter(t=>t.key===e);typeof n<"u"&&(this.currentDayData=n,this.compareTimes(this.currentTime,this.currentDayData,this.dayDataIndex))}},compareTimes(e,n,t){if(typeof n[t].startTime<"u"&&typeof n[t].endTime<"u"&&n[t].startTime.length>0&&n[t].endTime.length>0){const o=n[t].startTime,r=n[t].endTime,a=parseInt(o.substring(0,o.indexOf(":")),10),s=parseInt(o.substring(o.indexOf(":")+1,o.length),10),i=parseInt(r.substring(0,r.indexOf(":")),10),l=parseInt(r.substring(r.indexOf(":")+1,r.length),10),u=this.calculateClosingSoon(i,l);n[t].state==="closed"?this.openingMessage="closed":a>e.hours||a===e.hours&&s>e.minutes||i<e.hours||i===e.hours&&l<e.minutes?this.openingMessage="closed":this.withinClosingSoonTime(e,u)?this.openingMessage="closing soon":this.openingMessage="open",this.openingMessage==="closed"&&n.length>t+1&&(this.dayDataIndex+=1,this.compareTimes(this.currentTime,this.currentDayData,this.dayDataIndex))}else n[t].state==="closed"&&(this.openingMessage="closed")},returnDayName(e){let n="";switch(e){case 1:n="monday";break;case 2:n="tuesday";break;case 3:n="wednesday";break;case 4:n="thursday";break;case 5:n="friday";break;case 6:n="saturday";break;case 7:n="sunday";break;default:n=""}return n},calculateClosingSoon(e,n){let t,o;return n<30?(t=e-1,o=60+(n-30)):(t=e,o=n-30),{hours:t,mins:o}},withinClosingSoonTime(e,n){return!(n.hours>e.hours||n.hours===e.hours&&n.mins>e.minutes)}}},_hoisted_1$T={class:"vs-itinerary-stop-info","data-test":"vs-itinerary-stop-info"},_hoisted_2$E={key:0,class:"itinerary-stop-info__times mb-0","data-test":"vs-itinerary-stop-status"},_hoisted_3$t={key:1,"data-test":"vs-itinerary-stop-hours"},_hoisted_4$m={key:1,"data-test":"vs-stop-link"},_hoisted_5$h={key:2,"data-test":"vs-stop-charge-text"};function _sfc_render$Z(e,n,t,o,r,a){const s=vue.resolveComponent("VsIcon"),i=vue.resolveComponent("VsLink");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$T,[vue.createVNode(s,{icon:"vs-icon-feedback-information",class:"vs-address__map-marker me-050"}),vue.createElementVNode("div",null,[r.isCurrentTimeframe?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[a.hoursMessage.length>0?(vue.openBlock(),vue.createElementBlock("p",_hoisted_2$E,[vue.createTextVNode(vue.toDisplayString(a.hoursMessage),1),n[0]||(n[0]=vue.createElementVNode("br",null,null,-1))])):vue.createCommentVNode("",!0),!r.closedLongTerm&&typeof r.currentDayData[0]<"u"&&typeof r.currentDayData[0].state<"u"&&a.provisionalMessage.length>0?(vue.openBlock(),vue.createElementBlock("p",_hoisted_3$t,vue.toDisplayString(a.provisionalMessage)+". ",1)):vue.createCommentVNode("",!0)],64)):vue.createCommentVNode("",!0),e.$slots["stop-link-text"]&&t.openingTimesLink!==null?(vue.openBlock(),vue.createElementBlock("p",_hoisted_4$m,[vue.createVNode(i,{href:t.openingTimesLink},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"stop-link-text")]),_:3},8,["href"])])):vue.createCommentVNode("",!0),e.$slots["stop-charge-text"]?(vue.openBlock(),vue.createElementBlock("p",_hoisted_5$h,[vue.renderSlot(e.$slots,"stop-charge-text")])):vue.createCommentVNode("",!0)])])}const ItineraryStopInfo=LoadingSpinner._export_sfc(_sfc_main$1c,[["render",_sfc_render$Z]]),_sfc_main$1b={name:"VsItineraryTips",status:"prototype",release:"0.0.1",components:{},props:{}},_hoisted_1$S={class:"vs-itinerary-tips position-relative my-175"},_hoisted_2$D={class:"vs-itinerary-tips__text"},_hoisted_3$s={class:"vs-itinerary-tips__svg position-absolute"};function _sfc_render$Y(e,n,t,o,r,a){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$S,[vue.createElementVNode("div",_hoisted_2$D,[vue.renderSlot(e.$slots,"text")]),vue.createElementVNode("div",_hoisted_3$s,[vue.renderSlot(e.$slots,"svg")])])}const ItineraryTips=LoadingSpinner._export_sfc(_sfc_main$1b,[["render",_sfc_render$Y]]),_sfc_main$1a={name:"VsItineraryBorderOverlapWrapper",status:"prototype",release:"0.0.1",components:{},props:{}},_hoisted_1$R={class:"vs-itinerary-border-overlap__wrapper d-flex d-sm-inline-flex flex-column justify-content-start border-left"};function _sfc_render$X(e,n,t,o,r,a){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$R,[vue.renderSlot(e.$slots,"default")])}const ItineraryBorderOverlapWrapper=LoadingSpinner._export_sfc(_sfc_main$1a,[["render",_sfc_render$X]]),_sfc_main$19={name:"VsLinkList",status:"prototype",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading},props:{toc:{type:Boolean,default:!1}},computed:{classes(){return{"link-list":!0,"link-list--toc":this.toc}},dataTest(){return this.toc?"link-list--toc":"link-list"},hasHeadingSlot(){return!!this.$slots.heading}}},_hoisted_1$Q=["data-test"],_hoisted_2$C={class:"link-list__list"};function _sfc_render$W(e,n,t,o,r,a){const s=vue.resolveComponent("VsHeading");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(a.classes),"data-test":a.dataTest},[vue.createElementVNode("nav",null,[a.hasHeadingSlot?(vue.openBlock(),vue.createBlock(s,{key:0,level:"2","no-margins":"","heading-style":"heading-m"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"heading")]),_:3})):vue.createCommentVNode("",!0),vue.createElementVNode("ul",_hoisted_2$C,[vue.renderSlot(e.$slots,"default")])])],10,_hoisted_1$Q)}const VsLinkList=LoadingSpinner._export_sfc(_sfc_main$19,[["render",_sfc_render$W]]),_sfc_main$18={name:"VsLinkListItem",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|video)/)},videoId:{type:String,default:null},videoDescriptor:{type:String,default:null}},setup(){return{videoStore:useVideoStore()}},computed:{formattedVideoDuration(){if(this.videoDetails){let e=`${this.videoDetails.videoFullDuration.seconds}`;return e.length===1&&(e=`0${e}`),`${this.videoDetails.videoFullDuration.minutes}:${e}`}return""},videoDetails(){return this.videoStore.videos[this.videoId]},videoLoaded(){return typeof this.videoDetails<"u"&&this.videoDetails.videoDuration>0}},methods:{emitShowModal(){this.videoId&&this.emitter&&this.emitter.emit("showModal",this.videoId,"#videoShow")}}},_hoisted_1$P={class:"link-list-item"};function _sfc_render$V(e,n,t,o,r,a){const s=vue.resolveComponent("VsLink");return vue.openBlock(),vue.createElementBlock("li",_hoisted_1$P,[vue.createVNode(s,{href:t.href,type:t.type==="video"?"default":t.type,role:t.type==="video"?"button":null,onClick:a.emitShowModal},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default"),t.type==="video"&&a.videoLoaded?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createTextVNode(" | "+vue.toDisplayString(t.videoDescriptor)+" "+vue.toDisplayString(a.formattedVideoDuration),1)],64)):vue.createCommentVNode("",!0)]),_:3},8,["href","type","role","onClick"])])}const LinkListItem=LoadingSpinner._export_sfc(_sfc_main$18,[["render",_sfc_render$V]]),_sfc_main$17={name:"VsListicleItem",status:"prototype",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,VsBody:LoadingSpinner.VsBody,VsDetail},props:{index:{type:String,default:""},title:{type:String,default:""},subTitle:{type:String,default:""}},computed:{hasKeyFacilitiesSlot(){return!!this.$slots["facilities-slot"]}}},_hoisted_1$O={class:"vs-listicle-item border","data-test":"vs-listicle-item"},_hoisted_2$B={class:"vs-listicle-item__header","data-test":"vs-listicle-item-heading"},_hoisted_3$r={class:"count__bg"},_hoisted_4$l={class:"count","aria-hidden":"true"};function _sfc_render$U(e,n,t,o,r,a){const s=vue.resolveComponent("VsHeading"),i=vue.resolveComponent("VsDetail"),l=vue.resolveComponent("VsBody"),u=vue.resolveComponent("VsCol"),c=vue.resolveComponent("VsRow");return vue.openBlock(),vue.createElementBlock("li",_hoisted_1$O,[vue.renderSlot(e.$slots,"hippo-details"),vue.createElementVNode("div",_hoisted_2$B,[vue.createElementVNode("div",_hoisted_3$r,[vue.createElementVNode("span",_hoisted_4$l,vue.toDisplayString(t.index),1)]),vue.createVNode(s,{level:"2","heading-style":"heading-s",class:"vs-listicle-item__title mb-025","no-margins":""},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.title),1)]),_:1}),vue.createVNode(i,{class:"vs-listicle-item__detail","no-margins":""},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.subTitle),1)]),_:1})]),vue.renderSlot(e.$slots,"image-slot"),vue.createVNode(c,null,{default:vue.withCtx(()=>[vue.createVNode(u,{cols:"12",lg:"8",class:"mt-050 mt-sm-300 mb-100 mt-lg-050 pe-lg-300"},{default:vue.withCtx(()=>[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"description-slot")]),_:3})]),_:3}),vue.createVNode(u,{cols:"12",lg:"4",class:vue.normalizeClass(["key-facilities-list mt-lg-400",[a.hasKeyFacilitiesSlot?"has-facilities":""]])},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"facilities-slot")]),_:3},8,["class"])]),_:3})])}const ListicleItem=LoadingSpinner._export_sfc(_sfc_main$17,[["render",_sfc_render$U]]),__vite_import_meta_env__={BASE_URL:"/",DEV:!1,MODE:"production",PROD:!0,SSR:!1};var define_process_env_default$2={ICON_KIT_TOKEN:"7c48e8b3d4",ICON_API_TOKEN:"AC462319-8130-4A02-9769-769105D6B489",RECAPTCHA_TOKEN:"6LdZ13gmAAAAAD5bpXvcE26kYVb1daMMXooSLffx",EVENTS_API_URL:"https://i-api.visitscotland.com/events/search",CLUDO_API_KEY:"abba43e006424824befb855918e2b9db",CLUDO_CUSTOMER_ID:"623",CLUDO_ENGINE_ID:"14069",GOOGLE_MAPS_API_KEY:"AIzaSyDF_4LHHrXolwxJ0zCuHXSgkZgu2WcOy68"};const getEnvValue=e=>define_process_env_default$2?define_process_env_default$2[e]:__vite_import_meta_env__[e],_sfc_main$16={name:"VsSelect",status:"prototype",release:"0.0.1",components:{BFormSelect:LoadingSpinner.Lu},mixins:[validateFormElementMixin,ariaDescriptionMixin],props:{options:{type:Array,required:!0},fieldName:{type:String,required:!0},value:{type:String,default:""},validationRules:{type:Object,default(){return{}}},triggerValidate:{type:Boolean,default:!1},invalid:{type:Boolean,default:!1},validationMessages:{type:Object,default(){return{}}},countryListUrl:{type:String,default:""},hintText:{type:String,default:""},countries:{type:Boolean,default:!1},genericValidation:{type:Object,default(){return{}}},reAlertErrors:{type:Boolean,default:!1}},emits:["toggleAction","updated"],setup:()=>({v$:useVuelidate()}),data(){return{inputVal:this.value,touched:!1,countryList:[]}},computed:{errorClass(){return this.errorsList.length>0&&this.v$.inputVal&&this.v$.inputVal.$anyDirty||this.invalid?"vs-select__element--error":""},fieldOptions(){return this.countries?this.countryList:this.options}},watch:{inputVal(e){this.emitStatus(),this.$emit("updated",{field:this.fieldName,value:e})},value(e){this.inputVal=e},triggerValidate(){this.manualValidate()}},beforeMount(){this.countries&&LoadingSpinner.axios.get(this.countryListUrl).then(e=>{this.countryList=e.data.countries})},methods:{autocompleteValue(e){let n;switch(e){case"Country":n="country-name";break;default:n="on";break}return n}},validations(){return this.rules}},_hoisted_1$N={class:"vs-select"},_hoisted_2$A=["id"],_hoisted_3$q=["id"],_hoisted_4$k={class:"visually-hidden"},_hoisted_5$g={class:"vs-select__container mt-050"};function _sfc_render$T(e,n,t,o,r,a){const s=vue.resolveComponent("BFormSelect");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$N,[vue.createElementVNode("p",{class:"hint-text",id:`hint-${t.fieldName}`},vue.toDisplayString(t.hintText),9,_hoisted_2$A),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,i=>vue.withDirectives((vue.openBlock(),vue.createElementBlock("p",{key:i,class:"error mb-0"},[vue.createElementVNode("span",_hoisted_4$k,vue.toDisplayString(t.fieldName),1),vue.createTextVNode(" "+vue.toDisplayString(t.validationMessages[i]||t.genericValidation[i]),1)])),[[vue.vShow,!t.reAlertErrors]])),128))],8,_hoisted_3$q)):vue.createCommentVNode("",!0),vue.createElementVNode("div",_hoisted_5$g,[vue.createVNode(s,vue.mergeProps({modelValue:r.inputVal,"onUpdate:modelValue":n[0]||(n[0]=i=>r.inputVal=i)},e.$attrs,{options:a.fieldOptions,name:t.fieldName,id:t.fieldName,onChange:e.emitStatus,onBlur:e.emitStatus,"data-test":"vs-select","data-testid":"vs-select",class:["vs-select__element",a.errorClass],required:e.isRequired,"aria-invalid":e.v$.inputVal&&e.v$.inputVal.$anyError||t.invalid,"aria-describedby":e.ariaDescription,autocomplete:a.autocompleteValue(t.fieldName)}),null,16,["modelValue","options","name","id","onChange","onBlur","required","aria-invalid","aria-describedby","class","autocomplete"]),n[1]||(n[1]=vue.createElementVNode("span",{class:"vs-select__focus"},null,-1))])])}const VsSelect=LoadingSpinner._export_sfc(_sfc_main$16,[["render",_sfc_render$T]]);function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e},_extends.apply(this,arguments)}var defer=function e(){var n=!1,t=[],o=function(){if(!n){n=!0;for(var i=0,l=t.length;i<l;i++)t[i]()}},r=function(i){if(!n){t.push(i);return}i()},a={resolved:function(){return n},resolve:o,promise:{then:r}};return a},ownProp=Object.prototype.hasOwnProperty;function createRecaptcha(){var e=defer();return{notify:function(){e.resolve()},wait:function(){return e.promise},render:function(t,o,r){this.wait().then(function(){r(window.grecaptcha.render(t,o))})},reset:function(t){typeof t>"u"||(this.assertLoaded(),this.wait().then(function(){return window.grecaptcha.reset(t)}))},execute:function(t){typeof t>"u"||(this.assertLoaded(),this.wait().then(function(){return window.grecaptcha.execute(t)}))},checkRecaptchaLoad:function(){ownProp.call(window,"grecaptcha")&&ownProp.call(window.grecaptcha,"render")&&this.notify()},assertLoaded:function(){if(!e.resolved())throw new Error("ReCAPTCHA has not been loaded")}}}var recaptcha=createRecaptcha();typeof window<"u"&&(window.vueRecaptchaApiLoaded=recaptcha.notify);var Recaptcha=vue.defineComponent({name:"VueRecaptcha",props:{sitekey:{type:String,required:!0},theme:{type:String},badge:{type:String},type:{type:String},size:{type:String},tabindex:{type:String},loadRecaptchaScript:{type:Boolean,default:!0},recaptchaScriptId:{type:String,default:"__RECAPTCHA_SCRIPT"},recaptchaHost:{type:String,default:"www.google.com"},language:{type:String,default:""}},emits:["render","verify","expired","error"],setup:function e(n,t){var o=t.slots,r=t.emit,a=vue.ref(null),s=vue.ref(null),i=function(d){r("verify",d)},l=function(){r("expired")},u=function(){r("error")};return vue.onMounted(function(){if(recaptcha.checkRecaptchaLoad(),n.loadRecaptchaScript&&!document.getElementById(n.recaptchaScriptId)){var c=document.createElement("script");c.id=n.recaptchaScriptId,c.src="https://"+n.recaptchaHost+"/recaptcha/api.js?onload=vueRecaptchaApiLoaded&render=explicit&hl="+n.language,c.async=!0,c.defer=!0,document.head.appendChild(c)}var d=_extends({},n,{callback:i,"expired-callback":l,"error-callback":u}),v=a.value,m=o.default?v.children[0]:v;recaptcha.render(m,d,function(f){s.value=f,r("render",f)})}),{root:a,widgetId:s,reset:function(){recaptcha.reset(s.value)},execute:function(){recaptcha.execute(s.value)}}},render:function e(){var n=this.$slots.default,t;return typeof n=="function"?t=n():t=n,vue.h("div",{ref:"root"},t)}});const _sfc_main$15={name:"VsRecaptcha",status:"prototype",release:"0.0.1",components:{VueRecaptcha:Recaptcha},props:{siteKey:{type:String,default:""},invalid:{type:Boolean,default:!1},language:{type:String,default:"en"},errorMsg:{type:String,default:""},textareaLabel:{type:String,default:"Does not need any text"},reAlertErrors:{type:Boolean,default:!1}},emits:["verified"],data(){return{response:null,recaptchaSiteKey:""}},created(){this.siteKey?this.recaptchaSiteKey=this.siteKey:this.recaptchaSiteKey=getEnvValue("RECAPTCHA_TOKEN")},methods:{verified(e){this.$emit("verified",e)},render(){const e=document.querySelectorAll('[id^="g-recaptcha-response"]');if(e.length){const n=e[0].parentNode,t=document.querySelector('label[for="g-recaptcha-response"]'),o=document.createElement("label");o.setAttribute("for","g-recaptcha-response"),o.setAttribute("class","visually-hidden"),o.textContent=this.textareaLabel,t||n.insertBefore(o,e[0])}}}},_hoisted_1$M={class:"vs-recaptcha","aria-live":"assertive"},_hoisted_2$z={key:0,class:"error"};function _sfc_render$S(e,n,t,o,r,a){const s=vue.resolveComponent("VueRecaptcha");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$M,[t.invalid&&!t.reAlertErrors?(vue.openBlock(),vue.createElementBlock("span",_hoisted_2$z,vue.toDisplayString(t.errorMsg),1)):vue.createCommentVNode("",!0),r.recaptchaSiteKey?(vue.openBlock(),vue.createBlock(s,{key:1,sitekey:r.recaptchaSiteKey,onVerify:a.verified,onRender:a.render,class:vue.normalizeClass(["vs-recaptcha__embed",t.invalid?"vs-recaptcha__embed--error":""]),language:t.language},null,8,["sitekey","onVerify","onRender","class","language"])):vue.createCommentVNode("",!0)])}const VsRecaptcha=LoadingSpinner._export_sfc(_sfc_main$15,[["render",_sfc_render$S]]),_sfc_main$14={name:"VsTextarea",status:"prototype",release:"0.0.1",components:{BFormTextarea:LoadingSpinner.ld},mixins:[validateFormElementMixin,ariaDescriptionMixin],props:{value:{type:String,default:""},fieldName:{type:String,required:!0},name:{type:String,default:""},autoComplete:{type:Boolean,default:!0},validationRules:{type:Object,default(){return{}}},invalid:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},triggerValidate:{type:Boolean,default:!1},validationMessages:{type:Object,default(){return{}}},genericValidation:{type:Object,default(){return{}}},hintText:{type:String,default:""},placeholder:{type:String,default:""},reAlertErrors:{type:Boolean,default:!1},rows:{type:Number||String,default:2}},emits:["updated"],setup:()=>({v$:useVuelidate()}),data(){return{inputVal:this.value,clearErrorsOnFocus:!1}},computed:{elementClass(){let e="";return(this.isInvalid||this.errorsList.length)&&(e="vs-input--error"),`${`vs-input--${this.fieldName}`} ${e}`}},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()})},clearInputAndFocus(){this.clearInput(),this.focusOnInput()},autocompleteValue(){return this.autoComplete?"on":"off"},validateErrors(){this.clearErrorsOnFocus=!1,this.emitStatus()},resetErrors(){this.clearErrorsOnFocus=!0}},validations(){return this.rules}},_hoisted_1$L={"data-test":"vs-textarea"},_hoisted_2$y=["id"],_hoisted_3$p=["id"],_hoisted_4$j={class:"visually-hidden"};function _sfc_render$R(e,n,t,o,r,a){const s=vue.resolveComponent("BFormTextarea");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$L,[t.hintText?(vue.openBlock(),vue.createElementBlock("p",{key:0,class:"hint-text",id:`hint-${t.fieldName}`},vue.toDisplayString(t.hintText),9,_hoisted_2$y)):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$j,vue.toDisplayString(t.fieldName),1),vue.createTextVNode(" "+vue.toDisplayString(t.validationMessages[i]||t.genericValidation[i]),1)])),[[vue.vShow,!t.reAlertErrors&&!r.clearErrorsOnFocus]])),128))],8,_hoisted_3$p)):vue.createCommentVNode("",!0),vue.createVNode(s,{ref:"input",class:vue.normalizeClass(["vs-textarea",a.elementClass]),modelValue:r.inputVal,"onUpdate:modelValue":n[0]||(n[0]=i=>r.inputVal=i),id:t.fieldName,name:t.name?t.name:t.fieldName,placeholder:t.placeholder,required:e.isRequired,autocomplete:a.autocompleteValue(t.fieldName),v:r.inputVal,"aria-invalid":e.v$.inputVal&&e.v$.inputVal.$anyError||t.invalid,"aria-describedby":e.ariaDescription,disabled:t.disabled,rows:t.rows,onBlur:a.validateErrors,onChange:a.validateErrors,onFocus:a.resetErrors},null,8,["class","modelValue","id","name","placeholder","required","autocomplete","v","aria-invalid","aria-describedby","disabled","rows","onBlur","onChange","onFocus"])])}const VsTextarea=LoadingSpinner._export_sfc(_sfc_main$14,[["render",_sfc_render$R]]),_sfc_main$13={name:"VsForm",status:"prototype",release:"0.0.1",components:{VsInput,VsSelect,VsCheckbox,BFormGroup:LoadingSpinner.ku,VsRecaptcha,VsButton:LoadingSpinner.VsButton,VsHeading:LoadingSpinner.VsHeading,VsWarning:LoadingSpinner.VsWarning,VsTextarea},mixins:[LoadingSpinner.dataLayerMixin],props:{isMarketo:{type:Boolean,default:!0},submissionType:{type:String,default:"breg"},submitUrl:{type:String,default:""},dataUrl:{type:String,required:!0},usesRecaptcha:{type:Boolean,default:!0},recaptchaKey:{type:String,default:getEnvValue("RECAPTCHA_TOKEN")},recaptchaTextareaLabel:{type:String,default:"Does not need any text"},isProd:{type:Boolean,default:!1},munchkinId:{type:String,default:""},marketoInstance:{type:String,default:""},language:{type:String,default:"en"},messagingUrl:{type:String,required:!0},countryListUrl:{type:String,default:""},isTest:{type:Boolean,default:!0},consentList:{type:Array,required:!1,default:null}},data(){return{submitted:!1,submitting:!1,submitError:!1,formData:{},messagingData:{},form:{},formIsInvalid:!1,showErrorMessage:!1,errorFields:[],triggerValidate:!1,recaptchaVerified:!1,conditionalFields:{},inputVal:"",reAlertErrors:!1,emailFieldName:""}},computed:{formId(){return this.isProd?this.formData.formLiveId:this.formData.formSandboxId},showFormHeading(){return!this.isUndefined(this.getTranslatedContent)&&!this.isUndefined(this.getTranslatedContent("heading"))}},created(){this.getFormData(),this.getGlobalMessaging()},methods:{getFormData(){LoadingSpinner.axios.get(this.dataUrl).then(e=>{this.formData=e.data,this.isMarketo&&window.MktoForms2&&window.MktoForms2.loadForm(this.marketoInstance,this.munchkinId,this.formId),e.data.fields.forEach(n=>{this.form[n.name]="",n.conditional&&(this.conditionalFields[n.name]=!1)}),this.checkConditionalFields()}).catch(()=>{})},getGlobalMessaging(){LoadingSpinner.axios.get(this.messagingUrl).then(e=>{this.messagingData=e.data}).catch(()=>{})},getLanguageObj(){let e;return this.isUndefined(this.formData[this.language])?e={}:e=this.formData[this.language]||void 0,e},getTranslatedLabel(e,n){const t=this.getLanguageObj();let o="";return this.language!=="en"&&!this.isUndefined(t[e])&&!this.isUndefined(t[e].label)?o=t[e].label:o=this.formData.fields[n].label,this.showOptionalText(this.formData.fields[n])&&!this.isUndefined(this.getMessagingData("optional",this.language))&&(o=`${o} (${this.getMessagingData("optional",this.language)})`),o},getTranslatedLegend(e,n){const t=this.getLanguageObj();let o="";return this.language!=="en"&&!this.isUndefined(t[e])&&!this.isUndefined(t[e].descriptor)?o=t[e].descriptor:o=this.formData.fields[n].descriptor,o},getTranslatedInfo(e,n){const t=this.getLanguageObj();let o="";return this.language!=="en"&&!this.isUndefined(t[e])&&!this.isUndefined(t[e].info)?o=t[e].info:o=this.formData.fields[n].info,o},getTranslatedValidation(e,n){const t=this.getLanguageObj();let o;return this.language==="en"&&!this.isUndefined(this.formData.fields[n].validationMessages)?o=this.formData.fields[n].validationMessages:!this.isUndefined(t[e])&&!this.isUndefined(t[e].validationMessages)?o=t[e].validationMessages:this.language==="en"&&(o=this.formData.fields[n].validationMessages),o},getTranslatedOptions(e,n){const t=this.getLanguageObj();let o=[];return this.language!=="en"&&!this.isUndefined(t[e])&&!this.isUndefined([e].options)?o=t[e].options:o=this.formData.fields[n].options,typeof o>"u"&&(o=[]),o},getTranslatedHint(e,n){const t=this.getLanguageObj();let o="";return this.language!=="en"&&!this.isUndefined(t[e])&&!this.isUndefined(t[e].hint)?o=t[e].hint:this.isUndefined(this.formData.fields[n].hint)?o="":o=this.formData.fields[n].hint,o},getTranslatedContent(e){let n;const t=this.getLanguageObj();return this.language==="en"&&!this.isUndefined(this.formData.content)&&!this.isUndefined(this.formData.content[e])?n=this.formData.content[e]:!this.isUndefined(t.content)&&!this.isUndefined(t.content[e])?n=t.content[e]:n=this.getMessagingData(e,this.language),n},getMessagingData(e,n){return Object.keys(this.messagingData).length>0?this.messagingData[n][e]:e==="validation"?{}:""},getHiddenFields(){return[...this.$el.querySelectorAll("input[type=hidden]")].map(this.parseBooleanStringsFromInputField).reduce((e,n)=>(e[n.name]=n.value,e),{})},parseBooleanStringsFromInputField(e){let n=e.value;return n==="true"?n=!0:n==="false"&&(n=!1),{name:e.name,value:n}},isUndefined(e){return typeof e>"u"},updateFieldData(e){this.form[e.field]=e.value||"",Array.isArray(e.errors)?this.formIsInvalid=e.errors.length>0:this.formIsInvalid=e.errors!==null,this.manageErrorStatus(e.field,e.errors),this.checkConditionalFields()},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)},showOptionalText(e){return!!(this.isUndefined(e.validation)||this.isUndefined(e.validation.required))},needsLabel(e){return!(e.element==="radio"||e.element==="submit"||e.element==="checkbox")},preSubmit(e){e.preventDefault(),this.submitError=!1;function n(o){return o.validation&&o.validation.required}this.usesRecaptcha&&!this.isTest&&this.onRecaptchaVerify(),this.triggerValidate=!0;const t=this.formData.fields.filter(n);t.length===0?this.formIsInvalid=!1:t.forEach(o=>{if(!/\S/.test(this.form[o.name])){let r=!0;o.name in this.conditionalFields&&!this.conditionalFields[o.name]&&(r=!1),this.formIsInvalid=r}}),this.showErrorMessage=this.formIsInvalid,Object.entries(this.conditionalFields).forEach(([o,r])=>{r||(this.form[o]="")}),this.errorFields.length>0&&(this.formIsInvalid=!0),!this.formIsInvalid&&(this.recaptchaVerified||!this.usesRecaptcha)?this.isMarketo?this.marketoSubmit():this.axiosSubmit():(this.showErrorMessage=!0,this.reAlertErrors=!0,setTimeout(()=>{this.reAlertErrors=!1},100))},marketoSubmit(){this.createDataLayerObject("formsDataEvent");const e=window.MktoForms2.allForms()[0];e.addHiddenFields(this.form),window.grecaptcha&&e.addHiddenFields({lastReCAPTCHAUserFingerprint:window.grecaptcha.getResponse(),lastRecaptchaEnabledFormID:this.formId}),e.onSuccess(()=>(this.submitting=!1,this.submitted=!0,!1)),e.onSubmit(()=>{this.submitting=!0}),e.submit()},axiosSubmit(){this.createDataLayerObject("formsDataEvent"),this.submitting=!0;let e="";window.grecaptcha&&(e=window.grecaptcha.getResponse());const n=this.getHiddenFields();LoadingSpinner.axios.post(this.submitUrl,{...this.form,...n,formType:this.formData.content?this.formData.content.formType:"","g-recaptcha-response":e,consentList:this.consentList}).then(()=>(this.submitting=!1,this.submitted=!0,this.attachEmail(),!1)).catch(()=>(this.submitError=!0,!1))},attachEmail(){this.submissionType&&this.submissionType==="breg"&&(this.formData.fields.forEach(e=>{e.type==="email"&&!this.emailFieldName&&(this.emailFieldName=e.name)}),this.emailFieldName&&typeof exponea<"u"&&exponea.identify({email_id:this.form[this.emailFieldName]},{},()=>{},()=>{},!0))},onRecaptchaVerify(){window.grecaptcha&&typeof window.grecaptcha.getResponse=="function"&&window.grecaptcha.getResponse()!==""?this.recaptchaVerified=!0:this.recaptchaVerified=!1},checkConditionalFields(){Object.keys(this.conditionalFields).forEach(e=>{const n=this.formData.fields.find(o=>o.name===e);let t=!0;Object.keys(n.conditional).forEach(o=>{const r=n.conditional[o];Array.isArray(r)?r.indexOf(this.form[o])===-1&&(t=!1):this.form[o]!==r&&(t=!1),t?this.conditionalFields[e]||(this.conditionalFields[e]=!0,this.$refs[e]&&this.$refs[e][0].manualValidate()):(this.manageErrorStatus(e,[]),this.conditionalFields[e]=!1)})})},conditionalElementClass(e){return this.conditionalFields[e]===!0||typeof this.conditionalFields[e]>"u"?"":"d-none"}}},_hoisted_1$K={class:"vs-form","data-test":"vs-form"},_hoisted_2$x={class:"vs-form__main-heading vs-heading vs-heading--heading-l float-none","data-test":"vs-form__main-heading"},_hoisted_3$o={key:0},_hoisted_4$i={"aria-live":"assertive"},_hoisted_5$f={key:0},_hoisted_6$d=["innerHTML"],_hoisted_7$b={key:2,class:"mt-200"};function _sfc_render$Q(e,n,t,o,r,a){const s=vue.resolveComponent("VsInput"),i=vue.resolveComponent("VsSelect"),l=vue.resolveComponent("VsCheckbox"),u=vue.resolveComponent("VsTextarea"),c=vue.resolveComponent("BFormGroup"),d=vue.resolveComponent("VsRecaptcha"),v=vue.resolveComponent("VsButton"),m=vue.resolveComponent("VsWarning"),f=vue.resolveComponent("VsHeading");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$K,[n[1]||(n[1]=vue.createElementVNode("form",{class:"d-none"},null,-1)),r.submitted?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createElementBlock("form",{key:0,onSubmit:n[0]||(n[0]=vue.withModifiers((...p)=>a.preSubmit&&a.preSubmit(...p),["prevent"]))},[vue.createElementVNode("fieldset",null,[vue.createElementVNode("legend",_hoisted_2$x,vue.toDisplayString(a.getTranslatedContent("heading")),1),(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(r.formData.fields,(p,g)=>(vue.openBlock(),vue.createBlock(c,{key:p.name,label:a.needsLabel(p)?a.getTranslatedLabel(p.name,g):"","label-for":a.needsLabel(p)?p.name:"",class:vue.normalizeClass(a.conditionalElementClass(p.name))},{default:vue.withCtx(()=>[!a.isUndefined(p.descriptor)&&p.element==="checkbox"?(vue.openBlock(),vue.createElementBlock("legend",_hoisted_3$o,vue.toDisplayString(a.getTranslatedLegend(p.name,g)),1)):vue.createCommentVNode("",!0),vue.createElementVNode("div",{class:vue.normalizeClass(a.conditionalElementClass(p.name))},[p.element==="input"?(vue.openBlock(),vue.createBlock(s,{key:0,ref_for:!0,ref:p.name,onStatusUpdate:a.updateFieldData,"field-name":p.name,type:p.type,"validation-rules":p.validation||{},"validation-messages":a.getTranslatedValidation(p.name,g)||{},"generic-validation":a.getMessagingData("validation",t.language),invalid:r.errorFields.indexOf(p.name)>-1,"trigger-validate":r.triggerValidate,"hint-text":a.getTranslatedHint(p.name,g),placeholder:p.placeholder||"","re-alert-errors":r.reAlertErrors},null,8,["onStatusUpdate","field-name","type","validation-rules","validation-messages","generic-validation","invalid","trigger-validate","hint-text","placeholder","re-alert-errors"])):vue.createCommentVNode("",!0),p.element==="select"?(vue.openBlock(),vue.createBlock(i,{key:1,options:a.getTranslatedOptions(p.name,g),ref_for:!0,ref:p.name,onStatusUpdate:a.updateFieldData,"field-name":p.name,"validation-rules":p.validation||{},"validation-messages":a.getTranslatedValidation(p.name,g)||{},"generic-validation":a.getMessagingData("validation",t.language),invalid:r.errorFields.indexOf(p.name)>-1,"trigger-validate":r.triggerValidate,"country-list-url":t.countryListUrl,countries:p.countries,"hint-text":a.getTranslatedHint(p.name,g),"re-alert-errors":r.reAlertErrors},null,8,["options","onStatusUpdate","field-name","validation-rules","validation-messages","generic-validation","invalid","trigger-validate","country-list-url","countries","hint-text","re-alert-errors"])):vue.createCommentVNode("",!0),p.element==="checkbox"?(vue.openBlock(),vue.createBlock(l,{key:p.name,ref_for:!0,ref:p.name,name:p.name,value:p.value,label:a.getTranslatedLabel(p.name,g),onStatusUpdate:a.updateFieldData,"field-name":p.name,"validation-rules":p.validation||{},"validation-messages":a.getTranslatedValidation(p.name,g)||{},"generic-validation":a.getMessagingData("validation",t.language),invalid:r.errorFields.indexOf(p.name)>-1,"trigger-validate":r.triggerValidate,"optional-text":a.getMessagingData("optional",t.language),"hint-text":a.getTranslatedHint(p.name,g),"info-text":a.getTranslatedInfo(p.name,g),"re-alert-errors":r.reAlertErrors},null,8,["name","value","label","onStatusUpdate","field-name","validation-rules","validation-messages","generic-validation","invalid","trigger-validate","optional-text","hint-text","info-text","re-alert-errors"])):vue.createCommentVNode("",!0),p.element==="textarea"?(vue.openBlock(),vue.createBlock(u,{key:3,ref_for:!0,ref:p.name,onStatusUpdate:a.updateFieldData,"field-name":p.name,"validation-rules":p.validation||{},"validation-messages":a.getTranslatedValidation(p.name,g)||{},"generic-validation":a.getMessagingData("validation",t.language),invalid:r.errorFields.indexOf(p.name)>-1,"trigger-validate":r.triggerValidate,"hint-text":a.getTranslatedHint(p.name,g),placeholder:p.placeholder||"","re-alert-errors":r.reAlertErrors,rows:p.rows||null},null,8,["onStatusUpdate","field-name","validation-rules","validation-messages","generic-validation","invalid","trigger-validate","hint-text","placeholder","re-alert-errors","rows"])):vue.createCommentVNode("",!0)],2)]),_:2},1032,["label","label-for","class"]))),128))]),vue.renderSlot(e.$slots,"hidden-fields"),t.usesRecaptcha?(vue.openBlock(),vue.createBlock(d,{key:0,onVerified:a.onRecaptchaVerify,"site-key":t.recaptchaKey,invalid:!r.recaptchaVerified&&r.showErrorMessage,language:t.language,"error-msg":a.getMessagingData("recaptchaError",t.language),class:"mt-300","textarea-label":t.recaptchaTextareaLabel,"re-alert-errors":r.reAlertErrors},null,8,["onVerified","site-key","invalid","language","error-msg","textarea-label","re-alert-errors"])):vue.createCommentVNode("",!0),vue.createVNode(v,{variant:"primary",type:"submit",class:"vs-form__submit mt-300",onClick:a.preSubmit},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.getTranslatedContent("submit")),1)]),_:1},8,["onClick"])],32)),vue.createVNode(m,{class:"vs-form__no-js"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"no-js")]),_:3}),vue.createElementVNode("div",_hoisted_4$i,[r.submitting?(vue.openBlock(),vue.createElementBlock("p",_hoisted_5$f,[vue.renderSlot(e.$slots,"submitting")])):vue.createCommentVNode("",!0),r.submitted?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[a.getTranslatedContent("successHeading")?(vue.openBlock(),vue.createBlock(f,{key:0,level:"2","heading-style":"heading-l"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(a.getTranslatedContent("successHeading")),1)]),_:1})):vue.createCommentVNode("",!0),vue.createElementVNode("p",{class:"vs-form__content",innerHTML:a.getTranslatedContent("successContent")},null,8,_hoisted_6$d)],64)):vue.createCommentVNode("",!0),r.submitError?(vue.openBlock(),vue.createElementBlock("p",_hoisted_7$b,[vue.renderSlot(e.$slots,"submit-error")])):vue.createCommentVNode("",!0)])])}const Form=LoadingSpinner._export_sfc(_sfc_main$13,[["render",_sfc_render$Q]]),_sfc_main$12={name:"VsMegaNavTopMenu",status:"prototype",release:"0.1.0",components:{VsList},inject:["isStatic"]};function _sfc_render$P(e,n,t,o,r,a){const s=vue.resolveComponent("VsList");return vue.openBlock(),vue.createBlock(s,{unstyled:"",class:"vs-mega-nav-top-menu","data-test":"vs-mega-nav-top-menu",role:"menubar"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3})}const VsMegaNavTopMenu=LoadingSpinner._export_sfc(_sfc_main$12,[["render",_sfc_render$P]]),_sfc_main$11={name:"VsMegaNavMobileMenu",status:"prototype",release:"0.1.0",mixins:[LoadingSpinner.dataLayerMixin],mounted(){this.emitter&&this.emitter.on("navAccordionClick",e=>{this.dataLayerSubmit(e)})},methods:{dataLayerSubmit(e){const n={target:{text:e}};this.createDataLayerObject("menuNavigationDataEvent",n,null)}}},_hoisted_1$J={class:"mega-nav-mobile-menu","data-test":"vs-mega-nav-mobile-menu"};function _sfc_render$O(e,n,t,o,r,a){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$J,[vue.renderSlot(e.$slots,"default")])}const VsMegaNavMobileMenu=LoadingSpinner._export_sfc(_sfc_main$11,[["render",_sfc_render$O]]),_sfc_main$10={name:"VsSiteSearch",status:"prototype",release:"0.0.1",components:{VsButton:LoadingSpinner.VsButton},props:{isShowing:{type:Boolean,default:!1}},emits:["toggleAction"],data(){return{showSearchForm:!0}},methods:{toggleAction(){this.showSearchForm=!this.showSearchForm,this.$emit("toggleAction",this.showSearchForm)}}},_hoisted_1$I={class:"visually-hidden-xxl-down"};function _sfc_render$N(e,n,t,o,r,a){const s=vue.resolveComponent("VsButton");return vue.openBlock(),vue.createBlock(s,{"data-test":"vs-site-search",class:vue.normalizeClass(["vs-site-search",t.isShowing?"vs-site-search--active":""]),icon:"vs-icon-control-search",size:"md",animate:!1,onClick:a.toggleAction,id:"site-search-btn",rounded:!1},{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_1$I,[vue.renderSlot(e.$slots,"default")])]),_:3},8,["class","onClick"])}const VsSiteSearch=LoadingSpinner._export_sfc(_sfc_main$10,[["render",_sfc_render$N]]),_sfc_main$$={name:"VsSiteSearchForm",status:"prototype",release:"0.0.1",components:{VsIcon:LoadingSpinner.VsIcon,VsInput,VsButton:LoadingSpinner.VsButton,VsCol:LoadingSpinner.VsCol,VsRow:LoadingSpinner.VsRow,VsContainer:LoadingSpinner.VsContainer},props:{isShowing:{type:Boolean,default:!1},labelText:{type:String,default:""},submitButtonText:{type:String,default:""},closeButtonText:{type:String,default:""}},emits:["toggleAction"],data(){return{searchTerm:"",showSearchForm:!0}},watch:{isShowing(e){e&&this.focusOnInput()}},methods:{focusOnInput(){this.$nextTick(()=>this.$refs.searchInput.$refs.input.focus())},tabFromClose(e){e.shiftKey||this.closeSearchForm()},updateVal(e){this.searchTerm=e.value},onSubmit(e){this.searchTerm===""&&e.preventDefault()},closeSearchForm(){this.$emit("toggleAction",this.showSearchForm)}}},_hoisted_1$H={key:0,class:"vs-site-search-form","data-test":"vs-site-search-form"},_hoisted_2$w={class:"cludo-input-form d-flex pe-075 align-items-start",role:"search",id:"cludo-search-input"},_hoisted_3$n={class:"d-flex flex-column flex-grow-1 position-relative"},_hoisted_4$h={for:"site-search",class:"vs-site-search-form__label"},_hoisted_5$e={class:"visually-hidden"};function _sfc_render$M(e,n,t,o,r,a){const s=vue.resolveComponent("VsIcon"),i=vue.resolveComponent("VsInput"),l=vue.resolveComponent("VsButton"),u=vue.resolveComponent("VsCol"),c=vue.resolveComponent("VsRow"),d=vue.resolveComponent("VsContainer");return r.showSearchForm?(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$H,[vue.createVNode(d,{fluid:"lg"},{default:vue.withCtx(()=>[vue.createVNode(c,null,{default:vue.withCtx(()=>[vue.createVNode(u,{cols:"12"},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_2$w,[vue.createElementVNode("div",_hoisted_3$n,[vue.createElementVNode("label",_hoisted_4$h,[vue.createElementVNode("span",_hoisted_5$e,vue.toDisplayString(t.labelText),1),vue.createVNode(s,{icon:"vs-icon-control-search",size:"xs"})]),vue.createVNode(i,{class:"vs-site-search-form__input cludo-input-form__input",ref:"searchInput",name:"searchrequest",type:"search","field-name":"site-search",placeholder:t.labelText,"auto-complete":!1,onUpdated:a.updateVal},null,8,["placeholder","onUpdated"])]),vue.createVNode(l,{type:"submit",class:"vs-site-search-form__search-button cludo-input-form__search-button",variant:"primary",size:"lg",rounded:!1,onClick:a.closeSearchForm},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.submitButtonText),1)]),_:1},8,["onClick"])])]),_:1})]),_:1})]),_:1}),vue.createVNode(l,{class:"vs-site-search-form__close-button d-none d-lg-block",variant:"subtle",icon:"vs-icon-control-dismiss",size:"md","icon-only":"",onClick:a.closeSearchForm,onKeydown:vue.withKeys(a.tabFromClose,["tab"])},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.closeButtonText),1)]),_:1},8,["onClick","onKeydown"])])):vue.createCommentVNode("",!0)}const VsSiteSearchForm=LoadingSpinner._export_sfc(_sfc_main$$,[["render",_sfc_render$M]]),clickOutside={mounted(e,n){e.clickOutsideEvent=t=>{e===t.target||e.contains(t.target)||n.value(t)},document.body.addEventListener("click",e.clickOutsideEvent)},unmounted(e){document.body.removeEventListener("click",e.clickOutsideEvent)}},_sfc_main$_={name:"VsMegaNav",status:"deprecated",release:"0.1.0",components:{VsCol:LoadingSpinner.VsCol,VsRow:LoadingSpinner.VsRow,VsContainer:LoadingSpinner.VsContainer,VsSvgLink,VsMegaNavTopMenu,VsMegaNavMobileMenu,VsSiteSearch,VsSiteSearchForm,VsButton:LoadingSpinner.VsButton},directives:{clickOutside},mixins:[LoadingSpinner.dataLayerMixin],provide(){return{isStatic:this.isStatic}},props:{href:{type:String,required:!0},menuToggleAltText:{type:String,required:!0},logoAltText:{type:String,default:"VisitScotland Home"},searchButtonText:{type:String,required:!0},searchLabelText:{type:String,default:"What are you looking for?"},searchClearButtonText:{type:String,default:"Clear form"},searchCloseButtonText:{type:String,default:"Close search form"},mapButtonText:{type:String,default:void 0},noSearch:{type:Boolean,default:!1},searchLink:{type:String,default:void 0},mapLink:{type:String,default:void 0},isStatic:{type:Boolean,default:!1}},data(){return{isOpen:!1,showSearch:!1,tokens:LoadingSpinner.designTokens}},mounted(){this.addTabClose()},methods:{menuToggle(){this.isOpen=!this.isOpen},toggleSearch(){this.showSearch=!this.showSearch},closeMenu(e){const n=document.getElementsByClassName("vs-mega-nav__menu-mobile")[0];this.isOpen&&!n.contains(e.target)&&(this.isOpen=!1)},addTabClose(){document.body.addEventListener("focusin",e=>{this.isOpen&&(e.target.closest("#vs-mega-nav__menu-mobile")||(this.isOpen=!1))})}}},_hoisted_1$G={class:"vs-mega-nav bg-white","aria-label":"main nav","data-test":"vs-mega-nav",id:"main-nav"},_hoisted_2$v={class:"visually-hidden-xxl-down"},_hoisted_3$m={class:"vs-mega-nav__menu-mobile d-lg-none",id:"vs-mega-nav__menu-mobile","data-test":"vs-mega-nav-mobile-container"};function _sfc_render$L(e,n,t,o,r,a){const s=vue.resolveComponent("VsSvgLink"),i=vue.resolveComponent("VsCol"),l=vue.resolveComponent("VsMegaNavTopMenu"),u=vue.resolveComponent("VsButton"),c=vue.resolveComponent("VsSiteSearch"),d=vue.resolveComponent("VsMegaNavMobileMenu"),v=vue.resolveComponent("VsRow"),m=vue.resolveComponent("VsContainer"),f=vue.resolveComponent("VsSiteSearchForm"),p=vue.resolveDirective("click-outside");return vue.openBlock(),vue.createElementBlock("div",null,[vue.createElementVNode("nav",_hoisted_1$G,[vue.createVNode(m,{fluid:"lg",class:"h-100"},{default:vue.withCtx(()=>[vue.createVNode(v,{class:"align-items-center h-100 vs-mega-nav__main-row"},{default:vue.withCtx(()=>[vue.createVNode(i,{cols:"7",md:"4",lg:"3"},{default:vue.withCtx(()=>[vue.createElementVNode("div",null,[vue.createVNode(s,{class:"vs-mega-nav__logo","data-test":"vs-mega-nav__logo","link-alt-text":t.logoAltText,href:t.href,"svg-fill":r.tokens["vs-color-background-brand"],"svg-path":"visitscotland-logo","data-layer-value":"homePageLogoClickDataEvent"},null,8,["link-alt-text","href","svg-fill"])])]),_:1}),vue.createVNode(i,{cols:"4",md:"6",lg:t.noSearch?7:5,class:"vs-mega-nav__menu d-none d-lg-block"},{default:vue.withCtx(()=>[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"mega-nav-top-menu-items")]),_:3})]),_:3},8,["lg"]),vue.createVNode(i,{cols:"5",md:"8",lg:"4",class:"justify-content-end align-items-center position-static d-flex h-100"},{default:vue.withCtx(()=>[t.mapButtonText&&t.mapLink?(vue.openBlock(),vue.createBlock(u,{key:0,variant:"subtle",icon:"fa-regular fa-map","icon-only":"",size:"md",rounded:!1,href:t.mapLink,class:"vs-mega-nav__map-button d-flex","data-test":"vs-mega-nav__map-button"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.mapButtonText),1)]),_:1},8,["href"])):vue.createCommentVNode("",!0),!t.noSearch&&!t.searchLink?(vue.openBlock(),vue.createBlock(c,{key:1,onToggleAction:a.toggleSearch,"is-showing":r.showSearch},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.searchButtonText),1)]),_:1},8,["onToggleAction","is-showing"])):vue.createCommentVNode("",!0),!t.noSearch&&t.searchLink?(vue.openBlock(),vue.createBlock(u,{key:2,animate:!1,class:"vs-site-search",href:t.searchLink,icon:"vs-icon-control-search",id:"site-search-btn",rounded:!1},{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_2$v,vue.toDisplayString(t.searchButtonText),1)]),_:1},8,["href"])):vue.createCommentVNode("",!0),vue.createElementVNode("div",_hoisted_3$m,[vue.createVNode(u,{class:"vs-mega-nav__mobile-menu-toggle p-0","icon-only":"",icon:r.isOpen?"vs-icon-control-dismiss":"vs-icon-control-menu",variant:"subtle",onClick:n[0]||(n[0]=g=>a.menuToggle()),ref:"toggleButton",rounded:!1,"aria-haspopup":"true"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.menuToggleAltText),1)]),_:1},8,["icon"]),r.isOpen?vue.withDirectives((vue.openBlock(),vue.createBlock(d,{key:0},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"mega-nav-accordion-items")]),_:3})),[[p,a.closeMenu]]):vue.createCommentVNode("",!0)])]),_:3})]),_:3})]),_:3})]),vue.withDirectives(vue.createVNode(f,{onToggleAction:a.toggleSearch,"is-showing":r.showSearch,"label-text":t.searchLabelText,"submit-button-text":t.searchButtonText,"close-button-text":t.searchCloseButtonText},null,8,["onToggleAction","is-showing","label-text","submit-button-text","close-button-text"]),[[vue.vShow,r.showSearch]])])}const MegaNav=LoadingSpinner._export_sfc(_sfc_main$_,[["render",_sfc_render$L]]),_sfc_main$Z={name:"VsMegaNavDropdown",status:"prototype",release:"0.1.0",components:{BDropdown:LoadingSpinner.un,VsCol:LoadingSpinner.VsCol,VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsButton:LoadingSpinner.VsButton},mixins:[LoadingSpinner.dataLayerMixin],props:{menuToggleAltText:{type:String,required:!0}},emits:["menuToggled"],mounted(){this.emitter&&(this.emitter.on("bv::dropdown::show",()=>{this.$emit("menuToggled")}),this.emitter.on("bv::dropdown::hide",()=>{this.$emit("menuToggled")})),window.addEventListener("resize",this.closeMenu)},beforeUnmount(){window.removeEventListener("resize",this.closeMenu)},methods:{closeMenu(){this.$refs.dropdown.hide()},tabFromClose(e){e.shiftKey||this.closeMenu()},dataLayerSubmit(){if(this.$slots["button-content"]()[1]&&this.$slots["button-content"]()[1].children[0]){const n={target:{text:this.$slots["button-content"]()[1].children[0].children}};this.createDataLayerObject("menuNavigationDataEvent",n,null)}}}},_hoisted_1$F={class:"vs-mega-nav-dropdown","data-test":"vs-mega-nav-dropdown",role:"menuitem"},_hoisted_2$u={role:"menuitem"},_hoisted_3$l={class:"dropdown-menu dropdown-menu--fallback overflow-auto",role:"menu"},_hoisted_4$g={role:"menuitem"};function _sfc_render$K(e,n,t,o,r,a){const s=vue.resolveComponent("VsButton"),i=vue.resolveComponent("VsCol"),l=vue.resolveComponent("VsRow"),u=vue.resolveComponent("VsContainer"),c=vue.resolveComponent("BDropdown");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$F,[vue.createVNode(c,{variant:"subtle",ref:"dropdown",onShow:n[0]||(n[0]=d=>a.dataLayerSubmit(d))},{"button-content":vue.withCtx(()=>[vue.renderSlot(e.$slots,"button-content")]),default:vue.withCtx(()=>[vue.createElementVNode("li",_hoisted_2$u,[vue.createVNode(u,{fluid:"lg",class:"px-0 px-lg-075"},{default:vue.withCtx(()=>[vue.createVNode(l,{class:"g-0"},{default:vue.withCtx(()=>[vue.createVNode(i,{cols:"12",class:"position-relative"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"cta-link"),vue.renderSlot(e.$slots,"dropdown-content"),vue.createVNode(s,{class:"vs-mega-nav-dropdown__close-btn d-none d-lg-block position-absolute",icon:"vs-icon-control-dismiss","icon-only":"",size:"sm",variant:"subtle",onClick:a.closeMenu,onKeydown:vue.withKeys(a.tabFromClose,["tab"])},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.menuToggleAltText),1)]),_:1},8,["onClick","onKeydown"])]),_:3})]),_:3})]),_:3})])]),_:3},512),vue.createElementVNode("ul",_hoisted_3$l,[vue.createElementVNode("li",_hoisted_4$g,[vue.createVNode(u,{fluid:"lg",class:"px-0 px-lg-075"},{default:vue.withCtx(()=>[vue.createVNode(l,{class:"g-0"},{default:vue.withCtx(()=>[vue.createVNode(i,{cols:"12",class:"position-relative"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"cta-link"),vue.renderSlot(e.$slots,"dropdown-content"),vue.createVNode(s,{class:"vs-mega-nav-dropdown__close-btn d-none d-lg-block position-absolute",icon:"vs-icon-control-dismiss","icon-only":"",size:"sm",variant:"subtle",onClick:a.closeMenu},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.menuToggleAltText),1)]),_:1},8,["onClick"])]),_:3})]),_:3})]),_:3})])])])}const VsMegaNavDropdown=LoadingSpinner._export_sfc(_sfc_main$Z,[["render",_sfc_render$K]]),_sfc_main$Y={name:"VsMegaNavDropdownContainer",status:"prototype",release:"0.1.0",components:{VsMegaNavDropdown,VsLink,LazyHydrationWrapper:LazyHydrationWrapper$1},props:{href:{type:String,default:""},ctaText:{type:String,default:""},align:{type:String,default:"top",validator:e=>e.match(/(left|bottom|top)/)}},computed:{hasFeaturedItem(){return this.$slots["nav-featured-item"]&&this.$slots["nav-featured-item"]()},hasFeaturedItemLeft(){return this.$slots["nav-featured-item-left"]&&this.$slots["nav-featured-item-left"]()},hasFeaturedEvent(){return this.$slots["nav-featured-event"]&&this.$slots["nav-featured-event"]()},alignmentClass(){return this.align==="bottom"?"vs-mega-nav-dropdown-container__featured--bottom":""}}},_hoisted_1$E={class:"vs-mega-nav-dropdown-container","data-test":"vs-mega-nav-dropdown-container",ref:"menuToggle",role:"presentation"},_hoisted_2$t={class:"vs-mega-nav-dropdown-container__columns-wrapper"},_hoisted_3$k={key:2,class:"vs-mega-nav-dropdown-container__featured-event","data-test":"vs-mega-nav-dropdown-container__featured-event"};function _sfc_render$J(e,n,t,o,r,a){const s=vue.resolveComponent("VsLink"),i=vue.resolveComponent("VsMegaNavDropdown"),l=vue.resolveComponent("LazyHydrationWrapper");return vue.openBlock(),vue.createElementBlock("li",_hoisted_1$E,[vue.createVNode(l,{"on-interaction":["focus","click"]},{default:vue.withCtx(()=>[vue.createVNode(i,{"menu-toggle-alt-text":"Toggle Menu"},{"button-content":vue.withCtx(()=>[vue.renderSlot(e.$slots,"button-content")]),"cta-link":vue.withCtx(()=>[t.href&&t.ctaText?(vue.openBlock(),vue.createBlock(s,{key:0,href:t.href,"data-test":"vs-mega-nav-dropdown-container__cta-link",class:"vs-mega-nav-dropdown-container__cta-link"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.ctaText),1)]),_:1},8,["href"])):vue.createCommentVNode("",!0),n[0]||(n[0]=vue.createElementVNode("hr",{class:"vs-mega-nav-dropdown-container__divider"},null,-1))]),"dropdown-content":vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_2$t,[vue.renderSlot(e.$slots,"dropdown-content"),a.hasFeaturedItemLeft?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(["vs-mega-nav-dropdown-container__featured vs-mega-nav-dropdown-container__featured--left",a.alignmentClass]),"data-test":"vs-mega-nav-dropdown-container__featured"},[vue.renderSlot(e.$slots,"nav-featured-item-left")],2)):vue.createCommentVNode("",!0),a.hasFeaturedItem?(vue.openBlock(),vue.createElementBlock("div",{key:1,class:vue.normalizeClass(["vs-mega-nav-dropdown-container__featured",a.alignmentClass]),"data-test":"vs-mega-nav-dropdown-container__featured"},[vue.renderSlot(e.$slots,"nav-featured-item")],2)):vue.createCommentVNode("",!0),a.hasFeaturedEvent?(vue.openBlock(),vue.createElementBlock("div",_hoisted_3$k,[vue.renderSlot(e.$slots,"nav-featured-event")])):vue.createCommentVNode("",!0)])]),_:3})]),_:3})],512)}const MegaNavDropdownContainer=LoadingSpinner._export_sfc(_sfc_main$Y,[["render",_sfc_render$J]]),_sfc_main$X={name:"VsMegaNavList",status:"prototype",release:"0.1.0",components:{VsList,VsHeading:LoadingSpinner.VsHeading},props:{listHeading:{type:String,default:""}},computed:{listHeadingId(){return this.listHeading?`vsMeganav${this.listHeading.replace(/\W/g,"")}`:""}}},_hoisted_1$D=["aria-label"];function _sfc_render$I(e,n,t,o,r,a){const s=vue.resolveComponent("VsHeading"),i=vue.resolveComponent("VsList");return vue.openBlock(),vue.createElementBlock("nav",{class:"vs-mega-nav-list","data-test":"vs-mega-nav-list","aria-label":a.listHeadingId},[t.listHeading?(vue.openBlock(),vue.createBlock(s,{key:0,class:"vs-mega-nav-list__heading",id:a.listHeadingId,level:"2","heading-style":"heading-xxxs"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.listHeading),1)]),_:1},8,["id"])):vue.createCommentVNode("",!0),vue.createVNode(i,{class:"vs-mega-nav-list__list",role:"menu"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"nav-heading-cta-link"),vue.renderSlot(e.$slots,"nav-list-items")]),_:3})],8,_hoisted_1$D)}const MegaNavList=LoadingSpinner._export_sfc(_sfc_main$X,[["render",_sfc_render$I]]),_sfc_main$W={name:"VsMegaNavListItem",status:"prototype",release:"0.1.0",components:{VsLink},mixins:[LoadingSpinner.dataLayerMixin],props:{href:{type:String,default:"#"},subheadingLink:{type:Boolean,default:!1}},computed:{navItemClasses(){return{"vs-mega-nav-list-item__heading":this.href==="#","vs-mega-nav-list-item__link":this.href!=="#","vs-mega-nav-list-item__subheading-link":this.subheadingLink}}},methods:{clickHandler(e){e.preventDefault(),this.dataLayerValue&&this.createDataLayerObject(this.dataLayerValue,e,this.href),setTimeout(()=>{this.navigateToUrl()},500)},navigateToUrl(){this.href!=="#"&&this.href!==null&&(window.location.href=this.href)},keyHandler(e){(e.keyCode===13||e.keyCode===32)&&(e.preventDefault(),this.clickHandler(e))}}};function _sfc_render$H(e,n,t,o,r,a){const s=vue.resolveComponent("VsLink");return vue.openBlock(),vue.createElementBlock("li",{class:vue.normalizeClass(["vs-mega-nav-list-item",a.navItemClasses]),"data-test":"vs-mega-nav-list-item",role:"presentation"},[vue.createVNode(s,{href:t.href,role:"menuitem","data-layer-value":"menuNavigationDataEvent"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},8,["href"])],2)}const MegaNavListItem=LoadingSpinner._export_sfc(_sfc_main$W,[["render",_sfc_render$H]]),_sfc_main$V={name:"VsMegaNavAccordionItem",status:"prototype",release:"0.1.0",components:{VsAccordionItem,VsLink},props:{controlId:{type:String,required:!0},title:{type:String,required:!0},level:{type:String,required:!0,validator:e=>e.match(/(1|2)/)},ctaLink:{type:String,default:""},ctaText:{type:String,default:""}},computed:{getUniqueId(){let e=this.title.toLowerCase();return e=e.replace(/\s+/g,"-"),`vs-mega-nav-${e}`},accordionItemClasses(){return[`vs-mega-nav-accordion-item--level-${this.level}`]}}};function _sfc_render$G(e,n,t,o,r,a){const s=vue.resolveComponent("VsLink"),i=vue.resolveComponent("VsAccordionItem");return vue.openBlock(),vue.createBlock(i,{class:vue.normalizeClass(["vs-mega-nav-accordion-item",a.accordionItemClasses]),"data-test":"vs-mega-nav-accordion-item","data-unique-id":a.getUniqueId,"control-id":`vs-mega-nav-accordion-item-${a.getUniqueId}-${t.controlId}`},{title:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.title),1)]),default:vue.withCtx(()=>[t.ctaLink&&t.ctaText?(vue.openBlock(),vue.createBlock(s,{key:0,class:"vs-mega-nav-accordion-item__cta-link","data-test":"vs-mega-nav-accordion-item__cta-link",href:t.ctaLink},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.ctaText),1)]),_:1},8,["href"])):vue.createCommentVNode("",!0),vue.renderSlot(e.$slots,"default")]),_:3},8,["class","data-unique-id","control-id"])}const MegaNavAccordionItem=LoadingSpinner._export_sfc(_sfc_main$V,[["render",_sfc_render$G]]),_sfc_main$U={name:"VsMegaNavFeaturedItem",status:"prototype",release:"0.1.0",components:{VsStretchedLinkCard},props:{link:{type:String,required:!0},imgUrl:{type:String,required:!0},imgAlt:{type:String,default:""}}};function _sfc_render$F(e,n,t,o,r,a){const s=vue.resolveComponent("VsStretchedLinkCard");return vue.openBlock(),vue.createBlock(s,{link:t.link,type:"internal","img-src":t.imgUrl,"img-alt":t.imgAlt,class:"vs-mega-nav-featured-item","data-test":"vs-mega-nav-featured-item","heading-level":"2","heading-style":"heading-xxs"},{"stretched-card-header":vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-featured-item-header")]),"stretched-card-content":vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-featured-item-content")]),"stretched-card-link":vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-featured-item-link")]),_:3},8,["link","img-src","img-alt"])}const MegaNavFeaturedItem=LoadingSpinner._export_sfc(_sfc_main$U,[["render",_sfc_render$F]]),_sfc_main$T={name:"VsMegaNavFeaturedEvent",status:"prototype",release:"0.1.0",components:{VsStretchedLinkCard},props:{sourceUrl:{type:String,default:""}},data(){return{featuredEvent:null}},mounted(){this.sourceUrl&&this.retrieveFeaturedEvent()},methods:{retrieveFeaturedEvent(){LoadingSpinner.axios.get(this.sourceUrl).then(e=>{e.data.data.products&&e.data.data.products.length&&([this.featuredEvent]=e.data.data.products)}).catch(()=>{this.featuredEvent=null})}}},_hoisted_1$C={key:0,class:"vs-mega-nav-featured-event__date-range"},_hoisted_2$s={class:"vs-mega-nav-featured-event__date-detail"},_hoisted_3$j={class:"vs-mega-nav-featured-event__title"},_hoisted_4$f={key:1,class:"vs-mega-nav-featured-event__location"};function _sfc_render$E(e,n,t,o,r,a){const s=vue.resolveComponent("VsStretchedLinkCard");return r.featuredEvent?(vue.openBlock(),vue.createBlock(s,{key:0,link:r.featuredEvent.productLink.link,type:"internal","img-src":r.featuredEvent.images[0].mediaUrl,"img-alt":r.featuredEvent.name,class:"vs-mega-nav-featured-event","data-test":"vs-mega-nav-featured-event","data-chromatic":"ignore"},{"stretched-card-content":vue.withCtx(()=>[r.featuredEvent&&r.featuredEvent.opening?(vue.openBlock(),vue.createElementBlock("p",_hoisted_1$C,[vue.createTextVNode(vue.toDisplayString(r.featuredEvent.opening.period.label)+" ",1),vue.createElementVNode("span",_hoisted_2$s,vue.toDisplayString(r.featuredEvent.opening.period.startDay),1)])):vue.createCommentVNode("",!0),vue.createElementVNode("p",_hoisted_3$j,vue.toDisplayString(r.featuredEvent.name),1),r.featuredEvent&&r.featuredEvent.address?(vue.openBlock(),vue.createElementBlock("p",_hoisted_4$f,vue.toDisplayString(r.featuredEvent.address.shortAddress),1)):vue.createCommentVNode("",!0)]),"stretched-card-link":vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.featuredEvent.productLink.label),1)]),_:1},8,["link","img-src","img-alt"])):vue.createCommentVNode("",!0)}const MegaNavFeaturedEvent=LoadingSpinner._export_sfc(_sfc_main$T,[["render",_sfc_render$E]]),_sfc_main$S={name:"VsMegaNavStaticLink",status:"prototype",release:"0.1.0",components:{VsLink},mixins:[LoadingSpinner.dataLayerMixin],props:{href:{type:String,default:"#"},isFullWidth:{type:Boolean,default:!1}}};function _sfc_render$D(e,n,t,o,r,a){const s=vue.resolveComponent("VsLink");return vue.openBlock(),vue.createElementBlock("li",{class:vue.normalizeClass(["vs-mega-nav-static-link",t.isFullWidth?"vs-mega-nav-static-link--full-width":""]),"data-test":"vs-mega-nav-static-link",role:"presentation"},[vue.createVNode(s,{class:"vs-mega-nav-static-link__inner",href:t.href,role:"menuitem","data-layer-value":"menuNavigationDataEvent"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},8,["href"])],2)}const MegaNavStaticLink=LoadingSpinner._export_sfc(_sfc_main$S,[["render",_sfc_render$D]]),_sfc_main$R={name:"VsMegalinks",status:"prototype",release:"0.0.1",components:{VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,VsHeading:LoadingSpinner.VsHeading,VsButton:LoadingSpinner.VsButton,VsBody:LoadingSpinner.VsBody},provide(){return{noJsMessage:this.noJsMessage,noCookiesMessage:this.noCookiesMessage,cookieLinkText:this.cookieLinkText,theme:this.theme}},props:{title:{type:String,required:!1,default:null},sectionId:{type:String,required:!1,default:null},buttonLink:{type:String,required:!1,default:null},variant:{type:String,required:!1,default:null,validator:e=>e.match(/(multi-image|single-image|link-list)/)},theme:{type:String,default:"light",validator:e=>e.match(/(light|grey)/)},noJsMessage:{type:String,default:""},noCookiesMessage:{type:String,default:""},cookieLinkText:{type:String,default:""},headingLevel:{type:Number,default:2,validator:e=>LoadingSpinner.lodashExports.isNumber(e)?e>0&&e<7:e.match(/(1|2|3|4|5|6)/)},headingStyle:{type:String,default:"heading-xl",validator:e=>e.match(/(display-m|display-s|heading-xl|heading-l|heading-m|heading-s|heading-xs|heading-xxs|heading-xxxs)/)}},computed:{megalinksClasses(){return[this.variant?`vs-megalinks--${this.variant}`:"",`vs-megalinks--${this.theme}`]}}},_hoisted_1$B={key:0,class:"vs-megalinks__intro","data-test":"vs-megalinks__intro"},_hoisted_2$r={class:"row vs-megalinks__links-wrapper"},_hoisted_3$i={class:"vs-megalinks__button","data-test":"vs-megalinks__button"};function _sfc_render$C(e,n,t,o,r,a){const s=vue.resolveComponent("VsHeading"),i=vue.resolveComponent("VsBody"),l=vue.resolveComponent("VsCol"),u=vue.resolveComponent("VsRow"),c=vue.resolveComponent("VsButton"),d=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("section",{class:vue.normalizeClass(["vs-megalinks",a.megalinksClasses]),"data-test":"megalinks"},[vue.createVNode(d,{fluid:"lg"},{default:vue.withCtx(()=>[vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(l,{cols:"12",md:"8","offset-md":"2"},{default:vue.withCtx(()=>[t.title?(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$B,[vue.createVNode(s,{level:t.headingLevel,"heading-style":t.headingStyle,class:"vs-megalinks__heading","data-test":"vs-megalinks__heading",id:t.sectionId},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.title),1)]),_:1},8,["level","heading-style","id"]),e.$slots["vs-megalinks-intro"]&&e.$slots["vs-megalinks-intro"]()?(vue.openBlock(),vue.createBlock(i,{key:0,class:"vs-megalinks__intro-content",variant:"lead","data-test":"vs-megalinks__intro-content"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-megalinks-intro")]),_:3})):vue.createCommentVNode("",!0)])):vue.createCommentVNode("",!0)]),_:3})]),_:3}),vue.createElementVNode("div",_hoisted_2$r,[vue.renderSlot(e.$slots,"default")]),t.buttonLink&&t.variant!=="single-image"?(vue.openBlock(),vue.createBlock(u,{key:0},{default:vue.withCtx(()=>[vue.createVNode(l,{cols:"12"},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_3$i,[vue.createVNode(c,{href:t.buttonLink},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-megalinks-button")]),_:3},8,["href"])])]),_:3})]),_:3})):vue.createCommentVNode("",!0)]),_:3})],2)}const Megalinks=LoadingSpinner._export_sfc(_sfc_main$R,[["render",_sfc_render$C]]),_sfc_main$Q={name:"VsMegalinkLinkList",status:"prototype",release:"0.0.1",components:{VsStretchedLinkCard,VsBody:LoadingSpinner.VsBody,VsStretchedLinkPanels},props:{imgSrc:{required:!0,type:String},imgAlt:{required:!1,type:String,default:""},linkType:{type:String,required:!0,validator:e=>e.match(/(default|external|internal|download|video)/)},theme:{type:String,default:"light",validator:e=>e.match(/(light|grey)/)},linkUrl:{type:String,required:!0},days:{type:String,default:""},daysLabel:{type:String,default:"days"},transport:{type:String,default:""},transportName:{type:String,default:""},videoId:{type:String,default:""},videoBtnText:{type:String,default:"Play Video"},errorMessage:{type:String,default:""},businessSupport:{type:Boolean,default:!1},isHomePage:{type:Boolean,default:!1}},computed:{megalinkClass(){let e="";return this.theme&&(e+=`vs-megalink-link-list--${this.theme} `),this.isHomePage||(e+="vs-megalink-link-list--internal-page "),this.businessSupport&&(e+="vs-megalink-link-list--business-support "),e}}},_hoisted_1$A={class:"vs-megalink-link-list__title","data-test":"megalink-link-list__title"};function _sfc_render$B(e,n,t,o,r,a){const s=vue.resolveComponent("VsStretchedLinkPanels"),i=vue.resolveComponent("VsBody"),l=vue.resolveComponent("VsStretchedLinkCard");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-megalink-link-list",a.megalinkClass]),"data-test":"vs-megalink-link-list"},[vue.createVNode(l,{link:t.linkUrl,type:t.linkType,class:"vs-megalink-link-list__wrapper","img-src":t.imgSrc,"img-alt":t.imgAlt,theme:t.theme,"video-id":t.videoId,"video-btn-text":t.videoBtnText,"error-message":t.errorMessage,"error-type":"full","business-support":t.businessSupport,"is-home-page":t.isHomePage},vue.createSlots({"stretched-card-header":vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_1$A,[vue.renderSlot(e.$slots,"vs-link-list-heading")])]),"stretched-card-content":vue.withCtx(()=>[vue.createVNode(i,{class:vue.normalizeClass(t.businessSupport?"d-block":"vs-megalink-link-list__content"),"data-test":"megalink-link-list__content"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-link-list-content")]),_:3},8,["class"])]),_: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,"data-test":"vs-itinerary-panels"},null,8,["days","transport","transport-name","days-label"])]),key:"0"}:void 0,t.businessSupport&&!t.isHomePage?{name:"stretched-card-badges",fn:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-link-list-badges")]),key:"1"}:void 0]),1032,["link","type","img-src","img-alt","theme","video-id","video-btn-text","error-message","business-support","is-home-page"])],2)}const MegalinkLinkList=LoadingSpinner._export_sfc(_sfc_main$Q,[["render",_sfc_render$B]]),_sfc_main$P={name:"VsMegalinkMultiImage",status:"prototype",release:"0.0.1",components:{VsStretchedLinkCard,VsBody:LoadingSpinner.VsBody,VsStretchedLinkPanels},props:{featured:{required:!1,type:Boolean,default:!1},lastFeatured:{required:!1,type:Boolean,default:!1},imgSrc:{required:!0,type:String},imgAlt:{required:!1,type:String,default:""},linkType:{type:String,required:!0,validator:e=>e.match(/(default|external|internal|download|video)/)},linkUrl:{type:String,required:!0},theme:{type:String,default:"light",validator:e=>e.match(/(light|grey)/)},days:{type:String,default:""},daysLabel:{type:String,default:"days"},transport:{type:String,default:""},transportName:{type:String,default:""},videoId:{type:String,default:""},videoBtnText:{type:String,default:"Play Video"},errorMessage:{type:String,default:""}},computed:{multiImageClasses(){return[`vs-megalink-multi-image-card--${this.theme}`,{"vs-megalink-multi-image-card--featured":this.featured,"vs-megalink-multi-image-card--featured-last":this.lastFeatured}]}}},_hoisted_1$z={class:"vs-megalink-multi-image"},_hoisted_2$q={class:"vs-megalink-multi-image-card__title","data-test":"megalink-multi-image-card__title"};function _sfc_render$A(e,n,t,o,r,a){const s=vue.resolveComponent("VsStretchedLinkPanels"),i=vue.resolveComponent("VsBody"),l=vue.resolveComponent("VsStretchedLinkCard");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$z,[vue.createVNode(l,{link:t.linkUrl,type:t.linkType,class:vue.normalizeClass(["vs-megalink-multi-image-card p-050",a.multiImageClasses]),"heading-style":t.featured?"heading-s":"heading-xs","img-src":t.imgSrc,"img-alt":t.imgAlt,"data-test":t.featured?"megalink-multi-image-featured":"megalink-multi-image-card",theme:t.theme,"video-id":t.videoId,"video-btn-text":t.videoBtnText,"error-message":t.errorMessage,"warning-size":t.featured?"normal":"small"},vue.createSlots({"stretched-card-header":vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_2$q,[vue.renderSlot(e.$slots,"vs-multi-image-heading")])]),"stretched-card-content":vue.withCtx(()=>[vue.createVNode(i,{class:"vs-megalink-multi-image-card__content","data-test":"megalink-multi-image-card__content"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-multi-image-content")]),_:3})]),_: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,"data-test":"vs-itinerary-panels"},null,8,["days","transport","transport-name","days-label"])]),key:"0"}:void 0,e.$slots["vs-multi-image-badges"]&&e.$slots["vs-multi-image-badges"]()?{name:"stretched-card-badges",fn:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-multi-image-badges")]),key:"1"}:void 0]),1032,["link","type","class","heading-style","img-src","img-alt","data-test","theme","video-id","video-btn-text","error-message","warning-size"])])}const MegalinkMultiImage=LoadingSpinner._export_sfc(_sfc_main$P,[["render",_sfc_render$A]]),_sfc_main$O={name:"VsMegalinkSingleImage",status:"prototype",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading,VsBody:LoadingSpinner.VsBody,VsButton:LoadingSpinner.VsButton,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,VsLinkList},props:{alternate:{type:Boolean,default:!1},title:{type:String,default:null},buttonLink:{type:String,default:""}},data(){return{negativeMargin:"200px",imageHeight:"400px"}},computed:{singleImageClasses(){return[this.alternate?"vs-megalink-single-image--alternate":""]},cssVars(){return{"--negative-margin":`-${this.negativeMargin}`,"--image-height":`${this.imageHeight}`}}},mounted(){const e=this.$el.querySelector(".vs-image-with-caption");if(e){const n=e.querySelector("img");n.addEventListener("load",()=>{const t=n.clientHeight/2.5/n.clientWidth;this.negativeMargin=`${t*100}%`,this.imageHeight=`${n.clientHeight}px`})}}},_hoisted_1$y={class:"vs-megalink-single-image__image-container"},_hoisted_2$p={class:"vs-megalink-single-image__content","data-test":"megalink-single-image__content"},_hoisted_3$h={class:"vs-megalink-single-image__button"};function _sfc_render$z(e,n,t,o,r,a){const s=vue.resolveComponent("VsHeading"),i=vue.resolveComponent("VsBody"),l=vue.resolveComponent("VsLinkList"),u=vue.resolveComponent("VsButton"),c=vue.resolveComponent("VsCol"),d=vue.resolveComponent("VsRow");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-megalink-single-image",a.singleImageClasses]),"data-test":"megalink-single-image",style:vue.normalizeStyle(a.cssVars)},[vue.createElementVNode("div",_hoisted_1$y,[vue.renderSlot(e.$slots,"vs-single-image")]),vue.createVNode(d,{class:"vs-megalink-single-image__text-container"},{default:vue.withCtx(()=>[vue.createVNode(c,{cols:"12",sm:"10",lg:"6",class:vue.normalizeClass(["offset-sm-1",t.alternate?"offset-lg-6":"offset-lg-0"])},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_2$p,[t.title?(vue.openBlock(),vue.createBlock(s,{key:0,level:"3","heading-style":"heading-m",class:"vs-megalink-single-image__title","data-test":"megalink-single-image__title"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.title),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(i,{variant:"lead"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-single-image-content")]),_:3}),vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-single-image-links")]),_:3}),vue.createElementVNode("div",_hoisted_3$h,[t.buttonLink?(vue.openBlock(),vue.createBlock(u,{key:0,href:t.buttonLink,variant:"secondary"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-single-image-button-text")]),_:3},8,["href"])):vue.createCommentVNode("",!0)])])]),_:3},8,["class"])]),_:3})],6)}const MegalinkSingleImage=LoadingSpinner._export_sfc(_sfc_main$O,[["render",_sfc_render$z]]),_sfc_main$N={name:"VsBackdrop",props:{show:{type:Boolean,required:!0},zIndex:{type:[String,Number],default:1040},clickable:{type:Boolean,default:!0}},emits:["click","update:show"],computed:{backdropStyle(){return{zIndex:this.zIndex}}},unmounted(){this.show&&this.unlockScroll()},methods:{onClick(){this.clickable&&(this.$emit("click"),this.$emit("update:show",!1))},lockScroll(){document.body.style.overflow="hidden"},unlockScroll(){document.body.style.overflow=""}}};function _sfc_render$y(e,n,t,o,r,a){return vue.openBlock(),vue.createBlock(vue.Transition,{name:"vs-backdrop-fade",onEnter:a.lockScroll,onAfterLeave:a.unlockScroll},{default:vue.withCtx(()=>[t.show?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:"vs-backdrop",style:vue.normalizeStyle(a.backdropStyle),role:"presentation",onClick:n[0]||(n[0]=(...s)=>a.onClick&&a.onClick(...s))},null,4)):vue.createCommentVNode("",!0)]),_:1},8,["onEnter","onAfterLeave"])}const VsBackdrop=LoadingSpinner._export_sfc(_sfc_main$N,[["render",_sfc_render$y]]),_sfc_main$M={name:"VsModal",status:"prototype",release:"0.0.1",components:{VsCol:LoadingSpinner.VsCol,VsRow:LoadingSpinner.VsRow,VsContainer:LoadingSpinner.VsContainer,VsButton:LoadingSpinner.VsButton,BModal:LoadingSpinner._a,VsBackdrop},props:{modalId:{type:String,required:!0},closeBtnText:{type:String,required:!0},isVideoModal:{type:Boolean,default:!1},autoMount:{type:Boolean,default:!1}},data(){return{show:!1,mounted:this.autoMount}},mounted(){this.mounted=!0,this.emitter&&(this.emitter.on("showModal",e=>this.showModal(e)),this.emitter.on("hideModal",()=>this.hideModal()),this.isVideoModal&&this.emitter.on("showModal",e=>{this.emitter.emit("video-controls",{action:"modal-opened",id:e})}))},methods:{hideModal(){this.emitter&&this.emitter.emit("video-controls",{action:"modal-closed",id:this.modalId}),this.show=!1},showModal(e){e===this.modalId&&(this.show=!0)}}};function _sfc_render$x(e,n,t,o,r,a){const s=vue.resolveComponent("VsButton"),i=vue.resolveComponent("VsCol"),l=vue.resolveComponent("VsRow"),u=vue.resolveComponent("VsContainer"),c=vue.resolveComponent("VsBackdrop"),d=vue.resolveComponent("BModal");return r.mounted?(vue.openBlock(),vue.createBlock(d,{key:0,"modal-class":"vs-modal","data-test":"vs-modal",ref:`modal-${t.modalId}`,id:t.modalId,size:"xl","hide-footer":"","hide-header":"",static:t.isVideoModal,modelValue:r.show,"onUpdate:modelValue":n[1]||(n[1]=v=>r.show=v),onHidden:a.hideModal},{backdrop:vue.withCtx(()=>[vue.createVNode(c,{show:r.show,onClick:n[0]||(n[0]=v=>a.hideModal())},null,8,["show"])]),default:vue.withCtx(()=>[vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.createVNode(i,{cols:"12",lg:"1",class:"d-flex justify-content-end align-items-start order-lg-1"},{default:vue.withCtx(()=>[vue.createVNode(s,{class:"vs-modal__close-btn mb-125 mb-lg-0","data-test":"vs-modal__close-btn",variant:"subtle","icon-only":"",icon:"vs-icon-control-dismiss",onClick:a.hideModal},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.closeBtnText),1)]),_:1},8,["onClick"])]),_:1}),vue.createVNode(i,{cols:"12",lg:"11"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3})]),_:3})]),_:3})]),_:3},8,["id","static","modelValue","onHidden"])):vue.createCommentVNode("",!0)}const Modal=LoadingSpinner._export_sfc(_sfc_main$M,[["render",_sfc_render$x]]),_sfc_main$L={name:"VsNavigationBarSidebarButton",status:"prototype",release:"0.1.0",components:{VsButton:LoadingSpinner.VsButton,VsTooltip},props:{sidebarOpenLabel:{type:String,required:!0},expanded:{type:Boolean,default:!1},controlsId:{type:String,required:!0}},emits:["sidebar-open"],methods:{sidebarOpen(){this.$emit("sidebar-open",!0)}}};function _sfc_render$w(e,n,t,o,r,a){const s=vue.resolveComponent("VsButton"),i=vue.resolveComponent("VsTooltip");return vue.openBlock(),vue.createBlock(i,{title:t.sidebarOpenLabel,subtle:"",position:"bottom","use-legacy":!1},{default:vue.withCtx(()=>[vue.createVNode(s,{"icon-only":"",icon:"vs-icon-control-menu",size:"sm",variant:"subtle",class:"d-block vs-navigation-bar-sidebar-button","data-test":"vs-navigation-bar-sidebar-button",onClick:n[0]||(n[0]=l=>a.sidebarOpen()),"aria-haspopup":"dialog","aria-controls":t.controlsId,"aria-expanded":String(t.expanded)},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.sidebarOpenLabel),1)]),_:1},8,["aria-controls","aria-expanded"])]),_:1},8,["title"])}const VsNavigationBarSidebarButton=LoadingSpinner._export_sfc(_sfc_main$L,[["render",_sfc_render$w]]),_sfc_main$K={name:"VsNavigationBarSidebar",status:"prototype",release:"0.1.0",components:{BOffcanvas:LoadingSpinner.Md,VsButton:LoadingSpinner.VsButton,VsBackdrop},props:{show:{type:Boolean,default:!1},sidebarTitle:{type:String,required:!0},sidebarCloseLabel:{type:String,required:!0}},emits:["update:show"],methods:{sidebarClose(){this.$emit("update:show",!1)}}},_hoisted_1$x={id:"navigation-sidebar-title",class:"visually-hidden"};function _sfc_render$v(e,n,t,o,r,a){const s=vue.resolveComponent("VsButton"),i=vue.resolveComponent("VsBackdrop"),l=vue.resolveComponent("BOffcanvas");return vue.openBlock(),vue.createBlock(l,{class:"vs-navigation-bar-sidebar border-0","model-value":t.show,"aria-labelledby":"navigation-sidebar-title","onUpdate:modelValue":n[1]||(n[1]=u=>e.$emit("update:show",u)),id:"navigation-sidebar",placement:"end","no-backdrop":!0,lazy:""},{header:vue.withCtx(()=>[vue.createElementVNode("h2",_hoisted_1$x,vue.toDisplayString(t.sidebarTitle),1),vue.createVNode(s,{"icon-only":"",icon:"vs-icon-control-dismiss",variant:"subtle",size:"sm",onClick:a.sidebarClose},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.sidebarCloseLabel),1)]),_:1},8,["onClick"])]),footer:vue.withCtx(()=>[vue.renderSlot(e.$slots,"sidebar-footer")]),backdrop:vue.withCtx(()=>[vue.createVNode(i,{show:t.show,onClick:n[0]||(n[0]=u=>a.sidebarClose())},null,8,["show"])]),default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},8,["model-value"])}const VsNavigationSidebar=LoadingSpinner._export_sfc(_sfc_main$K,[["render",_sfc_render$v]]),_sfc_main$J={name:"VsNavigationBar",status:"prototype",release:"0.1.0",components:{VsCol:LoadingSpinner.VsCol,VsRow:LoadingSpinner.VsRow,VsContainer:LoadingSpinner.VsContainer,VsNavigationBarSidebarButton,VsNavigationSidebar},props:{sidebarBreakpoint:{type:String,default:"md",validator:e=>/^(xs|sm|md|lg|xl)$/.test(e)},sidebarCloseLabel:{type:String,required:!0},sidebarOpenLabel:{type:String,required:!0},sidebarTitle:{type:String,required:!0}},data(){return{sidebarOpen:!1}},computed:{breakpointMap(){return{xs:"sm",sm:"md",md:"lg",lg:"xl",xl:"xxl"}},menuBreakpoint(){return this.breakpointMap[this.sidebarBreakpoint]||"lg"},menuClasses(){return`d-none d-${this.menuBreakpoint}-block flex-grow-1`},sidebarButtonClasses(){return`d-${this.menuBreakpoint}-none`},utilityClasses(){return`d-flex justify-content-end align-items-center col col-${this.menuBreakpoint}-auto`}},methods:{onSidebarOpen(){this.sidebarOpen=!0}}},_hoisted_1$w={class:"vs-navigation-bar","data-test":"vs-navigation-bar"};function _sfc_render$u(e,n,t,o,r,a){const s=vue.resolveComponent("VsCol"),i=vue.resolveComponent("VsNavigationBarSidebarButton"),l=vue.resolveComponent("VsRow"),u=vue.resolveComponent("VsContainer"),c=vue.resolveComponent("VsNavigationSidebar");return vue.openBlock(),vue.createElementBlock(vue.Fragment,null,[vue.createElementVNode("header",_hoisted_1$w,[vue.createVNode(u,{fluid:"lg",class:"h-100"},{default:vue.withCtx(()=>[vue.createVNode(l,{class:"align-items-center h-100"},{default:vue.withCtx(()=>[vue.createVNode(s,{class:"col-auto"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"logo-link")]),_:3}),vue.createVNode(s,{class:vue.normalizeClass(a.menuClasses),"data-test":"vs-navigation-bar__menu"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"navigation-bar-menu")]),_:3},8,["class"]),vue.createVNode(s,{class:vue.normalizeClass(a.utilityClasses),"data-test":"vs-navigation-bar__utilities"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"navigation-bar-utilities"),vue.createVNode(i,{class:vue.normalizeClass(a.sidebarButtonClasses),"data-test":"vs-navigation-bar__sidebar-button",onSidebarOpen:a.onSidebarOpen,"sidebar-open-label":t.sidebarOpenLabel,expanded:r.sidebarOpen,"controls-id":"navigation-sidebar"},null,8,["class","onSidebarOpen","sidebar-open-label","expanded"])]),_:3},8,["class"])]),_:3})]),_:3})]),vue.createVNode(c,{show:r.sidebarOpen,"onUpdate:show":n[0]||(n[0]=d=>r.sidebarOpen=d),"sidebar-close-label":t.sidebarCloseLabel,"sidebar-title":t.sidebarTitle},{"sidebar-footer":vue.withCtx(()=>[vue.renderSlot(e.$slots,"sidebar-footer")]),default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"sidebar-body")]),_:3},8,["show","sidebar-close-label","sidebar-title"])],64)}const NavigationBar=LoadingSpinner._export_sfc(_sfc_main$J,[["render",_sfc_render$u]]),_sfc_main$I={name:"VsNavigationBarMenu",status:"prototype",release:"0.1.0",props:{menuAriaLabel:{type:String,required:!0}}},_hoisted_1$v=["aria-label"];function _sfc_render$t(e,n,t,o,r,a){return vue.openBlock(),vue.createElementBlock("nav",{class:"vs-navigation-bar-menu","data-test":"vs-navigation-bar-menu","aria-label":t.menuAriaLabel},[vue.createElementVNode("ul",null,[vue.renderSlot(e.$slots,"default")])],8,_hoisted_1$v)}const NavigationBarMenu=LoadingSpinner._export_sfc(_sfc_main$I,[["render",_sfc_render$t]]),_sfc_main$H={name:"VsNavigationBarMenuDropdown",status:"prototype",release:"0.1.0",components:{BDropdown:LoadingSpinner.un},mixins:[LoadingSpinner.dataLayerMixin],props:{subtle:{type:Boolean,default:!1}},computed:{menuDropdownClasses(){return[this.subtle?"vs-navigation-bar-menu-dropdown--subtle":"","vs-navigation-bar-menu-dropdown"]}},methods:{dataLayerSubmit(){var n,t,o,r;const e=((r=(o=(t=(n=this.$refs.dropdown)==null?void 0:n.$el)==null?void 0:t.querySelector(".dropdown-toggle"))==null?void 0:o.innerText)==null?void 0:r.trim())||"";e&&this.createDataLayerObject("menuNavigationDataEvent",{target:{text:e,innerText:e,closest:()=>null}},null)}}};function _sfc_render$s(e,n,t,o,r,a){const s=vue.resolveComponent("BDropdown");return vue.openBlock(),vue.createBlock(s,{class:vue.normalizeClass(a.menuDropdownClasses),"data-test":"vs-navigation-bar-menu-dropdown",variant:"subtle",ref:"dropdown",role:"presentation",onShow:a.dataLayerSubmit},{"button-content":vue.withCtx(()=>[vue.renderSlot(e.$slots,"button-content")]),default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},8,["class","onShow"])}const NavigationBarMenuDropdown=LoadingSpinner._export_sfc(_sfc_main$H,[["render",_sfc_render$s]]),_sfc_main$G={name:"VsNavigationBarMenuItem",status:"prototype",release:"0.1.0",mixins:[LoadingSpinner.dataLayerMixin],props:{href:{type:String,required:!0},variant:{type:String,default:"secondary-menu-item",validator:e=>e.match(/(primary-menu-item|primary-sidebar-item|secondary-menu-item)/)}},computed:{menuItemLinkClasses(){return[`vs-navigation-bar-menu-item__link--${this.variant}`,"vs-navigation-bar-menu-item__link"]}},methods:{clickHandler(e){e.preventDefault(),this.dataLayerValue&&this.createDataLayerObject(this.dataLayerValue,e,this.href),setTimeout(()=>{this.navigateToUrl()},500)},navigateToUrl(){this.href!=="#"&&this.href!==null&&(window.location.href=this.href)},keyHandler(e){(e.keyCode===13||e.keyCode===32)&&(e.preventDefault(),this.clickHandler(e))}}},_hoisted_1$u={class:"vs-navigation-bar-menu-item","data-test":"vs-navigation-bar-menu-item"},_hoisted_2$o=["href"];function _sfc_render$r(e,n,t,o,r,a){return vue.openBlock(),vue.createElementBlock("li",_hoisted_1$u,[vue.createElementVNode("a",{class:vue.normalizeClass(a.menuItemLinkClasses),href:t.href,"data-layer-value":"menuNavigationDataEvent",onClick:n[0]||(n[0]=s=>a.clickHandler(s)),onKeydown:n[1]||(n[1]=s=>a.keyHandler(s))},[vue.renderSlot(e.$slots,"default")],42,_hoisted_2$o)])}const NavigationBarMenuItem=LoadingSpinner._export_sfc(_sfc_main$G,[["render",_sfc_render$r]]),_sfc_main$F={name:"VsNavigationBarSearch",status:"prototype",release:"0.0.1",components:{VsButton:LoadingSpinner.VsButton,VsSiteSearchForm},props:{buttonText:{type:String,default:"Search"},labelText:{type:String,default:"Search"},submitButtonText:{type:String,default:"Submit"},closeButtonText:{type:String,default:"Close"},showLabelBreakpoint:{type:String,default:"md",validator:e=>/^(xs|sm|md|lg|xl|xxl)$/.test(e)}},data(){return{showSearch:!1}}};function _sfc_render$q(e,n,t,o,r,a){const s=vue.resolveComponent("VsButton"),i=vue.resolveComponent("VsSiteSearchForm");return vue.openBlock(),vue.createElementBlock(vue.Fragment,null,[vue.createVNode(s,{"data-test":"vs-navigation-bar-search",id:"site-search-btn",variant:"secondary",size:"sm",icon:"vs-icon-control-search",active:r.showSearch,"show-label-breakpoint":t.showLabelBreakpoint,onClick:n[0]||(n[0]=l=>r.showSearch=!r.showSearch)},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.buttonText),1)]),_:1},8,["active","show-label-breakpoint"]),(vue.openBlock(),vue.createBlock(vue.Teleport,{to:"body"},[vue.withDirectives(vue.createVNode(i,{onToggleAction:n[1]||(n[1]=l=>r.showSearch=!1),"is-showing":r.showSearch,"label-text":t.labelText,"submit-button-text":t.submitButtonText,"close-button-text":t.closeButtonText},null,8,["is-showing","label-text","submit-button-text","close-button-text"]),[[vue.vShow,r.showSearch]])]))],64)}const NavigationBarSearch=LoadingSpinner._export_sfc(_sfc_main$F,[["render",_sfc_render$q]]),_sfc_main$E={name:"VsPageIntro",status:"deprecated",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading,VsBody:LoadingSpinner.VsBody,VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol},props:{background:{type:String,default:"light",validator:e=>e.match(/(light|grey)/)},heroIntro:{type:Boolean,default:!1},isItinerary:{type:Boolean,default:!1},fullscreenMobile:{type:Boolean,default:!1},hasToc:{type:Boolean,default:!1}},computed:{introClasses(){return[`vs-page-intro--${this.background}`,this.heroIntro?"vs-page-intro--hero":"",this.fullscreenMobile?"vs-page-intro__fullscreen-mobile-header":""]},contentColProps(){const e={};return this.isItinerary?(e.md="6",e.lg="5",e.xl="6",e["offset-lg"]="1"):this.heroIntro?(e.md="12",e.lg="7",e.xl="8",e["offset-lg"]="1"):this.hasToc?e.md="7":e.md="8",e}}},_hoisted_1$t={key:0,class:"vs-page-intro__fs-mobile-heading-wrapper","data-test":"vs-page-intro__mobile-breadcrumb"},_hoisted_2$n={class:"vs-page-intro__wrapper"},_hoisted_3$g={class:"vs-page-intro__share"},_hoisted_4$e={key:0,class:"list-inline"},_hoisted_5$d={key:0,class:"vs-page-intro__lower py-300","data-test":"vs-page-intro__lower"};function _sfc_render$p(e,n,t,o,r,a){const s=vue.resolveComponent("VsCol"),i=vue.resolveComponent("VsRow"),l=vue.resolveComponent("VsContainer"),u=vue.resolveComponent("VsHeading"),c=vue.resolveComponent("VsBody");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-page-intro",a.introClasses]),"data-test":"vs-page-intro"},[t.fullscreenMobile?(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$t,[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.createVNode(i,{class:vue.normalizeClass(t.fullscreenMobile?"d-none-md":"")},{default:vue.withCtx(()=>[vue.createVNode(s,{cols:"9",lg:t.heroIntro?"8":"","offset-lg":t.heroIntro?"1":""},{default:vue.withCtx(()=>[vue.createElementVNode("div",{class:vue.normalizeClass(["vs-page-intro__breadcrumb",t.heroIntro?"mt-lg-100":"mt-lg-200"])},[vue.renderSlot(e.$slots,"vs-intro-breadcrumb")],2)]),_:3},8,["lg","offset-lg"])]),_:3},8,["class"])]),_:3})])):vue.createCommentVNode("",!0),vue.renderSlot(e.$slots,"vs-intro-hero"),vue.createElementVNode("div",_hoisted_2$n,[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.createVNode(i,{class:vue.normalizeClass(t.fullscreenMobile?"d-none d-lg-flex":"")},{default:vue.withCtx(()=>[vue.createVNode(s,{cols:"9",lg:t.heroIntro?"8":"","offset-lg":t.heroIntro?"1":""},{default:vue.withCtx(()=>[vue.createElementVNode("div",{class:vue.normalizeClass(["vs-page-intro__breadcrumb",t.heroIntro?"mt-lg-100":"mt-lg-200"])},[vue.renderSlot(e.$slots,"vs-intro-breadcrumb")],2)]),_:3},8,["lg","offset-lg"])]),_:3},8,["class"]),vue.createElementVNode("div",_hoisted_3$g,[vue.renderSlot(e.$slots,"vs-share-button")]),vue.createVNode(i,null,{default:vue.withCtx(()=>[vue.createVNode(s,{cols:"11",md:t.heroIntro?"11":"10",lg:t.heroIntro?"7":"10",xl:t.heroIntro?"8":"10","offset-lg":t.heroIntro?"1":"0",class:"mt-050"},{default:vue.withCtx(()=>[vue.createVNode(u,{level:"1","heading-style":"display-s",id:"main-heading"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-intro-heading")]),_:3}),vue.renderSlot(e.$slots,"vs-article-data")]),_:3},8,["md","lg","xl","offset-lg"])]),_:3}),vue.createVNode(i,null,{default:vue.withCtx(()=>[vue.createVNode(s,vue.mergeProps({"data-test":"vs-page-intro__content",cols:"12"},a.contentColProps),{default:vue.withCtx(()=>[vue.createVNode(c,{variant:"lead"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-intro-content")]),_:3}),e.$slots["vs-intro-start-finish"]&&e.$slots["vs-intro-start-finish"]()?(vue.openBlock(),vue.createElementBlock("dl",_hoisted_4$e,[vue.renderSlot(e.$slots,"vs-intro-start-finish")])):vue.createCommentVNode("",!0)]),_:3},16),e.$slots["vs-intro-table-of-contents"]&&e.$slots["vs-intro-table-of-contents"]()?(vue.openBlock(),vue.createBlock(s,{key:0,cols:"12",md:"5"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-intro-table-of-contents")]),_:3})):vue.createCommentVNode("",!0),vue.renderSlot(e.$slots,"vs-intro-summary-box")]),_:3})]),_:3}),e.$slots["vs-intro-lower"]&&e.$slots["vs-intro-lower"]()?(vue.openBlock(),vue.createElementBlock("div",_hoisted_5$d,[vue.renderSlot(e.$slots,"vs-intro-lower")])):vue.createCommentVNode("",!0)])],2)}const PageIntro=LoadingSpinner._export_sfc(_sfc_main$E,[["render",_sfc_render$p]]),_hoisted_1$s={"aria-label":"Pagination",class:"vs-pagination","data-test":"vs-pagination"},_hoisted_2$m={"aria-live":"polite",class:"vs-pagination__count"},_hoisted_3$f={class:"vs-pagination__controls"},_hoisted_4$d={class:"vs-pagination__prev"},_hoisted_5$c={class:"vs-pagination__list"},_hoisted_6$c={key:0},_hoisted_7$a={class:"vs-pagination__next"},limit=7,_sfc_main$D={__name:"VsPagination",props:vue.mergeModels({nextButtonLabel:{type:String,required:!0},numberOfPages:{type:Number,required:!0},pageLabel:{type:String,required:!0},ofLabel:{type:String,required:!0},previousButtonLabel:{type:String,required:!0}},{modelValue:{type:Number,default:1},modelModifiers:{}}),emits:vue.mergeModels(["page-click"],["update:modelValue"]),setup(e,{emit:n}){const t=e,o=n,r=vue.useModel(e,"modelValue"),a=vue.computed(()=>`${t.pageLabel} ${r.value} ${t.ofLabel} ${t.numberOfPages}`),s=u=>({"vs-pagination__item":!0,"vs-pagination__item--active":r.value===u,"vs-pagination__item--ellipses":u==="ellipses"}),i=vue.computed(()=>{if(t.numberOfPages<=limit)return Array.from({length:t.numberOfPages},(d,v)=>v+1);let u=[];const c=Math.floor(limit/2);if(r.value<=c){for(let d=1;d<limit-1;d++)u=[...u,d];u=[...u,"ellipses",t.numberOfPages]}else if(r.value>t.numberOfPages-c){u=[1,"ellipses"];const d=t.numberOfPages-limit+2;for(let v=1;v<limit-1;v++)u=[...u,d+v]}else{const d=r.value-c+1;u=[1,"ellipses"];for(let v=1;v<limit-3;v++)u=[...u,d+v];u=[...u,"ellipses",t.numberOfPages]}return u}),l=(u,c)=>{r.value!==c&&(o("page-click",c),r.value=c)};return vue.watch(()=>t.numberOfPages,()=>{r.value=1}),(u,c)=>(vue.openBlock(),vue.createElementBlock("nav",_hoisted_1$s,[vue.createElementVNode("div",_hoisted_2$m,[vue.createElementVNode("p",null,vue.toDisplayString(a.value),1)]),vue.createElementVNode("div",_hoisted_3$f,[vue.createElementVNode("div",_hoisted_4$d,[vue.createVNode(LoadingSpinner.VsButton,{disabled:r.value===1,icon:"fa-regular fa-arrow-left",size:"sm",variant:"subtle",onClick:c[0]||(c[0]=d=>l(d,r.value-1))},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.previousButtonLabel),1)]),_:1},8,["disabled"])]),vue.createElementVNode("ul",_hoisted_5$c,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(i.value,(d,v)=>(vue.openBlock(),vue.createElementBlock("li",{class:vue.normalizeClass(s(d)),key:v},[d==="ellipses"?(vue.openBlock(),vue.createElementBlock("span",_hoisted_6$c,"⋯")):(vue.openBlock(),vue.createBlock(LoadingSpinner.VsButton,{key:1,"aria-current":r.value===d?"page":null,"aria-label":`Page ${d}`,size:"sm",onClick:m=>l(m,d)},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(d),1)]),_:2},1032,["aria-current","aria-label","onClick"]))],2))),128))]),vue.createElementVNode("div",_hoisted_7$a,[vue.createVNode(LoadingSpinner.VsButton,{disabled:r.value===t.numberOfPages,icon:"fa-regular fa-arrow-right","icon-position":"right",size:"sm",variant:"subtle",onClick:c[1]||(c[1]=d=>l(d,r.value+1))},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.nextButtonLabel),1)]),_:1},8,["disabled"])])])]))}},_sfc_main$C={name:"VsPanel",status:"prototype",release:"0.0.1",props:{variant:{type:String,default:"secondary",validator:e=>e.match(/(secondary|information)/)}},computed:{panelClasses(){return`vs-panel--${this.variant}`}}};function _sfc_render$o(e,n,t,o,r,a){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-panel",a.panelClasses]),"data-test":"vs-panel"},[vue.renderSlot(e.$slots,"vs-panel-title"),vue.renderSlot(e.$slots,"default")],2)}const Panel=LoadingSpinner._export_sfc(_sfc_main$C,[["render",_sfc_render$o]]);let VS$1;function setWindowObj(){typeof window<"u"?VS$1=typeof window.VS=="object"?window.VS:{}:VS$1={}}function getLabelText(e,n,t){setWindowObj();let o="";return Object.keys(VS$1).length>0&&(typeof t<"u"?o=VS$1.search_config.basic_config.search_module[t][e]:o=VS$1.search_config.basic_config.search_module[e]),o||n}function getProductName(e,n){setWindowObj();const t={};return Object.keys(VS$1).length>0&&Object.keys(VS$1.search_config.basic_config.productTypes).forEach(o=>{const r=VS$1.search_config.basic_config.productTypes[o];t[r.value]=r.text}),t[e]?t[e]:n}function getLocale(){let e=document.documentElement.lang.toLocaleLowerCase().slice(0,2)||"";return e==="en"&&(e=""),e}let VS;typeof window<"u"?VS=typeof window.VS=="object"?window.VS:{}:VS={};function getProductTypes(){if(Object.keys(VS).length<=0)return LoadingSpinner.products;const e=VS.search_config.basic_config.productTypes,n=[];return Object.keys(e).forEach(o=>{n.push({key:e[o].value,text:e[o].text,value:e[o].value})}),n}async function getData(e){try{const{data:n}=await LoadingSpinner.axios.get(e);return n}catch(n){console.error(`Axios error: ${n}`)}}var define_process_env_default$1={},controls={arrowUpKey:38,arrowDownKey:40,escKey:27,enterKey:13};function isFn(e){return typeof e=="function"}function isControlledProp(e,n){return e[n]!==void 0}function hasKeyCode(e,n){return e===n.keyCode}function getItemIndex(e,n,t){return e!==void 0?e:t.length?t.indexOf(n):-1}function hasOwnProperty(e,n){return Object.prototype.hasOwnProperty.call(e,n)}function requiredProp(e,n){console.error('The property "'+n+'" is required in "'+e+'"')}function getNextNonDisabledIndex(e,n,t,o,r){var a=o(n);if(!a||!a.hasAttribute("disabled"))return n;if(e>0)for(var s=n+1;s<t;s+=1){var i=o(s),l=i.hasAttribute("disabled");if(!l)return s}else for(var u=n-1;u>=0;u-=1)if(!o(u).hasAttribute("disabled"))return u;return r?e>0?getNextNonDisabledIndex(1,0,t,o,!1):getNextNonDisabledIndex(-1,t-1,t,o,!1):-1}function scrollToElement(e,n,t){var o=n.clientHeight,r=n.scrollTop,a=e.offsetHeight,s=e.offsetTop;if(s<r)t===0?n.scrollTop=0:n.scrollTop=s;else{var i=s+a,l=r+o;i>l&&(n.scrollTop=i-o)}}function getProps(e){return Object.assign({},e?{modelValue:{default:null}}:{value:{default:null}},{items:{type:Array,required:!0},itemToString:{type:Function,default:function(n){return n?String(n):""}},stateReducer:{type:Function,default:function(n,t){return t.changes}},getItemId:{type:Function,default:function(t){return"v-"+this.idCounter+"-vue-combo-blocks-item-"+t}},menuId:{type:String,default:""},inputId:{type:String,default:""},labelId:{type:String,default:""},scrollIntoView:{type:Boolean,default:!0},circular:{type:Boolean,default:!0}})}function getInitialData(e,n){return{hovered:null,isOpen:!1,hoveredIndex:-1,selectedItem:e,inputValue:n(e)}}var computed={menuElement:function e(){return document.querySelector("#"+this.computedMenuId)},computedMenuId:function e(){return this.menuId||"v-"+this.idCounter+"-vue-combo-blocks-menu"},computedInputId:function e(){return this.inputId||"v-"+this.idCounter+"-vue-combo-blocks-input"},computedLabelId:function e(){return this.labelId||"v-"+this.idCounter+"-vue-combo-blocks-label"},selectedIndex:function e(){return this.items.indexOf(this.selectedItem)}},InputKeyDownArrowDown="InputKeyDownArrowDown",InputKeyDownArrowUp="InputKeyDownArrowUp",InputKeyDownTab="InputKeyDownTab",InputKeyUpEscape="InputKeyUpEscape",InputKeyUpEnter="InputKeyUpEnter",InputChange="InputChange",InputBlur="InputBlur",MenuMouseLeave="MenuMouseLeave",ItemMouseMove="ItemMouseMove",ItemClick="ItemClick",FunctionOpenMenu="FunctionOpenMenu",FunctionCloseMenu="FunctionCloseMenu",FunctionSelectItem="FunctionSelectItem",FunctionSetInputValue="FunctionSetInputValue",FunctionReset="FunctionReset",ControlledPropUpdatedSelectedItem="ControlledPropUpdatedSelectedItem",sct=Object.freeze({__proto__:null,ControlledPropUpdatedSelectedItem,FunctionCloseMenu,FunctionOpenMenu,FunctionReset,FunctionSelectItem,FunctionSetInputValue,InputBlur,InputChange,InputKeyDownArrowDown,InputKeyDownArrowUp,InputKeyDownTab,InputKeyUpEnter,InputKeyUpEscape,ItemClick,ItemMouseMove,MenuMouseLeave}),inputPropsAndListeners={getInputProps:function e(){return{value:this.inputValue||"","aria-activedescendant":this.hovered?this.getItemId(this.hoveredIndex):"","aria-autocomplete":"list","aria-controls":this.computedMenuId,"aria-labelledby":this.computedLabelId,id:this.computedInputId,autocomplete:"off"}},getInputEventListeners:function e(n){n===void 0&&(n={});var t=n.blur,o=n.input,r=n.keydown,a=n.keyup;return{blur:isFn(t)?t:this.onInputBlur,input:isFn(o)?o:this.onInput,keydown:isFn(r)?r:this.onInputKeyDown,keyup:isFn(a)?a:this.onInputKeyUp}},onInputKeyDown:function e(n){n.key==="Enter"&&this.isOpen?n.preventDefault():hasKeyCode(controls.arrowDownKey,n)&&!this.isOpen?(this.setState({isOpen:!0},InputKeyDownArrowDown),this.moveSelection(n)):this.moveSelection(n)},onInputKeyUp:function e(n){var t=controls.enterKey,o=controls.escKey;if(this.isOpen)if(hasKeyCode(t,n)){if(this.hoveredIndex>=0){n.preventDefault();var r=this.getItemNodeFromIndex(this.hoveredIndex);if(r&&r.hasAttribute("disabled"))return;this.setState({inputValue:this.itemToString(this.hovered),selectedItem:this.hovered,hoveredIndex:-1,hovered:null,isOpen:!1},InputKeyUpEnter)}}else hasKeyCode(o,n)&&this.setState({hoveredIndex:-1,hovered:null,isOpen:!1},InputKeyUpEscape)},onInputBlur:function e(){this.setState({isOpen:!1,inputValue:this.itemToString(this.selectedItem),hovered:null,hoveredIndex:-1},InputBlur)},onInput:function e(n){var t=n.target?n.target.value:n;this.setState({inputValue:t,hovered:null,isOpen:!0},InputChange)}},itemPropsAndListeners={getItemEventListeners:function e(n){var t=this;n===void 0&&(n={});var o=n.index,r=n.disabled,a=n.item;a===void 0&&(a=define_process_env_default$1.NODE_ENV==="production"?void 0:requiredProp("getItemEventListeners","item"));var s=n.mousemove,i=n.mousedown,l=n.click;return r?{}:{mousemove:isFn(s)?s:function(){return t.onItemMouseMove(o,a)},mousedown:isFn(i)?i:this.onItemMouseDown,click:isFn(l)?l:function(){return t.onItemClick(a)}}},onItemMouseMove:function e(n,t){var o=getItemIndex(n,t,this.items);this.hoveredIndex!==o&&this.setState({hoveredIndex:o,hovered:t},ItemMouseMove)},onItemMouseDown:function e(n){n.preventDefault()},onItemClick:function e(n){this.setState({inputValue:this.itemToString(n),selectedItem:n,isOpen:!1,hoveredIndex:-1,hovered:null},ItemClick)},getItemProps:function e(n){n===void 0&&(n={});var t=n.index,o=n.disabled,r=n.item;r===void 0&&(r=define_process_env_default$1.NODE_ENV==="production"?void 0:requiredProp("getItemProps","item"));var a=getItemIndex(t,r,this.items),s=this.getItemId(a);return{id:s,disabled:o?!0:void 0,role:"option","aria-selected":this.hoveredIndex===a||this.selectedItem===r?"true":"false"}}},menuPropsAndListeners={getMenuProps:function e(){return{id:this.computedMenuId,role:"listbox","aria-labelledby":this.computedLabelId}},getMenuEventListeners:function e(n){n===void 0&&(n={});var t=n.mouseleave,o=n.mousedown;return{mouseleave:isFn(t)?t:this.onMenuMouseLeave,mousedown:isFn(o)?o:this.onMenuMouseDown}},onMenuMouseLeave:function e(){this.setState({hoveredIndex:-1,hovered:null},MenuMouseLeave)},onMenuMouseDown:function e(n){n.preventDefault()}},methods=Object.assign({},inputPropsAndListeners,itemPropsAndListeners,menuPropsAndListeners,{getComboboxProps:function e(){return{role:"combobox","aria-haspopup":"listbox","aria-owns":this.computedMenuId,"aria-expanded":this.isOpen?"true":"false"}},getLabelProps:function e(){return{id:this.computedLabelId,for:this.computedInputId}},autocompleteText:function e(n){this.setInputValue(this.itemToString(n))},reset:function e(){this.setState({selectedItem:null,inputValue:""},FunctionReset)},select:function e(n){this.setState({inputValue:this.itemToString(n),selectedItem:n,isOpen:!1,hoveredIndex:-1,hovered:null},FunctionSelectItem)},setHoveredItem:function e(n,t,o){n&&n!==this.hovered&&this.$emit("hover",n,o),this.hovered=n,this.hoveredIndex=typeof t=="number"?t:-1},closeMenu:function e(){this.setState({isOpen:!1,hoveredIndex:-1,hovered:null},FunctionCloseMenu)},openMenu:function e(){this.setState({isOpen:!0},FunctionOpenMenu)},getItemNodeFromIndex:function e(n){return this.menuElement.querySelector("#"+this.getItemId(n))},scrollItemIntoView:function e(n){var t=this.getItemNodeFromIndex(n);scrollToElement(t,this.menuElement,n)},moveSelection:function e(n){var t=this,o=this.items.length;if(!(!this.isOpen||!o)){var r=hasKeyCode(controls.arrowDownKey,n),a=hasKeyCode(controls.arrowUpKey,n);if(r||a){n.preventDefault();var s=r*2-1,i=r?0:o-1,l=r?this.hoveredIndex<o-1:this.hoveredIndex>0,u=l?this.hoveredIndex+s:i,c=getNextNonDisabledIndex(s,u,o,this.getItemNodeFromIndex,this.circular);if(!this.circular&&(a&&c>this.hoveredIndex||r&&c<this.hoveredIndex))return;var d=this.items[c];this.scrollIntoView&&this.$nextTick(function(){t.scrollItemIntoView(u)}),this.setState({hoveredIndex:c,hovered:d},r?InputKeyDownArrowDown:InputKeyDownArrowUp)}}},setInputValue:function e(n){this.inputValue!==n&&this.setState({inputValue:n},FunctionSetInputValue)}});function slot(e){return{getInputProps:e.getInputProps,getItemProps:e.getItemProps,getMenuProps:e.getMenuProps,getComboboxProps:e.getComboboxProps,getLabelProps:e.getLabelProps,getInputEventListeners:e.getInputEventListeners,getMenuEventListeners:e.getMenuEventListeners,getItemEventListeners:e.getItemEventListeners,isOpen:e.isOpen,selectedItem:e.selectedItem,hoveredIndex:e.hoveredIndex,inputValue:e.inputValue,reset:e.reset,select:e.select,setInputValue:e.setInputValue,openMenu:e.openMenu,closeMenu:e.closeMenu}}var idCounter=0;function beforeCreate(){this.idCounter=idCounter.toString(),idCounter+=1}var isVue3=!!vue.defineComponent;!isVue3&&define_process_env_default$1.NODE_ENV!=="production"&&console.error(`Looks like your Vue version is 2.x, but you are using VueComboBlocks for Vue 3.
|
|
154
|
+
Install the correct version for Vue 2.x: "npm i vue-combo-blocks@vue2"`);var VueComboBlocks=vue.defineComponent({name:"vue-combo-blocks",emits:{select:null,"update:modelValue":null,"input-value-change":null,"is-open-change":null,"hovered-index-change":null,"state-change":null,change:null,"show-list":null,focus:null,hover:null},props:getProps(isVue3),watch:{modelValue:function e(n){isControlledProp(this.$props,"modelValue")&&(this.inputValue=this.itemToString(n),this.selectedItem=n)}},beforeCreate,data:function e(){return getInitialData(this.modelValue,this.itemToString)},computed:Object.assign({},computed),methods:Object.assign({},{setState:function e(n,t){var o=this.$data,r=this.stateReducer(o,{changes:n,type:t}),a=hasOwnProperty(r,"selectedItem"),s=r.selectedItem!==o.selectedItem;a&&(this.$emit("select",r.selectedItem,t),s&&this.$emit("update:modelValue",r.selectedItem,t));var i={};for(var l in r)hasOwnProperty(r,l)&&o[l]!==r[l]&&(i[l]=r[l],this[l]=i[l],l==="inputValue"?this.$emit("input-value-change",r[l],t):l==="isOpen"?this.$emit("is-open-change",r[l],t):l==="hoveredIndex"&&this.$emit("hovered-index-change",r[l],t));this.$emit("state-change",i,t)}},methods),render:function e(){return this.$slots.default(slot(this))}});VueComboBlocks.stateChangeTypes=sct;const _hoisted_1$r={"data-test":"vs-autocomplete",class:"vs-autocomplete mb-100"},_hoisted_2$l=["for"],_hoisted_3$e=["placeholder","onClick"],_hoisted_4$c=["name"],_sfc_main$B=vue.defineComponent({__name:"Autocomplete",props:{id:{},label:{},mode:{},multiselectLabel:{},name:{},options:{},placeholder:{},trackBy:{},isTourLocation:{type:Boolean},defaultVal:{}},emits:["changeValue"],setup(e,{emit:n}){const t=e,o=n,r=vue.ref([]),a=vue.ref(t.options),s=v=>v?v[u.value]:"",i=v=>{a.value=t.options.filter(m=>m[u.value].toLowerCase().includes(v.toLowerCase()))},l=v=>{typeof t.trackBy<"u"?o("changeValue",v[t.trackBy]):o("changeValue",v.label)},u=vue.computed(()=>typeof t.multiselectLabel<"u"?t.multiselectLabel:"name"),c=vue.computed(()=>{if(typeof r.value=="string"){if(t.isTourLocation){const v=t.options.find(m=>m.name===r.value);if(typeof v<"u")return v.slug.trim()}return r.value.trim()}else if(typeof r.value=="object"&&Object.keys(r.value).length>0)return s(r.value).trim()}),d=vue.computed(()=>!!(c.value&&c.value.length>0));return vue.watch(()=>r.value,()=>{r.value===null&&(r.value=[])}),vue.onMounted(()=>{typeof t.defaultVal<"u"&&(r.value=t.defaultVal)}),(v,m)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$r,[vue.createElementVNode("label",{for:e.id},vue.toDisplayString(e.label),9,_hoisted_2$l),vue.createVNode(vue.unref(VueComboBlocks),{"input-id":e.id,modelValue:r.value,"onUpdate:modelValue":m[0]||(m[0]=f=>r.value=f),itemToString:s,items:a.value,onInputValueChange:i,onSelect:l},{default:vue.withCtx(({getInputProps:f,getInputEventListeners:p,hoveredIndex:g,isOpen:_,getMenuProps:h,getMenuEventListeners:b,getItemProps:V,getItemEventListeners:S,getComboboxProps:$,openMenu:w})=>[vue.createElementVNode("div",vue.mergeProps($(),{class:"vs-autocomplete__list-wrapper"}),[vue.createElementVNode("input",vue.mergeProps({class:"vs-input form-control"},f(),vue.toHandlers(p(),!0),{placeholder:e.placeholder,onClick:k=>w()}),null,16,_hoisted_3$e),vue.createVNode(LoadingSpinner.VsIcon,{icon:"vs-icon-control-expand",variant:"cta",size:"sm"}),vue.withDirectives(vue.createElementVNode("ul",vue.mergeProps(h(),vue.toHandlers(b(),!0),{class:"vs-autocomplete__list"}),[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(a.value,(k,P)=>(vue.openBlock(),vue.createElementBlock("li",vue.mergeProps({key:k.id},{ref_for:!0},V({item:k,index:P}),vue.toHandlers(S({item:k,index:P}),!0),{class:["vs-autocomplete__list-item",{"vs-autocomplete__list-item--hover":g===P}]}),vue.toDisplayString(k[u.value]),17))),128))],16),[[vue.vShow,_]])],16)]),_:1},8,["input-id","modelValue","items"]),d.value?vue.withDirectives((vue.openBlock(),vue.createElementBlock("input",{key:0,type:"hidden",name:e.name,"onUpdate:modelValue":m[1]||(m[1]=f=>c.value=f)},null,8,_hoisted_4$c)),[[vue.vModelText,c.value]]):vue.createCommentVNode("",!0)]))}}),_hoisted_1$q={class:"vs-date-input","data-test":"vs-date-input"},_hoisted_2$k=["for"],_hoisted_3$d=["min","name","id"],_sfc_main$A=vue.defineComponent({__name:"DateInput",props:{label:{},id:{},name:{},value:{},minDate:{}},emits:["changeDate"],setup(e,{emit:n}){const t=e,o=n,r=vue.ref(t.value),a=vue.computed(()=>new Date().toISOString().split("T")[0]);return vue.watch(()=>t.value,s=>{r.value=s,o("changeDate",r.value)}),(s,i)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$q,[vue.createElementVNode("label",{for:e.id},vue.toDisplayString(e.label),9,_hoisted_2$k),vue.withDirectives(vue.createElementVNode("input",{type:"date",min:typeof e.minDate<"u"&&e.minDate.length>0?e.minDate:a.value,name:e.name,id:e.id,"onUpdate:modelValue":i[0]||(i[0]=l=>r.value=l),onChange:i[1]||(i[1]=l=>s.$emit("changeDate",r.value)),class:"form-control vs-input"},null,40,_hoisted_3$d),[[vue.vModelText,r.value]])]))}}),_hoisted_1$p={class:"vs-date-range","data-test":"vs-date-range"},_hoisted_2$j={class:"row align-items-center"},_hoisted_3$c={class:"col-12 col-sm-5 order-1"},_hoisted_4$b={class:"col-12 col-sm-5 order-2"},_hoisted_5$b={class:"col-12 col-sm-2 order-first order-sm-3 text-sm-right"},_hoisted_6$b={key:1,type:"hidden",name:"refine-date",value:"on"},_hoisted_7$9=["value"],_sfc_main$z=vue.defineComponent({__name:"DateRange",props:{startLabel:{type:String,required:!1,default:"Start Date"},endLabel:{type:String,required:!1,default:"End Date"},defaultDates:{type:Boolean,default:!1},selectedProd:{type:String,required:!0}},emits:["dateUpdated"],setup(e,{emit:n}){const t=e,o=n,r=vue.ref(""),a=vue.ref(""),s=vue.computed(()=>!!r.value||!!a.value),i=vue.computed(()=>{const h=new Date(a.value),b=new Date(r.value),V=h.getTime()-b.getTime();return isNaN(V)?1:V/(1e3*3600*24)});function l(){r.value="",a.value=""}const u=h=>{const b=h.toLocaleString("default",{year:"numeric"}),V=h.toLocaleString("default",{month:"2-digit"}),S=h.toLocaleString("default",{day:"2-digit"});return`${b}-${V}-${S}`},c=vue.computed(()=>r.value===""?u(new Date):""),d=vue.computed(()=>{let h;if(r.value!==""){const b=new Date(r.value);b.setDate(b.getDate()+1),h=u(b)}else if(t.defaultDates){const b=new Date,V=new Date(b);V.setDate(V.getDate()+1),h=u(V)}return h}),v=vue.computed(()=>{let h;if(r.value===""){const b=new Date,V=new Date(b);V.setDate(V.getDate()+1),h=u(V)}else{const b=new Date,V=new Date(r.value);b.setDate(V.getDate()+1),h=u(b)}return h});function m(){const h=new Date(r.value);new Date(a.value)<=h&&(a.value="")}function f(){const h=!(!r.value&&!a.value);o("dateUpdated",h)}function p(){f(),m()}const g=vue.computed(()=>t.selectedProd==="acco"?"stay":"isostartdate"),_=vue.computed(()=>t.selectedProd==="acco"?"endDate":"isoenddate");return(h,b)=>(vue.openBlock(),vue.createElementBlock("fieldset",_hoisted_1$p,[vue.createElementVNode("div",_hoisted_2$j,[vue.createElementVNode("div",_hoisted_3$c,[vue.createVNode(_sfc_main$A,{label:e.startLabel,value:e.defaultDates&&r.value===""&&a.value?c.value:r.value,name:g.value,id:"startDate",onChangeDate:b[0]||(b[0]=V=>{r.value=V,p()}),class:"mb-100"},null,8,["label","value","name"])]),vue.createElementVNode("div",_hoisted_4$b,[vue.createVNode(_sfc_main$A,{label:e.endLabel,value:e.defaultDates&&a.value===""&&r.value?d.value:a.value,"min-date":v.value,name:_.value,id:"endDate",onChangeDate:b[1]||(b[1]=V=>{a.value=V,p()}),class:"mb-100"},null,8,["label","value","min-date","name"])]),vue.createElementVNode("div",_hoisted_5$b,[s.value?(vue.openBlock(),vue.createElementBlock("button",{key:0,id:"clearDateRange",type:"button",onClick:l,class:"vs-date-range__clear"},vue.toDisplayString(vue.unref(getLabelText)("reset","Clear")),1)):vue.createCommentVNode("",!0),e.selectedProd!=="acco"?(vue.openBlock(),vue.createElementBlock("input",_hoisted_6$b)):vue.createCommentVNode("",!0),vue.createElementVNode("input",{type:"hidden",name:"nights",value:i.value},null,8,_hoisted_7$9)])])]))}}),_hoisted_1$o={class:"vs-product-search-embed","data-test":"vs-product-search-embed"},_hoisted_2$i={key:0,class:"container"},_hoisted_3$b={class:"row"},_hoisted_4$a={class:"col-12"},_hoisted_5$a=["action"],_hoisted_6$a={class:"form-group product-search__type mb-100"},_hoisted_7$8={for:"prodtypes"},_hoisted_8$4={class:"product-search__in d-none d-md-block mt-100"},_hoisted_9$4={"aria-live":"polite"},_hoisted_10$4=["disabled","value"],_hoisted_11$3=["disabled","value"],_hoisted_12$2=["value"],_hoisted_13$2={key:4,type:"hidden",name:"areaproxdist",value:"10"},_hoisted_14$1={key:5},_hoisted_15$1={key:0,class:"form-group"},_hoisted_16$1={for:"search-keyword"},_hoisted_17$1={key:6},_hoisted_18={key:0},_hoisted_19=["value"],__default__=vue.defineComponent({mixins:[LoadingSpinner.dataLayerMixin],methods:{trackSubmit(e,n){this.createDataLayerObject("productSearchDataEvent",{searchType:e,searchLocation:n.name},this.href)}}}),_sfc_main$y=vue.defineComponent({...__default__,__name:"ProductSearchEmbed",props:{defaultProd:{type:String,default:"acti,attr,reta",validator(e){return["acco","cate","even","tour","acti,attr,reta"].includes(e)}},defaultLocale:{type:String,default:"",validator(e){return["en","fr","de","es","it","nl",""].includes(e)}},defaultLocation:{type:String,default:""}},setup(e){const n=e,t=vue.ref(!1),o=vue.ref(),r=vue.ref([]);vue.ref(null);let a=vue.ref();a.value={id:"",key:"",name:"",type:""};const s=vue.ref("off"),i=vue.ref(!1),l=vue.computed(()=>{const C=typeof o.value>"u"?"see-do":o.value;return`/info/${LoadingSpinner.paths[C]}`});let u=vue.ref(!1);const c={en:{localeUrl:""},fr:{localeUrl:"fr-fr"},de:{localeUrl:"de-de"},es:{localeUrl:"es-es"},it:{localeUrl:"it-it"},nl:{localeUrl:"nl-nl"}},d=vue.computed(()=>{let C=n.defaultLocale.length>0?n.defaultLocale:getLocale();return C==="en"&&(C=""),C}),v=vue.computed(()=>{if(typeof window<"u"){let C=window.location.origin;return C.includes("localhost")?"https://www.visitscotland.com":C}return"https://www.visitscotland.com"}),m=vue.computed(()=>`${v.value}${d.value?"/"+d.value:""}${l.value}/search-results`),p="https://www.visitscotland.com/data/locations"+`?locale=${d.value}`,g=vue.ref([]),_="https://www.visitscotland.com/tms-api/v1/attractions",h=vue.ref([]),b="https://www.visitscotland.com/tms-api/v1/origins?active=1",V=vue.ref([]),S=vue.ref([]),$=()=>{const C=getProductTypes(),D=[];C.forEach(R=>{D.push(R)}),S.value=D},w=vue.computed(()=>t.value?[]:S.value.map(D=>({...D,text:getProductName(D.value,D.text)}))),k=async()=>{const C=await getData(p);C&&(g.value=C.data)},P=async()=>{const C=await getData(b);C&&(V.value=C.data)},O=async()=>{const C=await getData(_);C&&(h.value=C.data)},B=(C,D)=>{D==="key"?a.value=g.value.find(R=>R.key===C):D==="id"?a.value=g.value.find(R=>R.id===C):a.value=g.value.find(R=>R.name===C.trim())},T=C=>{const D=C.value;o.value=D,D==="tour"&&(P(),O())},L=()=>c[n.defaultLocale]||"",E=()=>{t.value=!0,vue.nextTick(()=>{t.value=!1,n.defaultLocation!==""&&u&&B(n.defaultLocation,"id")})},z=vue.computed(()=>o.value!=="cate"&&o.value!=="acti,attr,reta"?"d-lg-flex":"");vue.onBeforeMount(async()=>{window.VS={};const C=document.createElement("script");C.async=!1,C.onload=E,C.setAttribute("src",`https://www.visitscotland.com/${L().localeUrl}/data/template/search.js`),document.head.appendChild(C)}),vue.onMounted(async()=>{k(),u.value=!0,o.value=n.defaultProd,o.value==="tour"&&(P(),O()),$()});const F=C=>{s.value=C?"on":"off"},A=C=>{i.value=!0;const D=C.currentTarget;setTimeout(function(){D.submit()},500)};return(C,D)=>{var R,G,U,Y,X,W;return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$o,[t.value?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$i,[vue.createElementVNode("div",_hoisted_3$b,[vue.createElementVNode("div",_hoisted_4$a,[vue.unref(u)?(vue.openBlock(),vue.createElementBlock("form",{key:0,action:m.value,onSubmit:vue.withModifiers(A,["prevent"]),"accept-charset":"UTF-8","data-test":"psw-form"},[vue.createElementVNode("div",_hoisted_6$a,[vue.createElementVNode("label",_hoisted_7$8,vue.toDisplayString(vue.unref(getLabelText)("search_for","I'm looking for")),1),vue.createElementVNode("div",{class:vue.normalizeClass(z.value)},[vue.createVNode(VsSelect,{options:w.value,value:e.defaultProd,onUpdated:D[0]||(D[0]=Z=>T(Z)),"field-name":"prodtypes"},null,8,["options","value"]),vue.createElementVNode("div",_hoisted_8$4,vue.toDisplayString(vue.unref(getLabelText)("in","in")),1)],2)]),vue.createElementVNode("div",_hoisted_9$4,[o.value!="tour"&&vue.unref(u)?(vue.openBlock(),vue.createBlock(_sfc_main$B,{key:0,id:"search-location",label:vue.unref(getLabelText)("location","Location"),"multiselect-label":"name",name:"loc",options:g.value,placeholder:vue.unref(getLabelText)("location_placeholder","Enter a location"),"track-by":"name",onChangeValue:D[1]||(D[1]=Z=>B(Z)),"default-val":vue.unref(a),"data-chromatic":"ignore"},null,8,["label","options","placeholder","default-val"])):vue.createCommentVNode("",!0),o.value!=="tour"?(vue.openBlock(),vue.createElementBlock("input",{key:1,type:"hidden",name:"locplace",disabled:((R=vue.unref(a))==null?void 0:R.type)==="POLYGON",value:((G=vue.unref(a))==null?void 0:G.key)||""},null,8,_hoisted_10$4)):vue.createCommentVNode("",!0),o.value!=="tour"?(vue.openBlock(),vue.createElementBlock("input",{key:2,type:"hidden",name:"locpoly",disabled:((U=vue.unref(a))==null?void 0:U.type)!=="POLYGON",value:((Y=vue.unref(a))==null?void 0:Y.key)||""},null,8,_hoisted_11$3)):vue.createCommentVNode("",!0),o.value!=="tour"?(vue.openBlock(),vue.createElementBlock("input",{key:3,type:"hidden",name:"locprox",value:((X=vue.unref(a))==null?void 0:X.type)==="DISTRICT"?1:0},null,8,_hoisted_12$2)):vue.createCommentVNode("",!0),o.value!=="tour"&&((W=vue.unref(a))==null?void 0:W.type)==="DISTRICT"?(vue.openBlock(),vue.createElementBlock("input",_hoisted_13$2)):vue.createCommentVNode("",!0),o.value==="even"?(vue.openBlock(),vue.createElementBlock("div",_hoisted_14$1,[vue.createVNode(_sfc_main$z,{"start-label":vue.unref(getLabelText)("startdate","Start Date","dates"),"end-label":vue.unref(getLabelText)("enddate","End Date","dates"),onDateUpdated:D[2]||(D[2]=Z=>F(Z)),"default-dates":i.value,"selected-prod":o.value},null,8,["start-label","end-label","default-dates","selected-prod"]),o.value==="even"?(vue.openBlock(),vue.createElementBlock("div",_hoisted_15$1,[vue.createElementVNode("label",_hoisted_16$1,vue.toDisplayString(vue.unref(getLabelText)("keywords","Keywords")),1),vue.createVNode(VsInput,{"field-name":"search-keyword",placeholder:vue.unref(getLabelText)("events_keywords_placeholder","Highland games, music festivals etc"),name:"name"},null,8,["placeholder"])])):vue.createCommentVNode("",!0)])):vue.createCommentVNode("",!0),o.value==="acco"?(vue.openBlock(),vue.createElementBlock("div",_hoisted_17$1,[...D[4]||(D[4]=[vue.createElementVNode("input",{hidden:"true",name:"avail",value:"off"},null,-1)])])):vue.createCommentVNode("",!0)]),o.value==="tour"?(vue.openBlock(),vue.createElementBlock("div",_hoisted_18,[vue.createVNode(_sfc_main$B,{id:"tour-origin",label:vue.unref(getLabelText)("tour_origin","Starting point"),"multiselect-label":"name",name:"origins[]",options:V.value,placeholder:vue.unref(getLabelText)("tour_origin_placeholder","Location"),"track-by":"name","is-tour-location":!0},null,8,["label","options","placeholder"]),(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(r.value,Z=>(vue.openBlock(),vue.createElementBlock("input",{type:"hidden",name:"attractions[]",value:Z},null,8,_hoisted_19))),256)),vue.createVNode(_sfc_main$B,{id:"tour-month",label:vue.unref(getLabelText)("tour_month","I'm traveling in"),"multiselect-label":"label",name:"when",options:vue.unref(getLabelText)("months",vue.unref(LoadingSpinner.monthsEnglish)),placeholder:vue.unref(getLabelText)("tour_month_placeholder","Select month"),"track-by":"value"},null,8,["label","options","placeholder"])])):vue.createCommentVNode("",!0),vue.createVNode(LoadingSpinner.VsButton,{class:"mt-150","data-test":"psw-submit",type:"submit",onClick:D[3]||(D[3]=Z=>C.trackSubmit(o.value,typeof vue.unref(a)>"u"?"":vue.unref(a)))},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(vue.unref(getLabelText)("search","Search")),1)]),_:1})],40,_hoisted_5$a)):vue.createCommentVNode("",!0),vue.unref(u)?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createBlock(LoadingSpinner.VsLoading,{key:1,variant:"dark"}))])])]))])}}}),_sfc_main$x={name:"VsProductSearch",status:"prototype",release:"0.0.1",components:{VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,VsProductSearchEmbed:_sfc_main$y,VsHeading:LoadingSpinner.VsHeading,VsWarning:LoadingSpinner.VsWarning},props:{noJsMessage:{type:String,required:!0},defaultLocation:{type:String,default:""},defaultProd:{type:String,default:"acti,attr,reta"},defaultLocale:{type:String,default:"en"}}},_hoisted_1$n={class:"vs-product-search","data-test":"vs-product-search"},_hoisted_2$h={class:"vs-product-search__intro"};function _sfc_render$n(e,n,t,o,r,a){const s=vue.resolveComponent("VsHeading"),i=vue.resolveComponent("VsCol"),l=vue.resolveComponent("VsProductSearchEmbed"),u=vue.resolveComponent("VsWarning"),c=vue.resolveComponent("VsRow"),d=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$n,[vue.createVNode(d,null,{default:vue.withCtx(()=>[vue.createVNode(c,null,{default:vue.withCtx(()=>[vue.createVNode(i,{class:"vs-product-search__col vs-product-search__col--left",xl:"7"},{default:vue.withCtx(()=>[vue.createVNode(s,{level:"2",headingStyle:"heading-l",class:"vs-product-search__heading mt-0"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"vs-module-heading")]),_:3}),vue.createElementVNode("div",_hoisted_2$h,[vue.renderSlot(e.$slots,"vs-module-intro")])]),_:3}),vue.createVNode(i,{class:"vs-product-search__col vs-product-search__col--right",xl:"5"},{default:vue.withCtx(()=>[vue.createVNode(l,{class:"vs-product-search__widget","default-location":t.defaultLocation,"default-locale":t.defaultLocale,"default-prod":t.defaultProd},null,8,["default-location","default-locale","default-prod"]),vue.createVNode(u,{class:"vs-product-search__no-js"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.noJsMessage),1)]),_:1})]),_:1})]),_:3})]),_:3})])}const ProductSearch=LoadingSpinner._export_sfc(_sfc_main$x,[["render",_sfc_render$n]]),_sfc_main$w={name:"VsQuote",status:"prototype",release:"0.0.1",props:{variant:{type:String,default:"narrow",validator:e=>e.match(/(narrow|wide)/)},withBorder:{type:Boolean,default:!1}},computed:{hasAuthorName(){return!!this.$slots["quote-author-name"]},hasAuthorTitle(){return!!this.$slots["quote-author-title"]},hasAuthorImage(){return!!this.$slots["quote-image"]},variantClass(){return[{"vs-quote--narrow":this.variant==="narrow","vs-quote--wide":this.variant==="wide","vs-quote--with-border":this.withBorder}]}}},_hoisted_1$m={key:0,class:"vs-quote__speech-container"},_hoisted_2$g={key:1,class:"vs-quote__author-container"},_hoisted_3$a={class:"vs-quote__content-container"},_hoisted_4$9={class:"vs-quote__content"},_hoisted_5$9={key:0,class:"vs-quote__author-name"},_hoisted_6$9={key:2,class:"vs-quote__quote-link"};function _sfc_render$m(e,n,t,o,r,a){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-quote",a.variantClass]),"data-test":"vs-quote"},[t.withBorder?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$m,[...n[0]||(n[0]=[vue.createElementVNode("span",{class:"vs-quote__speech-mark"},"“",-1)])])),a.hasAuthorImage?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$g,[vue.renderSlot(e.$slots,"quote-image")])):vue.createCommentVNode("",!0),vue.createElementVNode("div",_hoisted_3$a,[vue.createElementVNode("div",_hoisted_4$9,[vue.renderSlot(e.$slots,"quote-content")]),a.hasAuthorName?(vue.openBlock(),vue.createElementBlock("p",_hoisted_5$9,[vue.renderSlot(e.$slots,"quote-author-name")])):vue.createCommentVNode("",!0),a.hasAuthorTitle?(vue.openBlock(),vue.createElementBlock("p",{key:1,class:vue.normalizeClass(["vs-quote__author-title",t.variant==="narrow"?"vs-quote__author-title--narrow-margin":null])},[vue.renderSlot(e.$slots,"quote-author-title")],2)):vue.createCommentVNode("",!0),e.$slots["quote-link"]?(vue.openBlock(),vue.createElementBlock("div",_hoisted_6$9,[vue.renderSlot(e.$slots,"quote-link",{if:"$slots['quote-link']"})])):vue.createCommentVNode("",!0)])],2)}const Quote=LoadingSpinner._export_sfc(_sfc_main$w,[["render",_sfc_render$m]]),_sfc_main$v={name:"VsSectionHeader",status:"prototype",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading,VsBody:LoadingSpinner.VsBody,VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol},props:{anchorId:{type:String,default:null},heading:{type:String,required:!0}}},_hoisted_1$l={class:"vs-section-header","data-test":"vs-section-header"},_hoisted_2$f={key:1,class:"mt-175","data-test":"vs-section-header__actions"};function _sfc_render$l(e,n,t,o,r,a){const s=vue.resolveComponent("VsCol"),i=vue.resolveComponent("VsRow"),l=vue.resolveComponent("VsHeading"),u=vue.resolveComponent("VsBody"),c=vue.resolveComponent("VsContainer");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$l,[vue.createVNode(c,null,{default:vue.withCtx(()=>[vue.createVNode(i,null,{default:vue.withCtx(()=>[vue.createVNode(s,null,{default:vue.withCtx(()=>[...n[0]||(n[0]=[vue.createElementVNode("span",{class:"vs-section-header__divider"},null,-1)])]),_:1})]),_:1}),vue.createVNode(i,null,{default:vue.withCtx(()=>[vue.createVNode(s,{cols:"12",sm:"7",md:"6",lg:"4"},{default:vue.withCtx(()=>[vue.createVNode(l,{level:"2","heading-style":"heading-l","no-margins":"",class:"mb-175 mb-lg-0",id:t.anchorId},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.heading),1)]),_:1},8,["id"])]),_:1}),vue.createVNode(s,{cols:"12",sm:"10",md:"9",lg:"8"},{default:vue.withCtx(()=>[e.$slots["section-header-lede"]?(vue.openBlock(),vue.createBlock(u,{key:0,variant:"lead"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"section-header-lede")]),_:3})):vue.createCommentVNode("",!0),e.$slots["section-header-actions"]?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$f,[vue.renderSlot(e.$slots,"section-header-actions")])):vue.createCommentVNode("",!0)]),_:3})]),_:3})]),_:3})])}const SectionHeader=LoadingSpinner._export_sfc(_sfc_main$v,[["render",_sfc_render$l]]),_sfc_main$u={name:"VsTable",status:"prototype",release:"0.0.1",components:{BTableSimple:LoadingSpinner.ol},props:{tableCaption:{type:String,required:!0},tableType:{type:String,default:"responsive",validator:e=>e.match(/(responsive|stacked)/)}},computed:{responsive(){return this.tableType==="responsive"},stacked(){return this.tableType==="stacked"}}},_hoisted_1$k={class:"visually-hidden","data-test":"vs-table__caption"};function _sfc_render$k(e,n,t,o,r,a){const s=vue.resolveComponent("BTableSimple");return vue.openBlock(),vue.createBlock(s,{class:"vs-table","data-test":"vs-table",small:"","caption-top":"",responsive:a.responsive,stacked:a.stacked},{default:vue.withCtx(()=>[vue.createElementVNode("caption",_hoisted_1$k,vue.toDisplayString(t.tableCaption),1),vue.renderSlot(e.$slots,"default")]),_:3},8,["responsive","stacked"])}const VsTable=LoadingSpinner._export_sfc(_sfc_main$u,[["render",_sfc_render$k]]),_sfc_main$t={name:"VsTableHead",status:"prototype",release:"0.0.1",components:{BThead:LoadingSpinner.wn}};function _sfc_render$j(e,n,t,o,r,a){const s=vue.resolveComponent("BThead");return vue.openBlock(),vue.createBlock(s,vue.normalizeProps(vue.guardReactiveProps(e.$attrs)),{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},16)}const VsTableHead=LoadingSpinner._export_sfc(_sfc_main$t,[["render",_sfc_render$j]]),_sfc_main$s={name:"VsTableHeaderCell",status:"prototype",release:"0.0.1",components:{BTh:LoadingSpinner.Ea},props:{stackedHeading:{type:String,default:void 0}}};function _sfc_render$i(e,n,t,o,r,a){const s=vue.resolveComponent("BTh");return vue.openBlock(),vue.createBlock(s,vue.mergeProps({"data-test":"vs-table-header-cell","stacked-heading":t.stackedHeading},e.$attrs),{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},16,["stacked-heading"])}const VsTableHeaderCell=LoadingSpinner._export_sfc(_sfc_main$s,[["render",_sfc_render$i]]),_sfc_main$r={name:"VsTableBody",status:"prototype",release:"0.0.1",components:{BTbody:LoadingSpinner.Bn}};function _sfc_render$h(e,n,t,o,r,a){const s=vue.resolveComponent("BTbody");return vue.openBlock(),vue.createBlock(s,vue.normalizeProps(vue.guardReactiveProps(e.$attrs)),{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},16)}const VsTableBody=LoadingSpinner._export_sfc(_sfc_main$r,[["render",_sfc_render$h]]),_sfc_main$q={name:"VsTableRow",status:"prototype",release:"0.0.1",components:{BTr:LoadingSpinner.Je}};function _sfc_render$g(e,n,t,o,r,a){const s=vue.resolveComponent("BTr");return vue.openBlock(),vue.createBlock(s,vue.normalizeProps(vue.guardReactiveProps(e.$attrs)),{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},16)}const VsTableRow=LoadingSpinner._export_sfc(_sfc_main$q,[["render",_sfc_render$g]]),_sfc_main$p={name:"VsTableDataCell",status:"prototype",release:"0.0.1",components:{BTd:LoadingSpinner.St},props:{stackedHeading:{type:String,default:null}}};function _sfc_render$f(e,n,t,o,r,a){const s=vue.resolveComponent("BTd");return vue.openBlock(),vue.createBlock(s,vue.mergeProps({"data-test":"vs-table-data-cell","stacked-heading":t.stackedHeading},e.$attrs,{scope:null}),{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},16,["stacked-heading"])}const VsTableDataCell=LoadingSpinner._export_sfc(_sfc_main$p,[["render",_sfc_render$f]]),_sfc_main$o={name:"VsTableFooter",status:"prototype",release:"0.0.1",components:{BTfoot:LoadingSpinner.Pa}};function _sfc_render$e(e,n,t,o,r,a){const s=vue.resolveComponent("BTfoot");return vue.openBlock(),vue.createBlock(s,vue.mergeProps(e.$attrs,{role:"rowgroup"}),{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},16)}const VsTableFooter=LoadingSpinner._export_sfc(_sfc_main$o,[["render",_sfc_render$e]]),_sfc_main$n={name:"VsSkiScotlandCard",status:"prototype",release:"0.0.1",components:{VsImg:LoadingSpinner.VsImg,VsHeading:LoadingSpinner.VsHeading,VsIcon:LoadingSpinner.VsIcon,VsWarning:LoadingSpinner.VsWarning,VsLoadingSpinner:LoadingSpinner.VsLoading,VsButton:LoadingSpinner.VsButton,VsTable,VsTableHead,VsTableHeaderCell,VsTableBody,VsTableRow,VsTableDataCell,VsTableFooter},props:{centreInfoUrl:{type:String,default:""},locale:{type:String,default:"en-gb"},timeoutDuration:{type:Number,default:3e4},lastUpdatedLabel:{type:String,default:"Last Updated"},liftsLabel:{type:String,default:"Lifts"},runsLabel:{type:String,default:"Runs"},runsLiftsStatusLabel:{type:String,default:"Run/Lift Status"},statusLabel:{type:String,default:"Status"},summaryClosedLabel:{type:String,default:"Closed"},summaryOpenLabel:{type:String,default:"Open"},summaryOpeningLabel:{type:String,default:"Opening"},summaryLimitedPatrolLabel:{type:String,default:"Limited Patrol"},summaryOnHoldLabel:{type:String,default:"On Hold"},imgSrc:{required:!0,type:String},imgAlt:{type:String,default:""},pisteMapLabel:{type:String,default:"View Piste Map"},moreDetailsLabel:{type:String,default:"More Details"},pisteMapLink:{type:String,default:""},moreDetailsLink:{type:String,required:!0,default:"#"}},data(){return{statusSummary:{runs:{open:0,opening:0,closed:0,onHold:0,limitedPatrol:0},lifts:{open:0,opening:0,closed:0,onHold:0,limitedPatrol:0}},runs:[],lifts:[],lastUpdate:"",jsDisabled:!0,isLoading:!0,displayError:!1}},mounted(){this.centreInfoUrl&&this.retrieveCentreInfo(),this.jsDisabled=!1},methods:{retrieveCentreInfo(){const e=setTimeout(()=>{this.displayError=!0},this.timeoutDuration);LoadingSpinner.axios.get(this.centreInfoUrl).then(n=>{const t=this.cleanData(n.data);this.processLifts(t.lifts),t.runs&&this.processRuns(t.runs),this.processLastUpdate(t.lastUpdate),this.isLoading=!1,clearTimeout(e)}).catch(()=>{this.runStatusInfo=null,this.displayError=!0,this.isLoading=!1,clearTimeout(e)})},cleanData(e){const n={contact:e.contact,report:e.report};if(e.snowReport)n.lastUpdate=e.snowReport.lastupdate,n.lifts=e.lifts.sector.items,n.runs=e.runs.items,this.isCairngorms=!0;else if(n.lastUpdate=e.lastupdate,[n.lifts]=e.lift.sectors,n.lifts=n.lifts.lifts,e.run.areas){const t=e.run.areas.map(o=>o.runs).reduce((o,r)=>o.concat(r)).filter((o,r,a)=>r===a.findIndex(s=>s.name===o.name));n.runs=t}return n},processLastUpdate(e){const n=new Date(e.year,parseInt(e.month,10)-1,e.day),t={year:"numeric",month:"long",day:"numeric"},o=n.toLocaleDateString(this.locale,t);this.lastUpdate=`${e.hour24}:${e.minute} - ${o}`},processLifts(e){for(let n=0;n<e.length;n++)switch(e[n].status){case"4":case 4:this.statusSummary.lifts.onHold+=1;break;case"3":case 3:this.statusSummary.lifts.limitedPatrol+=1;break;case"2":case 2:this.statusSummary.lifts.opening+=1;break;case"1":case 1:this.statusSummary.lifts.open+=1;break;default:this.statusSummary.lifts.closed+=1;break}this.lifts=e},processRuns(e){for(let n=0;n<e.length;n++)switch(e[n].status){case"4":case 4:this.statusSummary.runs.onHold+=1;break;case"3":case 3:this.statusSummary.runs.limitedPatrol+=1;break;case"2":case 2:this.statusSummary.runs.opening+=1;break;case"1":case 1:this.statusSummary.runs.open+=1;break;default:this.statusSummary.runs.closed+=1;break}this.runs=e}}},_hoisted_1$j={class:"card vs-ski-scotland-card","data-test":"vs-ski-scotland-card"},_hoisted_2$e={class:"vs-ski-scotland-card__img-container"},_hoisted_3$9={class:"card-body"},_hoisted_4$8={key:0,class:"text-center pb-200 position-relative"},_hoisted_5$8={"data-test":"vs-ski__status-label"},_hoisted_6$8={"data-test":"vs-ski__runs-label"},_hoisted_7$7={"data-test":"vs-ski__lifts-label"},_hoisted_8$3={"data-test":"vs-ski__open-label"},_hoisted_9$3={"data-test":"vs-ski__limited-patrol-label"},_hoisted_10$3={"data-test":"vs-ski__opening-label"},_hoisted_11$2={"data-test":"vs-ski__closed-label"},_hoisted_12$1={"data-test":"vs-ski__on-hold-label"},_hoisted_13$1={"data-test":"vs-ski__last-updated-label"};function _sfc_render$d(e,n,t,o,r,a){const s=vue.resolveComponent("VsImg"),i=vue.resolveComponent("VsHeading"),l=vue.resolveComponent("VsLoadingSpinner"),u=vue.resolveComponent("VsWarning"),c=vue.resolveComponent("VsTableHeaderCell"),d=vue.resolveComponent("VsTableHead"),v=vue.resolveComponent("VsIcon"),m=vue.resolveComponent("VsTableDataCell"),f=vue.resolveComponent("VsTableRow"),p=vue.resolveComponent("VsTableBody"),g=vue.resolveComponent("VsTableFooter"),_=vue.resolveComponent("VsTable"),h=vue.resolveComponent("VsButton");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$j,[vue.createElementVNode("div",_hoisted_2$e,[t.imgSrc?(vue.openBlock(),vue.createBlock(s,{key:0,src:t.imgSrc,alt:t.imgAlt,class:"vs-ski-scotland-card__img","data-test":"vs-ski-scotland-card__img"},null,8,["src","alt"])):vue.createCommentVNode("",!0)]),vue.createElementVNode("div",_hoisted_3$9,[vue.createVNode(i,{level:"3","heading-style":"heading-m"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"centre-name")]),_:3}),r.jsDisabled||r.isLoading||r.displayError?(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$8,[!r.jsDisabled&&r.isLoading?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createVNode(l,{class:"mb-100 d-block"}),vue.renderSlot(e.$slots,"data-loading")],64)):vue.createCommentVNode("",!0),!r.jsDisabled&&r.displayError?(vue.openBlock(),vue.createBlock(u,{key:1,size:"small","data-test":"vs-ski-scotland-card__error"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"data-unavailable")]),_:3})):vue.createCommentVNode("",!0),r.jsDisabled?(vue.openBlock(),vue.createBlock(u,{key:2,size:"small","data-test":"vs-ski-scotland-card__js-disabled"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"js-required")]),_:3})):vue.createCommentVNode("",!0)])):vue.createCommentVNode("",!0),!r.jsDisabled&&!r.isLoading&&!r.displayError?(vue.openBlock(),vue.createBlock(_,{key:1,"table-caption":t.runsLiftsStatusLabel},{default:vue.withCtx(()=>[vue.createVNode(d,null,{default:vue.withCtx(()=>[vue.createVNode(c,null,{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_5$8,vue.toDisplayString(t.statusLabel),1)]),_:1}),r.runs.length?(vue.openBlock(),vue.createBlock(c,{key:0},{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_6$8,vue.toDisplayString(t.runsLabel),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(c,null,{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_7$7,vue.toDisplayString(t.liftsLabel),1)]),_:1})]),_:1}),vue.createVNode(p,null,{default:vue.withCtx(()=>[vue.createVNode(f,null,{default:vue.withCtx(()=>[vue.createVNode(m,null,{default:vue.withCtx(()=>[vue.createVNode(v,{icon:"fa-regular fa-check",size:"xs",class:"me-050 fa-fw"}),vue.createElementVNode("span",_hoisted_8$3,vue.toDisplayString(t.summaryOpenLabel),1)]),_:1}),r.runs.length?(vue.openBlock(),vue.createBlock(m,{key:0},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.statusSummary.runs.open)+"/"+vue.toDisplayString(r.runs.length),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(m,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.statusSummary.lifts.open)+"/"+vue.toDisplayString(r.lifts.length),1)]),_:1})]),_:1}),r.statusSummary.runs.limitedPatrol||r.statusSummary.lifts.limitedPatrol?(vue.openBlock(),vue.createBlock(f,{key:0},{default:vue.withCtx(()=>[vue.createVNode(m,null,{default:vue.withCtx(()=>[vue.createVNode(v,{icon:"fa-regular fa-ski-boot-ski",size:"xs",class:"me-050 fa-fw"}),vue.createElementVNode("span",_hoisted_9$3,vue.toDisplayString(t.summaryLimitedPatrolLabel),1)]),_:1}),r.runs.length?(vue.openBlock(),vue.createBlock(m,{key:0},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.statusSummary.runs.limitedPatrol)+"/"+vue.toDisplayString(r.runs.length),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(m,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.statusSummary.lifts.limitedPatrol)+"/"+vue.toDisplayString(r.lifts.length),1)]),_:1})]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(f,null,{default:vue.withCtx(()=>[vue.createVNode(m,null,{default:vue.withCtx(()=>[vue.createVNode(v,{icon:"fa-regular fa-timer",size:"xs",class:"me-050 fa-fw"}),vue.createElementVNode("span",_hoisted_10$3,vue.toDisplayString(t.summaryOpeningLabel),1)]),_:1}),r.runs.length?(vue.openBlock(),vue.createBlock(m,{key:0},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.statusSummary.runs.opening)+"/"+vue.toDisplayString(r.runs.length),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(m,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.statusSummary.lifts.opening)+"/"+vue.toDisplayString(r.lifts.length),1)]),_:1})]),_:1}),vue.createVNode(f,null,{default:vue.withCtx(()=>[vue.createVNode(m,null,{default:vue.withCtx(()=>[vue.createVNode(v,{icon:"fa-regular fa-ban",size:"xs",class:"me-050 fa-fw"}),vue.createElementVNode("span",_hoisted_11$2,vue.toDisplayString(t.summaryClosedLabel),1)]),_:1}),r.runs.length?(vue.openBlock(),vue.createBlock(m,{key:0},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.statusSummary.runs.closed)+"/"+vue.toDisplayString(r.runs.length),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(m,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.statusSummary.lifts.closed)+"/"+vue.toDisplayString(r.lifts.length),1)]),_:1})]),_:1}),r.statusSummary.runs.onHold||r.statusSummary.lifts.onHold?(vue.openBlock(),vue.createBlock(f,{key:1},{default:vue.withCtx(()=>[vue.createVNode(m,null,{default:vue.withCtx(()=>[vue.createVNode(v,{icon:"fa-regular fa-hourglass",size:"xs",class:"me-050 fa-fw"}),vue.createElementVNode("span",_hoisted_12$1,vue.toDisplayString(t.summaryOnHoldLabel),1)]),_:1}),r.runs.length?(vue.openBlock(),vue.createBlock(m,{key:0},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.statusSummary.runs.onHold)+"/"+vue.toDisplayString(r.runs.length),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(m,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.statusSummary.lifts.onHold)+"/"+vue.toDisplayString(r.lifts.length),1)]),_:1})]),_:1})):vue.createCommentVNode("",!0)]),_:1}),vue.createVNode(g,null,{default:vue.withCtx(()=>[vue.createVNode(f,null,{default:vue.withCtx(()=>[vue.createVNode(m,{colspan:"3",role:"cell"},{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_13$1,vue.toDisplayString(t.lastUpdatedLabel)+": "+vue.toDisplayString(r.lastUpdate),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["table-caption"])):vue.createCommentVNode("",!0),vue.createVNode(h,{variant:"secondary",href:t.pisteMapLink,class:"mb-050",disabled:!t.pisteMapLink},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.pisteMapLabel),1)]),_:1},8,["href","disabled"]),vue.createVNode(h,{href:t.moreDetailsLink},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.moreDetailsLabel),1)]),_:1},8,["href"])])])}const SkiScotlandCard=LoadingSpinner._export_sfc(_sfc_main$n,[["render",_sfc_render$d]]),_sfc_main$m={name:"VsSkiScotlandStatus",status:"prototype",release:"0.0.1",components:{VsTable,VsTableHead,VsTableHeaderCell,VsTableBody,VsTableRow,VsTableDataCell,VsTableFooter,VsContainer:LoadingSpinner.VsContainer,VsRow:LoadingSpinner.VsRow,VsCol:LoadingSpinner.VsCol,VsAccordion,VsAccordionItem,VsIcon:LoadingSpinner.VsIcon,VsLink,VsHeading:LoadingSpinner.VsHeading,VsLoadingSpinner:LoadingSpinner.VsLoading,VsWarning:LoadingSpinner.VsWarning},props:{skiStatusUrl:{type:String,default:""},locale:{type:String,default:"en-gb"},timeoutDuration:{type:Number,default:3e4},currentWeatherLabel:{type:String,default:"Current Weather"},detailedStatusLabel:{type:String,default:"Detailed Status"},difficultLabel:{type:String,default:"Difficult"},easyLabel:{type:String,default:"Easy"},intermediateLabel:{type:String,default:"Intermediate"},itinerariesLabel:{type:String,default:"Itineraries"},lastUpdatedLabel:{type:String,default:"Last Updated"},liftLabel:{type:String,default:"Lift"},liftsLabel:{type:String,default:"Lifts"},liftStatusLabel:{type:String,default:"Lift Status"},newsLabel:{type:String,default:"News From The Slopes"},otherLabel:{type:String,default:"Other"},roadsLabel:{type:String,default:"Road Status"},runLabel:{type:String,default:"Run"},runsLabel:{type:String,default:"Runs"},runsLiftsStatusLabel:{type:String,default:"Run/Lift Status"},runStatusLabel:{type:String,default:"Run Status"},snowConditionsLabel:{type:String,default:"Snow Conditions Full Report"},statusLabel:{type:String,default:"Status"},summaryClosedLabel:{type:String,default:"Closed"},summaryOpenLabel:{type:String,default:"Open"},summaryOpeningLabel:{type:String,default:"Opening"},summaryLimitedPatrolLabel:{type:String,default:"Limited Patrol"},summaryOnHoldLabel:{type:String,default:"On Hold"},statusClosedLabel:{type:String,default:"Closed"},statusOpenLabel:{type:String,default:"Open"},statusOpeningLabel:{type:String,default:"Opening"},statusLimitedPatrolLabel:{type:String,default:"Limited Patrol"},statusOnHoldLabel:{type:String,default:"On Hold"},veryDifficultLabel:{type:String,default:"Very Difficult"},weatherForecastLabel:{type:String,default:"Weather Forecast"},greenLabel:{type:String,default:"Green"},blueLabel:{type:String,default:"Blue"},redLabel:{type:String,default:"Red"},blackLabel:{type:String,default:"Black"},orangeLabel:{type:String,default:"Orange"},greyLabel:{type:String,default:"Grey"}},data(){return{tokens:LoadingSpinner.designTokens,componentId:0,statusSummary:{runs:{open:0,opening:0,closed:0,onHold:0,limitedPatrol:0},lifts:{open:0,opening:0,closed:0,onHold:0,limitedPatrol:0}},lifts:[],runs:[],lastUpdate:"",report:"",currentWeather:"",weatherForecast:"",roadStatus:"",news:"",runLevels:[{colour:"green",colourToken:"",id:"easy",name:this.easyLabel,runs:[]},{colour:"blue",colourToken:"",id:"intermediate",name:this.intermediateLabel,runs:[]},{colour:"red",colourToken:"",id:"difficult",name:this.difficultLabel,runs:[]},{colour:"black",colourToken:"",id:"very-difficult",name:this.veryDifficultLabel,runs:[]},{colour:"orange",colourToken:"",id:"itineraries",name:this.itinerariesLabel,runs:[]},{colour:"grey",colourToken:"",id:"other",name:this.otherLabel,runs:[]}],jsDisabled:!0,isLoading:!0,displayError:!1,isCairngorms:!1}},computed:{filteredRunLevels(){return this.setColourToken().filter(n=>n.runs.length>0)}},mounted(){this.skiStatusUrl&&this.retrieveSkiStatus(),this.id=this._uid,this.jsDisabled=!1},methods:{retrieveSkiStatus(){const e=setTimeout(()=>{this.displayError=!0},this.timeoutDuration);LoadingSpinner.axios.get(this.skiStatusUrl).then(n=>{const t=this.cleanData(n.data);this.processLifts(t.lifts),t.runs&&this.processRuns(t.runs),this.processLastUpdate(t.lastUpdate),this.processFullReport(t.report),this.isLoading=!1,clearTimeout(e)}).catch(()=>{this.runStatusInfo=null,this.displayError=!0,this.isLoading=!1,clearTimeout(e)})},cleanData(e){const n={contact:e.contact,report:e.report};if(e.snowReport)n.lastUpdate=e.snowReport.lastupdate,n.lifts=e.lifts.sector.items,n.runs=e.runs.items,this.isCairngorms=!0;else if(n.lastUpdate=e.lastupdate,[n.lifts]=e.lift.sectors,n.lifts=n.lifts.lifts,e.run.areas){const t=e.run.areas.map(o=>o.runs).reduce((o,r)=>o.concat(r)).filter((o,r,a)=>r===a.findIndex(s=>s.name===o.name));n.runs=t}if(n.runs)for(let t=0;t<n.runs.length;t++)n.runs[t].difficulty===null&&(n.runs[t].difficulty="orange");return n},processFullReport(e){this.report=e.runs,this.currentWeather=e.current_weather_conditions,this.weatherForecast=e.weather_forecast,this.roadStatus=e.access_roads,this.news=e.news_from_the_slopes},processLastUpdate(e){const n=new Date(e.year,parseInt(e.month,10)-1,e.day),t={year:"numeric",month:"long",day:"numeric"},o=n.toLocaleDateString(this.locale,t);this.lastUpdate=`${e.hour24}:${e.minute} - ${o}`},processLifts(e){for(let n=0;n<e.length;n++)switch(e[n].status){case"4":case 4:this.statusSummary.lifts.onHold+=1;break;case"3":case 3:this.statusSummary.lifts.limitedPatrol+=1;break;case"2":case 2:this.statusSummary.lifts.opening+=1;break;case"1":case 1:this.statusSummary.lifts.open+=1;break;default:this.statusSummary.lifts.closed+=1;break}this.lifts=e},processRuns(e){for(let n=0;n<e.length;n++){switch(e[n].status){case"4":case 4:this.statusSummary.runs.onHold+=1;break;case"3":case 3:this.statusSummary.runs.limitedPatrol+=1;break;case"2":case 2:this.statusSummary.runs.opening+=1;break;case"1":case 1:this.statusSummary.runs.open+=1;break;default:this.statusSummary.runs.closed+=1;break}for(let t=0;t<this.runLevels.length;t++)this.runLevels[t].colour===e[n].difficulty&&this.runLevels[t].runs.push(e[n])}this.runs=e},getColourLabel(e){return this[`${e}Label`]},setColourToken(){return this.runLevels.map(({...e})=>({...e,colourToken:this.tokens[`vs-color-icon-ski-${e.id}`]}))}}},_hoisted_1$i={class:"vs-ski-scotland-status","data-test":"vs-ski-scotland-status"},_hoisted_2$d={"data-test":"vs-ski__status-label"},_hoisted_3$8={"data-test":"vs-ski__runs-label"},_hoisted_4$7={"data-test":"vs-ski__lifts-label"},_hoisted_5$7={"data-test":"vs-ski__open-label"},_hoisted_6$7={"data-test":"vs-ski__open-label"},_hoisted_7$6={"data-test":"vs-ski__opening-label"},_hoisted_8$2={"data-test":"vs-ski__closed-label"},_hoisted_9$2={"data-test":"vs-ski__open-label"},_hoisted_10$2={"data-test":"vs-ski__last-updated-label"},_hoisted_11$1=["innerHTML"],_hoisted_12=["innerHTML"],_hoisted_13=["innerHTML"],_hoisted_14=["innerHTML"],_hoisted_15=["innerHTML"],_hoisted_16=["data-test"],_hoisted_17={class:"visually-hidden"};function _sfc_render$c(e,n,t,o,r,a){const s=vue.resolveComponent("VsLoadingSpinner"),i=vue.resolveComponent("VsCol"),l=vue.resolveComponent("VsRow"),u=vue.resolveComponent("VsContainer"),c=vue.resolveComponent("VsWarning"),d=vue.resolveComponent("VsHeading"),v=vue.resolveComponent("VsTableHeaderCell"),m=vue.resolveComponent("VsTableHead"),f=vue.resolveComponent("VsIcon"),p=vue.resolveComponent("VsTableDataCell"),g=vue.resolveComponent("VsTableRow"),_=vue.resolveComponent("VsTableBody"),h=vue.resolveComponent("VsTableFooter"),b=vue.resolveComponent("VsTable"),V=vue.resolveComponent("VsLink"),S=vue.resolveComponent("VsAccordionItem"),$=vue.resolveComponent("VsAccordion");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$i,[!r.jsDisabled&&r.isLoading?(vue.openBlock(),vue.createBlock(u,{key:0},{default:vue.withCtx(()=>[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.createVNode(i,{class:"text-center py-100"},{default:vue.withCtx(()=>[vue.createVNode(s),vue.renderSlot(e.$slots,"data-loading")]),_:3})]),_:3})]),_:3})):vue.createCommentVNode("",!0),!r.jsDisabled&&r.displayError?(vue.openBlock(),vue.createBlock(u,{key:1},{default:vue.withCtx(()=>[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.createVNode(i,{class:"text-center py-100"},{default:vue.withCtx(()=>[vue.createVNode(c,null,{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"data-unavailable")]),_:3})]),_:3})]),_:3})]),_:3})):vue.createCommentVNode("",!0),vue.createVNode(u,null,{default:vue.withCtx(()=>[vue.createVNode(l,null,{default:vue.withCtx(()=>[r.jsDisabled?(vue.openBlock(),vue.createBlock(i,{key:0,cols:"12",md:"6","data-test":"vs-ski__js-disabled"},{default:vue.withCtx(()=>[vue.createVNode(c,null,{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"js-required")]),_:3})]),_:3})):vue.createCommentVNode("",!0),!r.jsDisabled&&!r.isLoading&&!r.displayError?(vue.openBlock(),vue.createBlock(i,{key:1,cols:"12",md:"6"},{default:vue.withCtx(()=>[vue.createVNode(d,{level:"3","heading-style":"heading-xs","data-test":"vs-ski__runs-lifts-status-label",class:"d-none d-md-block"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.runsLiftsStatusLabel),1)]),_:1}),vue.createVNode(b,{"table-caption":t.runsLiftsStatusLabel},{default:vue.withCtx(()=>[vue.createVNode(m,null,{default:vue.withCtx(()=>[vue.createVNode(v,null,{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_2$d,vue.toDisplayString(t.statusLabel),1)]),_:1}),r.runs.length?(vue.openBlock(),vue.createBlock(v,{key:0},{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_3$8,vue.toDisplayString(t.runsLabel),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(v,null,{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_4$7,vue.toDisplayString(t.liftsLabel),1)]),_:1})]),_:1}),vue.createVNode(_,null,{default:vue.withCtx(()=>[vue.createVNode(g,null,{default:vue.withCtx(()=>[vue.createVNode(p,null,{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-check",size:"xs",class:"me-050"}),vue.createElementVNode("span",_hoisted_5$7,vue.toDisplayString(t.summaryOpenLabel),1)]),_:1}),r.runs.length?(vue.openBlock(),vue.createBlock(p,{key:0},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.statusSummary.runs.open)+"/"+vue.toDisplayString(r.runs.length),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(p,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.statusSummary.lifts.open)+"/"+vue.toDisplayString(r.lifts.length),1)]),_:1})]),_:1}),r.statusSummary.runs.limitedPatrol||r.statusSummary.lifts.limitedPatrol?(vue.openBlock(),vue.createBlock(g,{key:0},{default:vue.withCtx(()=>[vue.createVNode(p,null,{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-ski-boot-ski",size:"xs",class:"me-050"}),vue.createElementVNode("span",_hoisted_6$7,vue.toDisplayString(t.summaryLimitedPatrolLabel),1)]),_:1}),r.runs.length?(vue.openBlock(),vue.createBlock(p,{key:0},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.statusSummary.runs.limitedPatrol)+"/"+vue.toDisplayString(r.runs.length),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(p,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.statusSummary.lifts.limitedPatrol)+"/"+vue.toDisplayString(r.lifts.length),1)]),_:1})]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(g,null,{default:vue.withCtx(()=>[vue.createVNode(p,null,{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-timer",size:"xs",class:"me-050"}),vue.createElementVNode("span",_hoisted_7$6,vue.toDisplayString(t.summaryOpeningLabel),1)]),_:1}),r.runs.length?(vue.openBlock(),vue.createBlock(p,{key:0},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.statusSummary.runs.opening)+"/"+vue.toDisplayString(r.runs.length),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(p,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.statusSummary.lifts.opening)+"/"+vue.toDisplayString(r.lifts.length),1)]),_:1})]),_:1}),vue.createVNode(g,null,{default:vue.withCtx(()=>[vue.createVNode(p,null,{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-ban",size:"xs",class:"me-050"}),vue.createElementVNode("span",_hoisted_8$2,vue.toDisplayString(t.summaryClosedLabel),1)]),_:1}),r.runs.length?(vue.openBlock(),vue.createBlock(p,{key:0},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.statusSummary.runs.closed)+"/"+vue.toDisplayString(r.runs.length),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(p,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.statusSummary.lifts.closed)+"/"+vue.toDisplayString(r.lifts.length),1)]),_:1})]),_:1}),r.statusSummary.runs.onHold||r.statusSummary.lifts.onHold?(vue.openBlock(),vue.createBlock(g,{key:1},{default:vue.withCtx(()=>[vue.createVNode(p,null,{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-hourglass",size:"xs",class:"me-050"}),vue.createElementVNode("span",_hoisted_9$2,vue.toDisplayString(t.summaryOnHoldLabel),1)]),_:1}),r.runs.length?(vue.openBlock(),vue.createBlock(p,{key:0},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.statusSummary.runs.onHold)+"/"+vue.toDisplayString(r.runs.length),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(p,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.statusSummary.lifts.onHold)+"/"+vue.toDisplayString(r.lifts.length),1)]),_:1})]),_:1})):vue.createCommentVNode("",!0)]),_:1}),vue.createVNode(h,null,{default:vue.withCtx(()=>[vue.createVNode(g,null,{default:vue.withCtx(()=>[vue.createVNode(p,{colspan:"3",role:"cell"},{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_10$2,vue.toDisplayString(t.lastUpdatedLabel)+": "+vue.toDisplayString(r.lastUpdate),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["table-caption"]),vue.createVNode(V,{href:`#vs-ski-scotland-status__detailed-status-${e.id}`,type:"default",class:"vs-ski-scotland-status__detailed-status-link"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.detailedStatusLabel),1)]),_:1},8,["href"])]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(i,{cols:"12",md:"5","offset-md":"1",class:"vs-ski-scotland-status__centre-info"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"centre-information")]),_:3})]),_:3}),!r.jsDisabled&&!r.isLoading&&!r.displayError?(vue.openBlock(),vue.createBlock(l,{key:0},{default:vue.withCtx(()=>[vue.createVNode(i,{cols:"12",md:"9",class:"vs-ski-scotland-status__full-report"},{default:vue.withCtx(()=>[vue.createVNode(d,{level:"3","heading-style":"heading-l","data-test":"vs-ski__snow-conditions-label"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.snowConditionsLabel),1)]),_:1}),vue.createElementVNode("div",{innerHTML:r.report},null,8,_hoisted_11$1),r.currentWeather.length?(vue.openBlock(),vue.createBlock(d,{key:0,level:"4","heading-style":"heading-xs","data-test":"vs-ski__current-weather-label"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.currentWeatherLabel),1)]),_:1})):vue.createCommentVNode("",!0),r.currentWeather.length?(vue.openBlock(),vue.createElementBlock("div",{key:1,innerHTML:r.currentWeather},null,8,_hoisted_12)):vue.createCommentVNode("",!0),r.weatherForecast.length?(vue.openBlock(),vue.createBlock(d,{key:2,level:"4","heading-style":"heading-xs","data-test":"vs-ski__weather-forecast-label"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.weatherForecastLabel),1)]),_:1})):vue.createCommentVNode("",!0),r.weatherForecast.length?(vue.openBlock(),vue.createElementBlock("div",{key:3,innerHTML:r.weatherForecast},null,8,_hoisted_13)):vue.createCommentVNode("",!0),r.roadStatus.length?(vue.openBlock(),vue.createBlock(d,{key:4,level:"4","heading-style":"heading-xs","data-test":"vs-ski__roads-label"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.roadsLabel),1)]),_:1})):vue.createCommentVNode("",!0),r.roadStatus.length?(vue.openBlock(),vue.createElementBlock("div",{key:5,innerHTML:r.roadStatus},null,8,_hoisted_14)):vue.createCommentVNode("",!0),r.news.length?(vue.openBlock(),vue.createBlock(d,{key:6,level:"4","heading-style":"heading-xs","data-test":"vs-ski__news-label"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.newsLabel),1)]),_:1})):vue.createCommentVNode("",!0),r.news.length?(vue.openBlock(),vue.createElementBlock("div",{key:7,innerHTML:r.news},null,8,_hoisted_15)):vue.createCommentVNode("",!0)]),_:1})]),_:1})):vue.createCommentVNode("",!0),!r.jsDisabled&&!r.isLoading&&!r.displayError?(vue.openBlock(),vue.createBlock(l,{key:1},{default:vue.withCtx(()=>[vue.createVNode(i,{cols:"12",md:"9"},{default:vue.withCtx(()=>[vue.createVNode(d,{level:"3","heading-style":"heading-l","data-test":"vs-ski__lift-status-label",id:`vs-ski-scotland-status__detailed-status-${e.id}`},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.liftStatusLabel),1)]),_:1},8,["id"]),vue.createVNode(b,{"table-caption":t.liftStatusLabel,class:"vs-ski-scotland-status__run-status-table"},{default:vue.withCtx(()=>[vue.createVNode(m,null,{default:vue.withCtx(()=>[vue.createVNode(v,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.statusLabel),1)]),_:1}),vue.createVNode(v,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.liftLabel),1)]),_:1})]),_:1}),vue.createVNode(_,null,{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(r.lifts,w=>(vue.openBlock(),vue.createBlock(g,{key:w.name},{default:vue.withCtx(()=>[w.status==="0"||w.status===0?(vue.openBlock(),vue.createBlock(p,{key:0},{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-ban",size:"xs",class:"me-050"}),vue.createTextVNode(" "+vue.toDisplayString(t.statusClosedLabel),1)]),_:1})):vue.createCommentVNode("",!0),w.status==="1"||w.status===1?(vue.openBlock(),vue.createBlock(p,{key:1},{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-check",size:"xs",class:"me-050"}),vue.createTextVNode(" "+vue.toDisplayString(t.statusOpenLabel),1)]),_:1})):vue.createCommentVNode("",!0),w.status==="2"||w.status===2?(vue.openBlock(),vue.createBlock(p,{key:2},{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-timer",size:"xs",class:"me-050"}),vue.createTextVNode(" "+vue.toDisplayString(t.statusOpeningLabel),1)]),_:1})):vue.createCommentVNode("",!0),w.status==="3"||w.status===3?(vue.openBlock(),vue.createBlock(p,{key:3},{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-ski-boot-ski",size:"xs",class:"me-050"}),vue.createTextVNode(" "+vue.toDisplayString(t.statusLimitedPatrolLabel),1)]),_:1})):vue.createCommentVNode("",!0),w.status==="4"||w.status===4?(vue.openBlock(),vue.createBlock(p,{key:4},{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-hourglass",size:"xs",class:"me-050"}),vue.createTextVNode(" "+vue.toDisplayString(t.statusOnHoldLabel),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(p,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(w.name),1)]),_:2},1024)]),_:2},1024))),128))]),_:1}),vue.createVNode(h,null,{default:vue.withCtx(()=>[vue.createVNode(g,null,{default:vue.withCtx(()=>[vue.createVNode(p,{colspan:"2",role:"cell"},{default:vue.withCtx(()=>[vue.createElementVNode("p",null,vue.toDisplayString(t.lastUpdatedLabel)+": "+vue.toDisplayString(r.lastUpdate),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["table-caption"])]),_:1})]),_:1})):vue.createCommentVNode("",!0),!r.jsDisabled&&!r.isLoading&&!r.displayError&&r.runs.length?(vue.openBlock(),vue.createBlock(l,{key:2},{default:vue.withCtx(()=>[vue.createVNode(i,{cols:"12",md:"9"},{default:vue.withCtx(()=>[vue.createVNode(d,{level:"3","heading-style":"heading-l","data-test":"vs-ski__run-status-label"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.runStatusLabel),1)]),_:1}),(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(a.filteredRunLevels,w=>(vue.openBlock(),vue.createElementBlock("div",{key:w.name},[vue.createVNode($,null,{default:vue.withCtx(()=>[vue.createVNode(S,{variant:"subtle","control-id":`accordion_item_${w.name}`,"colour-badge":w.colourToken},{title:vue.withCtx(()=>[vue.createElementVNode("div",{"data-test":`vs-ski__${w.name}-label`,class:"d-inline-block"},[vue.createElementVNode("span",_hoisted_17,vue.toDisplayString(a.getColourLabel(w.colour)),1),vue.createTextVNode(" "+vue.toDisplayString(w.name),1)],8,_hoisted_16)]),default:vue.withCtx(()=>[vue.createVNode(b,{"table-caption":`${w.colour} - ${w.name}`,class:"vs-ski-scotland-status__run-status-table"},{default:vue.withCtx(()=>[vue.createVNode(m,null,{default:vue.withCtx(()=>[vue.createVNode(v,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.statusLabel),1)]),_:1}),vue.createVNode(v,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.runLabel),1)]),_:1})]),_:1}),vue.createVNode(_,null,{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(w.runs,k=>(vue.openBlock(),vue.createBlock(g,{key:k.name,"data-test":`vs-ski__${w.name}-row`},{default:vue.withCtx(()=>[k.status==="0"||k.status===0?(vue.openBlock(),vue.createBlock(p,{key:0},{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-ban",size:"xs",class:"me-050"}),vue.createTextVNode(" "+vue.toDisplayString(t.statusClosedLabel),1)]),_:1})):vue.createCommentVNode("",!0),k.status==="1"||k.status===1?(vue.openBlock(),vue.createBlock(p,{key:1},{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-check",size:"xs",class:"me-050"}),vue.createTextVNode(" "+vue.toDisplayString(t.statusOpenLabel),1)]),_:1})):vue.createCommentVNode("",!0),k.status==="2"||k.status===2?(vue.openBlock(),vue.createBlock(p,{key:2},{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-timer",size:"xs",class:"me-050"}),vue.createTextVNode(" "+vue.toDisplayString(t.statusOpeningLabel),1)]),_:1})):vue.createCommentVNode("",!0),k.status==="3"||k.status===3?(vue.openBlock(),vue.createBlock(p,{key:3},{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-ski-boot-ski",size:"xs",class:"me-050"}),vue.createTextVNode(" "+vue.toDisplayString(t.statusLimitedPatrolLabel),1)]),_:1})):vue.createCommentVNode("",!0),k.status==="4"||k.status===4?(vue.openBlock(),vue.createBlock(p,{key:4},{default:vue.withCtx(()=>[vue.createVNode(f,{icon:"fa-regular fa-hourglass",size:"xs",class:"me-050"}),vue.createTextVNode(" "+vue.toDisplayString(t.statusOnHoldLabel),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(p,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(k.name),1)]),_:2},1024)]),_:2},1032,["data-test"]))),128))]),_:2},1024),vue.createVNode(h,null,{default:vue.withCtx(()=>[vue.createVNode(g,null,{default:vue.withCtx(()=>[vue.createVNode(p,{colspan:"2",role:"cell"},{default:vue.withCtx(()=>[vue.createElementVNode("p",null,vue.toDisplayString(t.lastUpdatedLabel)+": "+vue.toDisplayString(r.lastUpdate),1)]),_:1})]),_:1})]),_:1})]),_:2},1032,["table-caption"])]),_:2},1032,["control-id","colour-badge"])]),_:2},1024)]))),128))]),_:1})]),_:1})):vue.createCommentVNode("",!0)]),_:3})])}const SkiScotlandStatus=LoadingSpinner._export_sfc(_sfc_main$m,[["render",_sfc_render$c]]),_sfc_main$l={name:"VsSkipTo",status:"prototype",release:"0.0.1",components:{VsLink},props:{skipToText:{type:String,required:!0},hasSearchLink:{type:Boolean,default:!0}},methods:{mainMenuFocus(){const e=document.getElementsByClassName("vs-mega-nav__menu__mobile")[0],n=document.getElementsByClassName("vs-mega-nav-dropdown")[0];if(!this.isUndefined(n)){let t=n.getElementsByClassName("btn")[0];e.offsetParent!==null?(e.querySelectorAll(".btn.dropdown-toggle")[0].click(),t=document.getElementsByClassName("vs-mega-nav-accordion-item--level-1")[0].querySelectorAll(".vs-button.vs-accordion-toggle")[0],setTimeout(()=>{t.focus()},200)):t.focus()}},footerFocus(){const e=document.getElementsByClassName("vs-footer")[0];if(!this.isUndefined(e)){const n=e.getElementsByClassName("vs-footer-accordion-item")[0],t=n.getElementsByClassName("vs-link")[0],o=n.getElementsByClassName("vs-accordion-toggle")[0];o.offsetParent!==null&&!this.isUndefined(o)&&o.click(),!this.isUndefined(e)&&!this.isUndefined(t)&&(e.scrollIntoView(!0),setTimeout(()=>{t.focus()},200))}},isUndefined(e){return typeof e>"u"}}},_hoisted_1$h=["aria-label"],_hoisted_2$c={class:"vs-skip-to__label",id:"skip-to-label"};function _sfc_render$b(e,n,t,o,r,a){const s=vue.resolveComponent("VsLink");return vue.openBlock(),vue.createElementBlock("nav",{class:"vs-skip-to d-flex","data-test":"vs-skip-to","aria-label":t.skipToText},[vue.createElementVNode("p",_hoisted_2$c,vue.toDisplayString(t.skipToText)+": ",1),vue.createVNode(s,{href:"#main-nav","data-test":"vs-skip-to-main-menu",onClick:n[0]||(n[0]=i=>a.mainMenuFocus()),id:"main-menu"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"main-menu-text")]),_:3}),t.hasSearchLink?(vue.openBlock(),vue.createBlock(s,{key:0,href:"#site-search-btn","data-test":"vs-skip-to-search",class:"vs-skip-to__search"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"search-text")]),_:3})):vue.createCommentVNode("",!0),vue.createVNode(s,{href:"#main-heading","data-test":"vs-skip-to-main-content"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"main-content-text")]),_:3}),vue.createVNode(s,{href:"#site-footer",onClick:n[1]||(n[1]=i=>a.footerFocus()),"data-test":"vs-skip-to-footer"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"footer-text")]),_:3})],8,_hoisted_1$h)}const SkipTo=LoadingSpinner._export_sfc(_sfc_main$l,[["render",_sfc_render$b]]),_sfc_main$k={name:"VsSocialCreditLink",status:"prototype",release:"0.0.1",components:{VsLink,VsIcon:LoadingSpinner.VsIcon},props:{credit:{type:String,required:!0},socialPostUrl:{type:String,required:!0},source:{type:String,required:!0,validator:e=>e.match(/(instagram)/)}}},_hoisted_1$g={class:"social-credit","data-test":"vs-social-credit-link"};function _sfc_render$a(e,n,t,o,r,a){const s=vue.resolveComponent("VsIcon"),i=vue.resolveComponent("VsLink");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$g,[t.source?(vue.openBlock(),vue.createBlock(s,{key:0,icon:`fa-brands fa-${t.source}`,variant:"inverse",size:"xs",class:"me-025","data-test":"vs-social-credit-link__icon"},null,8,["icon"])):vue.createCommentVNode("",!0),vue.createVNode(i,{class:"social-credit__link","data-test":"vs-social-credit-link__link",href:t.socialPostUrl,variant:"on-dark",type:"external"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.credit),1)]),_:1},8,["href"])])}const SocialCreditLink=LoadingSpinner._export_sfc(_sfc_main$k,[["render",_sfc_render$a]]),_sfc_main$j={name:"VsSocialShare",status:"prototype",release:"0.0.1",components:{VsButton:LoadingSpinner.VsButton,VsHeading:LoadingSpinner.VsHeading,VsModuleWrapper,BPopover:LoadingSpinner.Ka,VsRow:LoadingSpinner.VsRow,VsContainer:LoadingSpinner.VsContainer,VsCol:LoadingSpinner.VsCol},provide(){return{referringPageUrl:this.pageUrl,pageTitle:this.pageTitle,noJs:this.noJs}},props:{shareBtnText:{type:String,required:!0},sharePopoverTitle:{type:String,required:!0},pageUrl:{type:String,required:!0},pageTitle:{type:String,default:""},closeAltText:{type:String,required:!0},id:{type:String,required:!0},noJs:{type:Boolean,default:!1}},data(){return{copyLink:!1,renderPopover:!1}},mounted(){this.renderPopover=!0},methods:{onClose(e){this.$refs.popover.hide(e)},onShown(){this.focusFirst()},onHidden(){this.focusRef(this.$refs.shareButton)},onHide(e){this.copyLink&&(e.preventDefault(),this.focusFirst(),this.copyLink=!1)},onCopyLink(){this.copyLink=!0},focusRef(e){this.$nextTick(()=>{this.$nextTick(()=>{(e.$el||e).focus()})})},focusFirst(){this.$nextTick(()=>{this.$nextTick(()=>{this.$refs.popoverShareRow.$el.querySelector(".vs-social-share-item a ").focus()})})},tabFromClose(e){e.shiftKey||(e.preventDefault(),this.focusFirst())},tabBackFromHidden(e){e.shiftKey&&(e.preventDefault(),this.focusRef(this.$refs.closeButton))}}};function _sfc_render$9(e,n,t,o,r,a){const s=vue.resolveComponent("VsButton"),i=vue.resolveComponent("VsHeading"),l=vue.resolveComponent("VsRow"),u=vue.resolveComponent("BPopover"),c=vue.resolveComponent("VsCol"),d=vue.resolveComponent("VsContainer"),v=vue.resolveComponent("VsModuleWrapper");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-social-share",t.noJs?"vs-module-wrapper__outer--hidden":"vs-module-wrapper__outer--light"]),"data-test":"vs-social-share",ref:"socialShareContainer"},[t.noJs?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createBlock(s,{key:0,class:"vs-social-share__share-btn",variant:"subtle",icon:"fa-regular fa-share-nodes",id:`vs-social-share-popover--${t.id}`,ref:"shareButton"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.shareBtnText),1)]),_:1},8,["id"])),!t.noJs&&r.renderPopover?(vue.openBlock(),vue.createBlock(u,{key:1,"custom-class":"vs-social-share__popover",target:`vs-social-share-popover--${t.id}`,click:!0,container:"body",placement:"left-end",offset:"-100",onShown:a.onShown,onHidden:a.onHidden,onHide:a.onHide,ref:"popover"},{default:vue.withCtx(()=>[vue.createVNode(i,{level:"3",tabindex:"0","heading-style":"heading-m",ref:"shareHeader",class:"vs-social-share__header",onKeydown:n[0]||(n[0]=vue.withKeys(m=>a.tabBackFromHidden(m),["tab"]))},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.sharePopoverTitle),1)]),_:1},512),vue.createVNode(l,{ref:"popoverShareRow"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default",{onCopyLink:a.onCopyLink})]),_:3},512),vue.createVNode(s,{"icon-only":"",class:"vs-social-share__close-btn",icon:"vs-icon-control-dismiss",variant:"subtle",ref:"closeButton",onClick:a.onClose,onKeydown:n[1]||(n[1]=vue.withKeys(m=>a.tabFromClose(m),["tab"]))},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.closeAltText),1)]),_:1},8,["onClick"])]),_:3},8,["target","onShown","onHidden","onHide"])):vue.createCommentVNode("",!0),t.noJs?(vue.openBlock(),vue.createBlock(v,{key:2,class:"vs-social-share--module-list"},{default:vue.withCtx(()=>[vue.createVNode(d,null,{default:vue.withCtx(()=>[vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.createVNode(c,{cols:"12"},{default:vue.withCtx(()=>[vue.createVNode(i,{level:"2","heading-style":"heading-l",class:"mb-300 mt-0"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.sharePopoverTitle),1)]),_:1})]),_:1})]),_:1}),vue.createVNode(l,{class:"justify-content-center"},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3})]),_:3})]),_:3})):vue.createCommentVNode("",!0)],2)}const SocialShare=LoadingSpinner._export_sfc(_sfc_main$j,[["render",_sfc_render$9]]),socialMediaData={facebook:{color:"#1877f2",icon:"fa-brands fa-facebook",getUrl:(e,n)=>`https://www.facebook.com/sharer/sharer.php?u=${e}&t=${n}`},"x-twitter":{color:"#0F1419",icon:"fa-brands fa-x-twitter",getUrl:(e,n)=>`https://twitter.com/intent/tweet?text=${n}%20@VisitScotland&url=${e}`},pinterest:{color:"#E60023",icon:"fa-brands fa-pinterest",getUrl:e=>`https://www.pinterest.com/pin/create/button/?url=${e}`},whatsapp:{color:"#455a64",icon:"fa-brands fa-whatsapp",getUrl:(e,n)=>`https://wa.me/?text=${n}%20-%20${e}`},email:{color:"#000000",icon:"fa-regular fa-envelope",getUrl:(e,n)=>`mailto:?body=${n}%20-%20${e}&subject=${n}`},link:{color:"#000000",icon:"fa-regular fa-link",getUrl:()=>"#"}},_sfc_main$i={name:"VsSocialShareItem",status:"prototype",release:"0.0.1",components:{VsCol:LoadingSpinner.VsCol,VsLink,VsIcon:LoadingSpinner.VsIcon},mixins:[LoadingSpinner.dataLayerMixin],inject:{referringPageUrl:{default:""},pageTitle:{default:""},noJs:{default:""}},props:{name:{type:String,required:!0,validator:e=>e.match(/(facebook|twitter|pinterest|link|email|whatsapp)/)},linkText:{type:String,required:!0},linkCopiedText:{type:String,default:""}},emits:["copyLinkClicked"],data(){return{show:!1}},computed:{iconColour(){var e;return((e=socialMediaData[this.name])==null?void 0:e.color)||"#200F2E"},iconName(){var e;return((e=socialMediaData[this.name])==null?void 0:e.icon)||"fa-solid fa-link"},shareUrl(){const e=socialMediaData[this.name];return(e==null?void 0:e.getUrl(this.referringPageUrl,this.encodedPageTitle))||"#"},encodedPageTitle(){return encodeURI(this.pageTitle)}},methods:{copyToClipboard(e){if(this.name==="link"){if(this.$emit("copyLinkClicked"),!navigator.clipboard)return;navigator.clipboard.writeText&&navigator.clipboard.writeText(this.referringPageUrl),this.show=!0,setTimeout(()=>{this.show=!1},2e3)}this.trackShareClick(e)},trackShareClick(e){this.createDataLayerObject("socialShareDataEvent",e,this.href)}}},_hoisted_1$f={class:"vs-social-share-item__text"};function _sfc_render$8(e,n,t,o,r,a){const s=vue.resolveComponent("VsIcon"),i=vue.resolveComponent("VsLink"),l=vue.resolveComponent("VsCol");return vue.openBlock(),vue.createBlock(l,{class:"vs-social-share-item","data-test":"vs-social-share-item",cols:4,md:a.noJs?2:4},{default:vue.withCtx(()=>[vue.createVNode(i,{class:"vs-social-share-item__link",href:a.shareUrl,onClick:n[0]||(n[0]=u=>a.copyToClipboard(u)),id:`vs-share-${t.name}`},{default:vue.withCtx(()=>[vue.createVNode(s,{icon:a.iconName,"custom-colour":a.iconColour,size:"xl","small-size":"lg"},null,8,["icon","custom-colour"]),vue.createElementVNode("span",_hoisted_1$f,vue.toDisplayString(r.show?t.linkCopiedText:t.linkText),1)]),_:1},8,["href","id"])]),_:1},8,["md"])}const SocialShareItem=LoadingSpinner._export_sfc(_sfc_main$i,[["render",_sfc_render$8]]),_sfc_main$h={name:"VsSpotlightSection",status:"prototype",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading,VsBody:LoadingSpinner.VsBody,VsButton:LoadingSpinner.VsButton},props:{heading:{type:String,required:!0},description:{type:String,default:""},ctaLink:{type:String,required:!0},ctaText:{type:String,required:!0},imageSrc:{type:String,default:""},compact:{type:Boolean,default:!1}},computed:{spotlightSectionClasses(){return{"vs-spotlight-section":!0,"vs-spotlight-section--compact":this.compact,"vs-spotlight-section--standard":!this.compact,"vs-spotlight-section--no-image":!this.imageSrc}}}},_hoisted_1$e={class:"vs-spotlight-section__content-overlay"},_hoisted_2$b={class:"row w-100 m-0"},_hoisted_3$7={class:"col-12 col-sm-7 col-md-8 col-lg-7 col-xl-6 align-self-end p-0"},_hoisted_4$6={key:0,class:"col-12 col-sm-5 col-md-4 col-lg-5 col-xl-6 align-self-sm-end text-sm-end p-0"},_hoisted_5$6={key:0,class:"vs-spotlight-section__media"},_hoisted_6$6={key:1,class:"vs-spotlight-section__overlay-controls"};function _sfc_render$7(e,n,t,o,r,a){const s=vue.resolveComponent("VsHeading"),i=vue.resolveComponent("VsBody"),l=vue.resolveComponent("VsButton");return vue.openBlock(),vue.createElementBlock("section",{class:vue.normalizeClass(a.spotlightSectionClasses),style:vue.normalizeStyle(t.imageSrc?{backgroundImage:`url(${t.imageSrc})`}:{}),"data-test":"vs-spotlight-section"},[vue.createElementVNode("div",_hoisted_1$e,[vue.createElementVNode("div",_hoisted_2$b,[vue.createElementVNode("div",_hoisted_3$7,[vue.createVNode(s,{class:"vs-spotlight-section__heading",level:"2","no-margins":"","heading-style":"heading-xs"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.heading),1)]),_:1}),t.description?(vue.openBlock(),vue.createBlock(i,{key:0,class:"vs-spotlight-section__description","no-margins":""},{default:vue.withCtx(()=>[vue.createElementVNode("p",null,vue.toDisplayString(t.description),1)]),_:1})):vue.createCommentVNode("",!0),t.compact?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createBlock(l,{key:1,class:"vs-spotlight-section__cta-button",href:t.ctaLink,size:"sm",variant:"secondary"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.ctaText),1)]),_:1},8,["href"]))]),t.compact?(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$6,[vue.createVNode(l,{class:"vs-spotlight-section__cta-button",href:t.ctaLink,size:"sm",variant:"secondary"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.ctaText),1)]),_:1},8,["href"])])):vue.createCommentVNode("",!0)])]),e.$slots["vs-spotlight-section-media"]&&e.$slots["vs-spotlight-section-media"]()?(vue.openBlock(),vue.createElementBlock("div",_hoisted_5$6,[vue.renderSlot(e.$slots,"vs-spotlight-section-media")])):vue.createCommentVNode("",!0),e.$slots["vs-spotlight-section-overlay-controls"]&&e.$slots["vs-spotlight-section-overlay-controls"]()?(vue.openBlock(),vue.createElementBlock("div",_hoisted_6$6,[vue.renderSlot(e.$slots,"vs-spotlight-section-overlay-controls")])):vue.createCommentVNode("",!0),n[0]||(n[0]=vue.createElementVNode("div",{class:"vs-spotlight-section__gradient-overlay"},null,-1))],6)}const SpotlightSection=LoadingSpinner._export_sfc(_sfc_main$h,[["render",_sfc_render$7]]),_hoisted_1$d={class:"vs-styled-list__list"},_hoisted_2$a={class:"vs-styled-list__source"},_sfc_main$g={__name:"StyledList",props:{source:{type:String,default:null},variant:{type:String,default:"icon",validator:e=>["icon","image","image-horizontal","numbered"].includes(e)}},setup(e){const n=e;return(t,o)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["vs-styled-list",`vs-styled-list--${n.variant}`]),"data-test":"vs-styled-list"},[vue.createVNode(vue.unref(LoadingSpinner.VsContainer),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(LoadingSpinner.VsRow),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(LoadingSpinner.VsCol),{md:n.variant==="icon"?"8":null},{default:vue.withCtx(()=>[vue.createElementVNode("ul",_hoisted_1$d,[vue.renderSlot(t.$slots,"default")])]),_:3},8,["md"])]),_:3}),t.$slots["list-source"]&&t.$slots["list-source"]()?(vue.openBlock(),vue.createBlock(vue.unref(LoadingSpinner.VsRow),{key:0},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_2$a,[vue.renderSlot(t.$slots,"list-source")])]),_:3})):vue.createCommentVNode("",!0)]),_:3})],2))}},_hoisted_1$c={class:"vs-styled-list__item","data-test":"vs-styled-list__item"},_sfc_main$f={__name:"StyledListItem",props:{heading:{type:String,required:!0},headingLevel:{type:Number,default:3,validator:e=>LoadingSpinner.lodashExports.isNumber(e)?e>0&&e<7:e.match(/(1|2|3|4|5|6)/)},imageSrc:{type:String,default:null},variant:{type:String,default:"icon",validator:e=>["icon","image","image-horizontal","numbered"].includes(e)},anchorLink:{type:String,default:""}},setup(e){const n=e;return(t,o)=>(vue.openBlock(),vue.createElementBlock("li",_hoisted_1$c,[vue.createVNode(vue.unref(LoadingSpinner.VsRow),null,{default:vue.withCtx(()=>[n.variant==="image"?(vue.openBlock(),vue.createBlock(vue.unref(LoadingSpinner.VsCol),{key:0,cols:"12",md:"2"},{default:vue.withCtx(()=>[vue.createVNode(LoadingSpinner.VsImg,{src:n.imageSrc},null,8,["src"])]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(vue.unref(LoadingSpinner.VsCol),{md:n.variant==="image"?"10":"12"},{default:vue.withCtx(()=>[n.variant==="image-horizontal"?(vue.openBlock(),vue.createBlock(LoadingSpinner.VsImg,{key:0,src:n.imageSrc},null,8,["src"])):vue.createCommentVNode("",!0),vue.createVNode(LoadingSpinner.VsHeading,{level:n.headingLevel,"heading-style":"heading-xxs",id:e.anchorLink?e.anchorLink:""},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(e.heading),1)]),_:1},8,["level","id"]),vue.createVNode(LoadingSpinner.VsBody,null,{default:vue.withCtx(()=>[vue.renderSlot(t.$slots,"default")]),_:3})]),_:3},8,["md"])]),_:3})]))}},_sfc_main$e={name:"VsSummaryBoxList",status:"prototype",release:"0.0.1"},_hoisted_1$b={class:"vs-summary-box","data-test":"vs-summary-box-list"},_hoisted_2$9={class:"vs-summary-box__list list-unstyled d-flex flex-wrap p-050 p-sm-075"};function _sfc_render$6(e,n,t,o,r,a){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$b,[vue.createElementVNode("ul",_hoisted_2$9,[vue.renderSlot(e.$slots,"default")])])}const SummaryBoxList=LoadingSpinner._export_sfc(_sfc_main$e,[["render",_sfc_render$6]]),_sfc_main$d={name:"VsSummaryBoxListItem",status:"prototype",release:"0.0.1",components:{VsIcon:LoadingSpinner.VsIcon},props:{text:{type:String,default:""},label:{type:String,default:""},icon:{type:String,default:""},iconLabel:{type:String,default:""}}},_hoisted_1$a={class:"vs-summary-box-item position-relative","data-test":"vs-summary-box-list-item"},_hoisted_2$8={key:0,class:"text-center vs-summary-box-item__label d-block position-absolute w-100","data-test":"vs-summary-box-list-item-label"},_hoisted_3$6={class:"vs-summary-box-item__label-inner"},_hoisted_4$5={key:1,class:"vs-summary-box-item__display position-absolute d-block text-center w-100","data-test":"vs-summary-box-list-item-display"},_hoisted_5$5={key:2,class:"vs-summary-box-item__icon d-flex align-items-center position-absolute justify-content-center w-100","data-test":"vs-summary-box-list-item-icon-with-label"},_hoisted_6$5={class:"icon-wrapper text-end"},_hoisted_7$5={class:"text-wrapper d-block w-auto pt-100"};function _sfc_render$5(e,n,t,o,r,a){const s=vue.resolveComponent("VsIcon");return vue.openBlock(),vue.createElementBlock("li",_hoisted_1$a,[t.label?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$8,[vue.createElementVNode("span",_hoisted_3$6,vue.toDisplayString(t.label),1)])):vue.createCommentVNode("",!0),t.text?(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$5,[vue.createElementVNode("span",null,vue.toDisplayString(t.text),1)])):vue.createCommentVNode("",!0),t.icon?(vue.openBlock(),vue.createElementBlock("div",_hoisted_5$5,[vue.createElementVNode("div",_hoisted_6$5,[vue.createVNode(s,{icon:t.icon,size:"xl"},null,8,["icon"])]),vue.createElementVNode("div",_hoisted_7$5,[vue.createElementVNode("span",null,vue.toDisplayString(t.iconLabel),1)])])):vue.createCommentVNode("",!0)])}const SummaryBoxListItem=LoadingSpinner._export_sfc(_sfc_main$d,[["render",_sfc_render$5],["__scopeId","data-v-245aae0b"]]),_sfc_main$c={name:"VsSummaryBoxDistanceListItem",status:"prototype",release:"0.0.1",props:{miles:{type:String,default:""},kilometres:{type:String,default:""},distanceLabel:{type:String,default:"Distance"},milesLabel:{type:String,default:"miles"},kilometresLabel:{type:String,default:"km"},showMiles:{type:Boolean,default:!0}}},_hoisted_1$9={class:"vs-summary-box-distance position-relative","data-test":"vs-summary-box-distance-list-item"},_hoisted_2$7={key:0,class:"text-center vs-summary-box-distance__label d-block position-absolute w-100","data-test":"vs-summary-box-distance-list-item-label"},_hoisted_3$5={class:"vs-summary-box-distance__label-inner"},_hoisted_4$4={class:"vs-summary-box-distance__display position-absolute d-block text-center w-100","data-test":"vs-summary-box-distance-display"},_hoisted_5$4={class:"vs-summary-box-distance__display-entry"},_hoisted_6$4={class:"vs-summary-box-distance__display-value"},_hoisted_7$4={class:"vs-summary-box-distance__display-label"},_hoisted_8$1={class:"vs-summary-box-distance__display-entry"},_hoisted_9$1={class:"vs-summary-box-distance__display-value"},_hoisted_10$1={class:"vs-summary-box-distance__display-label"};function _sfc_render$4(e,n,t,o,r,a){return vue.openBlock(),vue.createElementBlock("li",_hoisted_1$9,[t.distanceLabel?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$7,[vue.createElementVNode("span",_hoisted_3$5,vue.toDisplayString(t.distanceLabel),1)])):vue.createCommentVNode("",!0),vue.createElementVNode("div",_hoisted_4$4,[vue.createElementVNode("div",_hoisted_5$4,[vue.createElementVNode("span",_hoisted_6$4,vue.toDisplayString(t.miles),1),vue.createElementVNode("span",_hoisted_7$4,vue.toDisplayString(t.milesLabel),1)]),n[0]||(n[0]=vue.createElementVNode("hr",{class:"vs-summary-box-distance__divider"},null,-1)),vue.createElementVNode("div",_hoisted_8$1,[vue.createElementVNode("span",_hoisted_9$1,vue.toDisplayString(t.kilometres),1),vue.createElementVNode("span",_hoisted_10$1,vue.toDisplayString(t.kilometresLabel),1)])])])}const SummaryBoxDistanceListItem=LoadingSpinner._export_sfc(_sfc_main$c,[["render",_sfc_render$4],["__scopeId","data-v-935b6579"]]),_sfc_main$b={name:"VsTabs",status:"prototype",release:"0.0.1",components:{BTabs:LoadingSpinner.vc},provide(){return{noContainer:vue.computed(()=>this.noContainer)}},props:{noContainer:{type:Boolean,default:!1}}};function _sfc_render$3(e,n,t,o,r,a){const s=vue.resolveComponent("BTabs");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(t.noContainer?"vs-tabs--no-container":"vs-tabs"),"data-test":"vs-tabs"},[vue.createVNode(s,{"no-container":t.noContainer,align:t.noContainer?"center":null},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},8,["no-container","align"])],2)}const Tabs=LoadingSpinner._export_sfc(_sfc_main$b,[["render",_sfc_render$3]]),_sfc_main$a={name:"VsTabItem",status:"prototype",release:"0.0.1",components:{VsHeading:LoadingSpinner.VsHeading,BTab:LoadingSpinner.dc},mixins:[LoadingSpinner.dataLayerMixin],inject:["noContainer"],props:{title:{type:String,required:!0}},methods:{trackClick(e){this.createDataLayerObject("tabClickEvent",e,null)}}};function _sfc_render$2(e,n,t,o,r,a){const s=vue.resolveComponent("VsHeading"),i=vue.resolveComponent("BTab");return vue.openBlock(),vue.createBlock(i,{class:"vs-tab__item","data-test":"vs-tab__item","title-link-class":a.noContainer?"vs-tab-link--no-container vs-heading":"vs-tab-link vs-heading",title:t.title,onClick:a.trackClick},{default:vue.withCtx(()=>[vue.createVNode(s,{level:"3","heading-style":"heading-xxs",class:"vs-tab__item__heading"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.title),1)]),_:1}),vue.renderSlot(e.$slots,"default")]),_:3},8,["title-link-class","title","onClick"])}const TabItem=LoadingSpinner._export_sfc(_sfc_main$a,[["render",_sfc_render$2]]),_sfc_main$9={name:"VsTag",status:"prototype",release:"0.0.1",components:{VsLink},props:{href:{type:String,required:!0}}};function _sfc_render$1(e,n,t,o,r,a){const s=vue.resolveComponent("VsLink");return vue.openBlock(),vue.createBlock(s,{class:"vs-tag me-050 mb-100","data-test":"vs-tag",href:t.href},{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},8,["href"])}const Tag=LoadingSpinner._export_sfc(_sfc_main$9,[["render",_sfc_render$1]]),_sfc_main$8={name:"VsTagManagerWrapper",status:"prototype",release:"0.0.1",mixins:[LoadingSpinner.dataLayerMixin],props:{payload:{type:Object,default:()=>{}}},mounted(){this.processPayload(this.payload),document.addEventListener("DOMContentLoaded",()=>{this.dataLayerStore.setTestRun(!0),this.dataLayerStore.setPageUrl(window.location.href)}),this.createDataLayerObject("pageViewTemplateDataEvent")},methods:{processPayload(e){e!==void 0&&Object.keys(e).forEach(n=>{const t=n.replace(/-/g,"_");this.dataLayerStore.processPayload({key:t,value:e[n]})})}}},_hoisted_1$8={"data-test":"vs-tag-manager-wrapper",class:"d-none"};function _sfc_render(e,n,t,o,r,a){return vue.openBlock(),vue.createElementBlock("span",_hoisted_1$8)}const TagManagerWrapper=LoadingSpinner._export_sfc(_sfc_main$8,[["render",_sfc_render]]);function cleanData$1(e){return e.TypedDocuments.map(o=>{var r;return{id:o.Fields.Id.Value||"",title:o.Fields.Title.Value||"",description:o.Fields.Description.Value||"",imgSrc:((r=o.Fields.Image)==null?void 0:r.Value)||"",url:o.Fields.Url.Value||"",dataSrc:"cludo",categoryCard:o.Fields.categoryCard.Value||""}})}async function cludoSearch(e,n,t,o,r,a){const{apiKey:s,customerId:i,engineId:l}=n,u=`https://api-eu1.cludo.com/api/v3/${i}/${l}/search`,c=`${i}:${s}`,d=useFederatedSearchStore();if(d.eventsApiError=!1,d.cludoError=!1,!n)return d.cludoError=!0,d.isLoading=!1,{results:[],totalResults:0};if(r==="events")return{results:[],totalResults:0};try{const v=await fetch(u,{method:"POST",body:JSON.stringify({query:e||"*",operator:a,responseType:"JsonObject",perPage:6,page:t,facets:{Category:r?[r]:null}}),headers:{"Content-Type":"application/json",Authorization:`Basic ${btoa(c)}`}});if(!v.ok)throw d.cludoError=!0,d.isLoading=!1,new Error(`Cludo response message: ${v.status}`);const m=await v.json();return{results:cleanData$1(m),totalResults:m.TotalDocument}}catch{return d.cludoError=!0,d.isLoading=!1,{results:[],totalResults:0}}}function cleanData(e){return e.events.map(o=>{var r,a,s,i,l,u,c;return{id:o.id,parentId:o.parentId,title:o.name,description:((a=(r=o.descriptions)==null?void 0:r[0])==null?void 0:a.description)||"",imgSrc:((i=(s=o.images)==null?void 0:s[0])==null?void 0:i.url)||"",url:((u=(l=o.performances)==null?void 0:l[0])==null?void 0:u.url)||"",placeUrl:o.place.website,location:o.place.town,startDate:o.startFormatted,endDate:o.endFormatted,minPrice:(c=o.minPrice)==null?void 0:c.toString(),dataSrc:"data-thistle",categoryCard:o.categoryCard||""}})}async function eventSearch(e,n,t,o,r,a,s,i,l,u,c,d,v){const m=useFederatedSearchStore();m.eventsApiError=!1,m.cludoError=!1;let f=`${e}?query=${n}&lang=${l}`;f=t>1?`${f}&page=${t}`:f,f=a!==""?`${f}&startDate=${a}`:f,f=s!==""?`${f}&endDate=${s}`:f,f=i?`${f}&sort=${i}`:f,f=o==="events"?`${f}&pageSize=12`:`${f}&pageSize=6`,f=u?`${f}&postcode=${u}`:f,f=c?`${f}&location=${c}`:f,f=d?`${f}&radius=${d}`:f,f=v?`${f}&postcodeareas=${v}`:f,r.forEach(p=>{f+=`&category=${p}`}),o&&o!=="events"&&(f+=`&category=${o}`);try{const p=await fetch(f);if(!p.ok)throw m.isLoading=!1,m.eventsApiError=!0,new Error(`Events response message: ${p.status}`);const g=await p.json();return{results:cleanData(g),totalResults:g.totalResults}}catch{return m.isLoading=!1,m.eventsApiError=!0,{results:[],totalResults:0}}}async function cludoAutocomplete(e,n){const{apiKey:t,customerId:o,engineId:r}=n,s=`https://api-eu1.cludo.com/api/v3/${o}/${r}/Autocomplete`,i=`${o}:${t}`;try{const l=await fetch(s,{method:"POST",body:JSON.stringify({text:e}),headers:{"Content-Type":"application/json",Authorization:`Basic ${btoa(i)}`}});if(!l.ok)throw new Error(`Autocomplete search error ${l.status}`);return await l.json()}catch(l){throw new Error(`Autocomplete search error: ${l}`)}}const useFederatedSearchStore=pinia.defineStore("federatedSearch",()=>{const e=vue.ref(null),n=vue.ref(void 0),t=vue.ref(!1),o=vue.ref(1),r=vue.ref(void 0),a=vue.ref(!1),s=vue.ref(!1),i=vue.ref(null),l=vue.ref(""),u=vue.ref(null),c=vue.ref(null),d=vue.ref([]),v=vue.ref([]),m=vue.ref(void 0),f=vue.ref(void 0),p=vue.ref(void 0),g=vue.ref(!1),_=vue.ref(""),h=vue.ref(""),b=vue.ref(void 0),V=vue.ref(void 0),S=vue.ref(void 0),$=vue.ref(-1),w=vue.ref(""),k=vue.ref(""),P=vue.ref(""),O=vue.ref(0),B=vue.ref(""),T=vue.ref("or");async function L(F=!1){s.value=!0,F||($.value+=1);const A=await cludoSearch(l.value,n.value,o.value,u.value,c.value,T.value),C=await eventSearch(r.value,l.value,o.value,c.value,v.value,_.value,h.value,b.value,S.value,k.value,P.value,O.value,B.value);i.value=[...A.results,...C.results],f.value=A.totalResults,p.value=C.totalResults,m.value=A.totalResults+C.totalResults,s.value=!1}async function E(){return cludoAutocomplete(l.value,n.value)}async function z(F,A){const C=new URL(window.location.href);if(A?w.value="Autosuggestion":w.value="User input",l.value?C.searchParams.set("search-term",l.value):C.searchParams.delete("search-term"),c.value?C.searchParams.set("category",encodeURIComponent(c.value)):C.searchParams.delete("category"),v.value.length>0?C.searchParams.set("sub-category",encodeURIComponent(v.value.join(","))):C.searchParams.delete("sub-category"),F?(o.value=1,C.searchParams.set("page",o.value.toString())):o.value&&o.value>1?C.searchParams.set("page",o.value.toString()):C.searchParams.delete("page"),_.value?C.searchParams.set("start-date",_.value):C.searchParams.delete("start-date"),h.value?C.searchParams.set("end-date",h.value):C.searchParams.delete("end-date"),b.value?C.searchParams.set("sort-by",b.value):C.searchParams.delete("sort-by"),!g.value)window.history.pushState({},"",C),await L();else{const D=`${V.value}/${C.search}`;window.location.href=D}}return{filters:e,currentPage:o,cludoCredentials:n,cludoError:t,eventsApi:r,eventsApiError:a,getAutoComplete:E,getSearchResults:L,isLoading:s,results:i,searchTerm:l,searchUrl:V,selectedCategory:u,selectedCategoryKey:c,selectedSubCategory:d,selectedSubCategoryKey:v,totalResults:m,totalResultsCludo:f,totalResultsEvents:p,navigateToResultsPage:z,isHomePage:g,startDate:_,endDate:h,sortBy:b,siteLanguage:S,searchInSessionCount:$,queryInput:w,postcode:k,location:P,radius:O,postcodeareas:B,cludoApiOperator:T}}),_hoisted_1$7={class:"vs-fed-filter"},_hoisted_2$6={class:"vs-fed-filter__scroll-container"},_hoisted_3$4=["id"],_sfc_main$7={__name:"FedFilter",props:{filterCategories:{type:Array,required:!0},variant:{type:String,default:"primary",validator:e=>/^(primary|secondary)$/.test(e)},wrap:{type:Boolean,default:!1},activeFilter:{type:[String,Array],default:""},scrollButtons:{type:Boolean,default:!1},scrollLeftText:{type:String,default:""},scrollRightText:{type:String,default:""}},emits:["filter-updated"],setup(e,{expose:n}){const t=e,o=vue.ref(null);function r(c){return typeof t.activeFilter=="string"?t.activeFilter===c:t.activeFilter&&typeof t.activeFilter=="object"?t.activeFilter.includes(c):!1}function a(c){var d,v;c==="left"?(d=o.value)==null||d.scrollBy(-200,0):c==="right"&&((v=o.value)==null||v.scrollBy(200,0))}function s(){var c;(c=o.value)==null||c.scrollTo(0,0)}n({resetScroll:s});function i(){return[`vs-fed-filter__scroll-rail--${t.variant}`,t.wrap?"vs-fed-filter__scroll-rail--wrap":""]}const l=vue.computed(()=>[...t.filterCategories].sort((d,v)=>{const m=(d.Label||d.Key||"").toLowerCase(),f=(v.Label||v.Key||"").toLowerCase();return m<f?-1:m>f?1:0}));function u(c){let d;switch(c){case"accommodation":d="fa-regular fa-bed";break;case"active-adventure":d="fa-kit fa-vs-landscape";break;case"city-break":d="fa-regular fa-city";break;case"culture-history":d="fa-regular fa-chess-rook";break;case"events":d="fa-regular fa-calendar-range";break;case"family-friendly":d="fa-regular fa-family";break;case"food-drink":d="fa-regular fa-utensils";break;case"nature-outdoors":d="fa-regular fa-leaf";break;case"tours":d="fa-regular fa-binoculars";break;case"travel-information":d="fa-regular fa-circle-info";break;case"wellness":d="fa-regular fa-spa";break;default:d=null;break}return d}return(c,d)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$7,[c.$slots["fed-filter-header"]&&c.$slots["fed-filter-header"]()?(vue.openBlock(),vue.createBlock(LoadingSpinner.VsBody,{key:0,class:"vs-fed-filter__header mb-025 ms-025","data-test":"vs-fed-filter__header"},{default:vue.withCtx(()=>[vue.renderSlot(c.$slots,"fed-filter-header")]),_:3})):vue.createCommentVNode("",!0),vue.createElementVNode("div",_hoisted_2$6,[e.scrollButtons?(vue.openBlock(),vue.createBlock(LoadingSpinner.VsButton,{key:0,variant:"secondary",icon:"fa-regular fa-chevron-left","icon-only":"",class:"vs-fed-filter__scroll-button me-050","data-test":"vs-fed-filter__scroll-button--left",onClick:d[0]||(d[0]=v=>a("left")),"aria-label":t.scrollLeftText},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.scrollLeftText),1)]),_:1},8,["aria-label"])):vue.createCommentVNode("",!0),vue.createElementVNode("div",{class:vue.normalizeClass(["vs-fed-filter__scroll-rail",i()]),id:`vs-fed-filter__scroll-rail--${t.variant}`,ref_key:"scrollRail",ref:o},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(l.value,(v,m)=>(vue.openBlock(),vue.createBlock(LoadingSpinner.VsButton,{key:m,class:"vs-fed-filter__category-button","data-test":`vs-fed-filter__category-button--${v.Key}`,icon:t.variant==="primary"?u(v.Key):null,variant:r(v.Key)?"primary":"secondary",size:t.variant==="secondary"?"sm":"md",onClick:f=>c.$emit("filter-updated",v)},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(v.Label||v.Key),1)]),_:2},1032,["data-test","icon","variant","size","onClick"]))),128))],10,_hoisted_3$4),e.scrollButtons?(vue.openBlock(),vue.createBlock(LoadingSpinner.VsButton,{key:1,variant:"secondary",icon:"fa-regular fa-chevron-right","icon-only":"",class:"vs-fed-filter__scroll-button ms-050","data-test":"vs-fed-filter__scroll-button--right",onClick:d[1]||(d[1]=v=>a("right")),"aria-label":t.scrollRightText},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.scrollRightText),1)]),_:1},8,["aria-label"])):vue.createCommentVNode("",!0)])]))}};function dataLayerComposable$1(){const e=LoadingSpinner.useDataLayerStore(),n=vue.ref(!1),t=vue.computed(()=>e.pageUrl);function o(l,u){const c={};return l.forEach(d=>{c[d]=u[d]||void 0,d==="language"&&c[d]===void 0&&(c[d]=u.site_language||void 0)}),c}function r(){return new Date(Date.now()).toISOString()}function a(l){const c={...e.GTMData,...l};return c.hit_timestamp=r(),c}function s(l){n.value?window.dataLayer.push(l):LoadingSpinner.checkVendorLibrary("dataLayer",()=>{n.value=!0,window.dataLayer.push(l)})}function i(l,u){let c,d,v,m;switch(l){case"siteSearchOpenEvent":c="site_search_open",d={event:c,referrer_page:u.referrer_page},v=a(d),m=o(LoadingSpinner.siteSearchOpenTemplate,v);break;case"siteSearchUsageEvent":c="site_search_event",d={event:c,search_query:u.search_query,query_input:u.query_input,results_count:u.results_count,search_usage_index:u.search_usage_index,search_type:u.search_type,search_origin:u.search_origin||"results_page",interaction_type:"search_input"},v=a(d),m=o(LoadingSpinner.siteSearchUsageTemplate,v);break;case"siteSearchClickEvent":c="site_search_click",d={event:c,interaction_type:u.interaction_type,search_query:u.search_query,query_input:u.query_input,page_number:u.page_number,page_navigation_direction:u.page_navigation_direction,click_text:u.click_text,click_url:u.click_url,click_category:u.click_category,search_usage_index:u.search_usage_index,results_count:u.results_count},v=a(d),m=o(LoadingSpinner.siteSearchClickTemplate,v);break;case"siteSearchCloseEvent":c="site_search_close",d={event:c,search_usage_index:u.search_usage_index,search_query:u.search_query,query_input:u.query_input,page_number:u.page_number,results_count:u.results_count},v=a(d),m=o(LoadingSpinner.siteSearchCloseTemplate,v);break}m&&s(m)}return{pageUrl:t,createDataLayerObject:i,templateFiller:o,compileFullTemplate:a,returnIsoDate:r,pushToDataLayer:s,dataLayerStore:e}}const _hoisted_1$6={class:"vs-fed-search-input"},_hoisted_2$5={class:"vs-fed-search__input"},_hoisted_3$3={class:"vs-fed-search__text-input"},_hoisted_4$3={for:"federated-search",class:"vs-federated-search__label"},_hoisted_5$3={key:0,class:"position-relative"},_hoisted_6$3={class:"vs-fed-search-input__autocomplete"},_hoisted_7$3=["onClick","onKeyup","innerHTML"],_sfc_main$6={__name:"FedSearchInput",props:{cludoApiKey:{type:String,default:getEnvValue("CLUDO_API_KEY")},cludoCustomerId:{type:Number,default:Number(getEnvValue("CLUDO_CUSTOMER_ID"))},cludoEngineId:{type:Number,default:Number(getEnvValue("CLUDO_ENGINE_ID"))},isHomePage:{type:Boolean,default:!1},searchUrl:{type:String,default:void 0},filters:{type:Array,default:void 0},subFilters:{type:Array,default:void 0},labels:{type:Object,required:!0}},setup(e){const n=dataLayerComposable$1(),t=e,o=useFederatedSearchStore(),{isLoading:r}=pinia.storeToRefs(o),a=vue.ref(),s=vue.ref(null),i=vue.ref(null);async function l(h){o.currentPage=1,o.searchTerm=h.value.trim();const b=window.location.search,V=new URLSearchParams(b);o.searchTerm&&V.get("search-term")!==o.searchTerm&&(a.value=await o.getAutoComplete()),o.searchTerm||(a.value=null)}async function u(){a.value=null,await o.navigateToResultsPage(),n.createDataLayerObject("siteSearchUsageEvent",{search_query:o.searchTerm,query_input:o.queryInput,results_count:o.totalResults,search_usage_index:o.searchInSessionCount,search_type:o.searchInSessionCount===1?"initial":"follow-up"})}function c(h){n.createDataLayerObject("siteSearchClickEvent",{interaction_type:"search_autosuggest",search_query:o.searchTerm,page_number:o.currentPage,search_usage_index:o.searchInSessionCount,results_count:o.totalResults,click_text:h,query_input:o.queryInput})}function d(h){o.searchTerm=h,a.value=null,o.navigateToResultsPage(!1,!0),c(h)}function v(h){return h.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function m(h){return h.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function f(h){const b=(o.searchTerm||"").trim();if(!b)return m(h);const V=new RegExp(`(${v(b)})`,"gi");return m(h).replace(V,"<strong>$1</strong>")}function p(h){n.createDataLayerObject("siteSearchClickEvent",{interaction_type:"facet_click",search_query:o.searchTerm,page_number:o.currentPage,search_usage_index:o.searchInSessionCount,results_count:o.totalResults,click_text:h.Label||h.Key})}async function g(h){const b=new URL(window.location);b.searchParams.delete("page"),o.currentPage=1,b.searchParams.delete("start-date"),b.searchParams.delete("end-date"),o.startDate="",o.endDate="",o.sortBy=void 0,o.selectedSubCategory=[],o.selectedSubCategoryKey=[],o.selectedCategory=o.selectedCategory!==h.Label?h.Label:"",o.selectedCategoryKey=o.selectedCategoryKey!==h.Key?h.Key:"",await o.navigateToResultsPage(!0),p(h)}function _(h){if(!o.selectedSubCategoryKey.includes(h.Key))o.selectedSubCategory.push(h.Label),o.selectedSubCategoryKey.push(h.Key);else{const b=o.selectedSubCategoryKey.indexOf(h.Key);b>=0&&(o.selectedSubCategory.splice(b,1),o.selectedSubCategoryKey.splice(b,1))}o.navigateToResultsPage(!0),p(h)}return vue.onMounted(()=>{o.cludoCredentials={apiKey:t.cludoApiKey,customerId:t.cludoCustomerId,engineId:t.cludoEngineId},o.isHomePage=t.isHomePage,t.searchUrl&&(o.searchUrl=t.searchUrl);const h=window.location.search,b=new URLSearchParams(h);b.has("search-term")&&(o.searchTerm=b.get("search-term")),b.has("category")&&(o.selectedCategoryKey=decodeURIComponent(b.get("category"))),b.has("sub-category")&&decodeURIComponent(b.get("sub-category")).split(",").forEach(S=>o.selectedSubCategoryKey.push(S)),b.has("category")&&b.get("category")==="events"&&b.has("sort-by")&&(o.sortBy=b.get("sort-by")),b.has("start-date")&&(o.startDate=b.get("start-date")),b.has("end-date")&&(o.endDate=b.get("end-date")),b.has("postcode")&&(o.postcode=b.get("postcode")),b.has("location")&&(o.location=b.get("location")),b.has("radius")&&(o.radius=b.get("radius")),b.has("postcodeareas")&&(o.postcodeareas=b.get("postcodeareas")),(b.has("search-term")||b.has("category"))&&o.getSearchResults()}),vue.watch(r,h=>{var b,V;h||((b=s.value)==null||b.resetScroll(),(V=i.value)==null||V.resetScroll())}),(h,b)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$6,[vue.createElementVNode("div",_hoisted_2$5,[vue.createElementVNode("div",_hoisted_3$3,[vue.createElementVNode("label",_hoisted_4$3,[b[0]||(b[0]=vue.createElementVNode("span",{class:"visually-hidden"}," Search for something ",-1)),vue.createVNode(vue.unref(LoadingSpinner.VsIcon),{icon:"vs-icon-control-search",size:"xs"})]),vue.createVNode(vue.unref(VsInput),{"auto-complete":!1,class:"vs-federated-search__input w-100","field-name":"federated-search",name:"searchrequest",placeholder:t.labels.searchLabel,type:"search",value:vue.unref(o).searchTerm,onUpdated:l,onKeyup:vue.withKeys(u,["enter"])},null,8,["placeholder","value"])]),vue.createVNode(vue.unref(LoadingSpinner.VsButton),{class:"d-none d-lg-block px-200",disabled:vue.unref(r),onClick:u},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.labels.search),1)]),_:1},8,["disabled"])]),a.value&&a.value.length>0?(vue.openBlock(),vue.createElementBlock("div",_hoisted_5$3,[vue.createElementVNode("div",_hoisted_6$3,[vue.createVNode(vue.unref(VsList),{unstyled:""},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(a.value,V=>(vue.openBlock(),vue.createElementBlock("li",{key:V,class:"vs-fed-search-input__autocomplete__suggestion",onClick:S=>d(V),onKeyup:vue.withKeys(S=>d(V),["enter"]),tabindex:"0",innerHTML:f(V)},null,40,_hoisted_7$3))),128))]),_:1})])])):vue.createCommentVNode("",!0),t.filters?(vue.openBlock(),vue.createBlock(_sfc_main$7,{key:1,"active-filter":vue.unref(o).selectedCategoryKey,"filter-categories":t.filters,ref_key:"categoryFilter",ref:s,wrap:!0,onFilterUpdated:g},null,8,["active-filter","filter-categories"])):vue.createCommentVNode("",!0),vue.unref(o).selectedCategoryKey==="events"&&t.subFilters?(vue.openBlock(),vue.createBlock(_sfc_main$7,{key:2,"active-filter":vue.unref(o).selectedSubCategoryKey,class:"mt-200","filter-categories":t.subFilters,ref_key:"subCategoryFilter",ref:i,variant:"secondary",onFilterUpdated:_},{"fed-filter-header":vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.labels.refine),1)]),_:1},8,["active-filter","filter-categories"])):vue.createCommentVNode("",!0)]))}},_hoisted_1$5={key:0,for:"vs-fed-search-sort__from-date",class:"vs-fed-search-sort__label","data-test":"vs-fed-search-sort__from-date-label"},_hoisted_2$4={key:0,for:"vs-fed-search-sort__to-date",class:"vs-fed-search-sort__label","data-test":"vs-fed-search-sort__to-date-label"},_sfc_main$5={__name:"FedSearchSort",props:{dateFilterVisible:{type:Boolean,default:!1},sortOptions:{type:Array,required:!0},fromDateLabel:{type:String,required:!0},toDateLabel:{type:String,required:!0},sortLabel:{type:String,required:!0}},emits:["from-date-updated","end-date-updated","sort-order-updated"],setup(e){const n=useFederatedSearchStore(),t=e,o=vue.computed(()=>t.sortOptions.find(r=>r.key===n.sortBy));return(r,a)=>(vue.openBlock(),vue.createBlock(LoadingSpinner.VsRow,{class:"vs-fed-search-sort"},{default:vue.withCtx(()=>[t.dateFilterVisible?(vue.openBlock(),vue.createBlock(LoadingSpinner.VsCol,{key:0,cols:"6",md:"4"},{default:vue.withCtx(()=>[t.fromDateLabel?(vue.openBlock(),vue.createElementBlock("label",_hoisted_1$5,vue.toDisplayString(t.fromDateLabel),1)):vue.createCommentVNode("",!0),vue.createVNode(VsInput,{"field-name":"vs-fed-search-sort__from-date",value:vue.unref(n).startDate||new Date().toJSON().slice(0,10),type:"date","auto-complete":!1,onInput:a[0]||(a[0]=s=>r.$emit("from-date-updated",s.target.value)),"data-chromatic":"ignore"},null,8,["value"])]),_:1})):vue.createCommentVNode("",!0),t.dateFilterVisible?(vue.openBlock(),vue.createBlock(LoadingSpinner.VsCol,{key:1,cols:"6",md:"4"},{default:vue.withCtx(()=>[t.toDateLabel?(vue.openBlock(),vue.createElementBlock("label",_hoisted_2$4,vue.toDisplayString(t.toDateLabel),1)):vue.createCommentVNode("",!0),vue.createVNode(VsInput,{"field-name":"vs-fed-search-sort__to-date",type:"date","auto-complete":!1,onInput:a[1]||(a[1]=s=>r.$emit("end-date-updated",s.target.value)),value:vue.unref(n).endDate||""},null,8,["value"])]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(LoadingSpinner.VsCol,{cols:"12",md:"4",class:"vs-fed-search-sort__dropdown-wrapper"},{default:vue.withCtx(()=>[vue.createVNode(VsDropdown,{variant:"secondary",id:"vs-fed-search-sort__dropdown",name:"vs-fed-search-sort__dropdown",text:vue.unref(n).sortBy?`${t.sortLabel}: ${o.value.label}`:t.sortLabel},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.sortOptions,(s,i)=>(vue.openBlock(),vue.createBlock(VsDropdownItem,{key:i,onClick:l=>{r.$emit("sort-order-updated",s.key)},active:vue.unref(n).sortBy===s.key,"data-test":`vs-fed-search-sort__dropdown-item--${s.key}`},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(s.label),1)]),_:2},1032,["onClick","active","data-test"]))),128))]),_:1},8,["text"])]),_:1})]),_:1}))}},_hoisted_1$4={class:"vs-federated-search","data-test":"vs-federated-search"},_hoisted_2$3={class:"vs-federated-search__container"},_hoisted_3$2={key:0,class:"vs-federated-search__results","data-chromatic":"ignore"},_hoisted_4$2={key:2,"data-chromatic":"ignore"},_hoisted_5$2={class:"position-relative"},_hoisted_6$2={class:"position-absolute bottom-0 start-0 d-flex gap-2"},_hoisted_7$2={class:"position-absolute bottom-0 end-0 d-flex"},_hoisted_8={class:"truncate-3-lines text-break"},_hoisted_9={class:"d-flex justify-content-end align-items-end mt-050"},_hoisted_10={key:0,class:"d-flex align-items-start flex-grow-1"},_hoisted_11={key:3,class:"vs-federated-search__warning mb-300"},fallbackImg="https://static.visitscotland.com/img/fallback-img.png",_sfc_main$4={__name:"FederatedSearch",props:{cludoApiKey:{type:String,default:getEnvValue("CLUDO_API_KEY")},cludoCustomerId:{type:Number,default:Number(getEnvValue("CLUDO_CUSTOMER_ID"))},cludoEngineId:{type:Number,default:Number(getEnvValue("CLUDO_ENGINE_ID"))},eventsApi:{type:String,default:getEnvValue("EVENTS_API_URL")},filters:{type:Array,default:void 0},subFilters:{type:Array,default:void 0},errorMessages:{type:Object,required:!0},fromText:{type:String,default:""},paginationLabels:{type:Object,required:!0},searchLabels:{type:Object,required:!0},sortLabels:{type:Object,required:!0},cardCategoryLabels:{type:Object,required:!0,default:()=>{}},siteLanguage:{type:String,default:"en",validator:e=>e.match(/(en|es|it|de|nl|fr)/)},cludoApiOperator:{type:String,default:"or",validator:e=>["and","or"].includes(e)}},setup(e){const n=dataLayerComposable$1(),t=useFederatedSearchStore(),o=vue.ref({message:"",error:!1}),r=e,a=vue.ref(!1),s=vue.computed(()=>{let h;return t.selectedCategoryKey==="events"?h=Math.ceil(t.totalResultsEvents/12):h=t.totalResultsCludo>=t.totalResultsEvents?Math.ceil(t.totalResultsCludo/6):Math.ceil(t.totalResultsEvents/6),h});function i(){t.endDate&&t.startDate>t.endDate?(o.value.error=!0,o.value.message=r.errorMessages.incorrectDateOrder):t.selectedCategoryKey==="events"&&t.eventsApiError&&!t.isLoading?(o.value.error=!0,o.value.message=r.errorMessages.eventError):(t.searchTerm||t.selectedCategory)&&t.selectedCategoryKey!=="events"&&t.cludoError&&!t.isLoading?(o.value.error=!0,o.value.message=r.errorMessages.cludoError):t.totalResults===0&&!t.isLoading?(o.value.error=!0,o.value.message=r.errorMessages.noResults):(o.value.error=!1,o.value.message="")}vue.onMounted(async()=>{if(n.createDataLayerObject("siteSearchOpenEvent",{referrer_page:document.referrer}),t.cludoCredentials={apiKey:r.cludoApiKey,customerId:r.cludoCustomerId,engineId:r.cludoEngineId},t.eventsApi=r.eventsApi,t.filters=r.filters,t.siteLanguage=r.siteLanguage,t.cludoApiOperator=r.cludoApiOperator,i(),typeof window<"u"&&typeof document<"u"){window.onbeforeunload=()=>{_()};const h=new URLSearchParams(document.location.search),b=h.get("search-term"),V=parseInt(h.get("page"),10);V&&(t.currentPage=V),b&&(t.searchTerm=b),await t.getSearchResults(),b&&n.createDataLayerObject("siteSearchUsageEvent",{search_query:t.searchTerm,query_input:t.queryInput,results_count:t.totalResults,search_usage_index:t.searchInSessionCount,search_type:"initial",search_origin:"home_page"})}});function l(h){t.startDate=h,t.navigateToResultsPage(!0)}function u(h){t.endDate=h,t.navigateToResultsPage(!0)}function c(h){t.sortBy=h,t.navigateToResultsPage(!0)}function d(h){let b=!1;h>t.currentPage&&(b=!0),t.currentPage=h,typeof window<"u"&&window.scrollTo({top:0,left:0,behavior:"smooth"}),t.navigateToResultsPage(),g(b)}function v(h,b){return h===b?h:`${h} - ${b}`}function m(h){return h===null?"":h.match(/\b\d+\.\d\b/)?`£${h}0`:`£${h}`}function f(h){if(h.url)return h.url;if(h.placeUrl)return h.placeUrl;const b="https://www.datathistle.com/event/",V=encodeURIComponent(h.title.replaceAll(" ","-").toLowerCase());return`${b}${h.parentId}-${V}`}function p(h){a.value=!0,n.createDataLayerObject("siteSearchClickEvent",{interaction_type:"search_link_click",search_query:t.searchTerm,page_number:t.currentPage,click_text:h.title,click_url:f(h),click_category:h.categoryCard&&r.cardCategoryLabels[h.categoryCard]?r.cardCategoryLabels[h.categoryCard]:"",search_usage_index:t.searchInSessionCount,results_count:t.totalResults,query_input:t.queryInput})}function g(h){n.createDataLayerObject("siteSearchClickEvent",{interaction_type:"search_link_click",search_query:t.searchTerm,page_number:t.currentPage,page_navigation_direction:h?"forward":"back",search_usage_index:t.searchInSessionCount,results_count:t.totalResults,query_input:t.queryInput})}function _(){a.value||n.createDataLayerObject("siteSearchCloseEvent",{search_query:t.searchTerm,search_usage_index:t.searchInSessionCount,query_input:t.queryInput,page_number:t.currentPage,results_count:t.totalResults})}return vue.onUpdated(()=>{i()}),(h,b)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$4,[vue.createElementVNode("div",_hoisted_2$3,[vue.createVNode(_sfc_main$6,{"cludo-api-key":r.cludoApiKey,"cludo-customer-id":r.cludoCustomerId,"cludo-engine-id":r.cludoEngineId,filters:r.filters,"sub-filters":r.subFilters,labels:r.searchLabels},null,8,["cludo-api-key","cludo-customer-id","cludo-engine-id","filters","sub-filters","labels"]),vue.createVNode(_sfc_main$2B,{class:"my-200"}),(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(t).filters,(V,S)=>vue.withDirectives((vue.openBlock(),vue.createElementBlock("div",{key:S,class:"mb-200"},[vue.renderSlot(h.$slots,`federated-search__spotlight-${V.Key}`)],512)),[[vue.vShow,vue.unref(t).selectedCategoryKey===V.Key]])),128)),vue.unref(t).results?(vue.openBlock(),vue.createElementBlock("div",_hoisted_3$2,[vue.createElementVNode("div",null,[vue.createVNode(vue.unref(LoadingSpinner.VsHeading),{"heading-style":"heading-m",level:2,class:"my-0"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.searchLabels.searchResults),1)]),_:1}),vue.unref(t).totalResults!==0?(vue.openBlock(),vue.createBlock(vue.unref(VsDetail),{key:0},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.searchLabels.resultsFirst)+" "+vue.toDisplayString(vue.unref(t).totalResults)+" "+vue.toDisplayString(r.searchLabels.resultsSecond),1)]),_:1})):vue.createCommentVNode("",!0)]),vue.unref(t).selectedCategoryKey==="events"?(vue.openBlock(),vue.createBlock(_sfc_main$5,{key:0,"date-filter-visible":!0,"sort-options":r.sortLabels.sortOptions,"from-date-label":r.sortLabels.dateFrom,"to-date-label":r.sortLabels.dateTo,"sort-label":r.sortLabels.sort,onFromDateUpdated:l,onEndDateUpdated:u,onSortOrderUpdated:c},null,8,["sort-options","from-date-label","to-date-label","sort-label"])):vue.createCommentVNode("",!0)])):vue.createCommentVNode("",!0),vue.unref(t).isLoading?(vue.openBlock(),vue.createBlock(vue.unref(LoadingSpinner.VsLoading),{key:1})):vue.createCommentVNode("",!0),!vue.unref(t).isLoading&&vue.unref(t).results&&!vue.unref(t).eventsApiError?(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$2,[vue.createVNode(vue.unref(VsCardGroup),{"cards-per-row":3,class:vue.normalizeClass(vue.unref(t).results&&s.value<=1?"mb-300":null)},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(t).results,V=>(vue.openBlock(),vue.createBlock(vue.unref(VsCard),{key:V.id},{"vs-card-header":vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_5$2,[vue.createVNode(vue.unref(LoadingSpinner.VsImg),{src:V.imgSrc||fallbackImg,class:"w-100 aspect-ratio-3-2 rounded-1 object-fit-cover img-zoom-on-hover"},null,8,["src"]),vue.createElementVNode("div",_hoisted_6$2,[V.minPrice?(vue.openBlock(),vue.createBlock(vue.unref(VsBadge),{key:0,variant:"information",class:"rounded-top-end rounded-bottom-start"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.fromText)+" "+vue.toDisplayString(m(V.minPrice)),1)]),_:2},1024)):vue.createCommentVNode("",!0),V.startDate?(vue.openBlock(),vue.createBlock(vue.unref(VsBadge),{key:1,variant:"information",class:"rounded-top-end rounded-top-start"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(v(V.startDate,V.endDate)),1)]),_:2},1024)):vue.createCommentVNode("",!0)]),vue.createElementVNode("div",_hoisted_7$2,[V.categoryCard&&e.cardCategoryLabels[V.categoryCard]?(vue.openBlock(),vue.createBlock(vue.unref(VsBadge),{key:0,variant:"highlight",class:"rounded-top-start rounded-bottom-start mx-0"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(e.cardCategoryLabels[V.categoryCard]),1)]),_:2},1024)):vue.createCommentVNode("",!0)])])]),"vs-card-body":vue.withCtx(()=>[vue.createVNode(vue.unref(LoadingSpinner.VsHeading),{level:"3","heading-style":"heading-xs"},{default:vue.withCtx(()=>[vue.createVNode(vue.unref(VsLink),{href:f(V),onClick:S=>p(V),class:"stretched-link",variant:"secondary"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(V.title),1)]),_:2},1032,["href","onClick"])]),_:2},1024),vue.createVNode(vue.unref(LoadingSpinner.VsBody),null,{default:vue.withCtx(()=>[vue.createElementVNode("p",_hoisted_8,vue.toDisplayString(V.description),1)]),_:2},1024)]),"vs-card-footer":vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_9,[V.location?(vue.openBlock(),vue.createElementBlock("div",_hoisted_10,[vue.createVNode(vue.unref(LoadingSpinner.VsIcon),{icon:"fa-solid fa-location-dot",variant:"highlight",class:"me-050",size:"sm"}),vue.createVNode(vue.unref(VsDetail),{"no-margins":"",color:"tertiary"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(V.location),1)]),_:2},1024)])):vue.createCommentVNode("",!0),vue.createElementVNode("div",null,[V.dataSrc==="data-thistle"?(vue.openBlock(),vue.createBlock(vue.unref(LoadingSpinner.VsIcon),{key:0,icon:"vs-icon-control-external-link",variant:"highlight",size:"sm"})):vue.createCommentVNode("",!0)])])]),_:2},1024))),128))]),_:1},8,["class"]),vue.unref(t).results&&s.value>1?(vue.openBlock(),vue.createBlock(vue.unref(_sfc_main$D),{key:0,class:"vs-federated-search__pagination","number-of-pages":s.value,"next-button-label":r.paginationLabels.nextButtonLabel,"previous-button-label":r.paginationLabels.previousButtonLabel,"page-label":r.paginationLabels.pageLabel,"of-label":r.paginationLabels.ofLabel,modelValue:vue.unref(t).currentPage,"onUpdate:modelValue":b[0]||(b[0]=V=>vue.unref(t).currentPage=V),onPageClick:d},null,8,["number-of-pages","next-button-label","previous-button-label","page-label","of-label","modelValue"])):vue.createCommentVNode("",!0)])):vue.createCommentVNode("",!0),o.value.error?(vue.openBlock(),vue.createElementBlock("div",_hoisted_11,[o.value.error?(vue.openBlock(),vue.createBlock(vue.unref(LoadingSpinner.VsWarning),{key:0},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(o.value.message),1)]),_:1})):vue.createCommentVNode("",!0)])):vue.createCommentVNode("",!0)]),vue.createVNode(vue.unref(LoadingSpinner.VsWarning),{"data-test":"vs-federated-search__error--no-js",class:"vs-federated-search__error--no-js mb-300"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.searchLabels.noJs),1)]),_:1})]))}};var define_process_env_default={};function setScriptSrc(e,n){e.src=n}const bootstrap=e=>{var n,t,o,r="The Google Maps JavaScript API",a="google",s="importLibrary",i="__ib__",l=document,u=window,c=u[a]||(u[a]={}),d=c.maps||(c.maps={}),v=new Set,m=new URLSearchParams,f=()=>n||(n=new Promise(async(p,g)=>{var _;await(t=l.createElement("script")),m.set("libraries",[...v]+"");for(o in e)m.set(o.replace(/[A-Z]/g,h=>"_"+h[0].toLowerCase()),e[o]);m.set("callback",a+".maps."+i),setScriptSrc(t,"https://maps.googleapis.com/maps/api/js?"+m),d[i]=p,t.onerror=()=>n=g(Error(r+" could not load.")),t.nonce=((_=l.querySelector("script[nonce]"))==null?void 0:_.nonce)||"",l.head.append(t)}));d[s]?console.warn(r+" only loads once. Ignoring:",e):d[s]=(p,...g)=>v.add(p)&&f().then(()=>d[s](p,...g))},MSG_REPEATED_SET_OPTIONS=e=>`The setOptions() function should only be called once. The options passed to the additional call (${JSON.stringify(e)}) will be ignored.`,MSG_IMPORT_LIBRARY_EXISTS=e=>`The google.maps.importLibrary() function is already defined, and @googlemaps/js-api-loader will use the existing function instead of overwriting it. The options passed to setOptions (${JSON.stringify(e)}) will be ignored.`,MSG_SET_OPTIONS_NOT_CALLED="No options were set before calling importLibrary. Make sure to configure the loader using setOptions().",MSG_SCRIPT_ELEMENT_EXISTS="There already is a script loading the Google Maps JavaScript API, and no google.maps.importLibrary function is defined. @googlemaps/js-api-loader will proceed to bootstrap the API with the specified options, but the existing script might cause problems using the API. Make sure to remove the script loading the API.",logDevWarning=define_process_env_default.NODE_ENV!=="production"?e=>{console.warn(`[@googlemaps/js-api-loader] ${e}`)}:()=>{},logDevNotice=define_process_env_default.NODE_ENV!=="production"?e=>{console.info(`[@googlemaps/js-api-loader] ${e}`)}:()=>{};let setOptionsWasCalled_=!1;function setOptions(e){if(setOptionsWasCalled_){logDevWarning(MSG_REPEATED_SET_OPTIONS(e));return}installImportLibrary_(e),setOptionsWasCalled_=!0}async function importLibrary(e){var n,t;if(setOptionsWasCalled_||logDevWarning(MSG_SET_OPTIONS_NOT_CALLED),!((t=(n=window==null?void 0:window.google)==null?void 0:n.maps)!=null&&t.importLibrary))throw new Error("google.maps.importLibrary is not installed.");return await google.maps.importLibrary(e)}function installImportLibrary_(e){var t,o;const n=!!((o=(t=window.google)==null?void 0:t.maps)!=null&&o.importLibrary);n?logDevNotice(MSG_IMPORT_LIBRARY_EXISTS(e)):define_process_env_default.NODE_ENV!=="production"&&document.querySelector('script[src*="maps.googleapis.com/maps/api/js"]')&&logDevWarning(MSG_SCRIPT_ELEMENT_EXISTS),n||bootstrap(e)}const useGoogleMapStore=pinia.defineStore("googleMap",()=>{const e=vue.ref(!0),n=vue.ref(Date.now()),t=vue.ref(!1),o=vue.ref(0),r=vue.ref(0);return{sidebarOpen:e,timeMounted:n,firstInteraction:t,searchesCount:o,filterUsesCount:r}}),_hoisted_1$3={class:"px-125 pb-125"},_sfc_main$3={__name:"MapFeaturedLocationItem",props:{place:{type:Object,default:()=>{}}},setup(e){const n=e,t=vue.inject("onFeaturedLocationClick");function o(r){t(r)}return(r,a)=>(vue.openBlock(),vue.createBlock(VsCard,{"card-style":"overlay",class:"vs-map__controls-featured-place-card",onClick:a[2]||(a[2]=s=>o(n.place))},vue.createSlots({"vs-card-footer":vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$3,[vue.createVNode(LoadingSpinner.VsHeading,{class:"vs-map__controls-featured-place-card-heading","heading-style":"heading-xxxs",level:"2","no-margins":""},{default:vue.withCtx(()=>[vue.createVNode(VsLink,{class:"stretched-link text-decoration-none",href:"#",variant:"on-dark",onKeyup:[a[0]||(a[0]=vue.withKeys(vue.withModifiers(s=>o(n.place),["prevent"]),["enter"])),a[1]||(a[1]=vue.withKeys(vue.withModifiers(s=>o(n.place),["prevent"]),["space"]))]},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(n.place.properties.title),1)]),_:1})]),_:1})])]),_:2},[n.place.properties.image?{name:"vs-card-image",fn:vue.withCtx(()=>[vue.createVNode(LoadingSpinner.VsImg,{class:"vs-map__controls-featured-place-img w-100 rounded-1 object-fit-cover img-zoom-on-hover",src:n.place.properties.image,"use-lazy-loading":!1},null,8,["src"])]),key:"0"}:void 0]),1024))}},_hoisted_1$2={class:"category-title"},_hoisted_2$2={class:"vs-map__controls-featured-place-accordion-content p-075"},_sfc_main$2={__name:"MapFeaturedLocation",setup(e){const{categories:n,places:t}=vue.inject("featuredPlaces");function o(r){switch(r){case"cities":return"fa-regular fa-city";case"regions":return"fa-regular fa-map-location-dot";case"islands":return"fa-regular fa-island-tropical";case"towns":return"fa-regular fa-house-chimney-window";case"national-parks":return"fa-kit fa-vs-icon-national-park";default:return null}}return(r,a)=>vue.unref(n)&&vue.unref(t)?(vue.openBlock(),vue.createBlock(VsAccordion,{key:0},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(n),(s,i)=>(vue.openBlock(),vue.createBlock(VsAccordionItem,{key:i,"control-id":s.id,"open-by-default":s.id==="cities"},{title:vue.withCtx(()=>[vue.createVNode(LoadingSpinner.VsIcon,{class:"me-025 fa-fw","custom-colour":"#200F2E",icon:o(s.id),size:"sm",variant:"highlight"},null,8,["icon"]),vue.createElementVNode("span",_hoisted_1$2,vue.toDisplayString(s.label),1)]),default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_2$2,[vue.createVNode(VsCardGroup,{"scroll-snap":"always"},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(t),l=>(vue.openBlock(),vue.createElementBlock(vue.Fragment,null,[l.properties.category.id===s.id?(vue.openBlock(),vue.createBlock(_sfc_main$3,{key:l.properties.id,place:l},null,8,["place"])):vue.createCommentVNode("",!0)],64))),256))]),_:2},1024)])]),_:2},1032,["control-id","open-by-default"]))),128))]),_:1})):vue.createCommentVNode("",!0)}},_hoisted_1$1={class:"vs-map-sidebar__header d-flex"},_hoisted_2$1={class:"vs-map-sidebar__content"},_hoisted_3$1={class:"vs-map-sidebar__input d-flex mt-100 mb-050"},_hoisted_4$1={key:1,class:"vs-map-sidebar__sub-filters-wrapper"},_hoisted_5$1={class:"vs-map-sidebar__search-results"},_hoisted_6$1={class:"vs-map-sidebar__google-maps-container mt-075"},_hoisted_7$1={key:0,class:"vs-map-sidebar__footer"},_sfc_main$1=vue.defineComponent({__name:"MapSidebar",props:{query:{type:String,default:""},selectedCategories:{type:String,default:""},headerLabel:{type:String,default:""},closeSidebarButtonLabel:{type:String,default:""},searchBarAriaLabel:{type:String,default:""},inputPlaceholderLabel:{type:String,default:""},searchButtonLabel:{type:String,default:""},clearMapLabel:{type:String,default:""},subFilterHeaderLabel:{type:String,default:""},searchResultsLabel:{type:String,default:""},openSidebarButtonLabel:{type:String,default:""}},emits:["search-input-changed","reset-map"],setup(e){const n=useGoogleMapStore(),t=e;return(o,r)=>(vue.openBlock(),vue.createElementBlock(vue.Fragment,null,[vue.createElementVNode("div",{class:vue.normalizeClass(["vs-map-sidebar px-125",vue.unref(n).sidebarOpen?"d-block":"d-none"]),"data-test":"vs-map-sidebar",ref:"vsMapSidebar"},[vue.createElementVNode("div",_hoisted_1$1,[t.headerLabel?(vue.openBlock(),vue.createBlock(LoadingSpinner.VsHeading,{key:0,level:"1","heading-style":"heading-xxs",class:"flex-grow-1",id:"vs-map-sidebar__heading","data-test":"vs-map-sidebar__heading"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.headerLabel),1)]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(LoadingSpinner.VsButton,{class:"vs-map-sidebar__sidebar-control vs-map-siderbar__sidebar-control--dismiss","data-test":"vs-map-siderbar__sidebar-control--dismiss",icon:"vs-icon-control-dismiss","icon-only":"",variant:"subtle",onClick:r[0]||(r[0]=a=>vue.unref(n).sidebarOpen=!1)},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.closeSidebarButtonLabel),1)]),_:1})]),vue.createElementVNode("div",_hoisted_2$1,[vue.createElementVNode("div",_hoisted_3$1,[vue.createVNode(VsInput,{type:"text",autocomplete:"off","field-name":"vs-map-search-input","data-test":"vs-map-search-input",ref:"vs-search-input",placeholder:t.inputPlaceholderLabel,class:"vs-map-sidebar__input flex-grow-1","aria-label":t.searchBarAriaLabel,onKeyup:r[1]||(r[1]=vue.withKeys(vue.withModifiers(a=>o.$emit("search-input-changed"),["prevent"]),["enter"]))},null,8,["placeholder","aria-label"]),vue.createVNode(LoadingSpinner.VsButton,{class:"vs-map-sidebar__search-button","data-test":"vs-map-sidebar__search-button",icon:"vs-icon-control-search","icon-only":"",rounded:!1,size:"lg",onClick:r[2]||(r[2]=vue.withModifiers(a=>o.$emit("search-input-changed"),["prevent"])),onKeyup:r[3]||(r[3]=vue.withKeys(vue.withModifiers(a=>o.$emit("search-input-changed"),["prevent"]),["enter"]))},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.searchButtonLabel),1)]),_:1})]),o.$props.query||o.$props.selectedCategories?(vue.openBlock(),vue.createElementBlock("a",{key:0,href:"#",class:"d-block","data-test":"vs-map-sidebar__reset-map",onClick:r[4]||(r[4]=vue.withModifiers(a=>o.$emit("reset-map"),["prevent"])),onKeyup:r[5]||(r[5]=vue.withKeys(vue.withModifiers(a=>o.$emit("reset-map"),["prevent"]),["enter"]))},vue.toDisplayString(t.clearMapLabel),33)):vue.createCommentVNode("",!0),o.$slots["vs-map-sidebar-sub-filters"]&&o.$slots["vs-map-sidebar-sub-filters"]()?(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$1,[vue.createVNode(VsDetail,{class:"vs-map-sidebar__sub-filter-header",size:"small",color:"secondary"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.subFilterHeaderLabel),1)]),_:1}),vue.renderSlot(o.$slots,"vs-map-sidebar-sub-filters")])):vue.createCommentVNode("",!0),vue.createElementVNode("div",_hoisted_5$1,[o.$props.query||o.$props.selectedCategories?(vue.openBlock(),vue.createBlock(LoadingSpinner.VsHeading,{key:0,level:"2","heading-style":"heading-xxxs","data-test":"vs-map-sidebar__search-result-query"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.searchResultsLabel)+' "'+vue.toDisplayString(t.query||t.selectedCategories)+'" ',1)]),_:1})):vue.createCommentVNode("",!0),vue.createElementVNode("div",_hoisted_6$1,[vue.renderSlot(o.$slots,"vs-map-sidebar-search-results")])]),vue.createVNode(_sfc_main$2,{class:vue.normalizeClass(["mb-100",o.$props.query||o.$props.selectedCategories?"d-none":"d-block"])},null,8,["class"])]),o.$props.query||o.$props.selectedCategories?(vue.openBlock(),vue.createElementBlock("div",_hoisted_7$1,[...r[7]||(r[7]=[vue.createElementVNode("hr",{class:"vs-map-sidebar__swipe-tab"},null,-1)])])):vue.createCommentVNode("",!0)],2),vue.createVNode(LoadingSpinner.VsButton,{class:vue.normalizeClass(["vs-map-sidebar__sidebar-control vs-map-sidebar__sidebar-control--open",vue.unref(n).sidebarOpen?"d-none":"d-block"]),"data-test":"vs-map-sidebar__sidebar-control--open",size:"sm",icon:"fa-regular fa-sliders","icon-only":"",onClick:r[6]||(r[6]=a=>vue.unref(n).sidebarOpen=!0)},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.openSidebarButtonLabel),1)]),_:1},8,["class"])],64))}}),cookieCheckerComposable=()=>{const e=vue.ref([]),n=vue.ref(!1),t=vue.ref(!1),o=vue.computed(()=>typeof window<"u"&&window.bypassCookiesRequired?!0:n.value),r=vue.computed(()=>typeof window<"u"&&window.bypassCookiesLoaded?!0:{cookieManagerLoaded:t});function a(){t.value=!0}function s(){let i=!1;typeof CookieControl<"u"&&e.value&&(i=e.value.every(l=>CookieControl.getCategoryConsent(l)===!0)),n.value=i}return vue.onMounted(()=>{window.addEventListener("cookieManagerLoaded",()=>{a()}),window.addEventListener("cookiesUpdated",()=>{s()})}),{requiredCookies:e,cookiesAllowed:o,cookiesLoaded:r}};function dataLayerComposable(){const e=LoadingSpinner.useDataLayerStore(),n=vue.ref(!1),t=vue.computed(()=>e.pageUrl);function o(l,u){const c={};return l.forEach(d=>{c[d]=u[d]||void 0,d==="language"&&c[d]===void 0&&(c[d]=u.site_language||void 0)}),c}function r(){return new Date(Date.now()).toISOString()}function a(l){const c={...e.GTMData,...l};return c.hit_timestamp=r(),c}function s(l){n.value?window.dataLayer.push(l):LoadingSpinner.checkVendorLibrary("dataLayer",()=>{n.value=!0,window.dataLayer.push(l)})}function i(l,u){let c,d,v,m;switch(l){case"googleMapSearchEvent":c="map_search",d={event:c,search_query:u.search_query,search_map_location:u.search_map_location,search_results_count:u.search_results_count,search_usage_index:u.search_usage_index},v=a(d),m=o(LoadingSpinner.googleMapSearchTemplate,v);break;case"googleMapFilterEvent":c="map_filter_interaction",d={event:c,filter_type:u.filter_type,search_map_location:u.search_map_location,filter_selection:u.filter_selection,results_count:u.results_count,filter_usage_index:u.filter_usage_index},v=a(d),m=o(LoadingSpinner.googleMapFilterInteractionTemplate,v);break;case"googleMapTimeToFirstInteractionEvent":c="map_time_to_first_interaction",d={event:c,time_to_first_interaction_ms:u.time_to_first_interaction_ms,first_interaction_type:u.first_interaction_type},v=a(d),m=o(LoadingSpinner.googleMapTimeToFirstInteractionTemplate,v);break;case"googleMapInteractionEvent":c="map_interaction_click",d={event:c,interaction_type:u.interaction_type,search_query:u.search_query,map_location:u.map_location,visible_attractions_count:u.visible_attractions_count,card_attraction_name:u.card_attraction_name,card_attraction_category:u.card_attraction_category,card_attraction_url:u.card_attraction_url,card_attraction_rating:u.card_attraction_rating,interaction_timestamp_ms:u.interaction_timestamp_ms},v=a(d),m=o(LoadingSpinner.googleMapInteractionTemplate,v);break}m&&s(m)}return{pageUrl:t,createDataLayerObject:i,templateFiller:o,compileFullTemplate:a,returnIsoDate:r,pushToDataLayer:s,dataLayerStore:e}}const _hoisted_1={class:"vs-map"},_hoisted_2={class:"vs-map__controls"},_hoisted_3={class:"vs-map-sidebar__sub-filters"},_hoisted_4={key:0},_hoisted_5={key:0,class:"vs-map__filter-controls"},_hoisted_6={class:"vs-map__wrapper"},_hoisted_7={id:"vs-map","map-id":"vs-map",ref:"vsMap"},MAX_ZOOM=17,CATEGORY_VISIBLE_ZOOM=11,NUMBER_OF_RESULTS=20,_sfc_main={__name:"MainMap",props:{apiKey:{type:String,default:getEnvValue("GOOGLE_MAPS_API_KEY")},mapId:{type:String,default:"vs-map"},mapTypeVector:{type:Boolean,default:!1},center:{type:Object,default:()=>({lat:56.490153,lng:-4.10959})},zoom:{type:Number,default:6},radius:{type:Number,default:1e3},labels:{type:Object,default:()=>{}},languageCode:{type:String,default:"en",validator:e=>e.match(/(en|es|it|de|nl|fr)/)},categoriesLocation:{type:String,default:""},categoryLabels:{type:Object,default:()=>{}},featuredPlaces:{type:Object,default:void 0},jsDisabled:{type:Boolean,required:!0},noJsMessage:{type:String,required:!0},noCookiesMessage:{type:String,required:!0},cookieBtnText:{type:String,required:!0},noResultsMessage:{type:String,required:!0},resetMapNoResultsMessage:{type:String,required:!0},alertText:{type:String,default:void 0}},setup(e){const n=dataLayerComposable(),t=e,o=t.categoryLabels.find(N=>N.id==="destinations"),r=o?o.subCategory:null;vue.provide("featuredPlaces",{categories:r,places:t.featuredPlaces}),vue.provide("onFeaturedLocationClick",ye);let a,s,i,l,u,c,d,v,m,f,p={},g;const _=vue.ref(),h=vue.ref(new Set),b=vue.ref(),V=vue.ref(new Set),S=vue.ref(new Set),$=vue.ref(new Set),w=vue.ref(new Set),k=vue.ref(),P=vue.ref(),O=vue.ref(t.zoom),B=vue.ref(!1),T=vue.ref(),L=vue.ref(new Set),E=vue.ref(),z=vue.ref(!1),F=vue.ref(void 0),A=vue.computed(()=>{const N=new Map,I=Y[_.value].subCategory;return Object.values(I).forEach(M=>{N.set(M.id,{includedTypes:M.includedType,excludedTypes:M.excludedType})}),N}),C=useGoogleMapStore(),D=vue.ref(void 0);let R;const G=vue.ref(void 0),U={north:61,south:54.6,west:-8.7,east:.3};let Y={};const X=t.categoryLabels;let W=0;vue.onBeforeMount(()=>{const N=cookieCheckerComposable();N.requiredCookies.value=cookieValues$5.google_maps,R=vue.computed(()=>!N.cookiesAllowed.value&&N.cookiesLoaded.value===!0||!N.cookiesLoaded.value?(G.value="noCookie",!0):!1)}),vue.onMounted(async()=>{if(t.categoriesLocation&&LoadingSpinner.axios.get(t.categoriesLocation).then(I=>{Y=I.data,F.value=I.data.accommodation.keywords}).catch(()=>{}),R.value===!1){setOptions({key:t.apiKey,v:"quarterly",libraries:["maps","places","marker","core","geometry"],region:"GB",language:t.languageCode});try{await importLibrary("maps"),await importLibrary("places"),await importLibrary("marker"),await importLibrary("core"),await importLibrary("geometry")}catch{console.error("Google Maps Library load error")}}s=document.getElementById("vs-map"),i=document.getElementById("nearbySearch"),l=document.getElementById("textSearch"),u=document.querySelector("gmp-place-text-search-request"),c=document.querySelector("gmp-place-nearby-search-request"),d=document.querySelector("gmp-place-details"),v=document.getElementById("placeRequest"),m=document.getElementById("vs-map-search-input");async function N(){try{const I={center:{lat:t.center.lat,lng:t.center.lng},renderingType:t.mapTypeVector?google.maps.RenderingType.VECTOR:google.maps.RenderingType.RASTER,zoom:t.zoom,isFractionalZoomEnabled:!0,mapId:t.mapId,restriction:{latLngBounds:U},zoomControl:!0,fullscreenControl:!1,mapTypeControl:!1,cameraControl:!1,streetViewControl:!1,gestureHandling:"greedy"};if(s)a=new google.maps.Map(s,I),a.fitBounds(U);else throw new Error("Init error, mapContainer undefined")}catch(I){console.error("Maps init error",I.message)}f=new google.maps.InfoWindow,f.addListener("closeclick",()=>{se("card_close",v.place)}),Z(),a.addListener("zoom_changed",()=>{O.value=a.getZoom(),O.value<CATEGORY_VISIBLE_ZOOM?Z():Z(!0)}),a.addListener("idle",()=>{g=_e()}),i.addEventListener("gmp-select",({place:I})=>{p[I.id]&&ce(I,p[I.id])}),l.addEventListener("gmp-select",({place:I})=>{p[I.id]&&ce(I,p[I.id])})}C.firstInteraction=!1,C.searchesCount=0,C.filterUsesCount=0,R.value===!1&&await N()});function Z(N){const I={strokeColor:"#A3A3CC",strokeOpacity:1,strokeWeight:1,fillColor:"#A3A3CC",fillOpacity:.5},M=["ChIJ39UebIqp0EcRqI4tMyWV4fQ","ChIJdZmmmcoQXkgR2OO3bu8o5fc","ChIJ-ydAXOS6WUgRCPTbzjQSfM8","ChIJ7Q8cbLY0ZEgRouilirxxux4","ChIJ1YEuRDCFY0gRDeDw8bxbAuo","ChIJv-VNj0VoEkYRK9BkuJ07sKE","ChIJ-1-U7rYnS0YRzZLgw9BDh1I","ChIJ8fA1bTmyXEYRYm-tjaLruCI","ChIJ6_ktdpMVvEgRJBv3ZEgxsD8","ChIJa76xwh5ymkcRW-WRjmtd6HU","ChIJu-SH28MJxkcRnwq9_851obM","ChIJuwtkpGSZAEcR6lXMScpzdQk","ChIJl5fz7WR9wUcR8g_mObTy60c","ChIJMVd4MymgVA0R99lHx5Y__Ws","ChIJ_ZqKe2cw6UYREPzyaM3PAAA","ChIJE74zDxSU3UYRubpdpdNUCvM","ChIJ4wsuREWc40YRewI60MRYJR4","ChIJ_UuggpyUkkYRwyW0T7qf6kA","ChIJ3fYyS9_KgUYREKh1PNZGAQA","ChIJQ2Dro1Ir0kgRmkXB5TQEim8","ChIJFXfA47sNok4RGOIUAYOdzzQ","ChIJI9HkgQm_ikYR8i7GR23fEbY","ChIJUXXYvLMei0YR7zdFQUIM8bA","ChIJRyEhyrlFlUcR75LTAvZg22Q"],q=["ChIJ39UebIqp0EcRqI4tMyWV4fQ","ChIJdZmmmcoQXkgR2OO3bu8o5fc","ChIJ-ydAXOS6WUgRCPTbzjQSfM8","ChIJ6_ktdpMVvEgRJBv3ZEgxsD8"],H=a.getFeatureLayer(google.maps.FeatureType.COUNTRY),j=a.getFeatureLayer(google.maps.FeatureType.ADMINISTRATIVE_AREA_LEVEL_1);N?(H.style=null,j.style=null,H.style=J=>{if(q.includes(J.feature.placeId))return I},j.style=J=>{if(q.includes(J.feature.placeId))return I}):(H.style=J=>{if(M.includes(J.feature.placeId))return I},j.style=J=>{if(M.includes(J.feature.placeId))return I})}function te(N,I){ue(),_.value=N,Y[N].includedType&&V.value.add(Y[N].includedType),Object.values(Y[N].subCategory).forEach(M=>V.value.add(M.includedType)),Object.values(Y[N].subCategory).forEach(M=>{M.excludedType&&S.value.add(M.excludedType)}),V.value=new Set(Array.from(V.value).flat()),S.value=new Set(Array.from(S.value).flat()),V.value.forEach(M=>{S.value.has(M)&&S.value.delete(M)}),b.value=Y[N],k.value=I,de({includedTypes:Array.from(V.value),excludedTypes:Array.from(S.value)}),T.value=X[k.value].label,m.value=T.value}function ee(N,I){const M=vue.ref([]),q=vue.ref();return N.forEach(()=>{X.forEach(H=>{H.id===_.value&&(M.value=H)}),Object.values(M.value).forEach(H=>{Object.values(H).forEach(j=>{I===j.id&&(q.value=j.label)})})}),q}function oe(){$.value.forEach(N=>{w.value.has(N)&&w.value.delete(N)})}function ae(N,{includeTypes:I=!1,excludeTypes:M=!1,removeIncludedTypes:q=!1,removeExcludedTypes:H=!1}={}){var J;const j=A.value.get(N);I&&j.includedTypes.forEach(Q=>{I&&$.value.add(Q),q&&$.value.delete(Q)}),(M||H)&&((J=j.excludedTypes)==null||J.forEach(Q=>{M&&w.value.add(Q),H&&w.value.delete(Q)}))}function ie(N,I){if(P.value=I,N==="self-catering"){z.value=!0,ve(),h.value=new Set,h.value.add(N);const M=ee(h.value,N).value;T.value=ee(h.value,N).value,ue(),m.value=T.value,fe(),m.value=M}else h.value.has(N)?(h.value.delete(N),$.value=new Set,w.value=new Set,h.value.forEach(M=>{ae(M,{includeTypes:!0,excludeTypes:!0})}),oe(),L.value.delete(ee(h.value,N).value),h.value.size===0?(L.value=new Set,te(_.value,k.value)):(de({includedTypes:Array.from($.value).flat(),excludedTypes:Array.from(w.value).flat()}),T.value=Array.from(L.value).join(", "),m.value=T.value)):(h.value.add(N),ae(N,{includeTypes:!0,excludeTypes:!0}),oe(),de({includedTypes:Array.from($.value).flat(),excludedTypes:Array.from(w.value).flat()}),L.value.add(ee(h.value,N).value),T.value=Array.from(L.value).join(", "),m.value=T.value)}async function de({includedTypes:N=[],excludedTypes:I=[]}={}){le(),ve(),W+=1;const M=W;C.filterUsesCount+=1,E.value="nearby";const q=a.getBounds(),H=q.getNorthEast(),j=q.getSouthWest(),J=google.maps.geometry.spherical.computeDistanceBetween(H,j),Q=Math.min(J/2,25e3);c.includedTypes=N,c.excludedTypes=I??[],c.maxResultCount=NUMBER_OF_RESULTS,c.locationRestriction={center:a.getCenter(),radius:Q},i.style.display="block",i.addEventListener("gmp-load",()=>{if(M!==W)return;pe(M);let ne="main",he=_.value;h.value.size&&(ne="sub",he=Array.from(h.value).join(", ")),n.createDataLayerObject("googleMapFilterEvent",{filter_type:ne,search_map_location:a.getCenter().toString(),filter_selection:he,results_count:i.places.length,filter_usage_index:C.filterUsesCount}),me("map_filter")},{once:!0})}async function fe(){le(),ue(),W+=1;const N=W;C.searchesCount+=1,E.value="text",T.value=m.value.trim(),T.value&&(z.value?(u.locationBias=null,u.locationRestriction=a.getBounds()):(u.locationRestriction=null,u.locationBias=a.getCenter()),u.includedType=F.value.some(I=>T.value.toLowerCase().includes(I))?"lodging":null,u.textQuery=`${T.value} in Scotland`,u.maxResultCount=NUMBER_OF_RESULTS,l.style.display="block",l.addEventListener("gmp-load",()=>{N===W&&(pe(N),z.value=!1,n.createDataLayerObject("googleMapSearchEvent",{search_query:T.value,search_map_location:a.getCenter().toString(),search_results_count:l.places.length,search_usage_index:C.searchesCount}),me("map_search"))},{once:!0}))}async function pe(N){const{AdvancedMarkerElement:I}=await importLibrary("marker"),{LatLngBounds:M}=await importLibrary("core");if(N!==W)return;const q=vue.ref();E.value==="nearby"?q.value=i:E.value==="text"?q.value=l:console.error("Unrecognised Search type"),q.value.places.length===0?(D.value=!0,q.value.style.display="none"):(D.value=!1,q.value.style.display="block");const H=new M;q.value.places&&q.value.places.forEach(j=>{const J=document.createElement("div");J.classList.add("vs-map-marker");const Q=document.createElement("i");Q.classList.add("fa-solid","fa-location-dot"),J.appendChild(Q);const ne=new I({map:a,position:j.location,content:J,title:"Map pin"});ne.addEventListener("gmp-placeclick",()=>{ce(j)}),ne.addListener("click",()=>{ce(j)}),ne.metadata={id:j.id},p[j.id]=ne,H.extend(j.location),q.value.places.length===1?(a.setCenter({lat:j.location.lat(),lng:j.location.lng()}),a.setZoom(14),a.fitBounds(j.viewport)):(a.setCenter(H.getCenter()),a.fitBounds(H))})}function le(N,I){ge(),E.value="",i.style.display="none",l.style.display="none",u.textQuery=null,B.value=!1,f&&f.close&&f.close(),D.value=void 0,N&&(ve(),ue(),se("clear_all")),I&&(a.setCenter(t.center),a.setZoom(t.zoom),a.fitBounds(U),se("reset_map"))}function ve(){T.value=null,m.value=""}function ue(){_.value=void 0,h.value=new Set,V.value=new Set,S.value=new Set,$.value=new Set,w.value=new Set,L.value=new Set,k.value=void 0,P.value=void 0}function ge(){for(const N in p)p[N]&&(p[N].map=null);p={}}function ce(N){f.isOpen&&(f.close(),se("card_close",v.place)),v.place=N,window.innerWidth<=768?(d.style.width="85vw",d.style.height="32em",C.sidebarOpen=!1):(d.style.width="20em",d.style.height="32em"),d.style.display="block",d.style.overflowY="auto",d.style.overflowX="hidden",d.style.boxSizing="border-box",d.style.maxHeight="32em",f.setOptions({content:d,maxWidth:"25em",position:N.location,pixelOffset:new google.maps.Size(0,-32)}),f.open({map:a}),google.maps.event.addListenerOnce(a,"idle",()=>{a.getZoom()>MAX_ZOOM&&a.setZoom(MAX_ZOOM),se("card_open",N)}),a.setCenter(N.location)}async function se(N,I){let M="",q="",H="",j="";I&&(await I.fetchFields({fields:["displayName","primaryType","rating","websiteURI"]}),M=I.displayName,q=I.rating,H=I.websiteURI,j=I.primaryType),n.createDataLayerObject("googleMapInteractionEvent",{interaction_type:N,search_query:m.value.trim(),map_location:a.getCenter().toString(),visible_attractions_count:g,card_attraction_name:M,card_attraction_category:j,card_attraction_rating:q,card_attraction_url:H,interaction_timestamp_ms:Date.now()}),me(N)}function me(N){if(!C.firstInteraction){const M=Date.now()-C.timeMounted;n.createDataLayerObject("googleMapTimeToFirstInteractionEvent",{time_to_first_interaction_ms:M,first_interaction_type:N}),C.firstInteraction=!0}}function _e(){const N=a.getBounds();if(!N)return 0;let I=0;for(let M=0;M<Object.keys(p).length;M++){const H=p[Object.keys(p)[M]].position;N.contains(H)&&(I+=1)}return I}function ye(N){a.fitBounds(new google.maps.LatLngBounds(new google.maps.LatLng(N.properties.viewport.low.latitude,N.properties.viewport.low.longitude),new google.maps.LatLng(N.properties.viewport.high.latitude,N.properties.viewport.high.longitude))),a.setCenter(new google.maps.LatLng(N.properties.locationCentre.latitude,N.properties.locationCentre.longitude)),te("things-to-do",2),B.value=!0}return(N,I)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1,[vue.createElementVNode("div",{class:vue.normalizeClass(["vs-map__container",vue.unref(R)?"d-none":""])},[vue.createElementVNode("div",_hoisted_2,[vue.createVNode(_sfc_main$1,{query:T.value,"selected-categories":_.value,"header-label":t.labels.heading,"close-sidebar-button-label":t.labels.closeSidebarBtn,"search-bar-aria-label":t.labels.searchBarAriaLabel,"input-placeholder-label":t.labels.inputPlaceholder,"search-button-label":t.labels.searchButton,"clear-map-label":t.labels.clearMap,"sub-filter-header-label":t.labels.subFilterHeader,"search-results-label":t.labels.searchResults,"open-sidebar-button-label":t.labels.openSidebarButton,onSearchInputChanged:fe,onResetMap:I[1]||(I[1]=M=>le(!0))},vue.createSlots({"vs-map-sidebar-search-results":vue.withCtx(()=>[D.value||t.alertText&&D.value===!1?(vue.openBlock(),vue.createBlock(vue.unref(VsAlert),{key:0,class:"mt-075 mb-150",id:"vs-map__alert",size:"small"},{default:vue.withCtx(()=>[D.value?(vue.openBlock(),vue.createElementBlock("span",_hoisted_4,[vue.createTextVNode(vue.toDisplayString(e.noResultsMessage)+" ",1),vue.createElementVNode("a",{href:"#",onClick:I[0]||(I[0]=vue.withModifiers(M=>le(!0,!0),["prevent"]))},vue.toDisplayString(e.resetMapNoResultsMessage),1)])):(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[vue.createTextVNode(vue.toDisplayString(e.alertText),1)],64))]),_:1})):vue.createCommentVNode("",!0),(vue.openBlock(),vue.createBlock(vue.Suspense,null,{default:vue.withCtx(()=>[...I[2]||(I[2]=[vue.createElementVNode("div",{id:"search-container"},[vue.createElementVNode("gmp-place-search",{id:"nearbySearch",orientation:"vertical",selectable:"",style:{display:"none"}},[vue.createElementVNode("gmp-place-nearby-search-request",{id:"nearbySearchQuery"}),vue.createElementVNode("gmp-place-content-config",null,[vue.createElementVNode("gmp-place-address"),vue.createElementVNode("gmp-place-rating"),vue.createElementVNode("gmp-place-type"),vue.createElementVNode("gmp-place-price"),vue.createElementVNode("gmp-place-accessible-entrance-icon"),vue.createElementVNode("gmp-place-opening-hours"),vue.createElementVNode("gmp-place-reviews"),vue.createElementVNode("gmp-place-attribution",{"light-scheme-color":"gray","dark-scheme-color":"gray"})])]),vue.createElementVNode("gmp-place-search",{id:"textSearch",orientation:"vertical",selectable:"",style:{display:"none"}},[vue.createElementVNode("gmp-place-text-search-request",{id:"textSearchQuery"}),vue.createElementVNode("gmp-place-content-config",null,[vue.createElementVNode("gmp-place-address"),vue.createElementVNode("gmp-place-rating"),vue.createElementVNode("gmp-place-type"),vue.createElementVNode("gmp-place-price"),vue.createElementVNode("gmp-place-accessible-entrance-icon"),vue.createElementVNode("gmp-place-opening-hours"),vue.createElementVNode("gmp-place-reviews"),vue.createElementVNode("gmp-place-attribution",{"light-scheme-color":"gray","dark-scheme-color":"gray"})])])],-1)])]),_:1}))]),_:2},[_.value?{name:"vs-map-sidebar-sub-filters",fn:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_3,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(X)[k.value].subCategory,(M,q)=>(vue.openBlock(),vue.createBlock(vue.unref(LoadingSpinner.VsButton),{key:q,variant:h.value.has(M.id)?"primary":"secondary",size:"sm",onClick:H=>ie(M.id,q)},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(M.label),1)]),_:2},1032,["variant","onClick"]))),128))])]),key:"0"}:void 0]),1032,["query","selected-categories","header-label","close-sidebar-button-label","search-bar-aria-label","input-placeholder-label","search-button-label","clear-map-label","sub-filter-header-label","search-results-label","open-sidebar-button-label"]),(O.value>=CATEGORY_VISIBLE_ZOOM||B.value)&&vue.unref(C).sidebarOpen&&Object.keys(vue.unref(Y)).length>0?(vue.openBlock(),vue.createElementBlock("div",_hoisted_5,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(X),(M,q)=>(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:q},[M.cmsData?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createBlock(vue.unref(LoadingSpinner.VsButton),{key:0,class:"vs-map__filter-controls-button",variant:_.value===M.id?"primary":"secondary",onClick:vue.withModifiers(H=>te(M.id,q),["prevent"]),icon:Object.values(vue.unref(Y))[q].icon},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(M.label),1)]),_:2},1032,["variant","onClick","icon"]))],64))),128))])):vue.createCommentVNode("",!0)]),vue.createElementVNode("div",_hoisted_6,[vue.createElementVNode("div",_hoisted_7,null,512),(vue.openBlock(),vue.createBlock(vue.Suspense,null,{default:vue.withCtx(()=>[...I[3]||(I[3]=[vue.createElementVNode("div",{id:"detail-container"},[vue.createElementVNode("gmp-place-details",{id:"placeDetails",style:{display:"none"}},[vue.createElementVNode("gmp-place-details-place-request",{id:"placeRequest"}),vue.createElementVNode("gmp-place-content-config",null,[vue.createElementVNode("gmp-place-address"),vue.createElementVNode("gmp-place-rating"),vue.createElementVNode("gmp-place-type"),vue.createElementVNode("gmp-place-price"),vue.createElementVNode("gmp-place-accessible-entrance-icon"),vue.createElementVNode("gmp-place-opening-hours"),vue.createElementVNode("gmp-place-website"),vue.createElementVNode("gmp-place-phone-number"),vue.createElementVNode("gmp-place-summary"),vue.createElementVNode("gmp-place-type-specific-highlights"),vue.createElementVNode("gmp-place-reviews"),vue.createElementVNode("gmp-place-feature-list"),vue.createElementVNode("gmp-place-media",{"lightbox-preferred":""}),vue.createElementVNode("gmp-place-attribution",{"light-scheme-color":"gray","dark-scheme-color":"gray"})])])],-1)])]),_:1}))])],2),vue.unref(R)&&G.value==="noCookie"?(vue.openBlock(),vue.createBlock(vue.unref(LoadingSpinner.VsWarning),{key:0,type:"cookie",class:vue.normalizeClass(["vs-map__error vs-map__error--no-cookies",vue.unref(R)?"d-block":"d-none"]),"data-test":"vs-map__warning--no-cookies"},{"button-text":vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.cookieBtnText),1)]),default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(t.noCookiesMessage)+" ",1)]),_:1},8,["class"])):vue.createCommentVNode("",!0),vue.createVNode(vue.unref(LoadingSpinner.VsWarning),{class:"vs-map__warning vs-map__warning--no-js","data-test":"vs-map__warning--no-js"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(e.noJsMessage),1)]),_:1})]))}};exports.VsBody=LoadingSpinner.VsBody;exports.VsButton=LoadingSpinner.VsButton;exports.VsButtonToggleGroup=LoadingSpinner.VsButtonToggleGroup;exports.VsCol=LoadingSpinner.VsCol;exports.VsContainer=LoadingSpinner.VsContainer;exports.VsHeading=LoadingSpinner.VsHeading;exports.VsIcon=LoadingSpinner.VsIcon;exports.VsImg=LoadingSpinner.VsImg;exports.VsLoadingSpinner=LoadingSpinner.VsLoading;exports.VsRow=LoadingSpinner.VsRow;exports.VsWarning=LoadingSpinner.VsWarning;exports.VsAccordion=VsAccordion;exports.VsAccordionItem=VsAccordionItem;exports.VsAccordionToggle=VsAccordionToggle;exports.VsAddress=Address;exports.VsAlert=VsAlert;exports.VsArticle=Article;exports.VsArticleDetails=ArticleDetails;exports.VsArticleSection=ArticleSection;exports.VsArticleSidebar=ArticleSidebar;exports.VsBackToTop=_sfc_main$2u;exports.VsBadge=VsBadge;exports.VsBanner=Banner;exports.VsBreadcrumb=Breadcrumb;exports.VsBreadcrumbItem=BreadcrumbItem;exports.VsCannedSearch=CannedSearch;exports.VsCaption=Caption;exports.VsCarbonCalculator=CarbonCalculator;exports.VsCard=VsCard;exports.VsCardGroup=VsCardGroup;exports.VsCarousel=VsCarousel;exports.VsCarouselSlide=CarouselSlide;exports.VsCheckbox=VsCheckbox;exports.VsDescriptionList=DescriptionList;exports.VsDescriptionListItem=DescriptionListItem;exports.VsDetail=VsDetail;exports.VsDropdown=VsDropdown;exports.VsDropdownItem=VsDropdownItem;exports.VsEmbedWrapper=EmbedWrapper;exports.VsEventCard=EventCard;exports.VsFederatedSearch=_sfc_main$4;exports.VsFederatedSearchInput=_sfc_main$6;exports.VsFilter=_sfc_main$1K;exports.VsFilterSection=_sfc_main$1J;exports.VsFooter=Footer;exports.VsFooterAccordionItem=FooterAccordionItem;exports.VsFooterCopyright=FooterCopyright;exports.VsFooterNavListItem=FooterNavListItem;exports.VsFooterSocialItem=FooterSocialItem;exports.VsFooterSocialMenu=FooterSocialMenu;exports.VsFooterUtilityList=FooterUtilityList;exports.VsForm=Form;exports.VsGlobalMenu=GlobalMenu;exports.VsGlobalMenuLanguage=GlobalMenuLanguage;exports.VsGlobalMenuLanguageItem=GlobalMenuLanguageItem;exports.VsHeroSection=HeroSection;exports.VsHtmlError=HtmlError;exports.VsIconList=IconList;exports.VsIconListItem=IconListItem;exports.VsIllustratedMap=IllustratedMap;exports.VsImageWithCaption=ImageWithCaption;exports.VsInput=VsInput;exports.VsItinerary=Itinerary;exports.VsItineraryBorderOverlapWrapper=ItineraryBorderOverlapWrapper;exports.VsItineraryDay=ItineraryDay;exports.VsItineraryStop=ItineraryStop;exports.VsItineraryStopInfo=ItineraryStopInfo;exports.VsItineraryTips=ItineraryTips;exports.VsLink=VsLink;exports.VsLinkList=VsLinkList;exports.VsLinkListItem=LinkListItem;exports.VsList=VsList;exports.VsListicleItem=ListicleItem;exports.VsMainMap=_sfc_main;exports.VsMediaCaption=VsMediaCaption;exports.VsMegaNavAccordionItem=MegaNavAccordionItem;exports.VsMegaNavDropdownContainer=MegaNavDropdownContainer;exports.VsMegaNavFeaturedEvent=MegaNavFeaturedEvent;exports.VsMegaNavFeaturedItem=MegaNavFeaturedItem;exports.VsMegaNavList=MegaNavList;exports.VsMegaNavListItem=MegaNavListItem;exports.VsMegaNavStaticLink=MegaNavStaticLink;exports.VsMegalinkLinkList=MegalinkLinkList;exports.VsMegalinkMultiImage=MegalinkMultiImage;exports.VsMegalinkSingleImage=MegalinkSingleImage;exports.VsMegalinks=Megalinks;exports.VsMeganav=MegaNav;exports.VsModal=Modal;exports.VsModuleWrapper=VsModuleWrapper;exports.VsNavigationBar=NavigationBar;exports.VsNavigationBarMenu=NavigationBarMenu;exports.VsNavigationBarMenuDropdown=NavigationBarMenuDropdown;exports.VsNavigationBarMenuItem=NavigationBarMenuItem;exports.VsNavigationBarSearch=NavigationBarSearch;exports.VsNavigationBarSidebar=VsNavigationSidebar;exports.VsNavigationBarSidebarButton=VsNavigationBarSidebarButton;exports.VsNumberInput=VsNumberInput;exports.VsPageIntro=PageIntro;exports.VsPagination=_sfc_main$D;exports.VsPanel=Panel;exports.VsProductSearch=ProductSearch;exports.VsProgressBar=VsProgressBar;exports.VsQuote=Quote;exports.VsRadioButton=VsRadioButton;exports.VsRecaptcha=VsRecaptcha;exports.VsSectionHeader=SectionHeader;exports.VsSelect=VsSelect;exports.VsSiteSearch=VsSiteSearch;exports.VsSiteSearchForm=VsSiteSearchForm;exports.VsSkiScotlandCard=SkiScotlandCard;exports.VsSkiScotlandStatus=SkiScotlandStatus;exports.VsSkipTo=SkipTo;exports.VsSocialCreditLink=SocialCreditLink;exports.VsSocialShare=SocialShare;exports.VsSocialShareItem=SocialShareItem;exports.VsSpotlightSection=SpotlightSection;exports.VsStretchedLinkCard=VsStretchedLinkCard;exports.VsStretchedLinkPanel=VsStretchedLinkPanels;exports.VsStyledList=_sfc_main$g;exports.VsStyledListItem=_sfc_main$f;exports.VsSummaryBoxDistanceListItem=SummaryBoxDistanceListItem;exports.VsSummaryBoxList=SummaryBoxList;exports.VsSummaryBoxListItem=SummaryBoxListItem;exports.VsSvg=VsSvg;exports.VsSvgLink=VsSvgLink;exports.VsTabItem=TabItem;exports.VsTable=VsTable;exports.VsTableBody=VsTableBody;exports.VsTableDataCell=VsTableDataCell;exports.VsTableFooter=VsTableFooter;exports.VsTableHead=VsTableHead;exports.VsTableHeaderCell=VsTableHeaderCell;exports.VsTableRow=VsTableRow;exports.VsTabs=Tabs;exports.VsTag=Tag;exports.VsTagManagerWrapper=TagManagerWrapper;exports.VsTextarea=VsTextarea;exports.VsToggleButton=VsToggleButton;exports.VsTooltip=VsTooltip;exports.VsTourismInfo=TourismInfo;exports.VsVideo=VsVideo;exports.VsVideoCaption=VsVideoCaption;
|