@visitscotland/component-library
Version:
VisitScotland Component Library
1 lines • 14 kB
JavaScript
"use strict";(self.webpackChunk_visitscotland_component_library=self.webpackChunk_visitscotland_component_library||[]).push([[8745],{4859:function(e,t,a){var r=a(17527),n=(0,a(48086).defineStore)("datalayer",(function(){var e=(0,r.ref)(""),t=(0,r.ref)(!1),a=(0,r.ref)({});return{pageUrl:e,tagsTestRun:t,GTMData:a,getValueFromKey:function(e){return a.value[e]},setTestRun:function(e){t.value=e},setPageUrl:function(t){e.value=t},processPayload:function(e){a.value[e.key]=e.value}}}));t.A=n},8611:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.signpostedPartners=t.dmoUrls=t.monthsEnglish=t.paths=t.products=void 0,t.products=[{key:"accommodation",text:"Accommodation",value:"acco"},{key:"eventsAndFestivals",text:"Events & Festivals",value:"even"},{key:"foodAndDrink",text:"Food & Drink",value:"cate"},{key:"thingsToDo",text:"Things to do",value:"acti,attr,reta"},{key:"tours",text:"Tours",value:"tour"}],t.paths={acco:"accommodation","acti,attr,reta":"see-do",cate:"food-drink",even:"events",tour:"tours"},t.monthsEnglish=[{label:"January",value:"january"},{label:"February",value:"february"},{label:"March",value:"march"},{label:"April",value:"april"},{label:"May",value:"may"},{label:"June",value:"june"},{label:"July",value:"july"},{label:"August",value:"august"},{label:"September",value:"september"},{label:"October",value:"october"},{label:"November",value:"november"},{label:"December",value:"december"}],t.dmoUrls=["visitabdn.com","wildaboutargyll.co.uk","ayrshireandarran.com","visitarran.com","dundee.com/visit","visitangus.com","edinburgh.org","visiteastlothian.org","visitwestlothian.co.uk","visitmidlothian.co.uk","welcometofife.com","visitglasgow.com","visitlanarkshire.com","discoverinverclyde.com","paisley.is","west-dunbarton.gov.uk/leisure-parks-events/tourism-and-visitor-attractions","eastdunbarton.gov.uk/residents/tourism-visited-exploreed/places-visit-east-dunbartonshire","visitinvernesslochness.com","nairnscotland.co.uk","outdoorcapital.co.uk","westhighlandpeninsulas.com/uk","roadtotheisles.com","discoverglencoe.scot","visitcairngorms.com","badenochstorylands.com","grantownonline.com","northcoast500.com","venture-north.co.uk","discoverassynt.co.uk","nwhgeopark.com","visitwester-ross.com","wrb.scot","visitdornoch.com","easterrosspeninsula.com","black-isle.info","myskyetime.com","morayspeyside.com","yourstirling.com","visitfalkirk.com","discoverclackmannanshire.com","lochlomond-trossachs.org","accessforthvalley.com","orkney.com","visitouterhebrides.co.uk","highlandperthshire.org","perthcityandtowns.co.uk","scotlandstartshere.com","shetland.org/visit","peoplemakeglasgow.com"],t.signpostedPartners=["findbusinesssupport.gov.scot","www.bgateway.com","www.creativescotland.com","www.hie.co.uk","www.scottish-enterprise.com","www.southofscotlandenterprise.com","www.skillsdevelopmentscotland.co.uk","www.slaed.org.uk"]},12554:function(e,t,a){a.d(t,{BV:function(){return u},C0:function(){return _},C2:function(){return f},Ew:function(){return F},FZ:function(){return d},Gn:function(){return n},P4:function(){return c},QI:function(){return m},Qo:function(){return g},T9:function(){return v},Uf:function(){return l},Uo:function(){return p},Vq:function(){return r},WO:function(){return x},cV:function(){return T},cg:function(){return L},g4:function(){return i},kp:function(){return w},lG:function(){return y},lz:function(){return s},oY:function(){return h},qv:function(){return o},tF:function(){return k},u6:function(){return b}});var r=["event","site_language","content_language","content_category","content_page_type","page_category_1","page_category_2","page_category_3","page_category_4","page_category_5","page_category_6","content_region","content_city","provider_search_region","provider_search_category","provider_search_facilities","provider_search_grading","provider_search_awards","provider_search_rooms","provider_search_min_price","provider_search_max_price","provider_category","provider_category_level_1","provider_category_level_2","provider_name","provider_ID","star_grading","provider_region","provider_city","provider_has_website","page_with_booking_link","provider_has_availability","availability_search_start_date","availability_search_end_date","availability_search_no_of_nights","availability_search_no_of_adults","availability_search_no_of_children","availability_search_no_of_rooms","availability_search_price_range","hit_timestamp","tag_name","meta_data"],n=["event","site_language","page_category_1","page_category_2","page_category_3","page_category_4","user_country_setting","hit_timestamp","tag_name","meta_data","psr_search_type","psr_search_location","page_path"],o=["event","site_language","user_country_setting","hit_timestamp","tag_name","meta_data","click_text","click_URL"],i=["event","site_language","page_category_1","page_category_2","page_category_3","page_category_4","page_category_5","page_category_6","user_country_setting","hit_timestamp","tag_name","meta_data","click_text","click_URL"],c=["event","site_language","page_category_1","page_category_2","page_category_3","page_category_4","page_category_5","page_category_6","user_country_setting","hit_timestamp","tag_name","meta_data","click_URL","location_on_page"],_=["event","site_language","page_category_1","page_category_2","page_category_3","page_category_4","page_category_5","page_category_6","user_country_setting","hit_timestamp","tag_name","meta_data","click_URL"],s=["event","language","page_category_1","page_category_2","page_category_3","page_category_4","page_category_5","page_category_6","user_country_setting","hit_timestamp","tag_name","meta_data","video_status","video_title","video_percent"],l=["event","site_language","page_category_1","page_category_2","page_category_3","page_category_4","page_category_5","page_category_6","user_country_setting","hit_timestamp","tag_name","meta_data","click_text","click_URL","dmo_referral","partner_referral","event_listing"],g=["event","site_language","page_category_1","page_category_2","page_category_3","page_category_4","page_category_5","page_category_6","user_country_setting","hit_timestamp","tag_name","meta_data","click_text","click_URL"],u=["event","site_language","page_category_1","page_category_2","page_category_3","page_category_4","page_category_5","page_category_6","user_country_setting","hit_timestamp","tag_name","meta_data","error_type","error_details","page_path"],p=["event","site_language","page_category_1","page_category_2","page_category_3","page_category_4","page_category_5","page_category_6","user_country_setting","hit_timestamp","tag_name","meta_data","page_path","form_status"],m=["event","site_language","page_category_1","page_category_2","page_category_3","page_category_4","page_category_5","page_category_6","user_country_setting","hit_timestamp","tag_name","meta_data","question_number","answer"],v=["event","site_language","page_category_1","page_category_2","page_category_3","page_category_4","page_category_5","page_category_6","user_country_setting","hit_timestamp","tag_name","meta_data","total_emissions","total_per_day","travel_percent","accommodation_percent","food_percent"],y=["event","site_language","page_category_1","page_category_2","page_category_3","page_category_4","page_category_5","page_category_6","user_country_setting","hit_timestamp","tag_name","tag_name","meta_data","referral_location","attraction_name","dmo_referral"],d=["event","site_language","page_category_1","page_category_2","page_category_3","page_category_4","page_category_5","page_category_6","user_country_setting","hit_timestamp","tag_name","meta_data","accordion_text"],h=["event","event_tab","site_language","user_country_setting","hit_timestamp","tag_name","meta_data","event_listing"],f=["event","referrer_page"],k=["event","search_query","query_input","results_count","search_usage_index","search_type","interaction_type","search_origin"],b=["event","interaction_type","search_query","query_input","page_number","page_navigation_direction","click_text","click_url","click_category","search_usage_index","results_count"],w=["event","search_usage_index","search_query","query_input","page_number","results_count"],F=["event","search_query","search_map_location","search_results_count","search_usage_index"],T=["event","filter_type","search_map_location","filter_selection","results_count","filter_usage_index"],x=["event","time_to_first_interaction_ms","first_interaction_type"],L=["event","interaction_type","search_query","map_location","visible_attractions_count","card_attraction_name","card_attraction_rating","card_attraction_url","interaction_timestamp_ms"]},63555:function(e,t){var a=function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;window.setTimeout((function(){window[e]?t(window[e]):a(e,t,500)}),r)};t.A=a},98745:function(e,t,a){a.r(t);var r=a(64467),n=a(10810),o=a(4859),i=a(63555),c=a(8611),_=a(12554);function s(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function l(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?s(Object(a),!0).forEach((function(t){(0,r.A)(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):s(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}var g={computed:l({},(0,n.aH)(o.A,{pageUrl:function(e){return e.pageUrl}})),data:function(){return{dataLayerLoadConfirmed:!1,dataLayerStore:null}},mounted:function(){this.dataLayerStore=(0,o.A)()},methods:{templateFiller:function(e,t){var a={};return e.forEach((function(e){a[e]="",a[e]=t[e]||void 0,"language"===e&&void 0===a[e]&&(a[e]=t.site_language||void 0)})),a},createDataLayerObject:function(e,t,a){var r,n,o,i,s,l,g="",u="False";switch(t&&t.target&&(l=t.target.text?t.target.text.trim():t.target.innerText,t.target.closest('[data-event-listing="True"]')&&(u="True")),e){case"productSearchDataEvent":n="VS - GA4 - Event - PSR Search",o={event:r="psr_search",psr_search_type:t.searchType,psr_search_location:t.searchLocation,page_path:a,tag_name:n},i=this.compileFullTemplate(o),s=this.templateFiller(_.Gn,i);break;case"pageViewTemplateDataEvent":o={event:r="page_view"},i=this.compileFullTemplate(o),s=this.templateFiller(_.Vq,i);break;case"menuNavigationDataEvent":o={event:r="menu_navigation",click_text:t.target.text.trim(),click_URL:a},i=this.compileFullTemplate(o),s=this.templateFiller(_.qv,i);break;case"socialMediaExternalLinkDataEvent":o={event:r="social_media_footer",tag_name:n="VS - GA - Social Media External Link",click_URL:a},i=this.compileFullTemplate(o),s=this.templateFiller(_.P4,i);break;case"homePageLogoClickDataEvent":o={event:r="homepage_logo_click",tag_name:n="VS - GA - Homepage Logo Click"},i=this.compileFullTemplate(o),s=this.templateFiller(_.C0,i);break;case"externalLinkDataEvent":o={event:r="external_link",tag_name:n="VS - GA - External Link",click_text:l,click_URL:a,partner_referral:"False",event_listing:u};for(var p=0;p<c.signpostedPartners.length;p++)a.includes(c.signpostedPartners[p])&&(o.partner_referral="True");i=this.compileFullTemplate(o),s=this.templateFiller(_.Uf,i);break;case"internalLinkDataEvent":o={event:r="internal_link",tag_name:n="VS - GA - Internal Link",click_text:l,click_URL:a},i=this.compileFullTemplate(o),s=this.templateFiller(_.Qo,i);break;case"formsDataEvent":o={event:r="forms",tag_name:n="VS - GA - Forms",form_status:"form_submitted"},i=this.compileFullTemplate(o),s=this.templateFiller(_.Uo,i);break;case"errorDataEvent":o={event:r="errors",tag_name:n="VS - GA - Errors",error_type:t.error_type,error_details:t.error_details},i=this.compileFullTemplate(o),s=this.templateFiller(_.BV,i);break;case"videoTrackingDataEvent":o={event:r="video_tracking",tag_name:n="VS - GA - Video Tracking",video_status:t.status,video_title:t.title||"",video_percent:t.percent||0},i=this.compileFullTemplate(o),s=this.templateFiller(_.lz,i);break;case"socialShareDataEvent":r="share",n="VS - GA - Share",void 0!==t.target.text&&(g=t.target.text.trim()),o={event:r,tag_name:n,click_text:g,click_URL:a},i=this.compileFullTemplate(o),s=this.templateFiller(_.g4,i);break;case"carbonQuestionEvent":o={event:r="carbonCalculatorQuestion",tag_name:n="VS - GA - Carbon Calculator Question Answered",question_number:t.questionNumber,answer:t.answer},i=this.compileFullTemplate(o),s=this.templateFiller(_.QI,i);break;case"carbonCompleteEvent":o={event:r="carbonCalculatorComplete",tag_name:n="VS - GA - Carbon Calculator Complete",total_emissions:t.totalEmissions,total_per_day:t.totalPerDay,travel_percent:t.travelPercent,accommodation_percent:t.accommodationPercent,food_percent:t.foodPercent},i=this.compileFullTemplate(o),s=this.templateFiller(_.T9,i);break;case"cmsReferral":o={event:r="cms_referral",tag_name:n="VS - GA4 - Event - CMS Link Click Referral",referral_location:t.referral_location,dmo_referral:t.dmo_referral},i=this.compileFullTemplate(o),s=this.templateFiller(_.lG,i);break;case"accordionOpenEvent":o={event:r="accordion_opened",tag_name:n="GA4 - Event - Accordion Opened",accordion_text:t.accordion_text},i=this.compileFullTemplate(o),s=this.templateFiller(_.FZ,i);break;case"tabClickEvent":o={event:r="tab_click",tag_name:n="GA4 - Event - Tab Click",event_tab:l,event_listing:u},i=this.compileFullTemplate(o),s=this.templateFiller(_.oY,i)}this.pushToDataLayer(s)},returnIsoDate:function(){return new Date(Date.now()).toISOString()},pushToDataLayer:function(e){var t=this;this.dataLayerLoadConfirmed?window.dataLayer.push(e):(0,i.A)("dataLayer",(function(){t.dataLayerLoadConfirmed=!0,window.dataLayer.push(e)}))},compileFullTemplate:function(e){var t=l(l({},this.dataLayerStore.GTMData),e);return t.hit_timestamp=this.returnIsoDate(),t},targetText:function(e){return e.target.text?e.target.text.trim():""}}};t.default=g}}]);