{"version":3,"sources":["common/tracking.js","common/cookies.js","common/uuid.js","images/button-calendar.svg","i18n/i18n.js","contexts.js","images/background.svg","images/button-contact.svg","images/button-email.svg","images/button-facebook.svg","images/button-instagram.svg","images/button-linkedin.svg","images/button-phone.svg","images/button-url.svg","images/button-web.svg","images/contact-messenger-50x50.svg","images/contact-whatsapp-50x50.svg","utils.js","utm_tracking.js","panels/contact-me/api-client.js","panels/contact-me/form.js","panels/contact-me/modal.js","images/contact-booking-50x50.svg","panels/action-bar/panel.js","images/contact-email-50x50.svg","images/contact-facebook-50x50.svg","images/contact-instagram-50x50.svg","images/contact-linkedin-50x50.svg","images/contact-phone-50x50.svg","images/contact-web-50x50.svg","panels/contact-info/mapIFrame.js","panels/contact-info/panel.js","panels/header/panel.js","images/video-play-circle.svg","images/video-sound-circle.svg","panels/video/filePlayer.js","panels/video/youtubePlayer.js","panels/video/panel.js","styles/templates.js","text-markdown.js","templates/education.js","panels/image-carousel/panel.js","image-transform.js","templates/generic.js","templates/physical-business.js","templates/restaurant.js","templates/service.js","templates/shop.js","templates/social-networks.js","landing.js","error-boundary.jsx","fonts/Poppins/Poppins-Italic.ttf","fonts/Poppins/Poppins-Medium.ttf","fonts/Poppins/Poppins-Regular.ttf","styles/index.js","index.js"],"names":["FACEBOOK_EVENTS_MAPPING","Navigate","trackFacebookEvent","event","data","trackMethod","mappedEvent","global","fbq","trackGoogleEvent","conversionEventId","gtag","startsWith","window","amplify","googleAdsConversionId","send_to","DISTINCT_ID_COOKIE","amplifyDistinctId","getCookie","trackAmplifyEvent","amplifyGroupId","amplifyAnalyticsEntryPoint","metric","timestamp","Date","toISOString","split","distinct_id","group_id","properties","currentUrl","location","href","userAgent","navigator","sendBeacon","JSON","stringify","uuidv4","setCookie","name","value","days","expires","date","setTime","getTime","toUTCString","document","cookie","nameEQ","ca","i","length","c","charAt","substring","indexOf","crypto","replace","getRandomValues","Uint8Array","toString","r","Math","random","_rect","_path","getPhrases","locale","LocaleFr","LocaleDe","LocaleNl","LocaleEsMx","LocaleEn","initPolyglot","Polyglot","phrases","ConfigContext","createContext","ThemeContext","I18nContext","_excluded","_extends","Object","assign","target","arguments","source","key","prototype","hasOwnProperty","call","apply","this","_objectWithoutProperties","excluded","sourceKeys","keys","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","propertyIsEnumerable","SvgButtonCalendar","_ref","svgRef","title","titleId","props","id","xmlns","xmlnsXlink","x","y","width","height","viewBox","enableBackground","xmlSpace","ref","fill","fillRule","clipRule","d","_path2","ForwardRef","SvgButtonContact","SvgButtonEmail","SvgButtonFacebook","_path3","SvgButtonInstagram","SvgButtonLinkedin","SvgButtonPhone","SvgButtonUrl","SvgButtonWeb","SvgContactMessenger50X50","SvgContactWhatsapp50X50","getApiUrl","path","URL","landingApiUrl","getAssetPath","url","slug","assetPath","getTranslation","translations","i18n","getColorMaxLightness","color","maxLightness","hsl","colorsys","hex2Hsl","l","min","hsl2Hex","utmParams","amplifySource","trackEvent","conversionEvents","urlParams","URLSearchParams","search","has","eventName","btoa","e","string","codeUnits","Uint16Array","charCodeAt","String","fromCharCode","buffer","toUtf16","amplifyCampaignId","utmData","Array","from","entries","filter","key_value","includes","reduce","obj","isArray","push","index","googleAdsConversionEventId","postContactMe","formName","a","email","phone","comment","owner","language","params","form_name","forEach","searchParams","append","fetch","method","headers","Accept","body","undefined","FormRow","styled","Row","FormCol","Col","Form","form","Fields","div","inputFocusColor","Consent","Button","button","isHighlighted","FormButtons","cancel","isSendDisabled","primaryColor","useContext","center","xs","sm","type","disabled","onClick","ContactMeForm","callback","send","config","isConversion","additionalConfig","useForm","register","handleSubmit","errors","setError","useState","setIsSendDisabled","useEffect","handler","addEventListener","removeEventListener","displayField","fields","submit","response","ok","landingType","action","json","error_data","errorHandled","detail","error","loc","Error","status","onSubmit","maxLength","role","rows","company","defaultProps","ContactMeConfirmation","Overlay","Wrapper","Content","Title","h2","ContactMe","isShowing","hide","isConfirmation","setConfirmation","ReactDOM","createPortal","tabIndex","ActionType","freeze","CONTACT_ME","PHONE","EMAIL","IconName","book_online","BookOnlineIcon","Icon","ActionButton","StyledActionPanel","ActionBarPanel","PropTypes","arrayOf","shape","isRequired","text","actions","allValues","setValues","show","useContactMeModal","contactMeIsShowing","contactMeFormName","contactMeTitle","contactMeConfig","contactMeShow","contactMeHide","contactMeIsConversion","map","icon","iconName","PhoneIcon","EmailIcon","FacebookIcon","InstagramIcon","LinkedinIcon","WhatsappIcon","MessengerIcon","WebIcon","UrlIcon","ContactMeIcon","React","createElement","className","computeAction","description","SvgContactBooking50X50","SvgContactEmail50X50","SvgContactFacebook50X50","SvgContactInstagram50X50","SvgContactLinkedin50X50","SvgContactPhone50X50","SvgContactWeb50X50","MapIFrame","address","zoom","q","encodeURI","src","frameBorder","scrolling","marginHeight","marginWidth","StyledContactInfoPanel","StyledMap","StyledLinks","StyledLink","urlCleanup","removeDomain","removeTrailingSlash","RegExp","substr","match","contactInfo","Link","trackEventName","rel","ContactInfoPanel","bookOnlineUrl","webUrl","whatsappUrl","facebookUrl","messengerUrl","instagramUrl","linkedinUrl","parsePhoneNumber","international","formatInternational","uri","format","parsePhone","dangerouslySetInnerHTML","__html","Header","HeaderPanel","logoUrl","contentUrl","alt","_g","SvgVideoPlayCircle","transform","SvgVideoSoundCircle","Video","video","ControlOverlay","FilePlayer","videoRef","createRef","onControlClick","autoPlay","setState","showControlOverlay","current","muted","play","state","isOverlayEnabled","videoUrls","loop","soundIcon","context","browser","satisfies","desktop","chrome","controls","playsInline","poster","Component","contextType","IFrame","iframe","YoutubePlayer","videoId","youtubeApi","setYoutubeApi","setShowControlOverlay","loadYoutubeApi","player","YT","Player","tag","onYouTubeIframeAPIReady","firstScriptTag","getElementsByTagName","parentNode","insertBefore","autoPlayParams","loopParams","allow","unMute","VideoPanel","youtubeVideoId","exec","isYoutubeUrl","PaddedCol","RightPaddedCol","LeftPaddedCol","TextSection","h3","StyledText","TextMarkdown","renderers","link","children","Education","ImagePanel","Carousel","clipping","ImageCarouselPanel","imageUrls","imageCarousel","showThumbs","showStatus","interval","infiniteLoop","centerMode","centerSlidePercentage","imageUrl","aspectRatio","landingImgWidth","landingImgHeight","getFixedAspectRatioImagePath","Generic","PhysicalBusiness","openingHours","Restaurant","Service","Shop","SocialNetworks","Background","background","RootDiv","CenterDiv","LandingGrid","Grid","Landing","descriptor","template","polyglot","version","imageCarouselConfig","Provider","Bowser","getParser","phrase","args","t","fluid","assets","imageCarouselUrls","getTemplate","StyledTitle","h1","ErrorBoundary","hasError","errorInfo","Rollbar","GlobalStyle","createGlobalStyle","normalize","PoppinsRegular","PoppinsMedium","PoppinsItalic","render","StrictMode","landingDescriptor","landingContentUrl","landingSlug","getElementById"],"mappings":"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","file":"static/js/main.b91030f1.chunk.js","sourcesContent":["import { getCookie, setCookie } from \"./cookies\";\nimport { uuidv4 } from \"./uuid\";\n\nconst FACEBOOK_EVENTS_MAPPING = {\n Navigate: \"PageView\",\n};\n\nexport function trackFacebookEvent(event, data) {\n const trackMethod = FACEBOOK_EVENTS_MAPPING[event] ? \"track\" : \"trackCustom\";\n const mappedEvent = FACEBOOK_EVENTS_MAPPING[event] || event;\n if (global.fbq) {\n global.fbq(trackMethod, mappedEvent, data);\n }\n}\n\nexport function trackGoogleEvent(event, conversionEventId) {\n // We only send \"conversion\" event for now\n if (\n global.gtag &&\n event.startsWith(\"amplify-conversion\") &&\n window.amplify.googleAdsConversionId &&\n conversionEventId\n ) {\n global.gtag(\"event\", \"conversion\", {\n send_to: `${window.amplify.googleAdsConversionId}/${conversionEventId}`,\n });\n }\n}\n\nconst DISTINCT_ID_COOKIE = \"ampl_distinct_id\";\n\nlet amplifyDistinctId = getCookie(DISTINCT_ID_COOKIE);\nlet amplifyUserId = null;\n\nfunction createAmplifyUniqueId() {\n amplifyDistinctId = uuidv4();\n setCookie(DISTINCT_ID_COOKIE, amplifyDistinctId, 3650);\n return amplifyDistinctId;\n}\n\nif (!amplifyDistinctId) {\n amplifyDistinctId = createAmplifyUniqueId();\n}\n\nexport function trackAmplifyEvent(event, data, amplifyGroupId) {\n if (window.amplify.amplifyAnalyticsEntryPoint) {\n const metric = {\n timestamp: `${new Date().toISOString().split(\".\")[0]}Z`,\n distinct_id: amplifyDistinctId,\n group_id: amplifyGroupId,\n event,\n properties: {\n currentUrl: window.location.href,\n userAgent: navigator.userAgent,\n ...data,\n },\n };\n if (amplifyUserId) {\n metric.user_id = amplifyUserId;\n }\n if (navigator.sendBeacon) {\n navigator.sendBeacon(window.amplify.amplifyAnalyticsEntryPoint, JSON.stringify(metric));\n }\n }\n}\n","import { useState } from \"react\";\n\nexport function setCookie(name, value, days) {\n let expires = \"\";\n if (days) {\n const date = new Date();\n date.setTime(date.getTime() + days * 24 * 60 * 60 * 1000);\n expires = `; expires=${date.toUTCString()}`;\n }\n document.cookie = `${name}=${value || \"\"}${expires}; path=/`;\n}\n\nexport function getCookie(name) {\n const nameEQ = `${name}=`;\n const ca = document.cookie.split(\";\");\n for (let i = 0; i < ca.length; i += 1) {\n let c = ca[i];\n while (c.charAt(0) === \" \") c = c.substring(1, c.length);\n if (c.indexOf(nameEQ) === 0) return c.substring(nameEQ.length, c.length);\n }\n return null;\n}\n\nexport function eraseCookie(name) {\n document.cookie = `${name}=; Max-Age=-99999999;`;\n}\n\nexport function useCookieNamed(cookieName) {\n const [cookieValue, setCookieValue] = useState(getCookie(cookieName));\n const setCookieFunc = (val) => {\n setCookieValue(val);\n setCookie(cookieName, val);\n };\n return [cookieValue, setCookieFunc];\n}\n","/* prettier-ignore */\nexport function uuidv4() {\n // @see https://stackoverflow.com/questions/105034/how-to-create-guid-uuid\n if (window.crypto) {\n return ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, c =>\n (c ^ (window.crypto.getRandomValues(new Uint8Array(1))[0] & (15 >> (c / 4)))).toString(\n 16\n )\n );\n } else {\n return \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, function(c) {\n var r = (Math.random() * 16) | 0,\n v = c === \"x\" ? r : (r & 0x3) | 0x8;\n return v.toString(16);\n });\n }\n}\n","var _rect, _path;\n\nvar _excluded = [\"title\", \"titleId\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgButtonCalendar(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n id: \"Calque_1\",\n xmlns: \"http://www.w3.org/2000/svg\",\n xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n x: \"0px\",\n y: \"0px\",\n width: \"100px\",\n height: \"100px\",\n viewBox: \"0 0 100 100\",\n enableBackground: \"new 0 0 100 100\",\n xmlSpace: \"preserve\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _rect || (_rect = /*#__PURE__*/React.createElement(\"rect\", {\n fill: \"none\",\n width: 100,\n height: 100\n })), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M39.125,42.883v14.231h21.749V42.883H39.125z M39.125,23.942h21.749v13.151H39.125 V23.942z M87.639,23.942v13.151H66.665V23.942H87.639z M87.639,42.883v14.231H66.665V42.883H87.639z M87.639,76.059H66.665V62.904 h20.974V76.059z M60.874,76.059H39.125V62.904h21.749V76.059z M12.359,76.059h20.975V62.904H12.359V76.059z M6.569,81.849h86.86 V18.151H6.569V81.849z M33.334,42.883v14.231H12.359V42.883H33.334z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgButtonCalendar);\nexport default __webpack_public_path__ + \"static/media/button-calendar.b96d8d62.svg\";\nexport { ForwardRef as ReactComponent };","import Polyglot from \"node-polyglot\";\n\nimport LocaleDe from \"./de.json\";\nimport LocaleEn from \"./en.json\";\nimport LocaleFr from \"./fr.json\";\nimport LocaleNl from \"./nl.json\";\nimport LocaleEsMx from \"./es-mx.json\";\n\nexport const getPhrases = (locale) => {\n switch (locale) {\n case \"fr\":\n return LocaleFr;\n case \"de\":\n return LocaleDe;\n case \"nl\":\n return LocaleNl;\n case \"es-mx\":\n return LocaleEsMx;\n default:\n return LocaleEn;\n }\n};\n\nexport const initPolyglot = (locale) => {\n return new Polyglot({ locale: locale, phrases: getPhrases(locale) });\n};\n","import { createContext } from \"react\";\n\nexport const ConfigContext = createContext({});\nexport const ThemeContext = createContext({});\nexport const I18nContext = createContext({});\n","export default __webpack_public_path__ + \"static/media/background.531d62f4.svg\";","var _path, _path2;\n\nvar _excluded = [\"title\", \"titleId\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgButtonContact(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 768,\n height: 768,\n viewBox: \"0 0 768 768\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M512 448h-256c-89.6 0-160 70.4-160 160v64c0 19.2 12.8 32 32 32s32-12.8 32-32v-64c0-54.4 41.6-96 96-96h256c54.4 0 96 41.6 96 96v64c0 19.2 12.8 32 32 32s32-12.8 32-32v-64c0-89.6-70.4-160-160-160z\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M384 384c89.6 0 160-70.4 160-160s-70.4-160-160-160-160 70.4-160 160 70.4 160 160 160zM384 128c54.4 0 96 41.6 96 96s-41.6 96-96 96-96-41.6-96-96 41.6-96 96-96z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgButtonContact);\nexport default __webpack_public_path__ + \"static/media/button-contact.231271f0.svg\";\nexport { ForwardRef as ReactComponent };","var _rect, _path;\n\nvar _excluded = [\"title\", \"titleId\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgButtonEmail(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n id: \"Calque_1\",\n xmlns: \"http://www.w3.org/2000/svg\",\n xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n x: \"0px\",\n y: \"0px\",\n width: \"100px\",\n height: \"100px\",\n viewBox: \"0 0 100 100\",\n enableBackground: \"new 0 0 100 100\",\n xmlSpace: \"preserve\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _rect || (_rect = /*#__PURE__*/React.createElement(\"rect\", {\n x: -0.084,\n y: -0.225,\n fill: \"none\",\n width: 100,\n height: 100\n })), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M83.508,22.048H16.324c-2.746,0-4.974,2.228-4.974,4.973v45.506c0,2.746,2.228,4.975,4.974,4.975h67.184 c2.746,0,4.973-2.229,4.973-4.975V27.021C88.48,24.276,86.254,22.048,83.508,22.048z M77.6,27.34l-27.97,28.615L22.157,27.34H77.6z M16.324,28.443l20.849,21.718L16.324,70.43V28.443z M21.298,72.527l19.317-18.779l7.205,7.5c0.466,0.486,1.109,0.76,1.782,0.766 c0.673,0,1.318-0.27,1.791-0.748l7.533-7.709l19.166,18.971H21.298z M83.508,70.891L62.402,50.002l21.105-21.589V70.891z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgButtonEmail);\nexport default __webpack_public_path__ + \"static/media/button-email.e868dcb4.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\n\nvar _excluded = [\"title\", \"titleId\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgButtonFacebook(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"100px\",\n height: \"100px\",\n viewBox: \"0 0 100 100\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M100,50 C100,22.3857422 77.6142578,0 50,0 C22.3857422,0 0,22.3857422 0,50 C0,74.9564453 18.2842773,95.6416016 42.1875,99.3925781 L42.1875,64.453125 L29.4921875,64.453125 L29.4921875,50 L42.1875,50 L42.1875,38.984375 C42.1875,26.453125 49.6521484,19.53125 61.0732422,19.53125 C66.5436523,19.53125 72.265625,20.5078125 72.265625,20.5078125 L72.265625,32.8125 L65.9607422,32.8125 C59.7495117,32.8125 57.8125,36.6666992 57.8125,40.6208008 L57.8125,50 L71.6796875,50 L69.4628906,64.453125 L57.8125,64.453125 L57.8125,99.3925781 C81.7157227,95.6416016 100,74.9564453 100,50\",\n id: \"Fill-1\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgButtonFacebook);\nexport default __webpack_public_path__ + \"static/media/button-facebook.7a393743.svg\";\nexport { ForwardRef as ReactComponent };","var _path, _path2, _path3;\n\nvar _excluded = [\"title\", \"titleId\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgButtonInstagram(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 512,\n height: 512,\n viewBox: \"0 0 512 512\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M256 46.1c68.4 0 76.5 0.3 103.4 1.5 25 1.1 38.5 5.3 47.5 8.8 11.9 4.6 20.5 10.2 29.4 19.1 9 9 14.5 17.5 19.2 29.4 3.5 9 7.7 22.6 8.8 47.5 1.2 27 1.5 35.1 1.5 103.4s-0.3 76.5-1.5 103.4c-1.1 25-5.3 38.5-8.8 47.5-4.6 11.9-10.2 20.5-19.1 29.4-9 9-17.5 14.5-29.4 19.2-9 3.5-22.6 7.7-47.5 8.8-27 1.2-35.1 1.5-103.4 1.5s-76.5-0.3-103.4-1.5c-25-1.1-38.5-5.3-47.5-8.8-11.9-4.6-20.5-10.2-29.4-19.1-9-9-14.5-17.5-19.2-29.4-3.5-9-7.7-22.6-8.8-47.5-1.2-27-1.5-35.1-1.5-103.4s0.3-76.5 1.5-103.4c1.1-25 5.3-38.5 8.8-47.5 4.6-11.9 10.2-20.5 19.1-29.4 9-9 17.5-14.5 29.4-19.2 9-3.5 22.6-7.7 47.5-8.8 26.9-1.2 35-1.5 103.4-1.5zM256 0c-69.5 0-78.2 0.3-105.5 1.5-27.2 1.2-45.9 5.6-62.1 11.9-16.9 6.6-31.2 15.3-45.4 29.6-14.3 14.2-23 28.5-29.6 45.3-6.3 16.3-10.7 34.9-11.9 62.1-1.2 27.4-1.5 36.1-1.5 105.6s0.3 78.2 1.5 105.5c1.2 27.2 5.6 45.9 11.9 62.1 6.6 16.9 15.3 31.2 29.6 45.4 14.2 14.2 28.5 23 45.3 29.5 16.3 6.3 34.9 10.7 62.1 11.9 27.3 1.2 36 1.5 105.5 1.5s78.2-0.3 105.5-1.5c27.2-1.2 45.9-5.6 62.1-11.9 16.8-6.5 31.1-15.3 45.3-29.5s23-28.5 29.5-45.3c6.3-16.3 10.7-34.9 11.9-62.1 1.2-27.3 1.5-36 1.5-105.5s-0.3-78.2-1.5-105.5c-1.2-27.2-5.6-45.9-11.9-62.1-6.3-17-15-31.3-29.3-45.5-14.2-14.2-28.5-23-45.3-29.5-16.3-6.3-34.9-10.7-62.1-11.9-27.4-1.3-36.1-1.6-105.6-1.6v0z\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M256 124.5c-72.6 0-131.5 58.9-131.5 131.5s58.9 131.5 131.5 131.5 131.5-58.9 131.5-131.5c0-72.6-58.9-131.5-131.5-131.5zM256 341.3c-47.1 0-85.3-38.2-85.3-85.3s38.2-85.3 85.3-85.3c47.1 0 85.3 38.2 85.3 85.3s-38.2 85.3-85.3 85.3z\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M423.4 119.3c0 16.955-13.745 30.7-30.7 30.7s-30.7-13.745-30.7-30.7c0-16.955 13.745-30.7 30.7-30.7s30.7 13.745 30.7 30.7z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgButtonInstagram);\nexport default __webpack_public_path__ + \"static/media/button-instagram.b34a04ef.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\n\nvar _excluded = [\"title\", \"titleId\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgButtonLinkedin(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 24,\n height: 24,\n viewBox: \"0 0 24 24\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19 0h-14c-2.761 0-5 2.239-5 5v14c0 2.761 2.239 5 5 5h14c2.762 0 5-2.239 5-5v-14c0-2.761-2.238-5-5-5zm-11 19h-3v-11h3v11zm-1.5-12.268c-.966 0-1.75-.79-1.75-1.764s.784-1.764 1.75-1.764 1.75.79 1.75 1.764-.783 1.764-1.75 1.764zm13.5 12.268h-3v-5.604c0-3.368-4-3.113-4 0v5.604h-3v-11h3v1.765c1.396-2.586 7-2.777 7 2.476v6.759z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgButtonLinkedin);\nexport default __webpack_public_path__ + \"static/media/button-linkedin.9fc87e8f.svg\";\nexport { ForwardRef as ReactComponent };","var _rect, _path;\n\nvar _excluded = [\"title\", \"titleId\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgButtonPhone(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n id: \"Calque_1\",\n xmlns: \"http://www.w3.org/2000/svg\",\n xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n x: \"0px\",\n y: \"0px\",\n width: \"100px\",\n height: \"100px\",\n viewBox: \"0 0 100 100\",\n enableBackground: \"new 0 0 100 100\",\n xmlSpace: \"preserve\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _rect || (_rect = /*#__PURE__*/React.createElement(\"rect\", {\n y: 0,\n fill: \"none\",\n width: 100,\n height: 100\n })), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M83.018,47.902c0,0.415-0.008,0.831-0.025,1.242h4.977c0.016-0.413,0.023-0.827,0.023-1.242 c0-19.91-16.139-36.048-36.049-36.048c-0.416,0-0.832,0.006-1.242,0.02v4.976c0.41-0.016,0.826-0.023,1.242-0.023 C69.105,16.826,83.018,30.739,83.018,47.902z M78.047,47.902c0,0.415-0.01,0.831-0.031,1.242h-4.979 c0.025-0.411,0.037-0.825,0.037-1.242c0-11.671-9.461-21.132-21.131-21.132c-0.416,0-0.832,0.012-1.242,0.036v-4.979 c0.41-0.02,0.826-0.029,1.242-0.029C66.359,21.798,78.047,33.484,78.047,47.902z M68.104,47.902c0,0.417-0.016,0.831-0.049,1.242 h-4.99c0.043-0.408,0.066-0.821,0.066-1.242c0-6.181-5.01-11.189-11.188-11.189c-0.42,0-0.838,0.024-1.242,0.069v-4.993 c0.41-0.03,0.824-0.047,1.242-0.047C60.869,31.742,68.104,38.979,68.104,47.902z M21.07,18.744c2.12-1.747,5.253-1.445,6.999,0.674 l7.182,8.712c1.748,2.119,1.444,5.253-0.675,6.999l-2.283,1.884L18.784,20.628L21.07,18.744z M16.678,22.356 c0.153-0.129,0.313-0.252,0.478-0.367L31.008,38.5c-1.841,2.69-1.752,6.378,0.446,8.998l16.614,19.797 c2.199,2.619,5.814,3.348,8.787,2.002l12.979,15.467c-0.143,0.145-0.289,0.279-0.445,0.41c-7.027,5.896-21.052,4.678-41.014-19.113 C8.412,42.276,9.648,28.254,16.678,22.356z M67.703,67.068c-1.748-2.117-4.883-2.42-7.002-0.674l-2.287,1.887L71.16,83.742 l2.285-1.887c2.123-1.744,2.424-4.879,0.676-7L67.703,67.068z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgButtonPhone);\nexport default __webpack_public_path__ + \"static/media/button-phone.2cc85af5.svg\";\nexport { ForwardRef as ReactComponent };","var _rect, _path;\n\nvar _excluded = [\"title\", \"titleId\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgButtonUrl(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n x: \"0px\",\n y: \"0px\",\n width: \"100px\",\n height: \"100px\",\n viewBox: \"0 0 100 100\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _rect || (_rect = /*#__PURE__*/React.createElement(\"rect\", {\n fill: \"none\",\n width: 100,\n height: 100\n })), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M46.156,19.085c0-2.375,2.71-3.732,4.611-2.312l41.376,30.916 c1.547,1.152,1.547,3.469,0,4.621L50.768,83.228c-1.901,1.42-4.611,0.062-4.611-2.312V65.396H9.581c-1.593,0-2.885-1.29-2.885-2.885 V37.485c0-1.593,1.292-2.885,2.885-2.885h36.575V19.085z M51.926,40.371H12.466v19.256h39.459v15.532L85.599,50L51.926,24.841 V40.371z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgButtonUrl);\nexport default __webpack_public_path__ + \"static/media/button-url.70fedc0a.svg\";\nexport { ForwardRef as ReactComponent };","var _path, _rect;\n\nvar _excluded = [\"title\", \"titleId\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgButtonWeb(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n id: \"Calque_1\",\n xmlns: \"http://www.w3.org/2000/svg\",\n xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n x: \"0px\",\n y: \"0px\",\n width: \"100px\",\n height: \"100px\",\n viewBox: \"0 0 100 100\",\n enableBackground: \"new 0 0 100 100\",\n xmlSpace: \"preserve\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M50.283,6.498c-0.056-0.001-0.112-0.001-0.17-0.001h-0.074H50c-24.027,0-43.507,19.479-43.507,43.506 c0,24.022,19.479,43.502,43.507,43.502h0.128h0.056c23.943-0.096,43.323-19.538,43.323-43.502 C93.507,26.069,74.181,6.65,50.283,6.498z M37.022,13.707c-4.019,4.883-7.18,11.947-8.979,20.274H14.945 C19.246,24.583,27.216,17.214,37.022,13.707z M11.466,50.002c0-3.84,0.562-7.55,1.608-11.049h14.08 c-0.505,3.528-0.773,7.232-0.773,11.049c0,4.168,0.321,8.194,0.919,12.013H13.375C12.136,58.233,11.466,54.196,11.466,50.002z M15.402,66.986h12.856c1.833,7.907,4.902,14.616,8.766,19.309C27.556,82.908,19.799,75.921,15.402,66.986z M48.619,88.392 c-3.532-0.669-7.488-3.716-10.92-10.01c-1.756-3.218-3.236-7.071-4.325-11.396h15.245V88.392z M48.619,62.015H32.337 c-0.636-3.764-0.982-7.796-0.982-12.013c0-3.856,0.291-7.563,0.827-11.049h16.438V62.015z M48.619,33.981H33.14 c1.106-4.717,2.673-8.906,4.56-12.361c3.432-6.295,7.388-9.344,10.92-10.009V33.981z M85.054,33.981h-12.87 c-1.785-8.26-4.914-15.278-8.883-20.156C72.956,17.376,80.801,24.686,85.054,33.981z M53.59,12.224 c2.986,1.282,6.135,4.257,8.938,9.396c1.884,3.455,3.452,7.644,4.556,12.361H53.59V12.224z M53.59,38.953h14.456 c0.533,3.486,0.826,7.193,0.826,11.049c0,4.217-0.351,8.249-0.981,12.013H53.59V38.953z M53.59,87.776v-20.79h13.261 c-1.087,4.324-2.566,8.178-4.322,11.396C59.725,83.519,56.576,86.495,53.59,87.776z M63.301,86.178 c3.815-4.689,6.85-11.351,8.668-19.191h12.63C80.249,75.82,72.621,82.749,63.301,86.178z M72.926,62.015 c0.598-3.818,0.92-7.845,0.92-12.013c0-3.817-0.269-7.521-0.772-11.049h13.854c1.045,3.5,1.608,7.209,1.608,11.049 c0,4.194-0.669,8.231-1.91,12.013H72.926z\"\n })), _rect || (_rect = /*#__PURE__*/React.createElement(\"rect\", {\n fill: \"none\",\n width: 100,\n height: 100\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgButtonWeb);\nexport default __webpack_public_path__ + \"static/media/button-web.80c46938.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\n\nvar _excluded = [\"title\", \"titleId\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgContactMessenger50X50(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 50,\n height: 50,\n viewBox: \"0 0 50 50\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M25,0 C38.8071,0 50,11.1929 50,25 C50,38.8071 38.8071,50 25,50 C11.1929,50 0,38.8071 0,25 C0,11.1929 11.1929,0 25,0 Z M41.382,17.8044 C42.1342,16.6201 40.6726,15.2811 39.5576,16.1293 L39.5576,16.1293 L31.193,22.4774 C30.6276,22.9042 29.8487,22.9095 29.2779,22.4828 L29.2779,22.4828 L23.0845,17.8364 C21.2281,16.4441 18.5715,16.9348 17.3339,18.898 L17.3339,18.898 L9.5454,31.2528 C8.79324,32.4371 10.2549,33.776 11.3698,32.9278 L11.3698,32.9278 L19.7397,26.5744 C20.3052,26.1476 21.0841,26.1423 21.6549,26.569 L21.6549,26.569 L27.8483,31.2155 C29.7047,32.6078 32.3613,32.117 33.5989,30.1539 L33.5989,30.1539 Z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgContactMessenger50X50);\nexport default __webpack_public_path__ + \"static/media/contact-messenger-50x50.0e4c9445.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\n\nvar _excluded = [\"title\", \"titleId\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgContactWhatsapp50X50(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 50,\n height: 50,\n viewBox: \"0 0 50 50\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M25 50C38.8071 50 50 38.8071 50 25C50 11.1929 38.8071 0 25 0C11.1929 0 0 11.1929 0 25C0 38.8071 11.1929 50 25 50ZM25.0626 9C29.0585 9.00164 32.8089 10.5498 35.629 13.3597C38.4492 16.1696 40.0014 19.9045 40 23.8766C39.9966 32.0731 33.2951 38.7422 25.0628 38.7422H25.0627H25.0566C22.5566 38.7414 20.1002 38.1171 17.9184 36.9328L10 39L12.1191 31.2968C10.8119 29.0422 10.1241 26.4849 10.1252 23.8647C10.1285 15.6684 16.8293 9 25.0626 9ZM25.0578 36.2316H25.0627C31.9057 36.2316 37.4751 30.6887 37.478 23.8757C37.4792 20.5742 36.1892 17.4698 33.8451 15.1344C31.501 12.7988 28.3838 11.5119 25.0677 11.5108C18.2195 11.5108 12.65 17.0532 12.6473 23.8657C12.6463 26.2004 13.3027 28.474 14.5455 30.4413L14.8407 30.9088L13.5865 35.4683L18.2854 34.2416L18.7387 34.5094C20.6449 35.6351 22.8299 36.2308 25.0578 36.2316ZM29.3225 25.7692C29.6646 25.8932 31.4995 26.7918 31.8727 26.9776C31.9456 27.0139 32.0137 27.0467 32.0768 27.077C32.3372 27.2023 32.513 27.2869 32.5881 27.4116C32.6814 27.5665 32.6814 28.3101 32.3704 29.178C32.0594 30.0456 30.5683 30.8375 29.8512 30.9441C29.2081 31.0397 28.3944 31.0797 27.5004 30.7969C26.9584 30.6257 26.2632 30.3972 25.3727 30.0144C21.8744 28.5111 19.5102 25.1372 19.0625 24.4983C19.031 24.4534 19.009 24.422 18.9968 24.4058L18.9937 24.4017C18.796 24.1391 17.4728 22.382 17.4728 20.5633C17.4728 18.8523 18.3173 17.9555 18.706 17.5427C18.7326 17.5144 18.7571 17.4884 18.7791 17.4645C19.1212 17.0927 19.5256 16.9998 19.7744 16.9998C20.0231 16.9998 20.2722 17.002 20.4897 17.0128C20.5165 17.0142 20.5444 17.014 20.5733 17.0138C20.7908 17.0126 21.062 17.011 21.3295 17.6504C21.4321 17.8959 21.5822 18.2595 21.7405 18.6432C22.062 19.4222 22.4177 20.284 22.4801 20.4085C22.5735 20.5944 22.6357 20.8113 22.5113 21.0592C22.4926 21.0964 22.4754 21.1315 22.4589 21.165C22.3654 21.3549 22.2967 21.4946 22.1381 21.6789C22.076 21.7511 22.0118 21.8289 21.9475 21.9067C21.8189 22.0627 21.6902 22.2186 21.5782 22.3297C21.3913 22.5148 21.1969 22.7159 21.4146 23.0877C21.6323 23.4596 22.3814 24.676 23.4909 25.6609C24.6836 26.7197 25.7202 27.1672 26.2456 27.394C26.3482 27.4383 26.4313 27.4742 26.4922 27.5045C26.8655 27.6906 27.0832 27.6594 27.3009 27.4116C27.5186 27.1636 28.2339 26.3268 28.4827 25.955C28.7316 25.5834 28.9804 25.6453 29.3225 25.7692Z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgContactWhatsapp50X50);\nexport default __webpack_public_path__ + \"static/media/contact-whatsapp-50x50.d2aa817a.svg\";\nexport { ForwardRef as ReactComponent };","import colorsys from \"colorsys\";\nimport { useEffect } from \"react\";\n\nexport const getApiUrl = (path) => {\n return new URL(path, window.amplify.landingApiUrl);\n};\n\nexport const getAssetPath = (url, slug, assetPath) => {\n return new URL(`${slug}/${assetPath}`, url).toString();\n};\n\nexport const useKeyboardEvent = (key, callback) => {\n useEffect(() => {\n const handler = (event) => {\n if (event.key === key) {\n callback();\n }\n };\n window.addEventListener(\"keydown\", handler);\n return () => {\n window.removeEventListener(\"keydown\", handler);\n };\n }, [callback, key]);\n};\n\n/** Override a static translation if the key is in a config object */\nexport const getTranslation = (key, translations, i18n) => {\n if (translations?.hasOwnProperty(key)) {\n return translations[key] ?? \"\";\n }\n return i18n(key);\n};\n\nexport const getColorMaxLightness = (color, maxLightness) => {\n const hsl = colorsys.hex2Hsl(color);\n // Set maximum lightness\n hsl.l = Math.min(maxLightness, hsl.l);\n return colorsys.hsl2Hex(hsl);\n};\n","import { trackAmplifyEvent, trackFacebookEvent, trackGoogleEvent } from \"./common/tracking\";\n\n// https://en.wikipedia.org/wiki/UTM_parameters\nconst utmParams = [\"utm_source\", \"utm_medium\", \"utm_campaign\", \"utm_term\", \"utm_content\"];\n\nconst amplifySource = \"amplify.ooo\";\n\n// https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/btoa#Unicode_strings\nconst toUtf16 = (string) => {\n const codeUnits = new Uint16Array(string.length);\n for (let i = 0; i < codeUnits.length; i++) {\n codeUnits[i] = string.charCodeAt(i);\n }\n return String.fromCharCode(...new Uint8Array(codeUnits.buffer));\n};\n\n/**\n * @param {string} event - The event name\n * @param {Object.} data - Event data to be sent with\n * @param {string||null} [target] - The name of the object that the event refers\n * @param {Object.} [conversionEvents] - A dict that contains conversion event id per platform\n */\nexport function trackEvent(event, data, target, conversionEvents) {\n const urlParams = new URLSearchParams(window.location.search);\n if (urlParams.has(\"dashboard\")) {\n // Don't track event coming from amplify dashboard\n return;\n }\n\n let eventName;\n if (target) {\n try {\n eventName = `${event}-${btoa(target)}`;\n } catch (e) {\n // Manage unicode\n eventName = `${event}-utf16-${btoa(toUtf16(target))}`;\n }\n } else {\n eventName = event;\n }\n\n // We are merging the \"standard\" utm search parameters with the data dict passed\n // by the caller.\n const utmData = Array.from(urlParams.entries())\n .filter((key_value) => utmParams.includes(key_value[0]))\n .reduce((obj, key_value) => {\n const key = key_value[0];\n const value = key_value[1];\n\n if (key in obj) {\n // If multiple query params are found then set an array as value\n if (Array.isArray(obj[key])) {\n obj[key].push(value);\n } else {\n obj[key] = [obj[key], value];\n }\n } else {\n obj[key] = value;\n }\n return obj;\n }, {});\n\n let amplifyCampaignId;\n if (utmData[\"utm_source\"] === amplifySource && \"utm_campaign\" in utmData) {\n amplifyCampaignId = utmData[\"utm_campaign\"];\n } else if (\n Array.isArray(utmData[\"utm_source\"]) &&\n utmData[\"utm_source\"].indexOf(amplifySource) !== -1 &&\n Array.isArray(utmData[\"utm_campaign\"])\n ) {\n const index = utmData[\"utm_source\"].indexOf(amplifySource);\n amplifyCampaignId = utmData[\"utm_campaign\"][index];\n }\n if (!amplifyCampaignId) {\n amplifyCampaignId = \"unknown\";\n }\n\n trackAmplifyEvent(eventName, { ...data, ...utmData }, amplifyCampaignId);\n trackFacebookEvent(eventName, { ...data, ...utmData });\n trackGoogleEvent(eventName, window.amplify.googleAdsConversionEventId);\n}\n","import { getApiUrl } from \"../../utils\";\n\nexport const postContactMe = async (\n slug,\n formName,\n name,\n email = null,\n phone = null,\n comment = null,\n owner,\n language\n) => {\n const url = getApiUrl(`/api/landing/${slug}/contact`);\n const params = {\n form_name: formName,\n language,\n };\n Object.keys(params).forEach((key) => url.searchParams.append(key, params[key]));\n return await fetch(url, {\n method: \"POST\",\n headers: {\n Accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify(\n {\n name: name,\n email,\n phone,\n comment,\n owner,\n },\n (key, value) => (value !== null ? value : undefined)\n ),\n });\n};\n","import PropTypes from \"prop-types\";\nimport React, { useContext, useState } from \"react\";\nimport { useForm } from \"react-hook-form\";\nimport { Col, Row } from \"react-styled-flexboxgrid\";\nimport styled from \"styled-components/macro\";\n\nimport { ConfigContext, I18nContext, ThemeContext } from \"../../contexts\";\nimport { useKeyboardEvent } from \"../../utils\";\nimport { trackEvent } from \"../../utm_tracking\";\nimport { postContactMe } from \"./api-client\";\n\nconst FormRow = styled(Row)`\n padding: 20px;\n`;\n\nconst FormCol = styled(Col)`\n text-align: center;\n`;\n\nconst Form = styled.form`\n font-size: 17px;\n\n p {\n color: #bf1650;\n\n ::before {\n display: inline;\n content: \"âš  \";\n }\n }\n`;\n\nconst Fields = styled.div`\n label {\n display: block;\n line-height: 2;\n font-weight: 400;\n text-align: left;\n margin-bottom: 5px;\n margin-top: 20px;\n }\n\n input,\n textarea {\n display: block;\n width: 100%;\n border: 2px solid #a29eaa;\n border-radius: 10px;\n padding: 10px 15px;\n margin-bottom: 10px;\n\n :focus {\n outline: none;\n box-shadow: ${(props) => `0 0 10px ${props.inputFocusColor}`};\n }\n }\n\n textarea {\n resize: vertical;\n }\n`;\n\nconst Consent = styled.div`\n display: flex;\n justify-content: start;\n align-items: center;\n margin-top: 20px;\n\n input {\n margin-right: 12px;\n }\n\n label {\n font-size: 13px;\n }\n`;\n\nconst Button = styled.button`\n color: ${(props) => (props.isHighlighted ? \"white\" : \"#a29eaa\")};\n background-color: ${(props) => (props.isHighlighted ? props.color : \"white\")};\n border: ${(props) => (props.isHighlighted ? \"none\" : `2px solid #a29eaa`)};\n border-radius: 30px;\n width: 100%;\n padding: 15px 5px;\n text-decoration: none;\n display: flex;\n justify-content: center;\n font-size: 16px;\n margin: 10px 0;\n\n &:hover,\n &:focus {\n outline: none;\n box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);\n }\n\n &:disabled {\n background-color: rgba(127, 127, 127, 0.4) !important;\n }\n`;\n\nconst FormButtons = ({ cancel, isSendDisabled }) => {\n const { primaryColor } = useContext(ThemeContext);\n const { i18n } = useContext(I18nContext);\n\n return (\n \n \n \n \n \n \n \n \n );\n};\n\nFormButtons.propTypes = {\n cancel: PropTypes.func.isRequired,\n isSendDisabled: PropTypes.bool.isRequired,\n};\n\nconst ContactMeForm = ({ send, cancel, slug, formName, config, isConversion }) => {\n const { owner = {}, additionalConfig } = useContext(ConfigContext);\n const { primaryColor } = useContext(ThemeContext);\n const { i18n, language } = useContext(I18nContext);\n const { register, handleSubmit, errors, setError } = useForm();\n const [isSendDisabled, setIsSendDisabled] = useState(false);\n\n useKeyboardEvent(\"Escape\", () => {\n cancel();\n });\n\n const displayField = (name) => {\n return (config.fields || [\"name\", \"email\"]).includes(name);\n };\n\n const submit = async (data) => {\n setIsSendDisabled(true);\n const response = await postContactMe(\n slug,\n formName,\n data.name,\n data.email || \"\",\n data.phone || \"\",\n data.comment || \"\",\n owner,\n language\n );\n\n if (response.ok) {\n send();\n if (isConversion) {\n trackEvent(\n \"amplify-conversion\",\n {\n landingType: \"amplify-landing\",\n slug,\n action: formName,\n },\n null,\n additionalConfig?.conversionEvents\n );\n }\n trackEvent(\n \"submit-action\",\n {\n landingType: \"amplify-landing\",\n slug,\n action: formName,\n },\n formName\n );\n } else {\n const error_data = await response.json();\n let errorHandled = false;\n if (error_data.detail) {\n for (const error of error_data.detail) {\n if (error.type === \"value_error.missing_contact\") {\n setError(error.loc[1], { type: \"server\" });\n errorHandled = true;\n }\n }\n }\n if (!errorHandled) {\n throw new Error(`postContactMe() -> status=${response.status}: ${JSON.stringify(error_data)}`);\n }\n }\n\n setIsSendDisabled(false);\n };\n\n return (\n
\n \n {displayField(\"name\") && (\n <>\n \n \n \n )}\n {displayField(\"name\") && errors.name &&

{i18n(\"contactMe.fieldRequired\")}

}\n\n {displayField(\"email\") && (\n <>\n \n \n \n )}\n {displayField(\"email\") && errors.email &&

{i18n(\"contactMe.fieldRequired\")}

}\n\n {displayField(\"phone\") && (\n <>\n \n \n \n )}\n {displayField(\"phone\") && errors.phone &&

{i18n(\"contactMe.fieldRequired\")}

}\n\n {displayField(\"comment\") && (\n <>\n \n \n \n )}\n {displayField(\"comment\") && errors.comment &&

{i18n(\"contactMe.fieldRequired\")}

}\n
\n\n \n \n \n\n \n \n );\n};\nContactMeForm.propTypes = {\n send: PropTypes.func.isRequired,\n cancel: PropTypes.func.isRequired,\n slug: PropTypes.string.isRequired,\n formName: PropTypes.string.isRequired,\n isConversion: PropTypes.bool,\n config: PropTypes.shape({\n fields: PropTypes.arrayOf(PropTypes.string),\n }),\n};\nContactMeForm.defaultProps = {\n config: {},\n isConversion: false,\n};\n\nexport const ContactMeConfirmation = ({ ok }) => {\n const { primaryColor } = useContext(ThemeContext);\n const { i18n } = useContext(I18nContext);\n\n return (\n <>\n \n {i18n(\"contactMe.confirmation\")}\n \n \n \n \n \n \n \n );\n};\nContactMeConfirmation.propTypes = {\n ok: PropTypes.func.isRequired,\n};\n\nexport default ContactMeForm;\n","import PropTypes from \"prop-types\";\nimport React, { useState } from \"react\";\nimport ReactDOM from \"react-dom\";\nimport styled from \"styled-components/macro\";\n\nimport ContactMeForm, { ContactMeConfirmation } from \"./form\";\n\nconst Overlay = styled.div`\n position: fixed;\n top: 0;\n left: 0;\n z-index: 1040;\n width: 100vw;\n height: 100vh;\n background: rgba(0, 0, 0, 0.5);\n backdrop-filter: blur(3px);\n`;\n\nconst Wrapper = styled.div`\n position: fixed;\n top: 0;\n left: 0;\n z-index: 1050;\n width: 100%;\n height: 100%;\n overflow-x: hidden;\n overflow-y: auto;\n outline: 0;\n padding: 0 5px;\n`;\n\nconst Content = styled.div`\n z-index: 100;\n background: white;\n position: relative;\n margin: 1.75rem auto;\n border-radius: 15px;\n max-width: 600px;\n padding: 2rem;\n`;\n\nconst Title = styled.h2`\n text-align: center;\n margin-top: 0;\n padding-bottom: 15px;\n border-bottom: 1px solid #dcdcdc;\n`;\n\nexport const ContactMe = ({ isShowing, hide, slug, formName, title, config, isConversion }) => {\n const [isConfirmation, setConfirmation] = useState(false);\n return isShowing\n ? ReactDOM.createPortal(\n <>\n \n \n \n {title || formName}\n {isConfirmation ? (\n {\n hide();\n setConfirmation(false);\n }}\n />\n ) : (\n setConfirmation(true)}\n cancel={hide}\n slug={slug}\n formName={formName}\n config={config}\n isConversion={isConversion}\n />\n )}\n \n \n ,\n document.body\n )\n : null;\n};\nContactMe.propTypes = {\n isShowing: PropTypes.bool.isRequired,\n hide: PropTypes.func.isRequired,\n slug: PropTypes.string.isRequired,\n formName: PropTypes.string,\n title: PropTypes.string,\n config: PropTypes.shape({}),\n isConversion: PropTypes.bool,\n};\nContactMe.defaultProps = {\n formName: \"\",\n title: \"\",\n config: {},\n isConversion: false,\n};\n\nexport const useContactMeModal = () => {\n const [allValues, setValues] = useState({\n isShowing: false,\n formName: \"\",\n title: \"\",\n config: {},\n isConversion: false,\n });\n\n const show = (formName, title, config, isConversion) =>\n setValues({ isShowing: true, formName, title, config, isConversion });\n const hide = () => setValues({ isShowing: false });\n\n return {\n isShowing: allValues.isShowing,\n formName: allValues.formName,\n title: allValues.title,\n config: allValues.config,\n isConversion: allValues.isConversion,\n show,\n hide,\n };\n};\n","var _path;\n\nvar _excluded = [\"title\", \"titleId\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgContactBooking50X50(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 50,\n height: 50,\n viewBox: \"0 0 50 50\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M25 50C38.8071 50 50 38.8071 50 25C50 11.1929 38.8071 0 25 0C11.1929 0 0 11.1929 0 25C0 38.8071 11.1929 50 25 50ZM18.7515 22.6406V27.3554H10.5472L10.5472 22.6406H18.7515ZM8.6604 27.3554V29.2422V34.1132C8.6604 35.1553 9.50514 36 10.5472 36H18.7515H20.6383H28.7896H30.6763H38.7736C39.8157 36 40.6604 35.1553 40.6604 34.1132V15.8868C40.6604 14.8447 39.8157 14 38.7736 14H30.6763H28.7896H20.6383H18.7515H10.5472C9.50515 14 8.6604 14.8447 8.6604 15.8868V27.3554ZM10.5472 34.1132H18.7515V29.2422H10.5472L10.5472 34.1132ZM28.7896 34.1132H20.6383V29.2422H28.7896V34.1132ZM38.7736 34.1132H30.6763V29.2422H38.7736V34.1132ZM38.7736 22.6406V27.3554H30.6763V22.6406H38.7736ZM38.7736 15.8868L38.7736 20.7538H30.6763V15.8868H38.7736ZM20.6383 15.8868H28.7896V20.7538H20.6383V15.8868ZM20.6383 22.6406V27.3554H28.7896V22.6406H20.6383Z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgContactBooking50X50);\nexport default __webpack_public_path__ + \"static/media/contact-booking-50x50.54a42b77.svg\";\nexport { ForwardRef as ReactComponent };","import PropTypes from \"prop-types\";\nimport React, { useContext } from \"react\";\nimport { Col, Row } from \"react-styled-flexboxgrid\";\nimport styled from \"styled-components/macro\";\n\nimport { ConfigContext, ThemeContext } from \"../../contexts\";\nimport { ReactComponent as BookOnlineIcon } from \"../../images/button-calendar.svg\";\nimport { ReactComponent as ContactMeIcon } from \"../../images/button-contact.svg\";\nimport { ReactComponent as EmailIcon } from \"../../images/button-email.svg\";\nimport { ReactComponent as FacebookIcon } from \"../../images/button-facebook.svg\";\nimport { ReactComponent as InstagramIcon } from \"../../images/button-instagram.svg\";\nimport { ReactComponent as LinkedinIcon } from \"../../images/button-linkedin.svg\";\nimport { ReactComponent as PhoneIcon } from \"../../images/button-phone.svg\";\nimport { ReactComponent as UrlIcon } from \"../../images/button-url.svg\";\nimport { ReactComponent as WebIcon } from \"../../images/button-web.svg\";\nimport { ReactComponent as MessengerIcon } from \"../../images/contact-messenger-50x50.svg\";\nimport { ReactComponent as WhatsappIcon } from \"../../images/contact-whatsapp-50x50.svg\";\nimport { getColorMaxLightness } from \"../../utils\";\nimport { trackEvent } from \"../../utm_tracking\";\nimport { ContactMe, useContactMeModal } from \"../contact-me/modal\";\n\nconst MAX_LIGHTNESS = 70;\n\nconst ActionType = Object.freeze({\n URL: \"url\",\n CONTACT_ME: \"contact_me\",\n PHONE: \"phone\",\n EMAIL: \"email\",\n});\n\nconst IconName = Object.freeze({\n book_online: BookOnlineIcon,\n});\n\nconst Icon = styled.i`\n display: inline-flex;\n vertical-align: middle;\n justify-items: center;\n align-items: center;\n`;\n\nconst ActionButton = styled.a`\n color: ${(props) => (props.isHighlighted ? \"white\" : props.color)};\n background-color: ${(props) => (props.isHighlighted ? props.color : \"none\")};\n border: ${(props) => (props.isHighlighted ? \"none\" : `2px solid ${props.color}`)};\n border-radius: 30px;\n padding: 15px 5px;\n text-decoration: none;\n display: flex;\n justify-content: center;\n align-items: center;\n font-size: 16px;\n margin-top: 10px;\n margin-bottom: 10px;\n\n &:hover,\n &:focus {\n outline: none;\n box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);\n }\n\n svg.icon {\n height: 25px;\n margin-right: 5px;\n fill: ${(props) => (props.isHighlighted ? \"white\" : props.color)};\n }\n`;\n\nconst computeAction = (action) => {\n const { type, url, phone, email, iconName } = action;\n let icon;\n let href;\n switch (type) {\n case ActionType.URL:\n href = url;\n if (url.startsWith(\"tel:\")) {\n icon = PhoneIcon;\n } else if (url.startsWith(\"mailto:\")) {\n icon = EmailIcon;\n } else if (url.startsWith(\"https://facebook.com/\")) {\n icon = FacebookIcon;\n } else if (url.startsWith(\"https://instagram.com/\")) {\n icon = InstagramIcon;\n } else if (url.startsWith(\"https://linkedin.com/\")) {\n icon = LinkedinIcon;\n } else if (url.startsWith(\"https://wa.me/\")) {\n icon = WhatsappIcon;\n } else if (url.startsWith(\"https://m.me/\")) {\n icon = MessengerIcon;\n } else if (url.startsWith(\"https://\") || url.startsWith(\"http://\")) {\n icon = WebIcon;\n } else {\n icon = UrlIcon;\n }\n break;\n case ActionType.PHONE:\n href = `tel:${phone}`;\n icon = PhoneIcon;\n break;\n case ActionType.EMAIL:\n href = `mailto:${email}`;\n icon = EmailIcon;\n break;\n case ActionType.CONTACT_ME:\n href = null;\n icon = ContactMeIcon;\n break;\n default:\n throw Error(`Unknown action type: '${type}'`);\n }\n if (iconName) {\n // Override icon\n icon = IconName[iconName];\n if (!icon) {\n throw Error(`Unable to find an icon for name: '${iconName}'`);\n }\n }\n return { href, icon: React.createElement(icon, { className: \"icon\" }) };\n};\n\nconst StyledActionPanel = styled.div`\n margin-top: 12px;\n`;\n\nconst ActionBarPanel = ({ actions }) => {\n const { slug, additionalConfig } = useContext(ConfigContext);\n const { primaryColor } = useContext(ThemeContext);\n const {\n isShowing: contactMeIsShowing,\n formName: contactMeFormName,\n title: contactMeTitle,\n config: contactMeConfig,\n show: contactMeShow,\n hide: contactMeHide,\n isConversion: contactMeIsConversion,\n } = useContactMeModal();\n\n return (\n \n \n \n {actions.map((action, index) => {\n const { href, icon } = computeAction(action);\n return (\n \n {\n if (action.type === \"contact_me\") {\n contactMeShow(action.text, action.description, action.config, index === 0);\n } else if (index === 0) {\n // send conversion event\n trackEvent(\n \"amplify-conversion\",\n {\n landingType: \"amplify-landing\",\n slug,\n action: action.text,\n },\n null,\n additionalConfig?.conversionEvents\n );\n }\n const event = index === 0 ? \"click-action-main\" : \"click-action\";\n trackEvent(\n event,\n {\n landingType: \"amplify-landing\",\n slug,\n action: action.text,\n },\n action.text\n );\n }}\n >\n {icon}\n {action.text}\n \n \n \n );\n })}\n \n \n );\n};\nexport const ActionBarPropTypes = PropTypes.arrayOf(\n PropTypes.shape({\n type: PropTypes.string.isRequired,\n text: PropTypes.string.isRequired,\n url: PropTypes.string,\n config: PropTypes.shape({}),\n })\n);\nActionBarPanel.propTypes = {\n actions: ActionBarPropTypes.isRequired,\n};\n\nexport default ActionBarPanel;\n","var _path;\n\nvar _excluded = [\"title\", \"titleId\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgContactEmail50X50(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 50,\n height: 50,\n viewBox: \"0 0 50 50\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M25 50C38.8071 50 50 38.8071 50 25C50 11.1929 38.8071 0 25 0C11.1929 0 0 11.1929 0 25C0 38.8071 11.1929 50 25 50ZM10.9873 14.3158C9.84797 14.3158 8.92437 15.2051 8.92437 16.3021V34.4833C8.92437 35.5804 9.84797 36.4697 10.9873 36.4697H38.8615C40.0008 36.4697 40.9244 35.5804 40.9244 34.4833V16.3021C40.9244 15.2051 40.0008 14.3158 38.8615 14.3158H10.9873ZM38.8615 16.8561L39.5956 16.1328C39.6701 16.0595 39.731 15.9769 39.7777 15.8885C39.7317 15.9734 39.6725 16.0527 39.6006 16.1235L25.538 29.9759C25.3428 30.1682 25.075 30.276 24.7957 30.2748C24.5165 30.2736 24.2497 30.1634 24.0563 29.9695L10.2448 16.1171C9.95851 15.83 9.87791 15.406 10.04 15.0399C10.0491 15.0193 10.0589 14.9991 10.0693 14.9794C10.057 15.0021 10.0456 15.0254 10.035 15.0492C9.87294 15.4154 9.95354 15.8393 10.2398 16.1264L10.9873 16.8761V33.644L19.634 25.5484L21.0627 26.9813L13.0499 34.4833H36.61L28.6601 26.9048L30.1021 25.4844L38.8615 33.8345V16.8561ZM13.4089 16.4225L24.807 27.8543L36.4124 16.4225H13.4089Z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgContactEmail50X50);\nexport default __webpack_public_path__ + \"static/media/contact-email-50x50.ab1cb382.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\n\nvar _excluded = [\"title\", \"titleId\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgContactFacebook50X50(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 50,\n height: 50,\n viewBox: \"0 0 50 50\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M25 50C38.8071 50 50 38.8071 50 25C50 11.1929 38.8071 0 25 0C11.1929 0 0 11.1929 0 25C0 38.8071 11.1929 50 25 50ZM32 13.8101V9.20914C31.5312 9.13942 29.9167 9 28.0417 9C24.1181 9 21.4271 11.405 21.4271 15.8143V19.6136H17V24.7722H21.4271V38H26.7396V24.7722H31.1493L31.8264 19.6136H26.7396V16.3197C26.7396 14.8383 27.1389 13.8101 29.2743 13.8101H32Z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgContactFacebook50X50);\nexport default __webpack_public_path__ + \"static/media/contact-facebook-50x50.250d3106.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\n\nvar _excluded = [\"title\", \"titleId\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgContactInstagram50X50(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 50,\n height: 50,\n viewBox: \"0 0 50 50\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M25 50C38.8071 50 50 38.8071 50 25C50 11.1929 38.8071 0 25 0C11.1929 0 0 11.1929 0 25C0 38.8071 11.1929 50 25 50ZM25.0085 13.1735C28.8644 13.1735 29.321 13.1904 30.8375 13.258C32.2468 13.32 33.0078 13.5567 33.5152 13.7539C34.186 14.0131 34.6708 14.3287 35.1726 14.8302C35.6799 15.3374 35.99 15.8164 36.2549 16.487C36.4522 16.9941 36.689 17.7605 36.751 19.1636C36.8187 20.6851 36.8356 21.1416 36.8356 24.9903C36.8356 28.8391 36.8187 29.3012 36.751 30.8171C36.689 32.2258 36.4522 32.9866 36.2549 33.4937C35.9956 34.1643 35.6799 34.6489 35.1782 35.1505C34.6708 35.6576 34.1917 35.9676 33.5208 36.2324C33.0135 36.4296 32.2468 36.6663 30.8431 36.7283C29.321 36.7959 28.8644 36.8128 25.0141 36.8128C21.1638 36.8128 20.7016 36.7959 19.1851 36.7283C17.7758 36.6663 17.0148 36.4296 16.5074 36.2324C15.8366 35.9732 15.3517 35.6576 14.85 35.1561C14.3427 34.6489 14.0326 34.1699 13.7677 33.4994C13.5704 32.9922 13.3336 32.2258 13.2716 30.8227C13.2039 29.3012 13.187 28.8448 13.187 24.996C13.187 21.1472 13.2039 20.6851 13.2716 19.1693C13.3336 17.7605 13.5704 16.9998 13.7677 16.4926C14.027 15.822 14.3427 15.3374 14.8444 14.8359C15.3517 14.3287 15.8309 14.0188 16.5018 13.7539C17.0091 13.5567 17.7758 13.32 19.1795 13.258C20.6959 13.1904 21.1525 13.1735 25.0085 13.1735ZM25.0085 10.5757C21.0905 10.5757 20.6001 10.5926 19.0611 10.6602C17.5278 10.7279 16.4736 10.9758 15.5603 11.3308C14.6076 11.7027 13.8015 12.193 13.001 12.9988C12.1949 13.799 11.7044 14.6048 11.3323 15.5515C10.9772 16.4701 10.7291 17.5182 10.6615 19.0509C10.5939 20.595 10.5769 21.0852 10.5769 25.0016C10.5769 28.918 10.5939 29.4083 10.6615 30.9467C10.7291 32.4794 10.9772 33.5332 11.3323 34.4461C11.7044 35.3984 12.1949 36.2042 13.001 37.0044C13.8015 37.8046 14.6076 38.3005 15.5547 38.6668C16.4736 39.0218 17.5221 39.2697 19.0555 39.3373C20.5945 39.405 21.0849 39.4219 25.0028 39.4219C28.9208 39.4219 29.4112 39.405 30.9502 39.3373C32.4836 39.2697 33.5377 39.0218 34.451 38.6668C35.398 38.3005 36.2042 37.8046 37.0047 37.0044C37.8052 36.2042 38.3013 35.3984 38.6677 34.4517C39.0228 33.5332 39.2709 32.4851 39.3385 30.9523C39.4062 29.4139 39.4231 28.9237 39.4231 25.0073C39.4231 21.0908 39.4062 20.6006 39.3385 19.0622C39.2709 17.5295 39.0228 16.4757 38.6677 15.5628C38.3125 14.6048 37.8221 13.799 37.016 12.9988C36.2155 12.1986 35.4093 11.7027 34.4623 11.3365C33.5434 10.9815 32.4948 10.7335 30.9615 10.6659C29.4169 10.5926 28.9264 10.5757 25.0085 10.5757ZM32.7152 19.0312C33.671 19.0312 34.4458 18.2566 34.4458 17.3012C34.4458 16.3458 33.671 15.5712 32.7152 15.5712C31.7594 15.5712 30.9845 16.3458 30.9845 17.3012C30.9845 18.2566 31.7594 19.0312 32.7152 19.0312ZM17.596 25.0021C17.596 20.911 20.9164 17.5919 25.0091 17.5919C29.1017 17.5919 32.4221 20.911 32.4221 25.0021C32.4221 29.0932 29.1017 32.4123 25.0091 32.4123C20.9164 32.4123 17.596 29.0932 17.596 25.0021ZM20.2004 25.0021C20.2004 27.6563 22.3539 29.8089 25.0091 29.8089C27.6642 29.8089 29.8177 27.6563 29.8177 25.0021C29.8177 22.348 27.6642 20.1954 25.0091 20.1954C22.3539 20.1954 20.2004 22.348 20.2004 25.0021Z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgContactInstagram50X50);\nexport default __webpack_public_path__ + \"static/media/contact-instagram-50x50.b924bc8a.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\n\nvar _excluded = [\"title\", \"titleId\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgContactLinkedin50X50(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 50,\n height: 50,\n viewBox: \"0 0 50 50\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M25 50C38.8071 50 50 38.8071 50 25C50 11.1929 38.8071 0 25 0C11.1929 0 0 11.1929 0 25C0 38.8071 11.1929 50 25 50ZM16.0657 15.8027C17.4928 15.8027 18.649 14.6332 18.649 13.1898C18.649 11.7475 17.4928 10.5769 16.0657 10.5769C14.6386 10.5769 13.4824 11.7475 13.4824 13.1898C13.4824 14.6332 14.6386 15.8027 16.0657 15.8027ZM13.4615 34.6154V17.893H18.6699V34.6154H13.4615ZM21.8095 17.893H26.9845V20.1453C29.1678 16.0911 38.4615 15.7912 38.4615 24.027V34.6154H33.2657V25.8372C33.2657 20.5571 26.9855 20.9563 26.9855 25.8372V34.6154H21.8095V17.893Z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgContactLinkedin50X50);\nexport default __webpack_public_path__ + \"static/media/contact-linkedin-50x50.8203ccf5.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\n\nvar _excluded = [\"title\", \"titleId\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgContactPhone50X50(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 50,\n height: 50,\n viewBox: \"0 0 50 50\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M25 50C38.8071 50 50 38.8071 50 25C50 11.1929 38.8071 0 25 0C11.1929 0 0 11.1929 0 25C0 38.8071 11.1929 50 25 50ZM36.126 24.7117C36.1316 24.5702 36.1344 24.428 36.1344 24.2852C36.1344 18.4368 31.3747 13.6957 25.5032 13.6957C25.36 13.6957 25.2174 13.6985 25.0756 13.7041V12.0086C25.2175 12.0038 25.3601 12.0014 25.5032 12.0014C32.3141 12.0014 37.8354 17.501 37.8354 24.2852C37.8354 24.4279 37.833 24.5701 37.8281 24.7117H36.126ZM34.4257 24.7117C34.4324 24.5703 34.4358 24.428 34.4358 24.2849C34.4358 19.3722 30.4376 15.3897 25.5056 15.3897C25.3614 15.3897 25.2181 15.3931 25.0756 15.3999V17.0966C25.2178 17.0883 25.3612 17.084 25.5056 17.084C29.4982 17.084 32.7348 20.308 32.7348 24.2849C32.7348 24.4282 32.7306 24.5705 32.7223 24.7117H34.4257ZM31.0179 24.7117C31.0288 24.5706 31.0343 24.428 31.0343 24.2842C31.0343 21.243 28.5592 18.7776 25.5061 18.7776C25.3612 18.7776 25.2176 18.7832 25.0756 18.7941V20.4958C25.2169 20.4801 25.3605 20.472 25.5061 20.472C27.6198 20.472 29.3333 22.1788 29.3333 24.2842C29.3333 24.4287 29.3252 24.5714 29.3095 24.7117H31.0179ZM17.3301 14.577C16.7325 13.855 15.6605 13.7521 14.9356 14.3473L14.1538 14.9893L18.7747 20.573L19.5566 19.931C20.2815 19.3358 20.3847 18.268 19.7871 17.5459L17.3301 14.577ZM13.5963 15.4532C13.54 15.4924 13.4854 15.5341 13.4325 15.5783C11.0282 17.5878 10.6052 22.3661 17.4346 30.4731C24.2639 38.58 29.0616 38.9948 31.4659 36.9853C31.5187 36.9411 31.5694 36.8948 31.618 36.8464L27.1772 31.5749C26.161 32.0331 24.9236 31.7849 24.1715 30.892L18.4884 24.1458C17.7362 23.2528 17.7057 21.9959 18.3352 21.0787L13.5963 15.4532ZM28.4938 30.5862C29.2187 29.991 30.2907 30.0938 30.8883 30.8159L33.0847 33.4699C33.6823 34.1919 33.579 35.2598 32.8542 35.855L32.0717 36.4975L27.7113 31.2287L28.4938 30.5862Z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgContactPhone50X50);\nexport default __webpack_public_path__ + \"static/media/contact-phone-50x50.9d12432d.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\n\nvar _excluded = [\"title\", \"titleId\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgContactWeb50X50(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 50,\n height: 50,\n viewBox: \"0 0 50 50\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M25 50C38.8071 50 50 38.8071 50 25C50 11.1929 38.8071 0 25 0C11.1929 0 0 11.1929 0 25C0 38.8071 11.1929 50 25 50ZM20.5272 37.5111C19.1948 35.8929 18.1359 33.5787 17.5046 30.8513H13.0702C14.5859 33.934 17.2612 36.3437 20.5272 37.5111ZM20.7594 34.7827C20.1539 33.6726 19.6433 32.3433 19.2681 30.8513H24.5233V38.2334C23.3054 38.003 21.9427 36.9521 20.7594 34.7827ZM29.3203 34.7827C28.3535 36.5552 27.267 37.581 26.2375 38.0227V30.8513H30.8117C30.4365 32.3433 29.9258 33.6726 29.3203 34.7827ZM29.5864 37.4697C30.9029 35.8536 31.9492 33.5556 32.5751 30.8513H36.9294C35.4314 33.8981 32.8006 36.2874 29.5864 37.4697ZM32.9061 29.137H37.6278C38.0547 27.8342 38.2855 26.4426 38.2855 24.997C38.2855 23.672 38.0916 22.3922 37.7305 21.1847H32.9551C33.1291 22.402 33.2217 23.6797 33.2217 24.997C33.2217 26.4331 33.1116 27.822 32.9061 29.137ZM29.5864 12.5243C32.915 13.7487 35.6179 16.2674 37.085 19.4704H32.6485C32.0328 16.624 30.9557 14.2053 29.5864 12.5243ZM29.3203 15.2113C29.9698 16.4021 30.5102 17.845 30.8913 19.4704H26.2375V11.9713C27.267 12.413 28.3535 13.4388 29.3203 15.2113ZM20.7594 15.2113C21.9427 13.0418 23.3054 11.991 24.5233 11.7606V19.4704H19.1885C19.5696 17.845 20.1099 16.4021 20.7594 15.2113ZM24.5233 21.1847H18.8576C18.6729 22.3874 18.5723 23.6658 18.5723 24.997C18.5723 26.4498 18.6921 27.8398 18.9103 29.137H24.5233V21.1847ZM16.8581 24.997C16.8581 23.6797 16.9507 22.402 17.1246 21.1847H12.2692C11.9081 22.3922 11.7141 23.672 11.7141 24.997C11.7141 26.4426 11.945 27.8342 12.3718 29.137H17.1737C16.9681 27.822 16.8581 26.4331 16.8581 24.997ZM20.5272 12.4829C19.1418 14.1655 18.052 16.6006 17.4313 19.4704H12.9146C14.3984 16.231 17.1464 13.6914 20.5272 12.4829ZM31.5074 24.997C31.5074 23.6658 31.4068 22.3874 31.2222 21.1847H26.2375V29.137H31.1695C31.3876 27.8398 31.5074 26.4498 31.5074 24.997ZM25.0257 39.997L25.0399 39.997L25.0879 39.9967C33.3317 39.9493 39.9998 33.2519 39.9998 24.997C39.9998 16.7421 33.3317 10.0447 25.0879 9.99725L25.0399 9.997L25.0257 9.99702L24.9998 9.997C16.7155 9.997 9.99981 16.7127 9.99981 24.997C9.99981 33.2813 16.7155 39.997 24.9998 39.997L25.0257 39.997Z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgContactWeb50X50);\nexport default __webpack_public_path__ + \"static/media/contact-web-50x50.b6a1e5a9.svg\";\nexport { ForwardRef as ReactComponent };","import PropTypes from \"prop-types\";\nimport React from \"react\";\n\nconst MapIFrame = ({ address, height, width, zoom }) => {\n const q = encodeURI(address);\n const src = `https://maps.google.com/maps?q=${q}&z=${zoom}&ie=UTF8&output=embed`;\n return (\n \n );\n};\nMapIFrame.propTypes = {\n address: PropTypes.string.isRequired,\n width: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired,\n height: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired,\n zoom: PropTypes.number,\n};\nMapIFrame.defaultProps = {\n zoom: 13,\n};\n\nexport default MapIFrame;\n","import parsePhoneNumber from \"libphonenumber-js\";\nimport PropTypes from \"prop-types\";\nimport React, { useContext } from \"react\";\nimport styled from \"styled-components/macro\";\n\nimport { ConfigContext, ThemeContext } from \"../../contexts\";\nimport { ReactComponent as BookOnlineIcon } from \"../../images/contact-booking-50x50.svg\";\nimport { ReactComponent as EmailIcon } from \"../../images/contact-email-50x50.svg\";\nimport { ReactComponent as FacebookIcon } from \"../../images/contact-facebook-50x50.svg\";\nimport { ReactComponent as InstagramIcon } from \"../../images/contact-instagram-50x50.svg\";\nimport { ReactComponent as LinkedinIcon } from \"../../images/contact-linkedin-50x50.svg\";\nimport { ReactComponent as MessengerIcon } from \"../../images/contact-messenger-50x50.svg\";\nimport { ReactComponent as PhoneIcon } from \"../../images/contact-phone-50x50.svg\";\nimport { ReactComponent as WebIcon } from \"../../images/contact-web-50x50.svg\";\nimport { ReactComponent as WhatsappIcon } from \"../../images/contact-whatsapp-50x50.svg\";\nimport { getColorMaxLightness } from \"../../utils\";\nimport { trackEvent } from \"../../utm_tracking\";\nimport MapIFrame from \"./mapIFrame\";\n\nconst MAX_LIGHTNESS = 70;\n\nconst StyledContactInfoPanel = styled.div`\n font-size: 17px;\n line-height: 1.4;\n\n a {\n color: ${(props) => props.color};\n }\n\n svg.icon {\n fill: ${(props) => props.color};\n }\n`;\n\nconst StyledMap = styled.div`\n min-height: 200px;\n height: 30vmin;\n border-radius: 10px;\n overflow: hidden;\n margin-top: 10px;\n`;\n\nconst StyledLinks = styled.div`\n margin-top: 15px;\n margin-bottom: 15px;\n font-size: 13px;\n\n p {\n white-space: nowrap;\n margin-top: 5px;\n margin-bottom: 5px;\n\n i {\n display: inline-flex;\n vertical-align: middle;\n margin-right: 5px;\n svg {\n height: 25px;\n }\n }\n }\n`;\n\nconst StyledLink = styled.a`\n width: 100%;\n display: inline-block;\n overflow: hidden;\n vertical-align: middle;\n text-overflow: ellipsis;\n text-decoration: none;\n`;\n\nconst addressFormat = (address) => {\n return address.replace(/,/g, \"
\");\n};\n\nexport const urlCleanup = (url, removeDomain = \"\", removeTrailingSlash = false) => {\n let text = url;\n // Remove query parameters\n text = text.split(\"?\")[0];\n // Remove http(s), www and optional removeDomain\n text = text.replace(new RegExp(`^(?:https?://)?(?:www.)?(?:${removeDomain}/)?`, \"i\"), \"\");\n if (\n text.substr(-1) === \"/\" &&\n (removeTrailingSlash ||\n // Remove the trailing slash if there is only one, ie test.com/\n (text.match(/\\//g) || []).length === 1)\n ) {\n return text.substr(0, text.length - 1);\n }\n return text;\n};\n\nexport const parsePhone = (text) => {\n const phone = parsePhoneNumber(text);\n if (!phone) {\n throw new Error(`Unable to parse phone number '${text}'`);\n }\n return {\n international: phone.formatInternational(),\n uri: phone.format(\"RFC3966\"),\n };\n};\n\nconst onClick = (slug, name) => {\n return () => {\n trackEvent(`click-contact-info-${name}`, {\n landingType: \"amplify-landing\",\n slug,\n contactInfo: name,\n });\n };\n};\n\nconst Link = ({ href, text, slug, trackEventName }) => (\n \n {text}\n \n);\nLink.propTypes = {\n href: PropTypes.string.isRequired,\n text: PropTypes.string.isRequired,\n slug: PropTypes.string.isRequired,\n trackEventName: PropTypes.string.isRequired,\n};\n\nconst ContactInfoPanel = ({ contactInfo }) => {\n const { slug } = useContext(ConfigContext);\n const { primaryColor } = useContext(ThemeContext);\n\n const phone = contactInfo.phone ? parsePhone(contactInfo.phone) : null;\n\n return (\n \n {contactInfo.location && (\n <>\n \n \n \n \n \n )}\n \n {phone && (\n
\n

\n \n \n \n \n

\n
\n )}\n {contactInfo.email && (\n
\n

\n \n \n \n \n

\n
\n )}\n {contactInfo.bookOnlineUrl && (\n
\n

\n \n \n \n \n

\n
\n )}\n {contactInfo.webUrl && (\n
\n

\n \n \n \n \n

\n
\n )}\n {contactInfo.whatsappUrl && (\n
\n

\n \n \n \n \n

\n
\n )}\n {contactInfo.facebookUrl && (\n
\n

\n \n \n \n \n

\n
\n )}\n {contactInfo.messengerUrl && (\n
\n

\n \n \n \n \n

\n
\n )}\n {contactInfo.instagramUrl && (\n
\n

\n \n \n \n \n

\n
\n )}\n {contactInfo.linkedinUrl && (\n
\n

\n \n \n \n \n

\n
\n )}\n
\n
\n );\n};\nexport const ContactInfoPropTypes = PropTypes.shape({\n location: PropTypes.string,\n phone: PropTypes.string,\n email: PropTypes.string,\n bookOnlineUrl: PropTypes.string,\n webUrl: PropTypes.string,\n whatsappUrl: PropTypes.string,\n facebookUrl: PropTypes.string,\n messengerUrl: PropTypes.string,\n instagramUrl: PropTypes.string,\n linkedinUrl: PropTypes.string,\n});\nContactInfoPanel.propTypes = {\n contactInfo: ContactInfoPropTypes.isRequired,\n};\n\nexport default ContactInfoPanel;\n","import PropTypes from \"prop-types\";\nimport React, { useContext } from \"react\";\nimport styled from \"styled-components/macro\";\n\nimport { ConfigContext } from \"../../contexts\";\nimport { getAssetPath } from \"../../utils\";\n\nconst Header = styled.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n\n h1 {\n margin-top: 0px;\n margin-bottom: 5px;\n }\n h3 {\n margin-top: 5px;\n margin-bottom: 10px;\n }\n\n img {\n height: 80px;\n }\n margin: 0 10px 10px;\n`;\n\nconst HeaderPanel = ({ name, type, logoUrl }) => {\n const { contentUrl, slug } = useContext(ConfigContext);\n return (\n
\n
\n

{name}

\n

{type}

\n
\n {logoUrl && \"logo\"}\n
\n );\n};\nHeaderPanel.propTypes = {\n name: PropTypes.string.isRequired,\n type: PropTypes.string.isRequired,\n logoUrl: PropTypes.string,\n};\nHeaderPanel.defaultProps = {\n logoUrl: null,\n};\n\nexport default HeaderPanel;\n","var _g;\n\nvar _excluded = [\"title\", \"titleId\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgVideoPlayCircle(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"510px\",\n height: \"510px\",\n viewBox: \"0 0 510 510\",\n xmlns: \"http://www.w3.org/2000/svg\",\n xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n id: \"video-play-circle\",\n transform: \"translate(7.000000, 7.000000)\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M363.7,230 L187.7,123 C171.9,114.2 152,125.5 152,144 L152,352 C152,370.4 171.8,381.8 187.7,373 L363.7,272 C380.1,262.9 380.1,239.2 363.7,230 Z M496,248 C496,111 385,0 248,0 C111,0 0,111 0,248 C0,385 111,496 248,496 C385,496 496,385 496,248 Z M48,248 C48,137.5 137.5,48 248,48 C358.5,48 448,137.5 448,248 C448,358.5 358.5,448 248,448 C137.5,448 48,358.5 48,248 Z\",\n id: \"Shape\"\n }))));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgVideoPlayCircle);\nexport default __webpack_public_path__ + \"static/media/video-play-circle.8ed67522.svg\";\nexport { ForwardRef as ReactComponent };","var _g;\n\nvar _excluded = [\"title\", \"titleId\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgVideoSoundCircle(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"510px\",\n height: \"510px\",\n viewBox: \"0 0 510 510\",\n xmlns: \"http://www.w3.org/2000/svg\",\n xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n id: \"video-sound-circle\",\n transform: \"translate(5.000000, 5.000000)\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M211.234688,151.743142 L163.969375,198.998282 L109.75,198.998282 C102.705625,198.998282 97,204.703962 97,211.748404 L97,288.249137 C97,295.288267 102.705625,300.999259 109.75,300.999259 L163.969375,300.999259 L211.234688,348.254399 C219.219375,356.239163 233,350.62911 233,339.239001 L233,160.758541 C233,149.357807 219.20875,143.769003 211.234688,151.743142 Z M334.97522,125.111425 C329.022719,121.217546 321.023879,122.859031 317.117716,128.803439 C313.206225,134.737223 314.868875,142.710911 320.821376,146.60479 C356.136709,169.707767 377.212933,208.545629 377.212933,250.501782 C377.212933,292.457935 356.136709,331.295797 320.821376,354.398774 C314.868875,358.287341 313.206225,366.266341 317.117716,372.194813 C320.869337,377.884233 328.804229,379.929449 334.97522,375.886827 C377.564647,348.018762 403,301.138152 403,250.49647 C403,199.854787 377.564647,152.97949 334.97522,125.111425 Z M352,250.994279 C352,217.246522 335.005449,186.218559 306.53454,167.998064 C300.60288,164.205226 292.736406,165.968843 288.978098,171.960889 C285.219789,177.952935 286.974373,185.883897 292.906034,189.682047 C313.976945,203.169463 326.555881,226.085853 326.555881,250.994279 C326.555881,275.902706 313.976945,298.819096 292.906034,312.306512 C286.974373,316.09935 285.219789,324.030312 288.978098,330.02767 C292.428956,335.531003 300.17351,338.070186 306.53454,333.990495 C335.005449,315.77 352,284.747349 352,250.994279 Z M276.807113,209.571524 C270.687549,206.201614 262.966752,208.421602 259.574041,214.602433 C256.197183,220.783264 258.432568,228.550561 264.567985,231.963061 C271.390401,235.737573 275.628648,242.84473 275.628648,250.494906 C275.628648,258.150405 271.390401,265.252238 264.57327,269.02675 C258.437852,272.43925 256.202468,280.206548 259.579326,286.387378 C262.977322,292.594828 270.703403,294.798845 276.812398,291.418287 C291.730816,283.139913 301,267.461579 301,250.489582 C301,233.517585 291.730816,217.844574 276.807113,209.571524 Z M500,250 C500,111.895161 388.104839,0 250,0 C111.895161,0 0,111.895161 0,250 C0,388.104839 111.895161,500 250,500 C388.104839,500 500,388.104839 500,250 Z M49,250.5 C49,139.17125 139.17125,49 250.5,49 C361.82875,49 452,139.17125 452,250.5 C452,361.82875 361.82875,452 250.5,452 C139.17125,452 49,361.82875 49,250.5 Z\",\n id: \"Shape\"\n }))));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgVideoSoundCircle);\nexport default __webpack_public_path__ + \"static/media/video-sound-circle.6b9fa6d0.svg\";\nexport { ForwardRef as ReactComponent };","import PropTypes from \"prop-types\";\nimport React from \"react\";\nimport styled from \"styled-components/macro\";\n\nimport { ConfigContext } from \"../../contexts\";\nimport { ReactComponent as PlayIcon } from \"../../images/video-play-circle.svg\";\nimport { ReactComponent as SoundIcon } from \"../../images/video-sound-circle.svg\";\nimport { getAssetPath } from \"../../utils\";\n\nconst Wrapper = styled.div`\n position: relative;\n`;\n\nconst Video = styled.video`\n overflow: hidden;\n background: black;\n width: 100%;\n min-height: 200px; // min-height is important for ie11\n height: 40vmin;\n max-height: 400px;\n\n &:focus {\n outline: none;\n }\n`;\n\nconst ControlOverlay = styled.div`\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n width: 100%;\n\n display: flex;\n align-items: center;\n justify-content: center;\n\n svg {\n height: 40%;\n fill: white;\n opacity: 0.8;\n filter: drop-shadow(5px 5px 5px #444);\n }\n`;\n\nexport class FilePlayer extends React.Component {\n static propTypes = {\n videoUrls: PropTypes.any.isRequired,\n autoPlay: PropTypes.bool.isRequired,\n loop: PropTypes.bool.isRequired,\n soundIcon: PropTypes.bool.isRequired,\n };\n static contextType = ConfigContext;\n\n videoRef = React.createRef();\n\n constructor(props) {\n super(props);\n this.state = { showControlOverlay: true };\n }\n\n onControlClick = () => {\n const { autoPlay } = this.props;\n this.setState({\n showControlOverlay: false,\n });\n if (autoPlay) {\n this.videoRef.current.muted = false;\n } else {\n this.videoRef.current.play();\n }\n };\n\n render() {\n const { videoUrls, autoPlay, loop, soundIcon } = this.props;\n const { contentUrl, slug, browser } = this.context;\n\n let isOverlayEnabled;\n if (browser.satisfies({ desktop: { chrome: \">0\" } })) {\n // Play icon only for Chrome desktop\n isOverlayEnabled = true;\n } else {\n isOverlayEnabled = autoPlay;\n }\n\n return (\n \n \n \n \n {isOverlayEnabled && this.state.showControlOverlay && (\n \n {autoPlay ? soundIcon && : }\n \n )}\n \n );\n }\n}\n","import * as PropTypes from \"prop-types\";\nimport React, { useEffect, useState } from \"react\";\nimport styled from \"styled-components/macro\";\n\nimport { ReactComponent as SoundIcon } from \"../../images/video-sound-circle.svg\";\n\nexport const isYoutubeUrl = (url) => {\n // https://github.com/regexhq/youtube-regex\n const match =\n /(?:youtube\\.com\\/\\S*(?:(?:\\/e(?:mbed))?\\/|watch\\?(?:\\S*?&?v=))|youtu\\.be\\/)([a-zA-Z0-9_-]{6,11})/.exec(url);\n if (match) {\n return match[1];\n }\n};\n\nconst Wrapper = styled.div`\n position: relative;\n`;\n\nconst IFrame = styled.iframe`\n overflow: hidden;\n background: black;\n border: none;\n width: 100%;\n min-height: 200px; // min-height is important for ie11\n height: 40vmin;\n max-height: 400px;\n\n &:focus {\n outline: none;\n }\n`;\n\nconst ControlOverlay = styled.div`\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n width: 100%;\n\n display: flex;\n align-items: center;\n justify-content: center;\n\n svg {\n height: 40%;\n fill: white;\n opacity: 0.8;\n filter: drop-shadow(5px 5px 5px #444);\n }\n`;\n\nexport const YoutubePlayer = ({ videoId, autoPlay, loop, soundIcon }) => {\n const [youtubeApi, setYoutubeApi] = useState(null);\n const [showControlOverlay, setShowControlOverlay] = useState(autoPlay);\n\n const loadYoutubeApi = () => {\n const player = new window.YT.Player(\"youtube-player\", {});\n setYoutubeApi(player);\n };\n\n useEffect(() => {\n const tag = document.createElement(\"script\");\n tag.src = \"https://www.youtube.com/iframe_api\";\n\n window.onYouTubeIframeAPIReady = loadYoutubeApi;\n\n const firstScriptTag = document.getElementsByTagName(\"script\")[0];\n firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);\n }, []);\n\n const onControlClick = () => {\n setShowControlOverlay(false);\n youtubeApi.unMute();\n };\n\n const autoPlayParams = autoPlay ? \"autoplay=1&mute=1\" : \"\";\n const loopParams = loop ? `loop=1&playlist=${videoId}` : \"\";\n\n return (\n \n \n {showControlOverlay && youtubeApi && (\n {soundIcon && }\n )}\n \n );\n};\nYoutubePlayer.propTypes = {\n videoId: PropTypes.string.isRequired,\n autoPlay: PropTypes.bool.isRequired,\n loop: PropTypes.bool.isRequired,\n soundIcon: PropTypes.bool.isRequired,\n};\n","import PropTypes from \"prop-types\";\nimport React, { useContext } from \"react\";\n\nimport { ConfigContext } from \"../../contexts\";\nimport { FilePlayer } from \"./filePlayer\";\nimport { YoutubePlayer, isYoutubeUrl } from \"./youtubePlayer\";\n\nconst VideoPanel = ({ videoUrls }) => {\n const { additionalConfig = {} } = useContext(ConfigContext);\n const { video: config = {} } = additionalConfig;\n\n const youtubeVideoId = isYoutubeUrl(videoUrls.video);\n if (youtubeVideoId) {\n return (\n \n );\n } else {\n return (\n \n );\n }\n};\nexport const VideoPropTypes = PropTypes.shape({\n video: PropTypes.string.isRequired,\n poster: PropTypes.string,\n});\nVideoPanel.propTypes = {\n videoUrls: VideoPropTypes.isRequired,\n};\n\nexport default VideoPanel;\n","import { Col } from \"react-styled-flexboxgrid\";\nimport styled from \"styled-components/macro\";\n\nexport const PaddedCol = styled(Col)`\n @media (min-width: 48em) {\n padding-left: 5vw;\n padding-right: 5vw;\n }\n`;\n\nexport const RightPaddedCol = styled(Col)`\n @media (min-width: 48em) {\n padding-left: 1vw;\n padding-right: 5vw;\n }\n`;\n\nexport const LeftPaddedCol = styled(Col)`\n @media (min-width: 48em) {\n padding-left: 5vw;\n padding-right: 1vw;\n }\n`;\n\nexport const TextSection = styled.h3`\n margin-bottom: 1em;\n`;\n\nexport const StyledText = styled.div`\n font-size: 17px;\n line-height: 1.4;\n @media screen and (min-width: 768px) {\n margin-top: 30px;\n }\n\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n margin-top: 0.5em;\n margin-bottom: 0.7em;\n }\n\n > p {\n margin-top: 0;\n }\n`;\n","import PropTypes from \"prop-types\";\nimport React, { useContext } from \"react\";\nimport ReactMarkdown from \"react-markdown\";\n\nimport { ConfigContext } from \"./contexts\";\nimport { trackEvent } from \"./utm_tracking\";\n\nconst TextMarkdown = ({ source }) => {\n const { slug } = useContext(ConfigContext);\n\n const onClick = (href) => {\n trackEvent(\"click-link\", {\n landingType: \"amplify-landing\",\n slug,\n action: href,\n });\n };\n\n const renderers = {\n // eslint-disable-next-line react/prop-types\n link: ({ href, children }) => {\n return (\n onClick(href)} href={href} target=\"_blank\" rel=\"noopener noreferrer\">\n {children}\n \n );\n },\n };\n\n return ;\n};\nTextMarkdown.propTypes = {\n source: PropTypes.string.isRequired,\n};\n\nexport default TextMarkdown;\n","import PropTypes from \"prop-types\";\nimport React, { useContext } from \"react\";\nimport { Col, Row } from \"react-styled-flexboxgrid\";\n\nimport { ConfigContext, I18nContext } from \"../contexts\";\nimport ActionBarPanel, { ActionBarPropTypes } from \"../panels/action-bar/panel\";\nimport ContactInfoPanel, { ContactInfoPropTypes } from \"../panels/contact-info/panel\";\nimport HeaderPanel from \"../panels/header/panel\";\nimport VideoPanel, { VideoPropTypes } from \"../panels/video/panel\";\nimport { LeftPaddedCol, PaddedCol, RightPaddedCol, StyledText, TextSection } from \"../styles/templates\";\nimport TextMarkdown from \"../text-markdown\";\nimport { getTranslation } from \"../utils\";\n\nexport const Education = ({ type, name, logoUrl, description, videoUrls, actions, contactInfo }) => {\n const { i18n } = useContext(I18nContext);\n const { additionalConfig: config } = useContext(ConfigContext);\n\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n {getTranslation(\"common.descriptionTitle\", config?.translations, i18n)}\n \n \n \n \n
\n \n
\n {getTranslation(\"contactInfo.title\", config?.translations, i18n)}\n \n
\n
\n );\n};\nEducation.propTypes = {\n type: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n logoUrl: PropTypes.string,\n description: PropTypes.string.isRequired,\n videoUrls: VideoPropTypes.isRequired,\n actions: ActionBarPropTypes.isRequired,\n contactInfo: ContactInfoPropTypes.isRequired,\n};\nEducation.defaultProps = {\n logoUrl: null,\n};\n\nexport default Education;\n","import PropTypes from \"prop-types\";\nimport React, { useContext } from \"react\";\nimport { Carousel } from \"react-responsive-carousel\";\nimport \"react-responsive-carousel/lib/styles/carousel.min.css\";\nimport styled from \"styled-components/macro\";\n\nimport { ConfigContext } from \"../../contexts\";\nimport { getFixedAspectRatioImagePath } from \"../../image-transform\";\nimport { getAssetPath } from \"../../utils\";\n\nconst ImagePanel = styled(Carousel)`\n img {\n object-fit: cover;\n\n ${(props) =>\n props.clipping &&\n ` \n min-height: 200px;\n height: 40vmin;\n max-height: 400px;`}\n ${(props) =>\n !props.clipping &&\n ` \n height: 100%;`}\n }\n\n .carousel.carousel-slider .control-arrow {\n opacity: 1;\n }\n .carousel.carousel-slider .control-arrow:hover {\n background: rgba(0, 0, 0, 0.4);\n }\n`;\n\nconst ImageCarouselPanel = ({ imageUrls }) => {\n const { contentUrl, slug, additionalConfig = {} } = useContext(ConfigContext);\n const { imageCarousel: config = {} } = additionalConfig;\n return (\n \n {imageUrls.map((value, index) => {\n const imageUrl = !config.clipping\n ? getFixedAspectRatioImagePath(contentUrl, slug, value, config.aspectRatio || 2.5)\n : getAssetPath(contentUrl, slug, value);\n return {value};\n })}\n \n );\n};\nexport const ImageCarouselPropTypes = PropTypes.arrayOf(PropTypes.string);\nImageCarouselPanel.propTypes = {\n imageUrls: ImageCarouselPropTypes.isRequired,\n};\n\nexport default ImageCarouselPanel;\n","export const getFixedAspectRatioImagePath = (url, slug, assetPath, aspectRatio) => {\n const imageUrl = new URL(`${slug}/${assetPath}`, url);\n // https://docs.imgix.com/apis/rendering/size/ar\n imageUrl.searchParams.append(\"w\", window.amplify.landingImgWidth);\n imageUrl.searchParams.append(\"h\", window.amplify.landingImgHeight);\n imageUrl.searchParams.append(\"fit\", \"crop\");\n imageUrl.searchParams.append(\"crop\", \"entropy,faces\");\n return imageUrl;\n};\n","import PropTypes from \"prop-types\";\nimport React, { useContext } from \"react\";\nimport { Col, Row } from \"react-styled-flexboxgrid\";\n\nimport { ConfigContext, I18nContext } from \"../contexts\";\nimport ActionBarPanel, { ActionBarPropTypes } from \"../panels/action-bar/panel\";\nimport ContactInfoPanel, { ContactInfoPropTypes } from \"../panels/contact-info/panel\";\nimport HeaderPanel from \"../panels/header/panel\";\nimport ImageCarouselPanel, { ImageCarouselPropTypes } from \"../panels/image-carousel/panel\";\nimport { LeftPaddedCol, PaddedCol, RightPaddedCol, StyledText, TextSection } from \"../styles/templates\";\nimport TextMarkdown from \"../text-markdown\";\nimport { getTranslation } from \"../utils\";\n\nexport const Generic = ({ type, name, logoUrl, description, imageUrls, actions, contactInfo }) => {\n const { i18n } = useContext(I18nContext);\n const { additionalConfig: config } = useContext(ConfigContext);\n\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n {getTranslation(\"common.descriptionTitle\", config?.translations, i18n)}\n \n \n \n \n
\n \n
\n {getTranslation(\"contactInfo.title\", config?.translations, i18n)}\n \n
\n
\n );\n};\nGeneric.propTypes = {\n type: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n logoUrl: PropTypes.string,\n description: PropTypes.string.isRequired,\n imageUrls: ImageCarouselPropTypes.isRequired,\n actions: ActionBarPropTypes.isRequired,\n contactInfo: ContactInfoPropTypes.isRequired,\n};\nGeneric.defaultProps = {\n logoUrl: null,\n};\n\nexport default Generic;\n","import PropTypes from \"prop-types\";\nimport React, { useContext } from \"react\";\nimport { Col, Row } from \"react-styled-flexboxgrid\";\n\nimport { ConfigContext, I18nContext } from \"../contexts\";\nimport ContactInfoPanel, { ContactInfoPropTypes } from \"../panels/contact-info/panel\";\nimport HeaderPanel from \"../panels/header/panel\";\nimport ImageCarouselPanel, { ImageCarouselPropTypes } from \"../panels/image-carousel/panel\";\nimport VideoPanel, { VideoPropTypes } from \"../panels/video/panel\";\nimport { LeftPaddedCol, PaddedCol, RightPaddedCol, StyledText, TextSection } from \"../styles/templates\";\nimport TextMarkdown from \"../text-markdown\";\nimport { getTranslation } from \"../utils\";\n\nexport const PhysicalBusiness = ({\n type,\n name,\n logoUrl,\n description,\n openingHours,\n videoUrls,\n imageUrls,\n contactInfo,\n}) => {\n const { i18n } = useContext(I18nContext);\n const { additionalConfig: config } = useContext(ConfigContext);\n\n return (\n \n \n \n \n \n {videoUrls ? : }\n \n \n \n {getTranslation(\"common.descriptionTitle\", config?.translations, i18n)}\n \n {getTranslation(\"common.openingHoursTitle\", config?.translations, i18n)}\n \n \n \n \n {getTranslation(\"contactInfo.title\", config?.translations, i18n)}\n \n \n \n );\n};\nPhysicalBusiness.propTypes = {\n type: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n logoUrl: PropTypes.string,\n description: PropTypes.string.isRequired,\n openingHours: PropTypes.string.isRequired,\n videoUrls: VideoPropTypes,\n imageUrls: ImageCarouselPropTypes,\n contactInfo: ContactInfoPropTypes.isRequired,\n};\nPhysicalBusiness.defaultProps = {\n logoUrl: null,\n imageUrls: null,\n videoUrls: null,\n};\n\nexport default PhysicalBusiness;\n","import PropTypes from \"prop-types\";\nimport React, { useContext } from \"react\";\nimport { Col, Row } from \"react-styled-flexboxgrid\";\n\nimport { ConfigContext, I18nContext } from \"../contexts\";\nimport ActionBarPanel, { ActionBarPropTypes } from \"../panels/action-bar/panel\";\nimport ContactInfoPanel, { ContactInfoPropTypes } from \"../panels/contact-info/panel\";\nimport HeaderPanel from \"../panels/header/panel\";\nimport ImageCarouselPanel, { ImageCarouselPropTypes } from \"../panels/image-carousel/panel\";\nimport { LeftPaddedCol, PaddedCol, RightPaddedCol, StyledText, TextSection } from \"../styles/templates\";\nimport TextMarkdown from \"../text-markdown\";\nimport { getTranslation } from \"../utils\";\n\nexport const Restaurant = ({ type, name, logoUrl, description, openingHours, imageUrls, actions, contactInfo }) => {\n const { i18n } = useContext(I18nContext);\n const { additionalConfig: config } = useContext(ConfigContext);\n\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n {getTranslation(\"common.descriptionTitle\", config?.translations, i18n)}\n \n {getTranslation(\"common.openingHoursTitle\", config?.translations, i18n)}\n \n \n \n \n
\n \n
\n {getTranslation(\"contactInfo.title\", config?.translations, i18n)}\n \n
\n
\n );\n};\nRestaurant.propTypes = {\n type: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n logoUrl: PropTypes.string,\n description: PropTypes.string.isRequired,\n openingHours: PropTypes.string.isRequired,\n imageUrls: ImageCarouselPropTypes.isRequired,\n actions: ActionBarPropTypes.isRequired,\n contactInfo: ContactInfoPropTypes.isRequired,\n};\nRestaurant.defaultProps = {\n logoUrl: null,\n};\n\nexport default Restaurant;\n","import PropTypes from \"prop-types\";\nimport React, { useContext } from \"react\";\nimport { Col, Row } from \"react-styled-flexboxgrid\";\n\nimport { ConfigContext, I18nContext } from \"../contexts\";\nimport ActionBarPanel, { ActionBarPropTypes } from \"../panels/action-bar/panel\";\nimport ContactInfoPanel, { ContactInfoPropTypes } from \"../panels/contact-info/panel\";\nimport HeaderPanel from \"../panels/header/panel\";\nimport ImageCarouselPanel, { ImageCarouselPropTypes } from \"../panels/image-carousel/panel\";\nimport VideoPanel, { VideoPropTypes } from \"../panels/video/panel\";\nimport { LeftPaddedCol, PaddedCol, RightPaddedCol, StyledText, TextSection } from \"../styles/templates\";\nimport TextMarkdown from \"../text-markdown\";\nimport { getTranslation } from \"../utils\";\n\nexport const Service = ({ type, name, logoUrl, description, videoUrls, imageUrls, actions, contactInfo }) => {\n const { i18n } = useContext(I18nContext);\n const { additionalConfig: config } = useContext(ConfigContext);\n\n return (\n \n \n \n \n \n {videoUrls ? : }\n \n \n \n \n \n \n {getTranslation(\"common.descriptionTitle\", config?.translations, i18n)}\n \n \n \n \n
\n \n
\n {contactInfo && (\n <>\n {getTranslation(\"contactInfo.title\", config?.translations, i18n)}\n \n \n )}\n
\n
\n );\n};\nService.propTypes = {\n type: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n logoUrl: PropTypes.string,\n description: PropTypes.string.isRequired,\n videoUrls: VideoPropTypes,\n imageUrls: ImageCarouselPropTypes,\n actions: ActionBarPropTypes.isRequired,\n contactInfo: ContactInfoPropTypes.isRequired,\n};\nService.defaultProps = {\n logoUrl: null,\n imageUrls: null,\n videoUrls: null,\n};\n\nexport default Service;\n","import PropTypes from \"prop-types\";\nimport React, { useContext } from \"react\";\nimport { Col, Row } from \"react-styled-flexboxgrid\";\n\nimport { ConfigContext, I18nContext } from \"../contexts\";\nimport ActionBarPanel, { ActionBarPropTypes } from \"../panels/action-bar/panel\";\nimport ContactInfoPanel, { ContactInfoPropTypes } from \"../panels/contact-info/panel\";\nimport HeaderPanel from \"../panels/header/panel\";\nimport ImageCarouselPanel, { ImageCarouselPropTypes } from \"../panels/image-carousel/panel\";\nimport VideoPanel, { VideoPropTypes } from \"../panels/video/panel\";\nimport { LeftPaddedCol, PaddedCol, RightPaddedCol, StyledText, TextSection } from \"../styles/templates\";\nimport TextMarkdown from \"../text-markdown\";\nimport { getTranslation } from \"../utils\";\n\nexport const Shop = ({\n type,\n name,\n logoUrl,\n description,\n openingHours,\n videoUrls,\n imageUrls,\n actions,\n contactInfo,\n}) => {\n const { i18n } = useContext(I18nContext);\n const { additionalConfig: config } = useContext(ConfigContext);\n\n return (\n \n \n \n \n \n {videoUrls ? : }\n \n \n \n \n \n \n {getTranslation(\"common.descriptionTitle\", config?.translations, i18n)}\n \n {getTranslation(\"common.openingHoursTitle\", config?.translations, i18n)}\n \n \n \n \n
\n \n
\n {getTranslation(\"contactInfo.title\", config?.translations, i18n)}\n \n
\n
\n );\n};\nShop.propTypes = {\n type: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n logoUrl: PropTypes.string,\n description: PropTypes.string.isRequired,\n openingHours: PropTypes.string.isRequired,\n videoUrls: VideoPropTypes,\n imageUrls: ImageCarouselPropTypes,\n actions: ActionBarPropTypes.isRequired,\n contactInfo: ContactInfoPropTypes.isRequired,\n};\nShop.defaultProps = {\n logoUrl: null,\n imageUrls: null,\n videoUrls: null,\n};\n\nexport default Shop;\n","import PropTypes from \"prop-types\";\nimport React, { useContext } from \"react\";\nimport { Col, Row } from \"react-styled-flexboxgrid\";\n\nimport { ConfigContext, I18nContext } from \"../contexts\";\nimport ContactInfoPanel, { ContactInfoPropTypes } from \"../panels/contact-info/panel\";\nimport HeaderPanel from \"../panels/header/panel\";\nimport ImageCarouselPanel, { ImageCarouselPropTypes } from \"../panels/image-carousel/panel\";\nimport VideoPanel, { VideoPropTypes } from \"../panels/video/panel\";\nimport { LeftPaddedCol, PaddedCol, RightPaddedCol, StyledText, TextSection } from \"../styles/templates\";\nimport TextMarkdown from \"../text-markdown\";\nimport { getTranslation } from \"../utils\";\n\nexport const SocialNetworks = ({ type, name, logoUrl, description, videoUrls, imageUrls, contactInfo }) => {\n const { i18n } = useContext(I18nContext);\n const { additionalConfig: config } = useContext(ConfigContext);\n\n return (\n \n \n \n \n \n {videoUrls ? : }\n \n \n \n {getTranslation(\"common.descriptionTitle\", config?.translations, i18n)}\n \n \n \n \n \n {getTranslation(\"socialNetworks.contactInfo.title\", config?.translations, i18n)}\n \n \n \n \n );\n};\nSocialNetworks.propTypes = {\n type: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n logoUrl: PropTypes.string,\n description: PropTypes.string.isRequired,\n videoUrls: VideoPropTypes,\n imageUrls: ImageCarouselPropTypes,\n contactInfo: ContactInfoPropTypes.isRequired,\n};\nSocialNetworks.defaultProps = {\n logoUrl: null,\n imageUrls: null,\n videoUrls: null,\n};\n\nexport default SocialNetworks;\n","import Bowser from \"bowser\";\nimport PropTypes from \"prop-types\";\nimport React from \"react\";\nimport { Grid } from \"react-styled-flexboxgrid\";\nimport styled from \"styled-components/macro\";\n\nimport { ConfigContext, I18nContext, ThemeContext } from \"./contexts\";\nimport { initPolyglot } from \"./i18n/i18n\";\nimport background from \"./images/background.svg\";\nimport Education from \"./templates/education\";\nimport Generic from \"./templates/generic\";\nimport PhysicalBusiness from \"./templates/physical-business\";\nimport Restaurant from \"./templates/restaurant\";\nimport Service from \"./templates/service\";\nimport Shop from \"./templates/shop\";\nimport SocialNetworks from \"./templates/social-networks\";\nimport { trackEvent } from \"./utm_tracking\";\n\nexport const Background = styled.div`\n position: fixed;\n width: 100vw;\n height: 100vh;\n z-index: -1;\n background-color: ${(props) => props.color};\n mask-image: url(${background});\n mask-size: cover;\n\n @media (max-width: 48em) {\n visibility: hidden;\n }\n`;\n\nexport const RootDiv = styled.div`\n display: flex;\n height: 100vh;\n justify-content: center;\n align-items: center;\n\n @media screen and (-ms-high-contrast: none), (-ms-high-contrast: active) {\n /* Add your ie10-ie11 css here */\n\n // We have only 1 div in our flex layout, so a \"row\" flow should work but\n // ie11 have issue to align-items in this case\n // (https://github.com/philipwalton/flexbugs)\n flex-direction: column;\n }\n`;\n\nexport const CenterDiv = styled.div`\n margin: auto;\n overflow-x: hidden;\n opacity: 0.95;\n\n > p {\n text-align: center;\n font-size: 13px;\n color: white;\n\n a {\n color: white;\n }\n\n @media (max-width: 48em) {\n display: none;\n }\n }\n @media screen and (-ms-high-contrast: none), (-ms-high-contrast: active) {\n /* Add your ie10-ie11 css here */\n\n // Ie11 container's align-items: center is ignoring margin: auto\n // (https://github.com/philipwalton/flexbugs)\n align-self: stretch;\n }\n`;\n\nconst LandingGrid = styled(Grid)`\n max-width: 1200px;\n background: white;\n\n @media (max-width: 48em) {\n padding-left: 10px;\n padding-right: 10px;\n }\n\n @media (min-width: 48em) {\n margin: 2vh 4vw;\n border-radius: 15px;\n }\n padding: 20px 0;\n`;\n\nexport const Landing = ({ descriptor, contentUrl, slug }) => {\n trackEvent(\"show-ad-landing-page\", {\n landingType: \"amplify-landing\",\n slug,\n template: descriptor.template,\n });\n const polyglot = initPolyglot(descriptor.language || \"en\");\n\n const getTemplate = (name) => {\n switch (name) {\n case \"generic\":\n return (\n \n );\n case \"restaurant\":\n return (\n \n );\n case \"shop\":\n return (\n \n );\n case \"service\":\n return (\n \n );\n case \"education\":\n return (\n \n );\n case \"physical-business\":\n return (\n \n );\n case \"social-networks\":\n return (\n \n );\n default:\n throw Error(`Unknown template \"${name}\"`);\n }\n };\n\n // Support old descriptor version\n if ((descriptor.version || 1) === 1) {\n // Manage deprecated image clipping default value\n const imageCarouselConfig = descriptor.imageCarousel || {};\n // Anything except false should return true\n imageCarouselConfig.clipping = imageCarouselConfig.clipping !== false;\n descriptor.imageCarousel = imageCarouselConfig;\n // Migrate deprecated configurations that were at descriptor's root\n descriptor.additionalConfig = {\n imageCarousel: descriptor.imageCarousel,\n video: descriptor.video,\n ...descriptor.additionalConfig,\n };\n }\n\n return (\n \n \n polyglot.t(phrase, args),\n language: descriptor.language,\n }}\n >\n \n \n \n {getTemplate(descriptor.template)}\n

\n Hosted by amplify.ooo\n

\n
\n
\n \n
\n \n );\n};\nLanding.propTypes = {\n descriptor: PropTypes.object.isRequired,\n contentUrl: PropTypes.string.isRequired,\n slug: PropTypes.string.isRequired,\n};\n\nexport default Landing;\n","import PropTypes from \"prop-types\";\nimport React from \"react\";\nimport styled from \"styled-components/macro\";\n\nimport { initPolyglot } from \"./i18n/i18n\";\nimport { Background, CenterDiv, RootDiv } from \"./landing\";\n\nconst StyledTitle = styled.h1`\n margin-left: 20px;\n margin-right: 20px;\n`;\n\nclass ErrorBoundary extends React.Component {\n static propTypes = {\n children: PropTypes.node.isRequired,\n };\n\n constructor(props) {\n super(props);\n this.state = { hasError: false };\n }\n\n static getDerivedStateFromError() {\n return { hasError: true };\n }\n\n componentDidCatch(error, errorInfo) {\n window.Rollbar.error(\"Landing rendering error\", error, { errorInfo });\n }\n\n render() {\n if (this.state.hasError) {\n const locale = (window.navigator?.language || \"en\").split(\"-\")[0];\n const polyglot = initPolyglot(locale);\n return (\n <>\n \n \n \n {polyglot.t(\"common.renderingError\")}\n \n \n \n );\n }\n return this.props.children;\n }\n}\n\nexport default ErrorBoundary;\n","export default __webpack_public_path__ + \"static/media/Poppins-Italic.ce3fff31.ttf\";","export default __webpack_public_path__ + \"static/media/Poppins-Medium.9e1bb626.ttf\";","export default __webpack_public_path__ + \"static/media/Poppins-Regular.8081832f.ttf\";","import { createGlobalStyle } from \"styled-components\";\nimport { normalize } from \"styled-normalize\";\n\nimport PoppinsItalic from \"../fonts/Poppins/Poppins-Italic.ttf\";\nimport PoppinsMedium from \"../fonts/Poppins/Poppins-Medium.ttf\";\nimport PoppinsRegular from \"../fonts/Poppins/Poppins-Regular.ttf\";\n\nexport const GlobalStyle = createGlobalStyle`\n ${normalize}\n \n @font-face {\n font-family: Poppins;\n src: url(${PoppinsRegular});\n font-weight: 1 400;\n }\n @font-face {\n font-family: Poppins;\n src: url(${PoppinsMedium});\n font-weight: 401 700;\n }\n @font-face {\n font-family: Poppins;\n src: url(${PoppinsItalic});\n font-style: italic;\n }\n \n body {\n box-sizing: border-box;\n font-family: Poppins, sans-serif;\n color: #312b43;\n }\n *, *:before, *:after {\n box-sizing: inherit;\n }\n svg.icon {\n fill: var(--main-text-color);\n width: 32px;\n height: 32px;\n }\n \n @media screen and (min-width: 768px) {\n .mobile {\n display: none !important;\n }\n }\n @media screen and (max-width: 767px) {\n .desktop {\n display: none !important;\n }\n }\n`;\n","import \"core-js/es\";\nimport \"core-js/web\";\nimport React from \"react\";\nimport ReactDOM from \"react-dom\";\n// windows.fetch for ie11\nimport \"whatwg-fetch\";\n\nimport ErrorBoundary from \"./error-boundary\";\nimport Landing from \"./landing\";\nimport { GlobalStyle } from \"./styles\";\n\nReactDOM.render(\n <>\n \n \n \n \n \n \n ,\n document.getElementById(\"root\")\n);\n"],"sourceRoot":""}