{"version":3,"file":"LocaleBanner.DocUlj32.mjs","names":[],"sources":["https:/framerusercontent.com/modules/gNZ6wPHuaDsckuybJuvV/3pWX9U3ajgG2tF4vOork/LocaleBanner.js"],"sourcesContent":["import{jsx as _jsx}from\"react/jsx-runtime\";import{forwardRef,useEffect}from\"react\";import{createStore}from\"https://framer.com/m/framer/store.js@^1.0.0\";import{useIsOnFramerCanvas,useLocaleInfo,useTracking}from\"framer\";// Cookie names (set by CloudFront function)\nconst COOKIE_GEO=\"px_geo\";const COOKIE_RECO=\"px_reco\";const COOKIE_LOCALE_PREF=\"px_locale_pref\";const COOKIE_MAX_AGE=30*24*60*60// 30 days in seconds\n;// Locale → base language (for choosing message template & region name translations)\nconst LOCALE_LANG={root:\"de\",de:\"de\",at:\"de\",fr:\"fr\",\"fr-ch\":\"fr\",it:\"it\",\"it-ch\":\"it\",es:\"es\",en:\"en\",\"en-ch\":\"en\",\"en-gb\":\"en\"};// GeoIP country names per language (with correct grammar for \"visiting from {country}\")\n// German uses \"aus {x}\" — some countries need dative article (der Schweiz, den Niederlanden)\n// French uses \"depuis {x}\" — always needs article (la Suisse, l'Allemagne)\n// Italian includes merged preposition (dalla Svizzera = da + la Svizzera)\n// Spanish uses \"desde {x}\" — mostly no article except el Reino Unido\n// English uses \"from {x}\" — straightforward\nconst COUNTRY_NAMES={de:{CH:\"der Schweiz\",LI:\"Liechtenstein\",DE:\"Deutschland\",AT:\"\\xd6sterreich\",FR:\"Frankreich\",IT:\"Italien\",ES:\"Spanien\",GB:\"Grossbritannien\",NL:\"den Niederlanden\",LU:\"Luxemburg\",BG:\"Bulgarien\",US:\"den USA\",DK:\"D\\xe4nemark\"},fr:{CH:\"la Suisse\",LI:\"le Liechtenstein\",DE:\"l'Allemagne\",AT:\"l'Autriche\",FR:\"la France\",IT:\"l'Italie\",ES:\"l'Espagne\",GB:\"le Royaume-Uni\",NL:\"les Pays-Bas\",LU:\"le Luxembourg\",BG:\"la Bulgarie\",US:\"les \\xc9tats-Unis\",DK:\"le Danemark\"},it:{CH:\"dalla Svizzera\",LI:\"dal Liechtenstein\",DE:\"dalla Germania\",AT:\"dall'Austria\",FR:\"dalla Francia\",IT:\"dall'Italia\",ES:\"dalla Spagna\",GB:\"dal Regno Unito\",NL:\"dai Paesi Bassi\",LU:\"dal Lussemburgo\",BG:\"dalla Bulgaria\",US:\"dagli Stati Uniti\",DK:\"dalla Danimarca\"},es:{CH:\"Suiza\",LI:\"Liechtenstein\",DE:\"Alemania\",AT:\"Austria\",FR:\"Francia\",IT:\"Italia\",ES:\"Espa\\xf1a\",GB:\"el Reino Unido\",NL:\"los Pa\\xedses Bajos\",LU:\"Luxemburgo\",BG:\"Bulgaria\",US:\"Estados Unidos\",DK:\"Dinamarca\"},en:{CH:\"Switzerland\",LI:\"Liechtenstein\",DE:\"Germany\",AT:\"Austria\",FR:\"France\",IT:\"Italy\",ES:\"Spain\",GB:\"the United Kingdom\",NL:\"the Netherlands\",LU:\"Luxembourg\",BG:\"Bulgaria\",US:\"the United States\",DK:\"Denmark\"}};// Fallback: use Intl.DisplayNames for unlisted countries, with grammar fixes\n// French: \"depuis\" always needs an article (la Pologne, le Canada, l'Inde)\n// Italian: template omits preposition, so we prepend a merged form (dalla, dal, dall')\nfunction getCountryName(geo,lang){const name=COUNTRY_NAMES[lang]?.[geo];if(name)return name;try{const displayName=new Intl.DisplayNames([lang],{type:\"region\"}).of(geo)||geo;if(lang===\"fr\"){if(/^[aeiouéèêëàâîïôùûü]/i.test(displayName))return`l'${displayName}`;if(/e$/i.test(displayName))return`la ${displayName}`;return`le ${displayName}`;}if(lang===\"it\"){if(/^[aeiou]/i.test(displayName))return`dall'${displayName}`;if(/a$/i.test(displayName))return`dalla ${displayName}`;return`dal ${displayName}`;}return displayName;}catch{return geo;}}// Message templates — \"We see you are visiting from {GeoIP country}\" in each language\n// Note: Italian template omits \"da\" because the merged preposition is in COUNTRY_NAMES\nconst MESSAGE_TEMPLATES={de:c=>`Es scheint, dass Du aus ${c} kommst.`,fr:c=>`Il semble que vous nous visitez depuis ${c}.`,it:c=>`Sembra che tu ci stia visitando ${c}.`,es:c=>`Parece que est\\xe1s visitando desde ${c}.`,en:c=>`We see you are visiting from ${c}.`};// Recommended locale → label, stay button, and switch button labels\nconst LOCALE_MAP={root:{label:\"Deutsch (CH)\",stayButton:\"Hier bleiben\",switchButton:\"Seite f\\xfcr die Schweiz anzeigen\"},de:{label:\"Deutsch\",stayButton:\"Hier bleiben\",switchButton:\"Seite f\\xfcr Deutschland anzeigen\"},at:{label:\"Deutsch (AT)\",stayButton:\"Hier bleiben\",switchButton:\"Seite f\\xfcr \\xd6sterreich anzeigen\"},fr:{label:\"Fran\\xe7ais\",stayButton:\"Rester ici\",switchButton:\"Voir la page pour la France\"},it:{label:\"Italiano\",stayButton:\"Resta qui\",switchButton:\"Mostra la pagina per l'Italia\"},es:{label:\"Espa\\xf1ol\",stayButton:\"Quedarme aqu\\xed\",switchButton:\"Ver la p\\xe1gina para Espa\\xf1a\"},en:{label:\"English\",stayButton:\"Stay here\",switchButton:\"Show the English page\"},\"en-ch\":{label:\"English (CH)\",stayButton:\"Stay here\",switchButton:\"Show the page for Switzerland\"},\"en-gb\":{label:\"English (GB)\",stayButton:\"Stay here\",switchButton:\"Show the English (UK) page\"},\"fr-ch\":{label:\"Fran\\xe7ais (CH)\",stayButton:\"Rester ici\",switchButton:\"Voir la page pour la Suisse\"},\"it-ch\":{label:\"Italiano (CH)\",stayButton:\"Resta qui\",switchButton:\"Mostra la pagina per la Svizzera\"}};// Simple cookie helpers (mirrors the original script)\nfunction getCookie(name){if(typeof document===\"undefined\")return null;const m=document.cookie.match(new RegExp(\"(^| )\"+name+\"=([^;]+)\"));return m?decodeURIComponent(m[2]):null;}function setCookie(name,value){if(typeof document===\"undefined\")return;document.cookie=name+\"=\"+encodeURIComponent(value)+\"; Path=/; Max-Age=\"+COOKIE_MAX_AGE+\"; SameSite=Lax; Secure\";}const useStore=createStore({suggestion:null,isVisible:false,isResolved:false});// Internal hook — reads cookies, computes suggestion, populates the store once\nfunction useSuggestion(){const[store,setStore]=useStore();const isCanvas=useIsOnFramerCanvas();const{activeLocale}=useLocaleInfo();const localeSlug=activeLocale?.slug;useEffect(()=>{if(typeof window===\"undefined\"||isCanvas||!activeLocale||store.isResolved)return;if(getCookie(COOKIE_LOCALE_PREF)){setStore({suggestion:null,isVisible:false,isResolved:true});return;}const geo=getCookie(COOKIE_GEO);const reco=getCookie(COOKIE_RECO);if(!geo||!reco){setStore({suggestion:null,isVisible:false,isResolved:true});return;}// If already on the recommended locale, no banner needed\nconst currentSlug=localeSlug||\"root\";if(reco===currentSlug){setStore({suggestion:null,isVisible:false,isResolved:true});return;}const locale=LOCALE_MAP[reco];if(!locale){setStore({suggestion:null,isVisible:false,isResolved:true});return;}// Build message dynamically: \"We see you are visiting from {GeoIP country}\"\n// written in the recommended locale's language\nconst lang=LOCALE_LANG[reco];const countryName=getCountryName(geo,lang);const message=MESSAGE_TEMPLATES[lang]?.(countryName)??\"\";setStore({suggestion:{folder:reco,label:locale.label,message,stayButton:locale.stayButton,switchButton:locale.switchButton},isVisible:true,isResolved:true});},[localeSlug]);return{store,setStore};}// Controls banner container visibility\nexport function withLocaleBanner(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const{store}=useSuggestion();const isCanvas=useIsOnFramerCanvas();if(isCanvas){return /*#__PURE__*/_jsx(Component,{ref:ref,...props});}if(!store.isResolved||!store.isVisible){return null;}return /*#__PURE__*/_jsx(Component,{ref:ref,...props,id:\"px-locale-banner\"});});}// Injects dynamic banner text\nexport function withLocaleBannerText(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const{store}=useSuggestion();const isCanvas=useIsOnFramerCanvas();if(isCanvas){return /*#__PURE__*/_jsx(Component,{ref:ref,...props,text:\"Es scheint, dass Du aus Deutschland kommst.\"});}if(!store.suggestion){return /*#__PURE__*/_jsx(Component,{ref:ref,...props});}return /*#__PURE__*/_jsx(Component,{ref:ref,...props,text:store.suggestion.message});});}// Switch button — sets cookie and switches to recommended locale via Framer\nexport function withSwitchLocale(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const{store,setStore}=useSuggestion();const{locales,setLocale}=useLocaleInfo();const track=useTracking();const handleSwitch=()=>{if(!store.suggestion)return;if(props.trackingID){track(props.trackingID);}const targetFolder=store.suggestion.folder;const targetLocale=locales.find(l=>targetFolder===\"root\"?!l.slug:l.slug===targetFolder);if(targetLocale){setCookie(COOKIE_LOCALE_PREF,targetFolder);setStore(prev=>({...prev,isVisible:false}));setLocale(targetLocale);}};return /*#__PURE__*/_jsx(Component,{ref:ref,...props,onClick:handleSwitch,viewOffers:store.suggestion?.switchButton});});}// Stay button — sets cookie to current locale and hides banner\nexport function withStayLocale(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const{store,setStore}=useSuggestion();const{activeLocale}=useLocaleInfo();const track=useTracking();const handleStay=()=>{if(typeof window===\"undefined\")return;if(props.trackingID){track(props.trackingID);}const currentFolder=activeLocale?.slug||\"root\";setCookie(COOKIE_LOCALE_PREF,currentFolder);setStore(prev=>({...prev,isVisible:false}));};return /*#__PURE__*/_jsx(Component,{ref:ref,...props,onClick:handleStay,viewOffers:store.suggestion?.stayButton});});}// Close button — sets cookie to current locale and hides banner\nexport function withCloseBanner(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const[,setStore]=useStore();const{activeLocale}=useLocaleInfo();const handleClose=()=>{if(typeof window===\"undefined\")return;const currentFolder=activeLocale?.slug||\"root\";setCookie(COOKIE_LOCALE_PREF,currentFolder);setStore(prev=>({...prev,isVisible:false}));};return /*#__PURE__*/_jsx(Component,{ref:ref,...props,onClick:handleClose});});}// ID overrides — apply to the parent frame layers that wrap text/link components.\n// Framer text and link components don't forward `id`, but frame components do.\nexport function withBannerTextId(Component){return /*#__PURE__*/forwardRef((props,ref)=>{return /*#__PURE__*/_jsx(Component,{ref:ref,...props,id:\"px-locale-banner-text\"});});}export function withStayButtonId(Component){return /*#__PURE__*/forwardRef((props,ref)=>{return /*#__PURE__*/_jsx(Component,{ref:ref,...props,id:\"px-locale-stay\"});});}export function withSwitchButtonId(Component){return /*#__PURE__*/forwardRef((props,ref)=>{return /*#__PURE__*/_jsx(Component,{ref:ref,...props,id:\"px-locale-switch\"});});}export function withCloseButtonId(Component){return /*#__PURE__*/forwardRef((props,ref)=>{return /*#__PURE__*/_jsx(Component,{ref:ref,...props,id:\"px-locale-close\"});});}\nexport const __FramerMetadata__ = {\"exports\":{\"withBannerTextId\":{\"type\":\"reactHoc\",\"name\":\"withBannerTextId\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withLocaleBannerText\":{\"type\":\"reactHoc\",\"name\":\"withLocaleBannerText\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withCloseBanner\":{\"type\":\"reactHoc\",\"name\":\"withCloseBanner\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withLocaleBanner\":{\"type\":\"reactHoc\",\"name\":\"withLocaleBanner\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withStayButtonId\":{\"type\":\"reactHoc\",\"name\":\"withStayButtonId\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withSwitchButtonId\":{\"type\":\"reactHoc\",\"name\":\"withSwitchButtonId\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withCloseButtonId\":{\"type\":\"reactHoc\",\"name\":\"withCloseButtonId\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withSwitchLocale\":{\"type\":\"reactHoc\",\"name\":\"withSwitchLocale\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withStayLocale\":{\"type\":\"reactHoc\",\"name\":\"withStayLocale\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./LocaleBanner.map"],"mappings":"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"}