PageSourceSearch

https://www.kipochevrolet.com/static/ws/tagging/bundle.806.ddffc412ab691fdb00d1daa05f98e239.js

js kipochevrolet.com collected 2026-09-24 12:20:41 UTC 29,487 bytes, 2 lines download raw bytes

1(globalThis.webpackChunkws_tagging=globalThis.webpackChunkws_tagging||[]).push([[806],{288(e,t,a){e.exports={...a(7742)}},1452(e,t,a){"use strict";a.d(t,{A:()=>n});const i=e=>{if(null===e||"object"!=typeof e)return e;if(e instanceof Function)return e;if(e instanceof Date)return new Date(e);if(Array.isArray(e))return e.map(e=>i(e));if("object"==typeof e){const t={};return Object.keys(e).forEach(a=>{t[a]=i(e[a])}),t}},n=i},806(e,t,a){"use strict";a.d(t,{initIfWsTaggingReady:()=>Z});const i=()=>"undefined"!=typeof window&&window.newrelic&&"object"==typeof window.newrelic,n=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0;i()&&window.newrelic.addPageAction(e,t)};var r=a(4579);const s=(e,t)=>t.split(".").reduce((e,t)=>void 0!==e?e[t]:void 0,e),o=e=>Array.isArray(e)?e:[e],c=(e,t,a)=>{const i=t.split("."),n=i.pop();i.reduce((e,t)=>(e[t]=e[t]||{},e[t]),e)[n]=a},l=(e,t)=>{Object.values(e).forEach(({objectPath:e,value:a})=>{if(e&&a){const i=JSON.parse(JSON.stringify(a));c(t,e,"emptyfunc"===i?()=>{}:i)}})},d="dynamic-script-insert",u="dynamic-script-insert-wiapi",g={[d]:({src:e})=>new Promise((t,a)=>{const i=document.createElement("script");i.src=e,i.addEventListener("load",t),i.addEventListener("error",e=>a(e.error)),document.head.appendChild(i)}),[u]:async({src:e,win:t})=>{const a=t?.DDC?.APILoader;if(!a)return g[d]({src:e});return(await a.create("ws-tagging")).loadJS(e)}},p=g,v={address1:"dataLayer.dealership.address1",address2:"dataLayer.dealership.address2",bodyStyle:"vehicle.bodyStyle",certified:"vehicle.certified",city:"dataLayer.dealership.city",cityFuelEfficiency:"vehicle.cityFuelEfficiency",country:"dataLayer.dealership.country",cCode:"vehicle.cCode",chromeId:"vehicle.chromeId",dealerId:"dataLayer.site.siteInfo.dealerId",dealershipName:"dataLayer.dealership.dealershipName",driveLine:"vehicle.driveLine",engine:"vehicle.engine",exteriorColor:"vehicle.exteriorColor",fuelType:"vehicle.fuelType",highwayFuelEfficiency:"vehicle.highwayFuelEfficiency",interiorColor:"vehicle.interiorColor",internetPrice:"vehicle.internetPrice",inventoryDate:"vehicle.inventoryDate",inventoryType:"vehicle.inventoryType",layoutType:"dataLayer.page.attributes.layoutType",listingType:"vehicle.listingType",locale:"dataLayer.page.attributes.locale",make:"vehicle.make",model:"vehicle.model",msrp:"vehicle.msrp",newOrUsed:"vehicle.newOrUsed",normalBodyStyle:"vehicle.normalBodyStyle",normalFuelType:"vehicle.normalFuelType",odometer:"vehicle.odometer",pageAlias:"dataLayer.page.pageInfo.pageName",pageId:"dataLayer.page.pageInfo.pageId",pageTrackMake:"dataLayer.page.trackingTags.make",pageTrackModel:"dataLayer.page.trackingTags.model",pageTrackYear:"dataLayer.page.trackingTags.year",postalCode:"dataLayer.dealership.postalCode",prevVehicleResultCount:"dataLayer.prev.page.attributes.vehicleResultCount",priorityType:"vehicle.priorityType",queryFacets:"dataLayer.page.queryFacets",returnNull:null,stateProvince:"dataLayer.dealership.stateProvince",stockNumber:"vehicle.stockNumber",tier:"dataLayer.site.siteInfo.tier",transmission:"vehicle.transmission",trim:"vehicle.trim",userId:"userProfile.universalUserId",userPostalCode:"dataLayer.user.userPostalCode",uuid:"vehicle.uuid",variationId:"dataLayer.site.design.variationId",vehicleAccountId:"vehicle.accountId",vehicleResultCount:"dataLayer.page.attributes.vehicleResultCount",vin:"vehicle.vin",website:"dataLayer.dealership.website",year:"vehicle.modelYear",zip:"dataLayer.confirmation.zip"},h=(e,t,a,i)=>{const n={};Object.entries(e).forEach(([e])=>{const t=v[e],a=s(i.DDC,t);a&&c(n,t.replace("dataLayer.",""),a)}),Object.keys(n).length>0?i.localStorage.setItem(`wsTaggingPrev|${t}|${a}`,JSON.stringify(n)):i.localStorage.removeItem(`wsTaggingPrev|${t}|${a}`)},f=(e={},t,a,i,n,r)=>{const s=`wsTaggingPrevEvents${t}${a}`,o=JSON.parse(r.localStorage.getItem(s))||{};let c=!1;return Object.entries(e).forEach(([e,t])=>{e===i&&t.forEach(t=>{if(n?.[t]){const a=e.replaceAll(".","");o[a]=o[a]||{},o[a][t]=n[t],c=!0}})}),c&&localStorage.setItem(s,JSON.stringify(o)),o},y=({DDC:{dataLayer:{page:e={},vehicles:t=[]}={},dataLayer:a={},APILoader:i={}}={}}={},r=5e3)=>{const s={isVlp:e?.pageInfo?.isVlp,vehiclesLength:t?.length};let o;return o=s.isVlp&&!s.vehiclesLength?new Promise(e=>{let t,s,o=!1;const c=a=>{o||(o=!0,clearInterval(t),clearTimeout(s),"timeout"===a&&n("wsTaggingVehicleData",{wsTaggingError:"vehicleDataDidntUpdate"}),e(a))};t=setInterval(()=>{a?.vehicles?.length&&c("datalayer")},10),(async()=>{try{(await(i?.create("ws-tagging"))).subscribe("vehicle-data-updated-v1",()=>{c("api")})}catch(e){}})(),s=setTimeout(()=>{c("timeout")},r)}):Promise.resolve(s),o};var m=a(8151);const w=(e,t)=>{let a=t;return"string"!=typeof a||a?.startsWith?.("{{")||a?.endsWith?.("}}
1")||e.forEach(e=>{switch(e){case"TO_LOWER_CASE":a.includes(".htm")||(a=a.toLowerCase());break;case"TO_UPPER_CASE":a.includes(".htm")||(a=a.toUpperCase());break;case"STRIP_RETURN_CHARS":a=a.replace(/[\r\n ]+/gm," ");break;case"STRIP_Q_STRING":a=a.split("?").shift().split("com/").pop();break;case"ONLY_NUMBERS":a=a.replace(/\D/g,"");break;case"CAST_TO_NUMBER":a=+a;break;case"PIX_ARRAY_FIND_MIN":a=a.replace(/(-)/g,",").replace(/( )/g,"").split(","),a=a.reduce((e,t)=>Math.min(e,t));break;case"PIX_ARRAY_FIND_MAX":a=a.replace(/(-)/g,",").replace(/( )/g,"").split(","),a=a.reduce((e,t)=>Math.max(e,t));break;case"TAGGINGHYUNDAI_FORMAT_CLICKED_FACET_NAME":a=a?.replace("normal",""),a=a?.charAt(0)?.toLowerCase()+a.slice(1)}}),a};const E=(e,t)=>{Object.entries(e).forEach(([a,i])=>{(0,r.A)(i)?E(i,t):Array.isArray(i)?i.forEach((e,a)=>{"string"==typeof e?i[a]=t(e):E(e,t)}):"string"==typeof i&&(e[a]=t(i))})},D=(e,t)=>{const a=JSON.parse(JSON.stringify(e));return E(a,t),a},A=D,T=(e,t,a={})=>{const i=a?.[e];return i?w(i,t):t};var b=a(4199);const L=(e,t,a)=>a[e][t];var C=a(6307);const I=({str:e,eventData:t={},mapping:a,utils:i,lookups:n,flags:r={},payload:o})=>{let c,l=e;if(e.includes("lookup.")&&(l=l.replace("lookup.","")),v[l]&&v[l].startsWith("vehicle.")){const e=1===window.DDC.dataLayer?.vehicles?.length&&window.DDC.dataLayer.vehicles[0]||window.DDC.dataLayer?.confirmation?.vehicle||t?.vehicle;c=e&&Object.keys(e).length?e[v[l].replace("vehicle.","")]:""}else if("eventData"===l)c=t;else if("env"===l)c=(0,C.Ay)();else if(l.startsWith("dealerCode.")){const e=window?.DDC?.dataLayer?.dealership?.dealerCode;if(e){const t=l.replace("dealerCode.","");c=(0,b.A)(e,t)}}else if(l.startsWith("fn.")){const e=window.DDC.dataLayer?.confirmation?.vehicle?[window.DDC.dataLayer.confirmation.vehicle]:window.DDC.dataLayer.vehicles;l=l.replace("fn.","");const n=l.substring(l.indexOf("(")+1,l.lastIndexOf(")"));l=l.replace(`(${n})`,""),i[l]?c=i[l]({eventData:t,mapping:a,payload:o,vehicles:e,window}
1):(c=void 0,console.error(`The ${l} function in utils was not exported or does not exist.`))}else if(l.startsWith("flags."))l=l.replace("flags.",""),c=r[l];else if("_dl"===l||"window._dl"===l)c=window._dl;else if(l.startsWith("cookie.")){l=l.replace("cookie.","");const e=(e=>{const t=document.cookie.split(";");let a=null;return t.forEach(t=>{const[i,n]=t.split("=");i.trim()===e&&(a=n)}),a})(l);c=null===e?void 0:e}else if("userSessionId"===l)c=sessionStorage.getItem("userSessionId");else{let e;if(v[l])e=window,c=`DDC.${v[l]}`;else if(l.startsWith("mapping."))e=a,c=l.replace("mapping.","");else if(l.startsWith("eventData."))e=t,c=l.replace("eventData.","");else if(l.startsWith("payload."))e=o,c=l.replace("payload.","");else if(l.startsWith("DDC."))e=window,c=l;else if(l.startsWith("document."))e=document,c=l.replace("document.","");else if(l.startsWith("localstorage.")){l=l.replace("localstorage.","");const t=l.split(".")[0];e=JSON.parse(localStorage.getItem(t))||void 0,c=l.replace(`${t}.`,"")}else if(l.startsWith("previousEvent.")){l=l.replace("previousEvent.","");const t=l.split(".")[0];e=a?.prevEventData?.[t],c=l.replace(`${t}.`,"")}else l.startsWith("window.")&&(l=l.replace("window.",""),e=window,c=l);c=e&&c&&s(e,c)}return e.includes("lookup.")?L(l,c,n):c},k=e=>{const t=e.slice(e.lastIndexOf("[[")+2);return t.substring(0,t.indexOf("]]"))},S=e=>(e=>-1!==e.indexOf("[[")&&e.indexOf("[[")===e.lastIndexOf("[["))(e)&&0===e.indexOf("[[")&&e.indexOf("]]")===e.length-2,N=e=>e.includes("[[")&&e.includes("]]"),O=({input:e,eventData:t,mapping:a,utils:i,lookups:n,flags:s,payload:o})=>{let c=e;for(;c&&"string"==typeof c&&N(c);){const e=k(c),l=I({str:e,eventData:t,mapping:a,utils:i,lookups:n,flags:s,payload:o});S(c)&&void 0===l?c=void 0:(0,r.A)(l)||Array.isArray(l)||"boolean"==typeof l?c=l:(c=c.replace(`[[${e}]]`,l||""),c=parseInt(c,10)!==l||/[^\d]/.test(c)?c:l)}return void 0===c||"string"!=typeof c?c:c.trim()},P=({input:e,eventData:t,configuration:a={},utils:i,mapping:n,flags:s,payload:o})=>{const{lookups:c,payloadMutator:l}=a;let d;if((0,r.A)(e))d={},Object.entries(e).forEach(([e,r])=>{const u=P({input:r,eventData:t,configuration:a,utils:i,mapping:n,flags:s,payload:o}),g=O({input:e,eventData:t,mapping:n,utils:i,lookups:c,flags:s,payload:o});let p=e;e!==g&&(p=g),p&&(d[p]=T(p,u,l))});else if("string"==typeof e){if(d=O({input:e,eventData:t,mapping:n,utils:i,lookups:c,flags:s,payload:o}),e.includes(" >> ")){const r=e.split(" >> ").map(e=>P({input:e,eventData:t,configuration:a,utils:i,mapping:n,flags:s,payload:o}));d=r.find(e=>null!=e&&""!==e)}(0,r.A)(d)&&(d=P({input:d,eventData:t,configuration:a,utils:i,mapping:n,flags:s,payload:o}))}else d=Array.isArray(e)?e.map(e=>P({input:e,eventData:t,configuration:a,utils:i,mapping:n,flags:s,payload:o})):"function"!=typeof e&&void 0!==e?JSON.parse(JSON.stringify(e)):void 0;return d},R=P,j=(e=10)=>(0,C.Ay)()!==C.u0||Math.floor(100*Math.random()+1)<=e,$=e=>Array.isArray(e)&&e.push===Array.prototype.push?e.map(e=>$(e)):Array.isArray(e)||"object"!=typeof e||null===e?"{{UNDEFINED}}"===e?void 0:"{{NULL}}"===e?null:e:Object.keys(e).reduce((t,a)=>(t[a]=$(e[a]),t),{}),M=e=>{const t={},a=JSON.stringify(e,(e,a)=>(Array.isArray(a)&&a.push!==Array.prototype.push&&(t[e]=a),a)),i=JSON.parse(a,(e,a)=>{let i=a;return a?.includes?.("{{REMOVEKEY}}")?i=void 0:a?.includes?.("{{EMPTYSTRING}}")?i="":a?.includes?.("{{EMPTYOBJECT}}")&&(i={}),t[e]&&(i=t[e]),i});return $(i)};var F=a(1452),G=a(7369);const x=(e,t,a)=>{const i=e?.["ws-tagging-nr-switcher"];if(!i||!Array.isArray(i))return!0;return!i.some(e=>!("allProjects"!==e.project&&e.project!==t||"allEvents"!==e.event&&e.event!==a))},_=e=>JSON.stringify(e,(e,t)=>"function"==typeof t?t.toString():t);function W(e,t,a){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var a=e[Symbol.toPrimitive];if(void 0!==a){var i=a.call(e,t||"default");if("object"!=typeof i)return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}const U=new Set;let J;const q=["accountId","askingPrice","autodataCaId","bodyStyle","certified","chromeId","cityFuelEconomy","classification","dealerCodes","doors","driveLine","engine","engineSize","exterior
1Color","finalPrice","fuelType","highestPrice","highwayFuelEconomy","images","interiorColor","internetPrice","inventoryType","link","make","model","modelCode","msrp","odometer","optionCodes","retailValue","salePrice","startingPrice","status","stockNumber","transmission","trim","uuid","vin","year"],V=(e,t)=>{const a={address:{accountName:void 0,city:t?.city,state:t?.state,street:t?.address,postalCode:t?.zipcode,country:void 0}};return q.forEach(e=>{const i=t?.[e?.toLowerCase()];i&&"null"!==i&&(a[e]=i)}),a.dealerCodes=e?.DDC?.dataLayer?.dealership?.dealerCode,a.images=t?.images&&Array.isArray(t?.images)?t?.images:t?.images?.split(","),a};class B{constructor(e,t){W(this,"testLogic",(e,t,a)=>{if("function"==typeof e)return e({eventData:t,mapping:this.mapping,utils:this.utils,lookups:this.lookups,flags:J,element:a});const{mustEqual:i=!1,mustEqualOneOf:n=!1,mustInclude:r=!1,mustIncludeOneOf:s=!1,mustNotEqual:o=!1,mustNotInclude:c=!1}=e;let l=!0;if(i||n||r||s||o||c){const e=(e,a)=>!e||Object.entries(e).every(([e,i])=>(Array.isArray(i)?i:[i])[n||s?"some":"every"](i=>{const n=I({str:e,eventData:t,mapping:this.mapping,utils:this.utils,lookups:this.lookups,flags:J});let r=!0;const s=void 0===n,o="*"===i,c=""===i,l=c&&""===n;return"include"===a?r=!s&&(o||String(n).includes(i)):"notinclude"===a?r=!!s||!l&&(!!c||!o&&!String(n).includes(i)):"notequal"===a?r=("{{EMPTYSTRING}}"!==i||""!==n)&&(!(!s||c||l)||!o&&n!==i):"equal"===a&&(r="{{EMPTYSTRING}}"===i&&""===n||(o||n===i)),r}));l=e(i,"equal")&&e(n,"equal")&&e(c,"notinclude")&&e(o,"notequal")&&e(r,"include")&&e(s,"include")}return l}),W(this,"reduceSharedPayload",(e,t,a,i,n)=>{const r=(Array.isArray(e)?e:[e]).map(e=>{const{shared:r=[],...s}=e;return r.reduce((e,r)=>{let s;return r?.logic&&r?.payload?this.testRule(r.logic,t,n)?(s={...e,...r.payload},window.dispatchEvent(new CustomEvent("wsTaggingRuleMatch",{detail:{data:_({event:i,...a,sharedBlock:r.logic}),type:"rule"}}))):s=e:s={...r,...e},s},{...s})});return Array.isArray(e)?r:r[0]}),W(this,"resolveSharedPayload",(e,t,a,i,n)=>{const r=(Array.isArray(e)?e:[e]).map(e=>{const r=e;return Object.keys(r).forEach(e=>{"object"==typeof r[e]&&r[e]?.shared&&(r[e]=this.reduceSharedPayload(r[e],t,a,i,n))}),this.reduceSharedPayload(r,t,a,i,n)});return Array.isArray(e)?r:r[0]});const{grouping:a,configuration:{create:i=!1,lookups:n,previousData:r={},sendingLogic:s={}}=!1,event:{events:o=!1,triggerEvents:c=!1,fireGroups:d=!1}=!1,utils:u={},preview:g=!1}=e;this.mapping=e,this.event=o,this.triggerEvents=c,this.fireGroups=d,this.configuration=e.configuration,this.name=t,this.grouping=a,this.prevData=((e,t,a)=>JSON.parse(a.localStorage.getItem(`wsTaggingPrev|${e}|${t}`)))(t,a,window),this.preview=g,this.scriptsLoaded=new Set,this.sendingLogic=s,this.lookups=n,this.utils=u,this.triggeredEvents=new Map,this.firedGroups=new Map;const p=`wsTaggingPrevEvents${t}${a}`,v=JSON.parse(localStorage.getItem(p));this.mapping.prevEventData=v,localStorage.removeItem(p),!g&&i&&l(i,window),((e={},t,a,i)=>{h(e,t,a,i),i?.DDC?.APILoader&&(async n=>{(await n.create("ws-tagging")).subscribe("vehicle-data-updated-v1",()=>{h(e,t,a,i)})})(i.DDC.APILoader)})(r?.ddcDataLayer,t,a,window)}handleGlobalPayloadMutators(e){const t=this.configuration?.globalPayloadMutators;return t?A(e,w.bind(void 0,t)):e}testRule(e,t={},a){const{mustExist:i=!1,mustEqual:n,mustInclude:r,mustNotEqual:s,mustNotInclude:c,...l}=e;return(!i||o(i).every(e=>void 0!==O({input:e,eventData:t,mapping:this.mapping,utils:this.utils,lookups:this.lookups,flags:J})))&&this.testLogic(e,t,a)&&Object.entries(l).every(([e,a])=>{const i=I({str:e,eventData:t,mapping:this.mapping,utils:this.utils,lookups:this.lookups,flags:J});if("boolean"==typeof i&&"boolean"==typeof a)return i===a;{const n=i||t[e];return"string"==typeof n?n?.includes(a):"boolean"==typeof n&&n===a}})}testFireGroup(e){let t=!0;if(e){const a=Object.keys(this?.fireGroups?.[e]);switch(a[0]){case void 0:(0,m.A)({msg:"An operation is required when using a fireGroup"});break;case"maxCount":{const a=this?.fireGroups?.[e]?.maxCount;if(0===a)(0,m.A)({msg:"maxCount can not be zero"});else{const i=this.firedGroups.get(e);i?i<a?this.firedGroups.set(e,i+1):t=!1:this.firedGroups.set(e,1)}break}case"minCount":{const a=this?.fireGroups?.[e]?.minCount;if(0===a)(0,m.A)({msg:"minCount can not be zero"});else{const i=this.firedGroups.get(e);i>=a?t=!0:i?(t=!1,this.firedGroups.set(e,i+1)):(t=!1,this.firedGroups.set(e,1))}break}}t&&a.length&&window.dispatchEvent(new CustomEvent("wsTaggingRuleMatch",{detail:{data:e,type:"fireGroup"}}))}return t}getRule(e,t,a){let i=(0,F.A)(t);if(!Array.isArray(i)){if(!i.logic)return i;i=[i]}return i.find(t=>{const{fireGroup:i=!1}
1=t,n=t.logic&&o(t.logic).some(t=>this.testRule(t,e,a)),r=!t.logic&&!0,s=(n||r)&&this.testFireGroup(i);return(n||r)&&s})}reportToNewRelic({clientEventName:e,event:t,eventData:a={},sender:i="",win:r={},...s}){if(j(this?.configuration?.nrPercentage)&&x(J,this.name,e||t)){const o=r?.DDC?.dataLayer?.page?.trackingTags||{},c=Object.keys(o).toString(),l=Object.values(o).toString(),d=a?.trackingTags;n(`${this.name}_send_data`,{eventName:e||t,...d&&{eventTrackingTags:d},mappingGroup:this.grouping,mappingSource:"native ws-tagging",...c&&{pageTrackingTags:c},...l&&{pageTrackingTagsValues:l},...s,sourceEvent:t,wsTaggingPreview:this.preview,...i&&{sender:i},...a?.widgetName&&{widgetName:a.widgetName}})}}sendEvent(e,t,a,{addSourceToSecondArgument:i=!1,addEventToSecondArgument:n=!1,event:r=""}={}){let s=!1;try{if("function"==typeof e){const a=[t],o={};i&&(o.source="ws-tagging"),n&&(o.event=r),Object.keys(o).length&&a.push(o),e(...a),s=!0}else Array.isArray(e)?(e.push(t),s=!0):"string"==typeof e&&(c(window,e,t),s=!0)}catch(e){(0,m.A)({msg:`Error sending ${a}: ${e.message}`})}return s&&(0,m.A)({msg:`Sending payload for ${this.name} to the ${"string"==typeof e?"object":typeof e} ${a}`}),s}resolveClientEventName({clientEventName:e,eventData:t,payload:a}){return a?.[e]||R({input:e,eventData:t,configuration:this.configuration,utils:this.utils,mapping:this.mapping,flags:J,payload:a})||t.event}sendEvents(e,t,a="",i={},n){const{reporting:{clientEventName:o}=!1}=this.configuration,c=n?[{sender:n}]:this.configuration.sendData,l=Array.isArray(e)?e:[e];let d=[],u=[];l.forEach(async e=>{const l=M(e,i),g=this.resolveClientEventName({clientEventName:o,eventData:i,payload:l});if(!n&&this?.utils?.sending){const{reportsForEventViewer:e,reportsForNewRelic:a={}}=this.utils.sending({data:l,event:t,eventData:i,flags:J,...this.utils.groupingSending&&{groupingSending:this.utils.groupingSending},mapping:this.mapping,preview:this.preview,win:window});d=d.concat(e),u=u.concat(a)}else c.forEach(({sender:n,report:o=!0,eventViewer:c=!0,addEventToSecondArgument:p=!1,addSourceToSecondArgument:v=!1})=>{if(c&&d.push({payload:l,sender:n,clientEventName:g}),`,${a},`.includes(`,${n},`))(0,m.A)({msg:`Skipping excluded ${n} for ${this.name}`});else{o&&u.push({clientEventName:g,sender:n});const a=s(window,n);if(!this.preview){const s=[(0,r.A)(a)?n:a,M(e,i),n];(p||v)&&s.push({addEventToSecondArgument:p,addSourceToSecondArgument:v,event:t}),this.sendEvent(...s)}}})}),u.forEach(async e=>{const{clientEventName:a,linkType:n,sender:r}=await e;this.reportToNewRelic({...a&&{clientEventName:a},event:t,eventData:i,...n&&{linkType:n},sender:r,win:window})}),d.forEach(async e=>{if(e){const{payload:a,clientEventName:i,...n}=await e;a&&window?.DDC?.reportToEventViewer&&window?.DDC?.reportToEventViewer({...i&&{clientEventName:i},event:t,payload:a,project:this.name,...n})}})}async processScripts(e,t,a){const i={error:!1,message:"",messages:[]};if(this.configuration.scripts){const{when:n,trigger:r,event:s,configs:o}=this.configuration.scripts;if(e===n&&t===r&&a===s)for(let e=0;e<o.length;e++){const{name:t,src:a,srcNp:n,type:r}=o[e];if(t&&a&&r){if(!this.scriptsLoaded.has(t)){const e=n&&"prod"!==(0,C.Ay)()?n:a,i=O({input:e,eventData:void 0,mapping:this.mapping,utils:this.utils,lookups:this.lookups,flags:J});this.preview||await p[r]({flags:J,src:i,win:window}),this.scriptsLoaded.add(t),window.dispatchEvent(new Event(`ws-tagging-${this.name}-${this.grouping}-script-${t}-loaded`))}}else{if(i.error=!0,i.message=`${this.name} ${this.grouping} script not configured correctly:`,(0,m.A)({msg:i.message}),!t){const e="must have a name";i.messages.push(e),(0,m.A)({msg:e})}if(!a){const e="must have a src";i.messages.push(e),(0,m.A)({msg:e})}if(!r){const e="must have a type";i.messages.push(e),(0,m.A)({msg:e})}}}}return Promise.resolve(i)}async handleRule(e,t,a,i){const n=e;if(n&&window.dispatchEvent(new CustomEvent("wsTaggingRuleMatch",{detail:{data:_({event:t,...n}),type:"rule"}})),n&&n.payload&&(await y(window),n.payload=(0,G.A)(n.payload,{element:i,eventData:a,configuration:this.configuration,flags:J,mapping:this.mapping,utils:this.utils}),n.payload)){let e=R({input:n.payload,eventData:a,configuration:this.configuration,utils:this.utils,mapping:this.mapping,flags:J});e=this.resolveSharedPayload(e,a,n,t,i),e=this.handleGlobalPayloadMutators(e);const r=n?.sender;if(this.event["ddc.wstagging.first"]){const e=new Promise(e=>{if(this.firstFired||"ddc.wstagging.first"===t)this.firstFired=!0,e();else{let t=0;const a=setInterval(()=>{t+=1,(this.firstFired||t>=1e3)&&(clearInterval(a),e())},10)}});await e}this.sendEvents(e,t,n.excluded,a,r),await this.processScripts("after","event",t)}}getTriggeredRule(e,t,a){let i;const n=this.triggerEvents?.[e]||{};if(this.triggerEvents?.[e])if(n.payload){const r=this.getRule(t,n,a);if(r){if(n?.configuration?.count){const t=this.triggeredEvents.get(e);t?t<n.configuration.count&&(this.triggeredEvents.set(e,t+1),i=r):(this.triggeredEvents.set(e,1),i=r)}else i=r;i&&window.dispatchEvent(new CustomEvent("wsTaggingRuleMatch",{detail:{data:e,type:"trigger"}}))}}else(0,m.A)({msg:`payload must exist in the triggerEvent: ${e}`});else(0,m.A)({msg:`${e} not found in triggerEvents`,data:this.triggerEvents});return i}async listener(e){const{event:t}=e,a=["userEvent","thirdPartyUserEvent","specialsEvent"].includes(e.event)?e:e.eventData;this.mapping.prevEventData={...this.mapping.prevEventData,...f(this.configuration?.previousData?.events,this.name,this.grouping,t,a,window)};const i=this.event?.[t]||this.event?.["*"];if(i){const e={...a,...this.prevData&&{prev:this.prevData},element:"string"==typeof a.element?a.element:"",...a?.elementCTA&&{elementCTA:"string"==typeof a?.elementCTA?a.elementCTA:""}},n=this.sendingLogic?.waitFor?.script,r=this.sendingLogic?.exception?.event,s=new Promise(e=>{if(!n||this.scriptsLoaded.has(`${n}`)||r&&r===t)e();else{const t=()=>{this.scriptsLoaded.add(n),e()};window.addEventListener(`ws-tagging-${this.name}-${this.grouping}-script-${n}-loaded`,t,{once:!0})}});await s;const c=this.getRule(e,i,a.element);!this.event?.[t]&&this.event?.["*"]&&window.dispatchEvent(new CustomEvent("wsTaggingRuleMatch",{detail:{data:_({event:"*",...c}),type:"rule"}}));const l=[c];
1(c?.trigger&&o(c.trigger)||[]).forEach(t=>{const i=this.getTriggeredRule(t,e,a.element);i&&("first"===this.triggerEvents?.[t]?.configuration?.when?l.unshift(i):l.push(i))});for(let i=0;i<l.length;i++)await this.handleRule(l[i],t,e,a.element)}}}const Y=[],z=e=>(e.eventData||["userEvent","thirdPartyUserEvent","specialsEvent"].includes(e.event))&&Y.forEach(t=>t.listener(e)),H=e=>{Object.entries(e).forEach(([e,t])=>{t?.event&&t?.configuration&&Y.push(new B(t,e))}),Y.sort(({configuration:{priority:e=999}},{configuration:{priority:t=999}})=>e-t)},X=async e=>{const t=({vehicle:t,vehicle:{uuid:a},timestamp:i,type:n})=>{if(a&&!U.has(a)){U.add(a);const r=e.DDC.dataLayer?.page?.generateId?.()||Math.trunc(1e9*Math.random());z({event:"vehicle-shown",eventData:{eventId:r,timestamp:i,type:n,vehicle:t}})}},a=e?.DDC?.APILoader&&await(e?.DDC?.APILoader.create("ws-tagging"));a?.subscribe("vehicle-shown-v1",({timestamp:e,type:a,payload:i={}}={})=>{t({timestamp:e,type:a,vehicle:i})});document.querySelectorAll(".hproduct").forEach(a=>{const i=new IntersectionObserver(i=>{((a,i)=>{a.forEach(a=>{a.isIntersecting&&t({timestamp:Date.now(),type:"vehicle-shown-legacy-vlp",vehicle:V(e,i.dataset)})})})(i,a)},{threshold:1});i.observe(a)})},K=async({flags:e}={})=>{const{DDC:t}=window,a=t.WidgetData["ws-tagging"];a.browserEventNames=[];const i=a?.mapping;if(i&&(H(i),Y.length>0)){z({event:"ddc.wstagging.first",eventData:{alias:t?.dataLayer?.page?.pageInfo?.pageName,eventId:t?.dataLayer?.generateId?.()}}),window.dataLayer=window.dataLayer||[],a.ascDataLayerHelper=new window.DataLayerHelper(window?.asc_datalayer?.events||[],(e,t)=>{z({event:t.event,eventData:t})}),a.dataLayerHelper=new window.DataLayerHelper(window.dataLayer||[],(a,i)=>{i&&i.event&&"widgetUserEvent"!==i.event&&z(i),((e,t,a)=>{if("string"==typeof e?.event&&(e.event.startsWith("ddc.")||["userEvent","specialsEvent","widgetUserEvent"].includes(e.event))&&/^[A-Za-z.]+$/.test(e.event)){let i="ddcEvent",n=e.event,r=e;if(e.event.startsWith("ddc.")||(i=e.event),"widgetUserEvent"===i?n=e.widgetName:"userEvent"===i?n=e.eventAction:"specialsEvent"===i&&(n=e.specialType),e?.eventData?.vehicle){const{eventData:{vehicle:{features:t,images:a,...i},...n},...s}=e;r={...s,eventData:{...n,vehicle:{images:[],...i}}}}"ddcEvent"===i&&r?.eventData&&"object"==typeof r.eventData&&(r=r.eventData);let s=0;a?.["ws-tagging-firehose"]&&0!==a?.["ws-tagging-firehose"]&&(s=a?.["ws-tagging-firehose"]),t.pushToFirehose(i,n,{...r,..."string"!=typeof r.element&&{element:""},..."string"!=typeof r.elementCTA&&{elementCTA:""}},s)}})(i,t,e)},!0),t.receiveTrackingEvent&&t.receiveTrackingEvent((e,t={},a={})=>{if((0,r.A)(t)&&t.event&&"widgetUserEvent"===t.event){const e={...t,...(0,r.A)(a)&&{...a}};z({event:t.event,eventData:e}),window.dispatchEvent(new CustomEvent("wsTaggingWUE",{detail:e}))}}),window.DDC?.dataLayer?.page?.pageInfo?.isVlp&&((async e=>{const t=await(e?.DDC?.APILoader?.create?.("ws-tagging"));t?.subscribe?.("vehicle-data-updated-v1",({payload:{vehicleData:t}={},timestamp:a,type:i}={})=>{const n=e.DDC.dataLayer?.page?.generateId?.()||Math.trunc(1e9*Math.random());z({event:"vehicle-data-updated",eventData:{eventId:n,timestamp:a,type:i,vehicles:t}})})})(window),await X(window)),t.WidgetData["ws-tracking"]?.ddctrackingMessages?.forEach?t.WidgetData["ws-tracking"]?.ddctrackingMessages.forEach(e=>{z({event:"ddc.message",eventData:e.data})}):window?.newrelic?.addPageAction?.("wsTaggingTrackingMessagesNotFound",{location:"1"}
1),window.addEventListener("ddcTrackingData",({detail:e})=>{z({event:"ddc.message",eventData:e})}),window.coxAutoDataLayer?.subscribe?.((e,t)=>{z({event:"commonDataLayerEvent",eventData:t})});const i=()=>{window.CAIEventBus?.on("wallet:open",e=>{z({event:"wallet:open",eventData:(0,F.A)(e)})})};if(window.CAIEventBus)i();else{let e=0;const t=setInterval(()=>{e+=1,window.CAIEventBus?(clearInterval(t),i()):e>=1e3&&clearInterval(t)},10)}}};let Q=!1;const Z=e=>{Q||(J=e,window?.DDC?.WidgetData?.["ws-tagging"]?.mapping?K({flags:e}):window.addEventListener("ws-tagging-ready",()=>{K({flags:e})}),Q=!0)}},7369(e,t,a){"use strict";a.d(t,{A:()=>n});const i=(e,...t)=>{if(null===e||"object"!=typeof e&&"function"!=typeof e)return e;if(Array.isArray(e))return e.map(e=>i(e,...t));if("function"==typeof e)return e(...t);if("object"==typeof e){const a={};return Object.keys(e).forEach(n=>{const r=e[n];a[n]="function"==typeof r?r(...t):i(r,...t)}),a}return e},n=i},4199(e,t,a){"use strict";a.d(t,{A:()=>i});const i=(e,t)=>{const a=Object.values(e).find(e=>Object.prototype.hasOwnProperty.call(e,t));return void 0===a?"":a[t].toString()}},8151(e,t,a){"use strict";a.d(t,{A:()=>c});var i=a(288),n=a.n(i);const r=(e=!1)=>e&&Object.prototype.hasOwnProperty.call(e,"test");var s=a(4579);const o=["fatal","error","warn","info","debug","trace"],c=({msg:e,data:t,level:a="info"})=>{const i=[e],c=o.includes(a)?a:"info";let l=t;return(0,s.A)(t)&&(l={...t,...t?.eventData&&{eventData:{...t.eventData}}}),l&&i.push(l),("undefined"==typeof window||!r(window))&&n()[c](...i)}},5606(e){var t,a,i=e.exports={};function n(){throw new Error("setTimeout has not been defined")}function r(){throw new Error("clearTimeout has not been defined")}function s(e){if(t===setTimeout)return setTimeout(e,0);if((t===n||!t)&&setTimeout)return t=setTimeout,setTimeout(e,0);try{return t(e,0)}catch(a){try{return t.call(null,e,0)}catch(a){return t.call(this,e,0)}}}!function(){try{t="function"==typeof setTimeout?setTimeout:n}catch(e){t=n}try{a="function"==typeof clearTimeout?clearTimeout:r}catch(e){a=r}}();var o,c=[],l=!1,d=-1;function u(){l&&o&&(l=!1,o.length?c=o.concat(c):d=-1,c.length&&g())}function g(){if(!l){var e=s(u);l=!0;for(var t=c.length;t;){for(o=c,c=[];++d<t;)o&&o[d].run();d=-1,t=c.length}o=null,l=!1,function(e){if(a===clearTimeout)return clearTimeout(e);if((a===r||!a)&&clearTimeout)return a=clearTimeout,clearTimeout(e);try{return a(e)}catch(t){try{return a.call(null,e)}catch(t){return a.call(this,e)}}}(e)}}function p(e,t){this.fun=e,this.array=t}function v(){}i.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var a=1;a<arguments.length;a++)t[a-1]=arguments[a];c.push(new p(e,t)),1!==c.length||l||s(g)},p.prototype.run=function(){this.fun.apply(null,this.array)},i.title="browser",i.browser=!0,i.env={},i.argv=[],i.version="",i.versions={},i.on=v,i.addListener=v,i.once=v,i.off=v,i.removeListener=v,i.removeAllListeners=v,i.emit=v,i.prependListener=v,i.prependOnceListener=v,i.listeners=function(e){return[]},i.binding=function(e){throw new Error("process.binding is not supported")},i.cwd=function(){return"/"},i.chdir=function(e){throw new Error("process.chdir is not supported")},i.umask=function(){return 0}},7742(e,t,a){const{log:i}=a(7437);e.exports={fatal:(e,t=null)=>{i("FATAL",e,t)},error:(e,t=null)=>{i("ERROR",e,t)},warn:(e,t=null)=>{i("WARN",e,t)},info:(e,t=null)=>{i("INFO",e,t)},debug:(e,t=null)=>{i("DEBUG",e,t)},trace:(e,t=null)=>{i("TRACE",e,t)}}},7437(e,t,a){const{levels:i,colors:n,logLevel:r,stderrLevels:s}=a(4812);i[r];e.exports={log:(e,t,a)=>{false}}},4812(e,t,a){const i=a(5606).env.LOG_LEVEL||"INFO",n={FATAL:0,ERROR:1,WARN:2,INFO:3,DEBUG:4,TRACE:5},r=new Set;Object.keys(n).forEach(e=>{n[e]<n.INFO&&r.add(e)});e.exports={levels:n,logLevel:i,stderrLevels:r,colors:{FATAL:"red bold",ERROR:"red",WARN:"yellow",INFO:"green",DEBUG:"cyan",TRACE:"blue"}}}}]);
2//# sourceMappingURL=bundle.806.ddffc412ab691fdb00d1daa05f98e239.js.map

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