{"version":3,"sources":["webpack://ecoverso.org/./node_modules/antd/es/_util/getScroll.js","webpack://ecoverso.org/./node_modules/antd/es/_util/easings.js","webpack://ecoverso.org/./node_modules/antd/es/_util/scrollTo.js","webpack://ecoverso.org/./src/User/Login.tsx","webpack://ecoverso.org/./src/Layout/Header.tsx","webpack://ecoverso.org/./src/graphql/subscriptions.ts","webpack://ecoverso.org/./node_modules/@ant-design/icons-svg/es/asn/CheckCircleTwoTone.js","webpack://ecoverso.org/./node_modules/@ant-design/icons/es/icons/CheckCircleTwoTone.js","webpack://ecoverso.org/./node_modules/@ant-design/icons-svg/es/asn/WarningTwoTone.js","webpack://ecoverso.org/./node_modules/@ant-design/icons/es/icons/WarningTwoTone.js","webpack://ecoverso.org/./node_modules/@ant-design/icons-svg/es/asn/ExclamationCircleTwoTone.js","webpack://ecoverso.org/./node_modules/@ant-design/icons/es/icons/ExclamationCircleTwoTone.js","webpack://ecoverso.org/./node_modules/@ant-design/icons-svg/es/asn/InfoCircleTwoTone.js","webpack://ecoverso.org/./node_modules/@ant-design/icons/es/icons/InfoCircleTwoTone.js","webpack://ecoverso.org/./node_modules/@ant-design/icons-svg/es/asn/SmileOutlined.js","webpack://ecoverso.org/./node_modules/@ant-design/icons/es/icons/SmileOutlined.js","webpack://ecoverso.org/./src/Layout/Notifications/index.tsx","webpack://ecoverso.org/./node_modules/@ant-design/icons-svg/es/asn/VerticalAlignTopOutlined.js","webpack://ecoverso.org/./node_modules/@ant-design/icons/es/icons/VerticalAlignTopOutlined.js","webpack://ecoverso.org/./node_modules/antd/es/_util/throttleByAnimationFrame.js","webpack://ecoverso.org/./node_modules/antd/es/back-top/index.js","webpack://ecoverso.org/./src/Layout/Footer.tsx","webpack://ecoverso.org/./src/Layout/GridLayout.tsx"],"names":["isWindow","obj","window","getScroll","target","top","_a","method","result","Document","documentElement","ownerDocument","easeInOutCubic","t","b","c","d","cc","scrollTo","y","options","arguments","length","undefined","_options$getContainer","getContainer","callback","_options$duration","duration","container","scrollTop","startTime","Date","now","frameFunc","time","nextScrollTop","pageXOffset","HTMLDocument","constructor","name","raf","lastFormSetSubmitting","challengeFormSetValues","props","useTranslation","dispatch","useDispatch","data","useStaticQuery","signUpForm","row1","type","properties","firstName","lastName","email","declaredOrigin","discountCodeInfo","discountCode","readPrivacy","newsletterInfo","acptNewsletter","marketingInfo","acptMarketing","profilingInfo","acptProfiling","signInForm","text","component","className","to","challengeForm","loginCode","onClick","onSubmitSignIn","lastAuthEmail","actions","message","useState","activeForm","setActiveForm","isLoggedIn","useSelector","state","auth","lastAuthStatus","lastStatus","lastLoginEmail","authErrorMessage","errorMessage","values","setSubmitting","toLowerCase","useEffect","actionTypes","fluid","people","childImageSharp","objectFit","objectPosition","tabs","onChange","id","selected","FormGenerator","hideCancelButton","submitButtonText","onSubmit","bindSetValues","console","log","given_name","family_name","onClose","last_known_scroll_position","delta_sum","isLanding","ticking","fixedHeader","setFixedHeader","fixedHeaderVisible","setFixedHeaderVisible","mobileNavOpen","setMobileNavOpen","mobileNavOpenSubMenu","setMobileNavOpenSubMenu","handleScroll","known_scroll_position","scrollY","requestAnimationFrame","delta","headerHeight","analyzeScroll","addEventListener","removeEventListener","username","payload","userData","displayName","userId","avatarUrl","replace","isAdmin","role","includes","loginModalVisible","useSubscription","gql","variables","onSubscriptionData","info","skip","error","layout","loginModalVisibility","imgData","menu","linkTo","title","showAsActiveAlsoForSubURLs","onClickDoNothing","subMenu","image","autoIbrida","icon","Icon","size","description","buttonText","autoIbridaPlugin","autoElettrica","source","svg","siteMap","aria-label","map","menuItem","i","key","partiallyActive","e","stopPropagation","subMenuItem","j","dangerouslySetInnerHTML","__html","src","split","substr","primaryColor","secondaryColor","ref","AntdIcon","Object","assign","SuccessIcon","twoToneColor","WarningIcon","DangerIcon","InfoIcon","SmileIcon","style","color","notifications","forEach","theNotification","variant","notification","throttleByAnimationFrame","fn","requestId","later","args","apply","throttled","_len","Array","_key","cancel","BackTop","_useMergedState","useMergedState","value","visible","_useMergedState2","setVisible","scrollEvent","getDefaultTarget","current","visibilityHeight","remove","_React$useContext","getPrefixCls","direction","customizePrefixCls","prefixCls","_props$className","rootPrefixCls","classString","concat","divProps","omit","_props$duration","_ref","children","defaultElement","motionName","removeOnLeave","_ref2","motionClassName","childNode","_ref3","renderChildren","defaultProps","sitemap","date","format","isLoading","loading","addContext","sdEcoversoOrganization","Loading","active","fixed"],"mappings":"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","file":"27e56a6653196ac0323208ad202fd5bb04f442f6-b73001492d051e957195.js","sourcesContent":["export function isWindow(obj) {\n return obj !== null && obj !== undefined && obj === obj.window;\n}\nexport default function getScroll(target, top) {\n var _a;\n\n if (typeof window === 'undefined') {\n return 0;\n }\n\n var method = top ? 'scrollTop' : 'scrollLeft';\n var result = 0;\n\n if (isWindow(target)) {\n result = target[top ? 'pageYOffset' : 'pageXOffset'];\n } else if (target instanceof Document) {\n result = target.documentElement[method];\n } else if (target) {\n result = target[method];\n }\n\n if (target && !isWindow(target) && typeof result !== 'number') {\n result = (_a = (target.ownerDocument || target).documentElement) === null || _a === void 0 ? void 0 : _a[method];\n }\n\n return result;\n}","// eslint-disable-next-line import/prefer-default-export\nexport function easeInOutCubic(t, b, c, d) {\n var cc = c - b;\n t /= d / 2;\n\n if (t < 1) {\n return cc / 2 * t * t * t + b;\n } // eslint-disable-next-line no-return-assign\n\n\n return cc / 2 * ((t -= 2) * t * t + 2) + b;\n}","import raf from \"rc-util/es/raf\";\nimport getScroll, { isWindow } from './getScroll';\nimport { easeInOutCubic } from './easings';\nexport default function scrollTo(y) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _options$getContainer = options.getContainer,\n getContainer = _options$getContainer === void 0 ? function () {\n return window;\n } : _options$getContainer,\n callback = options.callback,\n _options$duration = options.duration,\n duration = _options$duration === void 0 ? 450 : _options$duration;\n var container = getContainer();\n var scrollTop = getScroll(container, true);\n var startTime = Date.now();\n\n var frameFunc = function frameFunc() {\n var timestamp = Date.now();\n var time = timestamp - startTime;\n var nextScrollTop = easeInOutCubic(time > duration ? duration : time, scrollTop, y, duration);\n\n if (isWindow(container)) {\n container.scrollTo(window.pageXOffset, nextScrollTop);\n } else if (container instanceof HTMLDocument || container.constructor.name === 'HTMLDocument') {\n container.documentElement.scrollTop = nextScrollTop;\n } else {\n container.scrollTop = nextScrollTop;\n }\n\n if (time < duration) {\n raf(frameFunc);\n } else if (typeof callback === 'function') {\n callback();\n }\n };\n\n raf(frameFunc);\n}","import React, { useState, useEffect } from \"react\"\nimport { graphql, useStaticQuery } from \"gatsby\"\nimport { Link } from \"../i18n\"\nimport Img from \"gatsby-image/withIEPolyfill\"\nimport { Icon, Tabs, Overlay } from \"../Layout/Components\"\n\nimport FormGenerator from \"../Layout/Forms/FormGenerator\"\nimport { useSelector, useDispatch } from \"react-redux\"\nimport * as actions from \"../store/actions\"\nimport * as actionTypes from \"../store/actions/actionTypes\"\n\nimport {\n email,\n firstName,\n lastName,\n declaredOrigin,\n discountCodeInfo,\n discountCode,\n readPrivacy,\n newsletterInfo,\n acptNewsletter,\n marketingInfo,\n acptMarketing,\n profilingInfo,\n acptProfiling,\n loginCode,\n} from \"../forms/fields/user\"\n\nimport { useTranslation } from \"../i18n\"\nimport { FormPropertiesData } from \"../Layout/Forms/FormDataType\"\nimport { valueFromASTUntyped } from \"graphql-compose/lib/graphql\"\n\nlet lastFormSetSubmitting = null\nlet challengeFormSetValues = null\n\nconst Login = (props: { onClose: Function }) => {\n const [t] = useTranslation([\"errors\"])\n const dispatch = useDispatch()\n const data = useStaticQuery(graphql`\n query {\n people: file(relativePath: { eq: \"ecoverso.people.jpg\" }) {\n childImageSharp {\n fluid(maxWidth: 800) {\n ...GatsbyImageSharpFluid\n }\n }\n }\n }\n `)\n\n const signUpForm: FormPropertiesData = {\n row1: {\n type: \"row\",\n properties: {\n firstName: firstName,\n lastName: lastName,\n },\n },\n email,\n declaredOrigin,\n discountCodeInfo,\n discountCode,\n readPrivacy,\n newsletterInfo,\n acptNewsletter,\n marketingInfo,\n acptMarketing,\n profilingInfo,\n acptProfiling,\n }\n\n const signInForm: FormPropertiesData = {\n email,\n readPrivacy,\n text: {\n type: \"component\",\n component: (\n

\n Hai dimenticato la mail? Contatta il servizio clienti\n

\n ),\n },\n }\n\n const challengeForm: FormPropertiesData = {\n loginCode,\n text: {\n type: \"component\",\n component: (\n

\n {\n onSubmitSignIn({ email: lastAuthEmail })\n dispatch(actions.notificationAdd({ message: \"Codice inviato nuovamente\" }))\n }}\n >\n Invia di nuovo il codice\n \n

\n ),\n },\n }\n\n const [activeForm, setActiveForm] = useState(0)\n const isLoggedIn = useSelector((state) => state.auth.isLoggedIn)\n const lastAuthStatus = useSelector((state) => state.auth.lastStatus)\n const lastAuthEmail = useSelector((state) => state.auth.lastLoginEmail)\n const authErrorMessage = useSelector((state) => state.auth.errorMessage)\n\n // Submit Registration\n const onSubmitSignUp = (values, setSubmitting) => {\n lastFormSetSubmitting = setSubmitting\n values.email = values.email.toLowerCase() // Avoid cognito case sensitiveness\n console.log(values)\n dispatch(\n actions.passwordlessSignUp(values.email, {\n email: values.email,\n given_name: values.firstName,\n family_name: values.lastName,\n \"custom:declaredOrigin\": values.declaredOrigin,\n \"custom:discountCode\": values.discountCode,\n \"custom:acptNewsletter\": values.acptNewsletter ? \"1\" : \"0\",\n \"custom:acptMarketing\": values.acptMarketing ? \"1\" : \"0\",\n \"custom:acptProfiling\": values.acptProfiling ? \"1\" : \"0\",\n })\n )\n }\n\n // Submit Login\n const onSubmitSignIn = (values, setSubmitting?) => {\n lastFormSetSubmitting = setSubmitting\n values.email = values.email.toLowerCase() // Avoid cognito case sensitiveness\n dispatch(actions.passwordlessSignIn(values.email, true))\n }\n\n // Submit Challenge\n const onSubmitChallenge = (values, setSubmitting) => {\n lastFormSetSubmitting = setSubmitting\n dispatch(actions.passwordlessChallenge(values.loginCode, true))\n }\n\n // Reset form submitting state\n useEffect(() => {\n // Rimuovi \"loading\" da form submit\n if (\n lastAuthStatus != actionTypes.AUTH_START &&\n lastAuthStatus != actionTypes.AUTH_CHALLENGE_START &&\n lastAuthStatus != actionTypes.REGISTRATION_START &&\n lastFormSetSubmitting\n ) {\n lastFormSetSubmitting(false)\n lastFormSetSubmitting = null\n }\n // Azzera codice in caso di fallimento\n if ((lastAuthStatus == actionTypes.AUTH_CHALLENGE_FAIL || lastAuthStatus == actionTypes.AUTH_FAIL) && challengeFormSetValues) {\n challengeFormSetValues({ loginCode: \"\" }, true)\n }\n\n // Se auth challenge, cambia form (finale registrazione)\n if (lastAuthStatus == actionTypes.AUTH_CHALLENGE) setActiveForm(0)\n }, [lastAuthStatus])\n\n // Reset auth process if when the modal is opened the last action was failed\n useEffect(() => {\n if (lastAuthStatus == actionTypes.AUTH_FAIL || lastAuthStatus == actionTypes.REGISTRATION_FAIL) {\n dispatch(actions.authReset())\n }\n }, [activeForm])\n\n // If a user is logged in avoid showing login/register modal\n if (isLoggedIn) return null\n\n return (\n \n \n
\n
\n \n
\n setActiveForm(id)} selected={activeForm} />\n\n {activeForm == 0 ? (\n \n {lastAuthStatus != actionTypes.AUTH_CHALLENGE &&\n lastAuthStatus != actionTypes.AUTH_CHALLENGE_START &&\n lastAuthStatus != actionTypes.AUTH_CHALLENGE_FAIL ? (\n \n

Inserisci l'email che hai usato durante la tua registrazione

\n \n
\n ) : (\n \n

\n Per accedere digita il codice che abbiamo inviato a: {lastAuthEmail}\n

\n {\n challengeFormSetValues = callback\n }}\n />\n
\n )}\n\n {lastAuthStatus == actionTypes.AUTH_FAIL || lastAuthStatus == actionTypes.AUTH_CHALLENGE_FAIL ? (\n
{t(authErrorMessage)}
\n ) : null}\n
\n ) : (\n \n \n \n \n\n {lastAuthStatus == actionTypes.REGISTRATION_FAIL ?
{t(authErrorMessage)}
: null}\n
\n )}\n
\n
props.onClose()}>\n \n
\n
\n
\n
\n )\n}\n\nexport default Login\n","import React, { useEffect, useState } from \"react\"\nimport { graphql, useStaticQuery } from \"gatsby\"\nimport Img from \"gatsby-image/withIEPolyfill\"\n\nimport { useSelector, useDispatch } from \"react-redux\"\nimport * as actions from \"../store/actions\"\nimport { useSubscription } from \"@apollo/client\"\nimport { onUpdateUser } from \"../graphql/subscriptions\"\nimport gql from \"graphql-tag\"\n\nimport Icon from \"./Components/Icon\"\nimport Login from \"../User/Login\"\n\nimport { useTranslation, useI18next, Link } from \"../i18n\"\nimport siteMap from \"../sitemap\"\nimport { sub } from \"../../siteUrl\"\n\n// Used to calculate delta on previous scroll position\nvar last_known_scroll_position = 0\nvar delta_sum = 0\n\ntype subMenuData = {\n linkTo: string\n className?: string\n icon?: React.ReactNode\n image?: React.ReactNode\n title?: string\n description?: string\n buttonText?: string\n}\n\ntype menuData = {\n linkTo: string\n className?: string\n title: string\n onClickDoNothing?: boolean\n showAsActiveAlsoForSubURLs?: boolean\n subMenu?: subMenuData[]\n}\n\nconst Header = ({ isLanding }) => {\n const dispatch = useDispatch()\n const { t } = useTranslation([\"translation\"])\n\n //-------------------------------------------------------------------------------------------------------------------------\n // Header on scroll handling\n\n let ticking = false\n const headerHeight = 68\n\n // Header fixed/visibility state\n const [fixedHeader, setFixedHeader] = useState(false)\n const [fixedHeaderVisible, setFixedHeaderVisible] = useState(false)\n const [mobileNavOpen, setMobileNavOpen] = useState(false)\n const [mobileNavOpenSubMenu, setMobileNavOpenSubMenu] = useState(-1)\n\n // Change Header behaviour depending on scroll\n const analyzeScroll = (known_scroll_position) => {\n const delta = known_scroll_position - last_known_scroll_position\n //console.log(known_scroll_position, delta)\n\n // Below 150px make it fixed and appear/disappear depending on scroll direction (up = appear, down = disappear)\n if (known_scroll_position > headerHeight + 30) {\n if (!fixedHeader) setFixedHeader(true)\n if (delta > 0 && fixedHeaderVisible) {\n if (delta_sum < 15) {\n delta_sum += delta\n } else {\n setFixedHeaderVisible(false)\n delta_sum = 0\n }\n }\n if (delta <= 0 && !fixedHeaderVisible) setFixedHeaderVisible(true)\n }\n // Above 150 make it disappear\n if (known_scroll_position <= headerHeight + 30 && fixedHeaderVisible) {\n setFixedHeaderVisible(false)\n }\n // Above 120 reposition header on top of page\n if (known_scroll_position <= headerHeight && fixedHeader) {\n setFixedHeader(false)\n }\n\n last_known_scroll_position = known_scroll_position\n }\n\n // Gestisci l'evendo di scroll della pagina\n const handleScroll = () => {\n const known_scroll_position = window.scrollY\n\n // Ignora nuovi eventi finchè non termina la gestione attuale\n if (!ticking) {\n window.requestAnimationFrame(function () {\n analyzeScroll(known_scroll_position)\n ticking = false\n })\n\n ticking = true\n }\n }\n\n // Aggiungi/Rimuovi un listener allo scroll della pagina\n useEffect(() => {\n window.addEventListener(\"scroll\", handleScroll)\n return () => {\n window.removeEventListener(\"scroll\", handleScroll)\n }\n })\n\n //-------------------------------------------------------------------------------------------------------------------------\n // User Data\n\n const isLoggedIn = useSelector((state) => state.auth.isLoggedIn)\n const username: string = useSelector((state) => state.auth.payload.userData?.displayName || state.auth.payload.userData?.email || \"\")\n const userId = useSelector((state) => state.auth.payload.userData?.userId)\n const avatarUrl = useSelector((state) => state.auth.payload.userData?.avatarUrl?.replace(\"medium\", \"small\"))\n const isAdmin = useSelector((state) => state.auth.payload.role?.includes(\"Admin\") || state.auth.payload.role?.includes(\"SuperAdmin\"))\n\n // If user is logged in subscribe to updates relative to user data\n const { error } = useSubscription(gql(onUpdateUser), {\n variables: { id: userId },\n onSubscriptionData: (info) => {\n // If something changes refresh the auth token\n dispatch(actions.refreshAuthToken())\n },\n skip: !isLoggedIn, // do not subscribe if nobody is logged in\n // fetchPolicy: \"no-cache\",\n })\n\n const getUserInitials = () => {\n return username.split(\" \").map((name) => name.substr(0, 1))\n }\n\n const loginModalVisible = useSelector((state) => state.layout.loginModalVisibility)\n\n //-------------------------------------------------------------------------------------------------------------------------\n // Menu Data\n\n const imgData = useStaticQuery(graphql`\n query {\n autoIbrida: file(relativePath: { eq: \"auto-ibrida.medium.jpg\" }) {\n childImageSharp {\n fluid(maxWidth: 300) {\n ...GatsbyImageSharpFluid\n }\n }\n }\n autoElettrica: file(relativePath: { eq: \"auto-elettrica.medium.jpg\" }) {\n childImageSharp {\n fluid(maxWidth: 300) {\n ...GatsbyImageSharpFluid\n }\n }\n }\n autoIbridaPlugin: file(relativePath: { eq: \"auto-ibrida-plugin.medium.jpg\" }) {\n childImageSharp {\n fluid(maxWidth: 300) {\n ...GatsbyImageSharpFluid\n }\n }\n }\n }\n `)\n\n const menu: menuData[] = [\n {\n linkTo: \"cars\",\n title: t(\"Le auto\"),\n showAsActiveAlsoForSubURLs: true,\n // subMenu: [\n // {\n // linkTo: \"#\",\n // icon: ,\n // title: t(\"Auto Ibride\"),\n // description: \"Un nuovo mondo ricco di servizi aggiuntivi per le auto ibride\",\n // buttonText: \"Scopri di più\",\n // },\n // {\n // linkTo: \"#\",\n // icon: ,\n // title: t(\"Auto Elettriche\"),\n // description: \"Un nuovo mondo ricco di servizi aggiuntivi per le auto elettriche\",\n // buttonText: \"Scopri di più\",\n // },\n // {\n // linkTo: \"#\",\n // icon: ,\n // title: t(\"Auto Ibride Plug-in\"),\n // description: \"Un nuovo mondo ricco di servizi aggiuntivi per le auto ibride plug-in\",\n // buttonText: \"Scopri di più\",\n // },\n // ],\n },\n {\n linkTo: \"/mondo\",\n title: t(\"I mondi\"),\n showAsActiveAlsoForSubURLs: true,\n onClickDoNothing: true,\n subMenu: [\n {\n linkTo: \"mondo-ibrido\",\n image: ,\n icon: ,\n title: t(\"Mondo Ibrido\"),\n description:\n \"Scopri tutto quello che c’è da sapere in merito alle auto ibride: come funzionano, quanto consumano, e come acquistarle risparmiando con Ecoverso\",\n buttonText: \"Scopri di più\",\n },\n {\n linkTo: \"mondo-ibrido-plug-in\",\n image: ,\n icon: ,\n title: t(\"Mondo Ibrido Plug-in\"),\n description:\n \"Scopri tutto quello che c’è da sapere in merito alle auto ibride plug-in: come funzionano, quanto consumano, e come acquistarle risparmiando con Ecoverso\",\n buttonText: \"Scopri di più\",\n },\n {\n linkTo: \"mondo-elettrico\",\n image: ,\n icon: ,\n title: t(\"Mondo Elettrico\"),\n description:\n \"Scopri tutto quello che c’è da sapere in merito alle auto elettriche: come funzionano, quanta autonomia hanno, e come acquistarle risparmiando con Ecoverso\",\n buttonText: \"Scopri di più\",\n },\n ],\n },\n {\n linkTo: \"groups\",\n title: t(\"I gruppi\"),\n },\n {\n linkTo: \"/ecoverso\",\n title: t(\"L'universo\"),\n showAsActiveAlsoForSubURLs: true,\n onClickDoNothing: true,\n subMenu: [\n {\n className: \"navsub__item--academy\",\n linkTo: \"ecoverso-academy\",\n icon: ,\n description: \"Impara con noi come guidare al meglio un’auto ibrida e come ricaricare facilmente un’auto elettrica\",\n buttonText: \"Scopri di più\",\n },\n {\n className: \"navsub__item--race\",\n linkTo: \"ecoverso-r-ace\",\n icon: ,\n description: \"La prima gara automobilistica amatoriale in cui vince chi consuma meno. Vieni a divertirti con noi!\",\n buttonText: \"Scopri di più\",\n },\n {\n className: \"navsub__item--plus\",\n linkTo: \"ecoverso-plus\",\n icon: ,\n description: \"Un nuovo mondo ricco di servizi aggiuntivi per le auto ibride ed elettriche\",\n buttonText: \"Scopri di più\",\n },\n ],\n },\n {\n linkTo: siteMap.posts.it,\n title: t(\"Blog\"),\n },\n // {\n // linkTo: \"/test/\",\n // className: \"hide-below-800\",\n // title: \"T\",\n // },\n ]\n\n //-------------------------------------------------------------------------------------------------------------------------\n // Rendering\n\n return (\n \n \n
\n
\n {isLanding ? (\n \n
\n \n
\n
\n ) : (\n \n \n \n \n\n \n\n \n \n )}\n
\n
\n \n {fixedHeader ? (\n
\n
 
\n
\n ) : null}\n {loginModalVisible ? dispatch(actions.setLoginModalVisibility(false))} /> : null}\n {mobileNavOpen ? (\n
\n
\n
    \n {menu.map((menuItem, i) => (\n \n
  • \n {\n if (menuItem.subMenu) {\n setMobileNavOpenSubMenu(mobileNavOpenSubMenu == i ? -1 : i)\n }\n }}\n >\n {menuItem.title}\n {menuItem.subMenu ? mobileNavOpenSubMenu == i ? : : null}\n \n
  • \n {menuItem.subMenu && mobileNavOpenSubMenu == i ? (\n
      \n {menuItem.subMenu.map((subMenuItem, j) => (\n
    • \n \n {subMenuItem.image ? (\n
      {subMenuItem.image}
      \n ) : subMenuItem.icon ? (\n
      {subMenuItem.icon}
      \n ) : null}\n\n {subMenuItem.title ?
      {subMenuItem.title}
      : null}\n
      \n \n
      \n \n
    • \n ))}{\" \"}\n
    \n ) : null}\n
    \n ))}\n
\n \n Concessionari   \n \n
\n
\n ) : null}\n
\n )\n}\n\nexport default Header\n","/* tslint:disable */\n/* eslint-disable */\n// this is an auto generated file. This will be overwritten\n\nexport const onUpdateUser = /* GraphQL */ `\n subscription OnUpdateUser($id: String) {\n onUpdateUser(id: $id) {\n id\n username\n identityId\n idAffiliation\n idOrganization\n Organization {\n id\n name\n organizationType\n isLocation\n isPlaceHolder\n country\n state\n city\n zipCode\n address1\n VATNumber\n SDICode\n PECEmail\n brands\n notificationsEmail\n notifyOnEachSell\n createdDate\n createdBy\n modifiedDate\n modifiedBy\n crmId\n crmLastModified\n }\n email\n emailVerificationCode\n emailVerificationDate\n emailVerified\n displayName\n firstName\n lastName\n gender\n birthDate\n birthPlace\n roles\n mobile\n mobileVerificationCode\n mobileVerificationDate\n mobileVerified\n country\n state\n city\n zipCode\n address1\n taxCode\n avatarUrl\n declaredOrigin\n discountCode\n acptProfiling\n updtProfiling\n acptMarketing\n updtMarketing\n acptNewsletter\n updtNewsletter\n blockProcessing\n updtProcessing\n acptStatute\n updtStatute\n subscribedUntil\n subscribedSince\n stripeCustomerId\n firstLoginDate\n lastLoginDate\n UserInBuyingGroups {\n id\n idBuyingGroup\n idUser\n registrationDate\n participationDate\n choosingDate\n notInterestInBuying\n confirmationDate\n definitelyNotInterestedInBuying\n lastEmaiNotificationDate\n disableNotifications\n createdDate\n createdBy\n modifiedDate\n modifiedBy\n crmId\n crmLastModified\n }\n ChosedVariants {\n id\n idBuyingGroup\n idUser\n idVariant\n idReseller\n quantity\n dateChosed\n userChoosingCustomValues\n dateConfirmed\n userConfirmationCustomValues\n dateFinalization\n resellerSellingCustomValues\n totalSoldAmount\n dateCanceled\n cancellationPhase\n cancellationReason\n dateDelivered\n dateBilled\n commisionAmount\n createdDate\n createdBy\n modifiedDate\n modifiedBy\n crmId\n crmLastModified\n }\n Payments {\n id\n idUser\n stripeSessionId\n paymentTime\n amount_subtotal\n amount_total\n currency\n payment_status\n mode\n stripeCustomerId\n stripeSubscriptionId\n createdDate\n createdBy\n modifiedDate\n modifiedBy\n crmId\n crmLastModified\n }\n Subscriptions {\n id\n idUser\n stripeSubscriptionId\n stripeCustomerId\n startDate\n endDate\n status\n cancel_at_period_end\n canceledAt\n stripeProductId\n stripePriceId\n amount\n createdDate\n createdBy\n modifiedDate\n modifiedBy\n crmId\n crmLastModified\n }\n createdDate\n createdBy\n modifiedDate\n modifiedBy\n crmId\n crmLastModified\n toBeDeletedAfter\n }\n }\n`;\nexport const onCreateEmailEvent = /* GraphQL */ `\n subscription OnCreateEmailEvent {\n onCreateEmailEvent {\n id\n client_id\n address\n message_id\n type\n date\n feedback\n subject\n createdAt\n updatedAt\n }\n }\n`;\nexport const onUpdateEmailEvent = /* GraphQL */ `\n subscription OnUpdateEmailEvent {\n onUpdateEmailEvent {\n id\n client_id\n address\n message_id\n type\n date\n feedback\n subject\n createdAt\n updatedAt\n }\n }\n`;\nexport const onDeleteEmailEvent = /* GraphQL */ `\n subscription OnDeleteEmailEvent {\n onDeleteEmailEvent {\n id\n client_id\n address\n message_id\n type\n date\n feedback\n subject\n createdAt\n updatedAt\n }\n }\n`;\n","// This icon file is generated automatically.\nvar CheckCircleTwoTone = {\n \"icon\": function render(primaryColor, secondaryColor) {\n return {\n \"tag\": \"svg\",\n \"attrs\": {\n \"viewBox\": \"64 64 896 896\",\n \"focusable\": \"false\"\n },\n \"children\": [{\n \"tag\": \"path\",\n \"attrs\": {\n \"d\": \"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\",\n \"fill\": primaryColor\n }\n }, {\n \"tag\": \"path\",\n \"attrs\": {\n \"d\": \"M512 140c-205.4 0-372 166.6-372 372s166.6 372 372 372 372-166.6 372-372-166.6-372-372-372zm193.4 225.7l-210.6 292a31.8 31.8 0 01-51.7 0L318.5 484.9c-3.8-5.3 0-12.7 6.5-12.7h46.9c10.3 0 19.9 5 25.9 13.3l71.2 98.8 157.2-218c6-8.4 15.7-13.3 25.9-13.3H699c6.5 0 10.3 7.4 6.4 12.7z\",\n \"fill\": secondaryColor\n }\n }, {\n \"tag\": \"path\",\n \"attrs\": {\n \"d\": \"M699 353h-46.9c-10.2 0-19.9 4.9-25.9 13.3L469 584.3l-71.2-98.8c-6-8.3-15.6-13.3-25.9-13.3H325c-6.5 0-10.3 7.4-6.5 12.7l124.6 172.8a31.8 31.8 0 0051.7 0l210.6-292c3.9-5.3.1-12.7-6.4-12.7z\",\n \"fill\": primaryColor\n }\n }]\n };\n },\n \"name\": \"check-circle\",\n \"theme\": \"twotone\"\n};\nexport default CheckCircleTwoTone;","// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport * as React from 'react';\nimport CheckCircleTwoToneSvg from \"@ant-design/icons-svg/es/asn/CheckCircleTwoTone\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar CheckCircleTwoTone = function CheckCircleTwoTone(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, Object.assign({}, props, {\n ref: ref,\n icon: CheckCircleTwoToneSvg\n }));\n};\n\nCheckCircleTwoTone.displayName = 'CheckCircleTwoTone';\nexport default /*#__PURE__*/React.forwardRef(CheckCircleTwoTone);","// This icon file is generated automatically.\nvar WarningTwoTone = {\n \"icon\": function render(primaryColor, secondaryColor) {\n return {\n \"tag\": \"svg\",\n \"attrs\": {\n \"viewBox\": \"64 64 896 896\",\n \"focusable\": \"false\"\n },\n \"children\": [{\n \"tag\": \"path\",\n \"attrs\": {\n \"d\": \"M955.7 856l-416-720c-6.2-10.7-16.9-16-27.7-16s-21.6 5.3-27.7 16l-416 720C56 877.4 71.4 904 96 904h832c24.6 0 40-26.6 27.7-48zm-783.5-27.9L512 239.9l339.8 588.2H172.2z\",\n \"fill\": primaryColor\n }\n }, {\n \"tag\": \"path\",\n \"attrs\": {\n \"d\": \"M172.2 828.1h679.6L512 239.9 172.2 828.1zM560 720a48.01 48.01 0 01-96 0 48.01 48.01 0 0196 0zm-16-304v184c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V416c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8z\",\n \"fill\": secondaryColor\n }\n }, {\n \"tag\": \"path\",\n \"attrs\": {\n \"d\": \"M464 720a48 48 0 1096 0 48 48 0 10-96 0zm16-304v184c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V416c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8z\",\n \"fill\": primaryColor\n }\n }]\n };\n },\n \"name\": \"warning\",\n \"theme\": \"twotone\"\n};\nexport default WarningTwoTone;","// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport * as React from 'react';\nimport WarningTwoToneSvg from \"@ant-design/icons-svg/es/asn/WarningTwoTone\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar WarningTwoTone = function WarningTwoTone(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, Object.assign({}, props, {\n ref: ref,\n icon: WarningTwoToneSvg\n }));\n};\n\nWarningTwoTone.displayName = 'WarningTwoTone';\nexport default /*#__PURE__*/React.forwardRef(WarningTwoTone);","// This icon file is generated automatically.\nvar ExclamationCircleTwoTone = {\n \"icon\": function render(primaryColor, secondaryColor) {\n return {\n \"tag\": \"svg\",\n \"attrs\": {\n \"viewBox\": \"64 64 896 896\",\n \"focusable\": \"false\"\n },\n \"children\": [{\n \"tag\": \"path\",\n \"attrs\": {\n \"d\": \"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\",\n \"fill\": primaryColor\n }\n }, {\n \"tag\": \"path\",\n \"attrs\": {\n \"d\": \"M512 140c-205.4 0-372 166.6-372 372s166.6 372 372 372 372-166.6 372-372-166.6-372-372-372zm-32 156c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v272c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V296zm32 440a48.01 48.01 0 010-96 48.01 48.01 0 010 96z\",\n \"fill\": secondaryColor\n }\n }, {\n \"tag\": \"path\",\n \"attrs\": {\n \"d\": \"M488 576h48c4.4 0 8-3.6 8-8V296c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8zm-24 112a48 48 0 1096 0 48 48 0 10-96 0z\",\n \"fill\": primaryColor\n }\n }]\n };\n },\n \"name\": \"exclamation-circle\",\n \"theme\": \"twotone\"\n};\nexport default ExclamationCircleTwoTone;","// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport * as React from 'react';\nimport ExclamationCircleTwoToneSvg from \"@ant-design/icons-svg/es/asn/ExclamationCircleTwoTone\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar ExclamationCircleTwoTone = function ExclamationCircleTwoTone(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, Object.assign({}, props, {\n ref: ref,\n icon: ExclamationCircleTwoToneSvg\n }));\n};\n\nExclamationCircleTwoTone.displayName = 'ExclamationCircleTwoTone';\nexport default /*#__PURE__*/React.forwardRef(ExclamationCircleTwoTone);","// This icon file is generated automatically.\nvar InfoCircleTwoTone = {\n \"icon\": function render(primaryColor, secondaryColor) {\n return {\n \"tag\": \"svg\",\n \"attrs\": {\n \"viewBox\": \"64 64 896 896\",\n \"focusable\": \"false\"\n },\n \"children\": [{\n \"tag\": \"path\",\n \"attrs\": {\n \"d\": \"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\",\n \"fill\": primaryColor\n }\n }, {\n \"tag\": \"path\",\n \"attrs\": {\n \"d\": \"M512 140c-205.4 0-372 166.6-372 372s166.6 372 372 372 372-166.6 372-372-166.6-372-372-372zm32 588c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V456c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v272zm-32-344a48.01 48.01 0 010-96 48.01 48.01 0 010 96z\",\n \"fill\": secondaryColor\n }\n }, {\n \"tag\": \"path\",\n \"attrs\": {\n \"d\": \"M464 336a48 48 0 1096 0 48 48 0 10-96 0zm72 112h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V456c0-4.4-3.6-8-8-8z\",\n \"fill\": primaryColor\n }\n }]\n };\n },\n \"name\": \"info-circle\",\n \"theme\": \"twotone\"\n};\nexport default InfoCircleTwoTone;","// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport * as React from 'react';\nimport InfoCircleTwoToneSvg from \"@ant-design/icons-svg/es/asn/InfoCircleTwoTone\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar InfoCircleTwoTone = function InfoCircleTwoTone(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, Object.assign({}, props, {\n ref: ref,\n icon: InfoCircleTwoToneSvg\n }));\n};\n\nInfoCircleTwoTone.displayName = 'InfoCircleTwoTone';\nexport default /*#__PURE__*/React.forwardRef(InfoCircleTwoTone);","// This icon file is generated automatically.\nvar SmileOutlined = {\n \"icon\": {\n \"tag\": \"svg\",\n \"attrs\": {\n \"viewBox\": \"64 64 896 896\",\n \"focusable\": \"false\"\n },\n \"children\": [{\n \"tag\": \"path\",\n \"attrs\": {\n \"d\": \"M288 421a48 48 0 1096 0 48 48 0 10-96 0zm352 0a48 48 0 1096 0 48 48 0 10-96 0zM512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm263 711c-34.2 34.2-74 61-118.3 79.8C611 874.2 562.3 884 512 884c-50.3 0-99-9.8-144.8-29.2A370.4 370.4 0 01248.9 775c-34.2-34.2-61-74-79.8-118.3C149.8 611 140 562.3 140 512s9.8-99 29.2-144.8A370.4 370.4 0 01249 248.9c34.2-34.2 74-61 118.3-79.8C413 149.8 461.7 140 512 140c50.3 0 99 9.8 144.8 29.2A370.4 370.4 0 01775.1 249c34.2 34.2 61 74 79.8 118.3C874.2 413 884 461.7 884 512s-9.8 99-29.2 144.8A368.89 368.89 0 01775 775zM664 533h-48.1c-4.2 0-7.8 3.2-8.1 7.4C604 589.9 562.5 629 512 629s-92.1-39.1-95.8-88.6c-.3-4.2-3.9-7.4-8.1-7.4H360a8 8 0 00-8 8.4c4.4 84.3 74.5 151.6 160 151.6s155.6-67.3 160-151.6a8 8 0 00-8-8.4z\"\n }\n }]\n },\n \"name\": \"smile\",\n \"theme\": \"outlined\"\n};\nexport default SmileOutlined;","// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport * as React from 'react';\nimport SmileOutlinedSvg from \"@ant-design/icons-svg/es/asn/SmileOutlined\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar SmileOutlined = function SmileOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, Object.assign({}, props, {\n ref: ref,\n icon: SmileOutlinedSvg\n }));\n};\n\nSmileOutlined.displayName = 'SmileOutlined';\nexport default /*#__PURE__*/React.forwardRef(SmileOutlined);","import React, { ReactNode, useEffect } from \"react\"\nimport { useSelector, useDispatch } from \"react-redux\"\nimport * as actions from \"../../store/actions\"\n\nimport { notification } from \"antd\"\n\nimport {\n CheckCircleTwoTone,\n ExclamationCircleTwoTone,\n InfoCircleTwoTone,\n SmileOutlined,\n WarningTwoTone,\n} from \"@ant-design/icons\"\n\nexport interface INotification {\n key?: string\n message: string\n description?: string // default 4.5s\n icon?: ReactNode\n variant?: \"SuccessIcon\" | \"DangerIcon\" | \"WarningIcon\" | \"InfoIcon\" | \"SmileIcon\"\n duration?: number\n onClose?: () => void\n onClick?: () => void\n}\n\nexport const SuccessIcon = () => \n\nexport const WarningIcon = () => \n\nexport const DangerIcon = () => \n\nexport const InfoIcon = () => \n\nexport const SmileIcon = () => \n\nconst Notifications = () => {\n // Show notifications\n const notifications = useSelector((state) => state.layout.notifications)\n const dispatch = useDispatch()\n useEffect(() => {\n if (notifications.length) {\n notifications.forEach((theNotification) => {\n // Set Icon if needed\n switch (theNotification.variant) {\n case \"SuccessIcon\":\n theNotification.icon = \n break\n case \"WarningIcon\":\n theNotification.icon = \n break\n case \"DangerIcon\":\n theNotification.icon = \n break\n case \"InfoIcon\":\n theNotification.icon = \n break\n case \"SmileIcon\":\n theNotification.icon = \n break\n }\n notification.open(theNotification)\n })\n // Empty notifications array after creating them\n dispatch(actions.notificationEmpty())\n }\n }, [notifications])\n\n return null\n}\n\nexport default Notifications\n","// This icon file is generated automatically.\nvar VerticalAlignTopOutlined = {\n \"icon\": {\n \"tag\": \"svg\",\n \"attrs\": {\n \"viewBox\": \"64 64 896 896\",\n \"focusable\": \"false\"\n },\n \"children\": [{\n \"tag\": \"path\",\n \"attrs\": {\n \"d\": \"M859.9 168H164.1c-4.5 0-8.1 3.6-8.1 8v60c0 4.4 3.6 8 8.1 8h695.8c4.5 0 8.1-3.6 8.1-8v-60c0-4.4-3.6-8-8.1-8zM518.3 355a8 8 0 00-12.6 0l-112 141.7a7.98 7.98 0 006.3 12.9h73.9V848c0 4.4 3.6 8 8 8h60c4.4 0 8-3.6 8-8V509.7H624c6.7 0 10.4-7.7 6.3-12.9L518.3 355z\"\n }\n }]\n },\n \"name\": \"vertical-align-top\",\n \"theme\": \"outlined\"\n};\nexport default VerticalAlignTopOutlined;","// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport * as React from 'react';\nimport VerticalAlignTopOutlinedSvg from \"@ant-design/icons-svg/es/asn/VerticalAlignTopOutlined\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar VerticalAlignTopOutlined = function VerticalAlignTopOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, Object.assign({}, props, {\n ref: ref,\n icon: VerticalAlignTopOutlinedSvg\n }));\n};\n\nVerticalAlignTopOutlined.displayName = 'VerticalAlignTopOutlined';\nexport default /*#__PURE__*/React.forwardRef(VerticalAlignTopOutlined);","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport raf from \"rc-util/es/raf\";\nexport function throttleByAnimationFrame(fn) {\n var requestId;\n\n var later = function later(args) {\n return function () {\n requestId = null;\n fn.apply(void 0, _toConsumableArray(args));\n };\n };\n\n var throttled = function throttled() {\n if (requestId == null) {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n requestId = raf(later(args));\n }\n };\n\n throttled.cancel = function () {\n return raf.cancel(requestId);\n };\n\n return throttled;\n}\nexport function throttleByAnimationFrameDecorator() {\n return function throttle(target, key, descriptor) {\n var fn = descriptor.value;\n var definingProperty = false;\n return {\n configurable: true,\n get: function get() {\n // In IE11 calling Object.defineProperty has a side-effect of evaluating the\n // getter for the property which is being replaced. This causes infinite\n // recursion and an \"Out of stack space\" error.\n // eslint-disable-next-line no-prototype-builtins\n if (definingProperty || this === target.prototype || this.hasOwnProperty(key)) {\n /* istanbul ignore next */\n return fn;\n }\n\n var boundFn = throttleByAnimationFrame(fn.bind(this));\n definingProperty = true;\n Object.defineProperty(this, key, {\n value: boundFn,\n configurable: true,\n writable: true\n });\n definingProperty = false;\n return boundFn;\n }\n };\n };\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport CSSMotion from 'rc-motion';\nimport addEventListener from \"rc-util/es/Dom/addEventListener\";\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport classNames from 'classnames';\nimport omit from \"rc-util/es/omit\";\nimport VerticalAlignTopOutlined from \"@ant-design/icons/es/icons/VerticalAlignTopOutlined\";\nimport { throttleByAnimationFrame } from '../_util/throttleByAnimationFrame';\nimport { ConfigContext } from '../config-provider';\nimport getScroll from '../_util/getScroll';\nimport scrollTo from '../_util/scrollTo';\nimport { cloneElement } from '../_util/reactNode';\n\nvar BackTop = function BackTop(props) {\n var _useMergedState = useMergedState(false, {\n value: props.visible\n }),\n _useMergedState2 = _slicedToArray(_useMergedState, 2),\n visible = _useMergedState2[0],\n setVisible = _useMergedState2[1];\n\n var ref = /*#__PURE__*/React.createRef();\n var scrollEvent = React.useRef();\n\n var getDefaultTarget = function getDefaultTarget() {\n return ref.current && ref.current.ownerDocument ? ref.current.ownerDocument : window;\n };\n\n var handleScroll = throttleByAnimationFrame(function (e) {\n var visibilityHeight = props.visibilityHeight;\n var scrollTop = getScroll(e.target, true);\n setVisible(scrollTop > visibilityHeight);\n });\n\n var bindScrollEvent = function bindScrollEvent() {\n var target = props.target;\n var getTarget = target || getDefaultTarget;\n var container = getTarget();\n scrollEvent.current = addEventListener(container, 'scroll', function (e) {\n handleScroll(e);\n });\n handleScroll({\n target: container\n });\n };\n\n React.useEffect(function () {\n bindScrollEvent();\n return function () {\n if (scrollEvent.current) {\n scrollEvent.current.remove();\n }\n\n handleScroll.cancel();\n };\n }, [props.target]);\n\n var scrollToTop = function scrollToTop(e) {\n var onClick = props.onClick,\n target = props.target,\n _props$duration = props.duration,\n duration = _props$duration === void 0 ? 450 : _props$duration;\n scrollTo(0, {\n getContainer: target || getDefaultTarget,\n duration: duration\n });\n\n if (typeof onClick === 'function') {\n onClick(e);\n }\n };\n\n var renderChildren = function renderChildren(_ref) {\n var prefixCls = _ref.prefixCls,\n rootPrefixCls = _ref.rootPrefixCls;\n var children = props.children;\n var defaultElement = /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-content\")\n }, /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-icon\")\n }, /*#__PURE__*/React.createElement(VerticalAlignTopOutlined, null)));\n return /*#__PURE__*/React.createElement(CSSMotion, {\n visible: visible,\n motionName: \"\".concat(rootPrefixCls, \"-fade\"),\n removeOnLeave: true\n }, function (_ref2) {\n var motionClassName = _ref2.className;\n var childNode = children || defaultElement;\n return /*#__PURE__*/React.createElement(\"div\", null, cloneElement(childNode, function (_ref3) {\n var className = _ref3.className;\n return {\n className: classNames(motionClassName, className)\n };\n }));\n });\n };\n\n var _React$useContext = React.useContext(ConfigContext),\n getPrefixCls = _React$useContext.getPrefixCls,\n direction = _React$useContext.direction;\n\n var customizePrefixCls = props.prefixCls,\n _props$className = props.className,\n className = _props$className === void 0 ? '' : _props$className;\n var prefixCls = getPrefixCls('back-top', customizePrefixCls);\n var rootPrefixCls = getPrefixCls();\n var classString = classNames(prefixCls, _defineProperty({}, \"\".concat(prefixCls, \"-rtl\"), direction === 'rtl'), className); // fix https://fb.me/react-unknown-prop\n\n var divProps = omit(props, ['prefixCls', 'className', 'children', 'visibilityHeight', 'target', 'visible']);\n return /*#__PURE__*/React.createElement(\"div\", _extends({}, divProps, {\n className: classString,\n onClick: scrollToTop,\n ref: ref\n }), renderChildren({\n prefixCls: prefixCls,\n rootPrefixCls: rootPrefixCls\n }));\n};\n\nBackTop.defaultProps = {\n visibilityHeight: 400\n};\nexport default /*#__PURE__*/React.memo(BackTop);","import React from \"react\"\nimport { useTranslation, Link, FormatDate } from \"../i18n\"\nimport Icon from \"./Components/Icon\"\nimport sitemap from \"../sitemap\"\n\nconst Footer = ({ isLanding }) => {\n const { t } = useTranslation([])\n\n return (\n
\n {!isLanding ? (\n \n
\n
\n
    \n
  • \n Chi siamo\n
  • \n
  • \n {t(\"Rassegna Stampa\")}\n
  • \n
  • \n {t(\"Testimonianze\")}\n
  • \n
\n
\n
\n \n \n \n
\n
\n
    \n
  • \n FAQ\n
  • \n
  • \n Blog\n
  • \n
  • \n Contatti\n
  • \n
\n
\n
\n
\n
\n
    \n
  • \n \n \n \n
  • \n
  • \n \n \n \n
  • \n
  • \n \n \n \n
  • \n
  • \n \n \n \n
  • \n
\n
\n
\n ) : null}\n
\n © 2010 - —\n Privacy Policy/Termini e condizioni/\n {/* Sitemap/ */}\n Cookie Policy\n
\n
\n )\n}\n\nexport default Footer\n","import React from \"react\"\nimport { useSelector, useDispatch } from \"react-redux\"\nimport ClientSideSuspense from \"./ClientSideSuspense\"\n\nimport Header from \"./Header\"\nimport Notifications from \"./Notifications\"\nimport WelcomeWizard from \"../User/WelcomeWizard\"\n\nimport { BackTop } from \"antd\"\n\nimport \"antd/dist/antd.css\"\nimport \"../sass/main.scss\"\nimport Footer from \"./Footer\"\nimport Icon from \"./Components/Icon\"\nimport Loading from \"./Components/Loading\"\n\nimport { useTranslation, Helmet } from \"../i18n\"\nimport { SeoContextProvider, StructuredData, sdEcoversoOrganization, addContext } from \"../seo\"\n\ntype Props = {\n children: any\n className?: string\n isLanding?: boolean\n}\n\nconst GridLayout: React.FC = ({ children, className, isLanding }) => {\n const isLoading = useSelector((state) => state.layout.loading)\n\n // const openWelcomeWizard = useSelector(\n // (state) =>\n // state.auth.isLoggedIn &&\n // (state.auth.payload?.userData?.registrationComplete == false ||\n // state.auth.payload?.userData?.registrationComplete == \"false\")\n // )\n\n return (\n \n \n \n \n \n
\n \n
\n \n
\n
\n
\n {children}\n
\n
\n {/* {openWelcomeWizard ? : null} */}\n \n
\n
\n
\n )\n}\n\nexport default GridLayout\n"],"sourceRoot":""}