{"version":3,"file":"marketing_pixels-DtmOJUuA.js","names":[],"sources":["../../../app/javascript/entrypoints/site_controllers/marketing_pixels.js"],"sourcesContent":["// Meta pixel and LinkedIn Insight Tag, loaded only once the visitor accepted cookies\n// (cookie banner: localStorage cookieConsent = \"true\", event \"tracking:initialized\").\n// Identifiers come from ; a on the page\n// (after a sent form) is sent as a conversion.\n\nconst consented = () => {\n try { return localStorage.getItem(\"cookieConsent\") === \"true\" } catch { return false }\n}\n\nconst config = () => {\n const meta = document.querySelector('meta[name=\"marketing-pixels\"]')\n try { return meta ? JSON.parse(meta.content) : {} } catch { return {} }\n}\n\nfunction loadMeta(id) {\n if (window.fbq) return\n const fbq = function () { fbq.callMethod ? fbq.callMethod.apply(fbq, arguments) : fbq.queue.push(arguments) }\n fbq.push = fbq; fbq.loaded = true; fbq.version = \"2.0\"; fbq.queue = []\n window.fbq = window._fbq = fbq\n const script = document.createElement(\"script\")\n script.async = true\n script.src = \"https://connect.facebook.net/en_US/fbevents.js\"\n document.head.appendChild(script)\n window.fbq(\"init\", id)\n}\n\nfunction loadLinkedIn(id) {\n if (window.lintrk) return\n window._linkedin_partner_id = id\n window._linkedin_data_partner_ids = [id]\n const lintrk = function (action, data) { lintrk.q.push([action, data]) }\n lintrk.q = []\n window.lintrk = lintrk\n const script = document.createElement(\"script\")\n script.async = true\n script.src = \"https://snap.licdn.com/li.lms-analytics/insight.min.js\"\n document.head.appendChild(script)\n}\n\n// Turbo swaps on every visit: one entry per rendered page, whatever fires first\n// (turbo:load or the cookie banner's \"tracking:initialized\", sent on each page once accepted).\nconst trackedPages = new WeakSet()\n\nfunction trackVisit() {\n if (!consented() || trackedPages.has(document.body)) return\n trackedPages.add(document.body)\n const ids = config()\n if (ids.meta_pixel_id) { loadMeta(ids.meta_pixel_id); window.fbq(\"track\", \"PageView\") }\n if (ids.linkedin_partner_id) loadLinkedIn(ids.linkedin_partner_id)\n\n const marker = document.querySelector('meta[name=\"tracking-event\"]')\n if (!marker) return\n const event = marker.content\n marker.remove() // the page kept in Turbo's cache (back button) must not send it again\n if (window.fbq) window.fbq(\"track\", event)\n if (window.lintrk && ids.linkedin_lead_conversion_id) window.lintrk(\"track\", { conversion_id: Number(ids.linkedin_lead_conversion_id) })\n}\n\ndocument.addEventListener(\"turbo:load\", trackVisit)\nwindow.addEventListener(\"tracking:initialized\", trackVisit)\n"],"mappings":"AAKA,IAAM,MAAkB,CACtB,GAAI,CAAE,OAAO,aAAa,QAAQ,gBAAgB,GAAK,YAAe,CAAE,MAAO,KAG3E,MAAe,CACnB,IAAM,EAAO,SAAS,cAAc,gCAAgC,CACpE,GAAI,CAAE,OAAO,EAAO,KAAK,MAAM,EAAK,QAAQ,CAAG,EAAE,MAAS,CAAE,MAAO,EAAE,GAGvE,SAAS,EAAS,EAAI,CACpB,GAAI,OAAO,IAAK,OAChB,IAAM,EAAM,UAAY,CAAE,EAAI,WAAa,EAAI,WAAW,MAAM,EAAK,UAAU,CAAG,EAAI,MAAM,KAAK,UAAU,EAC3G,EAAI,KAAO,EAAK,EAAI,OAAS,GAAM,EAAI,QAAU,MAAO,EAAI,MAAQ,EAAE,CACtE,OAAO,IAAM,OAAO,KAAO,EAC3B,IAAM,EAAS,SAAS,cAAc,SAAS,CAC/C,EAAO,MAAQ,GACf,EAAO,IAAM,iDACb,SAAS,KAAK,YAAY,EAAO,CACjC,OAAO,IAAI,OAAQ,EAAG,CAGxB,SAAS,EAAa,EAAI,CACxB,GAAI,OAAO,OAAQ,OACnB,OAAO,qBAAuB,EAC9B,OAAO,2BAA6B,CAAC,EAAG,CACxC,IAAM,EAAS,SAAU,EAAQ,EAAM,CAAE,EAAO,EAAE,KAAK,CAAC,EAAQ,EAAK,CAAC,EACtE,EAAO,EAAI,EAAE,CACb,OAAO,OAAS,EAChB,IAAM,EAAS,SAAS,cAAc,SAAS,CAC/C,EAAO,MAAQ,GACf,EAAO,IAAM,yDACb,SAAS,KAAK,YAAY,EAAO,CAKnC,IAAM,EAAe,IAAI,QAEzB,SAAS,GAAa,CACpB,GAAI,CAAC,GAAW,EAAI,EAAa,IAAI,SAAS,KAAK,CAAE,OACrD,EAAa,IAAI,SAAS,KAAK,CAC/B,IAAM,EAAM,GAAQ,CAChB,EAAI,gBAAiB,EAAS,EAAI,cAAc,CAAE,OAAO,IAAI,QAAS,WAAW,EACjF,EAAI,qBAAqB,EAAa,EAAI,oBAAoB,CAElE,IAAM,EAAS,SAAS,cAAc,8BAA8B,CACpE,GAAI,CAAC,EAAQ,OACb,IAAM,EAAQ,EAAO,QACrB,EAAO,QAAQ,CACX,OAAO,KAAK,OAAO,IAAI,QAAS,EAAM,CACtC,OAAO,QAAU,EAAI,6BAA6B,OAAO,OAAO,QAAS,CAAE,cAAe,OAAO,EAAI,4BAA4B,CAAE,CAAC,CAG1I,SAAS,iBAAiB,aAAc,EAAW,CACnD,OAAO,iBAAiB,uBAAwB,EAAW"}