{"version":3,"file":"component---src-pages-services-index-jsx-8e9155855127bc9b5f50.js","mappings":"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","sources":["webpack://evolvan/./src/components/seo/seo.jsx","webpack://evolvan/./src/layouts/Dark.jsx","webpack://evolvan/./src/components/Particals-Overlay/ParticalsOverlay.jsx","webpack://evolvan/./src/components/s-contact-form/s-contact-form.jsx","webpack://evolvan/./src/common/mouseEffect.js","webpack://evolvan/./src/components/cursor/index.jsx","webpack://evolvan/./src/components/Services7/services7.jsx","webpack://evolvan/./src/pages/services/index.jsx","webpack://evolvan/./src/common/scrollToTop.js","webpack://evolvan/./src/components/scrollToTop/index.jsx"],"sourcesContent":["import React from \"react\";\nimport metadata from \"../../../metadata.json\";\n\nconst SEO = ({\n  title,\n  description,\n  author,\n  ogurl,\n  ogtype,\n  ogtitle,\n  ogdescription,\n  ogimage,\n  ogsitename,\n  fbappid,\n  shouldhideMetaTags,\n  twittercard,\n  twittertitle,\n  twittersite,\n  twitterimage,\n  twitterdescription,\n  canonical,\n  publisher,\n  detail,\n  pathname,\n  keywords,\n}) => {\n  const {\n    twittercreator: metadataTwitterCreator,\n    georegion: metadataGeoregion,\n    geoplacename: metadataGeoplacename,\n    geoposition: metadataGeoposition,\n    ICBM: metadataICBM,\n    alternate: metadataAlternate,\n    hreflang: metadataHreflang,\n    ...restMetadata\n  } = metadata;\n\n  const joinUrl = (baseUrl, path = \"\") => {\n    if (!path) return baseUrl;\n\n    const normalizedBaseUrl = baseUrl.replace(/\\/+$/, \"\");\n    const normalizedPath = path.replace(/^\\/+/, \"\");\n\n    return `${normalizedBaseUrl}/${normalizedPath}`;\n  };\n\n  const seo = {\n    title: title || restMetadata.title,\n    description: description || restMetadata.description,\n    author: author || restMetadata.author,\n    ogurl: ogurl || joinUrl(restMetadata.ogurl, pathname),\n    ogimage: ogimage || restMetadata.ogimage,\n    ogsitename: ogsitename || restMetadata.ogsitename,\n    ogtitle: ogtitle || title || restMetadata.ogtitle,\n    ogtype: ogtype || restMetadata.ogtype,\n    fbappid: fbappid || restMetadata.fbappid,\n    ogdescription: ogdescription || description || restMetadata.ogdescription,\n    twittercard: twittercard || restMetadata.twittercard,\n    twitterdescription:\n      twitterdescription || description || restMetadata.twitterdescription,\n    twittertitle: twittertitle || title || restMetadata.twittertitle,\n    twittersite: twittersite || restMetadata.twittersite,\n    twitterimage: twitterimage || ogimage || restMetadata.twitterimage,\n    twittercreator: metadataTwitterCreator,\n    georegion: metadataGeoregion,\n    geoplacename: metadataGeoplacename,\n    geoposition: metadataGeoposition,\n    ICBM: metadataICBM,\n    canonical: canonical || joinUrl(restMetadata.canonical, pathname),\n    publisher: publisher || restMetadata.publisher,\n    alternate: joinUrl(metadataAlternate, pathname),\n    hreflang: metadataHreflang,\n    detail: detail || restMetadata.detail,\n    keywords: keywords || restMetadata.keywords,\n  };\n\n  return (\n    <>\n      <title>{seo.title}</title>\n      <meta name=\"description\" content={seo.description} />\n      <meta name=\"author\" content={seo.author} />\n      <meta property=\"og:url\" content={seo.ogurl} />\n      <meta property=\"og:type\" content={seo.ogtype} />\n      <meta property=\"og:title\" content={seo.ogtitle} />\n      <meta property=\"og:description\" content={seo.ogdescription} />\n      <meta property=\"og:image\" content={seo.ogimage} />\n      {!shouldhideMetaTags && (\n        <>\n          <meta property=\"og:site_name\" content={seo.ogsitename} />\n          <meta property=\"fb:app_id\" content={seo.fbappid} />\n        </>\n      )}\n      <meta name=\"twitter:card\" content={seo.twittercard} />\n      <meta name=\"twitter:description\" content={seo.twitterdescription} />\n      <meta name=\"twitter:title\" content={seo.twittertitle} />\n      <meta name=\"twitter:site\" content={seo.twittersite} />\n      <meta name=\"twitter:image\" content={seo.twitterimage} />\n      <meta name=\"twitter:creator\" content={seo.twittercreator} />\n      {!shouldhideMetaTags && (\n        <>\n          <meta name=\"geo.region\" content={seo.georegion} />\n          <meta name=\"geo.placename\" content={seo.geoplacename} />\n          <meta name=\"geo.position\" content={seo.geoposition} />\n          <meta name=\"ICBM\" content={seo.ICBM} />\n        </>\n      )}\n      <link rel=\"canonical\" href={seo.canonical} />\n      <link rel=\"publisher\" href={seo.publisher} />\n      {!shouldhideMetaTags && (\n        <>\n          <link rel=\"alternate\" href={seo.alternate} hrefLang={seo.hreflang} />\n        </>\n      )}\n      <meta name=\"detail\" content={seo.detail} />\n      <meta name=\"keywords\" content={seo.keywords} />\n    </>\n  );\n};\n\nexport default SEO;\n","import React from \"react\";\r\nimport { Script } from \"gatsby\";\r\n\r\nimport Cursor from \"components/cursor\";\r\nimport ScrollToTop from \"components/scrollToTop\";\r\n\r\nimport \"styles/main.css\";\r\nimport \"styles/preloader.css\";\r\n\r\nconst DarkTheme = ({ children, useSkin, mobileappstyle }) => {\r\n  React.useEffect(() => {\r\n    window.theme = \"dark\";\r\n    if (useSkin) {\r\n      let skinCssLink = document.createElement(\"link\");\r\n      skinCssLink.rel = \"stylesheet\";\r\n      skinCssLink.href = \"/css/arch-skin-dark.css\";\r\n      document.head.appendChild(skinCssLink);\r\n    }\r\n\r\n    if (mobileappstyle) {\r\n      let mobileAppCssLink = document.createElement(\"link\");\r\n      mobileAppCssLink.rel = \"stylesheet\";\r\n      mobileAppCssLink.href = \"/css/mobile-app-dark.css\";\r\n      document.head.appendChild(mobileAppCssLink);\r\n    }\r\n  }, [useSkin, mobileappstyle]);\r\n\r\n  return (\r\n    <>\r\n      <Cursor />\r\n      {children}\r\n      <ScrollToTop />\r\n\r\n      <Script defer src=\"/js/wowInit.js\"></Script>\r\n    </>\r\n  );\r\n};\r\n\r\nexport default DarkTheme;\r\n","import React, { useCallback } from \"react\";\r\nimport Particles from \"react-tsparticles\";\r\nimport { loadFull } from \"tsparticles\";\r\nimport particlesConfig from \"config/particle-config\";\r\n\r\nconst ParticalsOverlay = () => {\r\n  const particlesInit = useCallback(async (engine) => {\r\n    await loadFull(engine);\r\n  }, []);\r\n  return (\r\n    <>\r\n      <Particles\r\n        // id=\"tsparticles\"\r\n        id=\"particles-js\"\r\n        init={particlesInit}\r\n        options={particlesConfig}\r\n        style={{\r\n          pointerEvents: \"none\",\r\n        }}\r\n      />\r\n    </>\r\n  );\r\n};\r\n\r\nexport default ParticalsOverlay;\r\n","import React, { useState } from \"react\";\r\nimport {\r\n  gql,\r\n  useMutation,\r\n  ApolloProvider,\r\n  ApolloClient,\r\n  InMemoryCache,\r\n} from \"@apollo/client\";\r\nimport \"./s-contact-form.css\";\r\n\r\nconst SContactForm = ({ noLine, hidePaddingAndText, servicesData, showBudgetLink }) => {\r\n  const APOLLO_CLIENT = new ApolloClient({\r\n    uri: process.env.GATSBY_API_URL,\r\n    cache: new InMemoryCache(),\r\n  });\r\n\r\n  const Form = () => {\r\n    const messageRef = React.useRef(null);\r\n\r\n    function handleEmailChange(event) {\r\n      const value = event.target.value;\r\n      const error = validateEmail(value);\r\n      setEmailValue(value);\r\n      setEmailError(error);\r\n    }\r\n\r\n    function validateEmail(value) {\r\n      let error;\r\n      if (!value) {\r\n        error = \"Email is Required\";\r\n      } else if (!/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,4}$/i.test(value)) {\r\n        error = \"Invalid email address\";\r\n      }\r\n      return error;\r\n    }\r\n\r\n    const [fullNameValue, setFullNameValue] = useState(\"\");\r\n    const [emailValue, setEmailValue] = useState(\"\");\r\n    const [messageValue, setMessageValue] = useState(\"\");\r\n    const [emailError, setEmailError] = useState(\"\");\r\n    const [mobileValue, setMobileValue] = useState(\"\");\r\n\r\n    const CONTACT_MUTATION = gql`\r\n      mutation CreateSubmissionMutation(\r\n        $clientMutationId: String!\r\n        $full_name: String!\r\n        $email: String!\r\n        $message: String!\r\n        $mobile: String!\r\n      ) {\r\n        createSubmission(\r\n          input: {\r\n            clientMutationId: $clientMutationId\r\n            full_name: $full_name\r\n            email: $email\r\n            message: $message\r\n            mobile: $mobile\r\n          }\r\n        ) {\r\n          success \r\n          data\r\n        }\r\n      }\r\n    `;\r\n    const [mutateFunction, { data, loading, error }] =\r\n      useMutation(CONTACT_MUTATION);\r\n\r\n    return (\r\n      <section id=\"contact\" className=\"contact-sec section-padding position-re\">\r\n        <div className=\"container\">\r\n          <div id=\"form-text\" className=\"row justify-content-center\">\r\n            <div className=\"col-lg-8 col-md-10\">\r\n              <div className=\"sec-head  text-center\">\r\n                <p className=\"wow fadeIn sec-eyebrow\" data-wow-delay=\".5s\">\r\n                  {servicesData && servicesData[0]?.title\r\n                    ? `Looking for ${servicesData[0].title} Solutions?`\r\n                    : \"Contact Us\"}\r\n                </p>\r\n                <h2 className=\"wow color-font sec-title\">\r\n                  Before we begin, we take time to understand your ideas, goals,\r\n                  and challenges. Our team reviews your application and\r\n                  recommends the best path forward.\r\n                </h2>\r\n              </div>\r\n            </div>\r\n          </div>\r\n\r\n          <div id=\"form-fields\" className=\"row justify-content-center\">\r\n            <div className=\"col-lg-10\">\r\n              <div className=\"form wow fadeInUp\" data-wow-delay=\".5s\">\r\n                <form\r\n                  id=\"contact-form\"\r\n                  onSubmit={async (event) => {\r\n                    event.preventDefault();\r\n                    mutateFunction({\r\n                      variables: {\r\n                        clientMutationId: \"example\",\r\n                        full_name: fullNameValue,\r\n                        email: emailValue,\r\n                        message: messageValue,\r\n                        mobile: mobileValue,\r\n                      },\r\n                    });\r\n                  }}\r\n                >\r\n                  <div className=\"messages\" ref={messageRef}></div>\r\n                  <div className=\"controls\">\r\n                    <div className=\"row\">\r\n                      <div className=\"col-lg-6\">\r\n                        <div className=\"form-group\">\r\n                          <input\r\n                            id=\"form_name\"\r\n                            type=\"text\"\r\n                            name=\"name\"\r\n                            placeholder=\"Name\"\r\n                            required=\"required\"\r\n                            onChange={(event) => {\r\n                              setFullNameValue(event.target.value);\r\n                            }}\r\n                          />\r\n                        </div>\r\n                      </div>\r\n                      <div className=\"col-lg-6\">\r\n                        <div className=\"form-group\">\r\n                          <input\r\n                            id=\"form_mobile\"\r\n                            type=\"number\"\r\n                            name=\"mobile\"\r\n                            placeholder=\"Mobile\"\r\n                            required=\"required\"\r\n                            onChange={(event) => {\r\n                              setMobileValue(event.target.value);\r\n                            }}\r\n                          />\r\n                        </div>\r\n                      </div>\r\n                      <div className=\"col-lg-12\">\r\n                        <div className=\"form-group\">\r\n                          <input\r\n                            // validate={validateEmail}\r\n                            id=\"form_email\"\r\n                            type=\"email\"\r\n                            name=\"email\"\r\n                            placeholder=\"Email\"\r\n                            required=\"required\"\r\n                            onChange={handleEmailChange}\r\n                            value={emailValue}\r\n                          // onChange={event => {\r\n                          //   setEmailValue(event.target.value)\r\n                          // }}\r\n                          />\r\n                          {emailError && (\r\n                            <small className=\"text-danger\">\r\n                              <i>{emailError}</i>\r\n                            </small>\r\n                          )}\r\n                        </div>\r\n                      </div>\r\n\r\n                      <div className=\"col-12\">\r\n                        <div className=\"form-group\">\r\n                          <input\r\n                            as=\"textarea\"\r\n                            id=\"form_message\"\r\n                            name=\"message\"\r\n                            placeholder=\"Message\"\r\n                            rows=\"4\"\r\n                            required=\"required\"\r\n                            onChange={(event) => {\r\n                              setMessageValue(event.target.value);\r\n                            }}\r\n                          />\r\n                        </div>\r\n                      </div>\r\n                      <div className=\"col-12\">\r\n                        <div className=\"cta-group\">\r\n                          <button\r\n                            type=\"submit\"\r\n                            className=\"nb butn bord curve mt-30\"\r\n                          >\r\n                            <span>Send Message</span>\r\n                          </button>\r\n\r\n                          {showBudgetLink && (\r\n                            <a\r\n                              href=\"/no-code-app-budget-calculator\"\r\n                              className=\"budget-calc-link\"\r\n                            >\r\n                              Calculate Your App Budget\r\n                            </a>\r\n                          )}\r\n                        </div>\r\n                      </div>\r\n                    </div>\r\n                  </div>\r\n                </form>\r\n\r\n                <div>\r\n                  {loading && <p>Loading ...</p>}\r\n                  {error && (\r\n                    <p>\r\n                      An unknown error has occured, please try again later ...\r\n                    </p>\r\n                  )}\r\n                  {data && data.createSubmission.success && (\r\n                    <p>Message sent successfully!</p>\r\n                  )}\r\n                </div>\r\n              </div>\r\n            </div>\r\n          </div>\r\n        </div >\r\n        {!noLine ? <div className=\"line bottom left\"></div> : \"\"}\r\n      </section >\r\n    );\r\n  };\r\n\r\n  return (\r\n    <ApolloProvider client={APOLLO_CLIENT}>\r\n      <Form />\r\n      <style>\r\n        {hidePaddingAndText &&\r\n          `\r\n          h2.wow.color-font.sec-title, \r\n          p.wow.fadeIn.sec-eyebrow{\r\n            display:none;\r\n          }\r\n          \r\n          #form-text{\r\n            display:none;\r\n          }\r\n\r\n          .contact-sec.section-padding.position-re{\r\n            padding:0px;\r\n            }\r\n            \r\n          .line.bottom.left{\r\n            display:none;\r\n          }\r\n\r\n          div#form-fields.row.justify-content-center {\r\n            -webkit-box-pack: start!important;\r\n            justify-content: flex-start!important;\r\n          }\r\n\r\n          #form-fields div.col-lg-6,.col-lg-12,.col-12{\r\n            padding:0px 10px 0px 0px!important;\r\n          }\r\n        }\r\n        `}\r\n      </style>\r\n    </ApolloProvider>\r\n  );\r\n};\r\n\r\nexport default SContactForm;\r\n","const mouseEffect = () => {\r\n  function mousecursor() {\r\n    const cursorInner = document.querySelector(\".cursor-inner\"),\r\n      cursorOuter = document.querySelector(\".cursor-outer\");\r\n    let n,\r\n      i = 0,\r\n      o = !1;\r\n    window.onmousemove = function (s) {\r\n      o ||\r\n        (cursorOuter.style.transform =\r\n          \"translate(\" + s.clientX + \"px, \" + s.clientY + \"px)\"),\r\n        (cursorInner.style.transform =\r\n          \"translate(\" + s.clientX + \"px, \" + s.clientY + \"px)\"),\r\n        (n = s.clientY),\r\n        (i = s.clientX);\r\n    };\r\n    if (document.querySelector(\".cursor-pointer\")) {\r\n      document\r\n        .querySelector(\".cursor-pointer\")\r\n        .addEventListener(\"mouseenter\", function () {\r\n          cursorInner.classList.add(\"cursor-hover\"),\r\n            cursorOuter.classList.add(\"cursor-hover\");\r\n        });\r\n      document\r\n        .querySelector(\".cursor-pointer\")\r\n        .addEventListener(\"mouseleave\", function () {\r\n          cursorInner.classList.remove(\"cursor-hover\"),\r\n            cursorOuter.classList.remove(\"cursor-hover\");\r\n        }),\r\n        (cursorInner.style.visibility = \"visible\"),\r\n        (cursorOuter.style.visibility = \"visible\");\r\n    }\r\n    document.querySelectorAll(\"a\").forEach(function (item) {\r\n      item.addEventListener(\"mouseenter\", function () {\r\n        cursorInner.classList.add(\"cursor-hover\"),\r\n          cursorOuter.classList.add(\"cursor-hover\");\r\n      });\r\n    });\r\n    document.querySelectorAll(\"a\").forEach(function (item) {\r\n      item.addEventListener(\"mouseleave\", function () {\r\n        cursorInner.classList.remove(\"cursor-hover\"),\r\n          cursorOuter.classList.remove(\"cursor-hover\");\r\n      });\r\n    }),\r\n      (cursorInner.style.visibility = \"visible\"),\r\n      (cursorOuter.style.visibility = \"visible\");\r\n  }\r\n  mousecursor();\r\n};\r\n\r\nexport default mouseEffect;\r\n","import React from \"react\";\r\nimport mouseEffect from \"common/mouseEffect\";\r\n\r\nconst Cursor = () => {\r\n  React.useEffect(() => {\r\n    mouseEffect();\r\n  }, []);\r\n  return (\r\n    <>\r\n      <div className=\"mouse-cursor cursor-outer\"></div>\r\n      <div className=\"mouse-cursor cursor-inner\"></div>\r\n    </>\r\n  );\r\n};\r\n\r\nexport default Cursor;\r\n","import React from \"react\";\r\nimport { Link } from \"gatsby\";\r\nimport { GatsbyImage } from \"gatsby-plugin-image\";\r\n\r\nconst Services7 = ({ servicesData }) => {\r\n  \r\n  return (\r\n    <section className=\"serv-block section-padding\">\r\n      <div className=\"container\">\r\n        {servicesData &&\r\n          servicesData?.map((value, index) => (\r\n            <div\r\n              kay={index}\r\n              className={\r\n                index % 2 === 0\r\n                  ? `row wow fadeInUp ${index !== 0 ? \"mt-80\" : \"\"}`\r\n                  : \"row wow fadeInUp flex-row-reverse mt-80\"\r\n              }\r\n              key={index}\r\n            >\r\n              <div className=\"col-lg-5\">\r\n                <div className=\"serv-img md-mb50\">\r\n                  <GatsbyImage  loading =\"lazy\"\r\n                    image={value.serviceImage?.localFile?.childImageSharp?.gatsbyImageData}\r\n                    alt={value?.altText}       \r\n                  />\r\n                </div>\r\n              </div>\r\n              <div\r\n                id={value?.slug}\r\n                className=\"col-lg-6 offset-lg-1 valign\"\r\n              >\r\n                <div className=\"content\">\r\n\r\n                  <h6 className=\"stit mb-30\">\r\n                    <span className=\"left\"></span> {value?.title}\r\n                  </h6>\r\n\r\n                  <h2 className=\"mb-30\">{value?.subTitle}</h2>\r\n                  <p>{value?.description}</p>\r\n\r\n                  <div className=\"list-feat mt-40\">\r\n                    <ul>\r\n                      {value?.technologiesData &&\r\n                        value?.technologiesData?.nodes?.map((data, i) => (\r\n                          <li key={i} className=\"mb-20\">\r\n                            <i className=\"icon\">\r\n                              <svg\r\n                                xmlns=\"http://www.w3.org/2000/svg\"\r\n                                viewBox=\"0 0 448 512\"\r\n                              >\r\n                                <path d=\"M438.6 105.4C451.1 117.9 451.1 138.1 438.6 150.6L182.6 406.6C170.1 419.1 149.9 419.1 137.4 406.6L9.372 278.6C-3.124 266.1-3.124 245.9 9.372 233.4C21.87 220.9 42.13 220.9 54.63 233.4L159.1 338.7L393.4 105.4C405.9 92.88 426.1 92.88 438.6 105.4H438.6z\" />\r\n                              </svg>\r\n                            </i>\r\n                            <Link\r\n                              to={`/services/${value?.slug}/${data?.slug}`}\r\n                              state={{ selectedTechnology: data?.slug }}\r\n                              onClick={()=>{checkPaceClass()}}\r\n                            >\r\n                              {data?.title}\r\n                            </Link>\r\n                          </li>\r\n                        ))}\r\n                    </ul>\r\n                  </div>\r\n                </div>\r\n              </div>\r\n            </div>\r\n          ))}\r\n      </div>\r\n      <div className=\"circle-blur\"></div>\r\n      <div className=\"circle-blur two\"></div>\r\n    </section>\r\n  );\r\n};\r\n\r\nexport default Services7;\r\n","import React, { useState } from \"react\";\nimport DarkTheme from \"layouts/Dark\";\nimport Services7 from \"components/Services7/services7\";\nimport Navbar from \"components/Navbar/navbar\";\nimport Footer from \"components/Footer/footer\";\nimport { GetServicesData } from \"components/ApiServices/GetServicesData\";\nimport SContactForm from \"components/s-contact-form/s-contact-form\";\nimport ParticalsOverlay from \"components/Particals-Overlay/ParticalsOverlay\";\nimport SEO from \"components/seo/seo\";\nimport LoadingScreen from \"components/Loading-Screen\";\n\nconst MobileAppServicesDark = (props) => {\n  const servicesData = GetServicesData();\n  const navbarRef = React.useRef(null);\n  const logoRef = React.useRef(null);\n  const [theme, setTheme] = useState(\"Dark\");\n  const fixedHeader = React.useRef(null);\n  const MainContent = React.useRef(null);\n\n  React.useEffect(() => {\n    var navbar = navbarRef.current;\n    if (window.pageYOffset > 300) {\n      navbar.classList.add(\"nav-scroll\");\n    } else {\n      navbar.classList.remove(\"nav-scroll\");\n    }\n\n    window.addEventListener(\"scroll\", () => {\n      if (window.pageYOffset > 300) {\n        navbar.classList.add(\"nav-scroll\");\n      } else {\n        navbar.classList.remove(\"nav-scroll\");\n      }\n    });\n\n    var storage = localStorage.getItem(\"theme\");\n\n    if (storage && storage != \"\") {\n      let bodyEl = document.querySelector(\"body\");\n      bodyEl.classList.add(\"themeL\");\n      setTheme(storage);\n    }\n\n    setTimeout(() => {\n      if (fixedHeader.current) {\n        var slidHeight = fixedHeader.current.offsetHeight;\n      }\n      if (MainContent.current) {\n        MainContent.current.style.marginTop = slidHeight + \"px\";\n      }\n    }, 1000);\n  }, [fixedHeader, navbarRef]);\n\n  const themeModeChange = (themeMode) => {\n    let bodyEl = document.querySelector(\"body\");\n    if (themeMode == \"Dark\") {\n      setTheme(\"themeL\");\n      bodyEl.classList.add(\"themeL\");\n      localStorage.setItem(\"theme\", \"themeL\");\n    } else {\n      setTheme(\"Dark\");\n      bodyEl.classList.remove(\"themeL\");\n      localStorage.removeItem(\"theme\");\n    }\n  };\n\n  return (\n    <DarkTheme mobileappstyle>\n      <LoadingScreen/>\n      <div className=\"circle-bg\">\n        <div className=\"circle-color fixed\">\n          <div className=\"gradient-circle\"></div>\n          <div className=\"gradient-circle two\"></div>\n        </div>\n      </div>\n\n      <Navbar\n        nr={navbarRef}\n        lr={logoRef}\n        theme={theme}\n        themeModeChange={themeModeChange}\n      />\n\n      <header\n        ref={fixedHeader}\n        className=\"works-header fixed-slider hfixd valign\"\n      >\n        <ParticalsOverlay />\n        <div className=\"container\">\n          <div className=\"row justify-content-center\">\n            <div className=\"col-lg-7 col-md-9 static\">\n              <div className=\"capt mt-50\">\n                <div className=\"parlx text-center\">\n                  <h1 className=\"color-font\">Services</h1>\n                  <p>\n                    Creativity involves breaking out of expected &amp;\n                    repeatable patterns in order to look at things in different\n                    way than ever before.\n                  </p>\n                  <a\n                    href=\"#contact\"\n                    className=\"butn bord curve mt-30 banner-cta\"\n                    onClick={()=>{checkPaceClass()}}\n                  >\n                    Let's connect\n                  </a>\n                </div>\n\n                <div className=\"bactxt custom-font valign\">\n                  <span className=\"full-width banner-bg-large-text\">\n                    Services\n                  </span>\n                </div>\n              </div>\n            </div>\n          </div>\n        </div>\n      </header>\n      <div ref={MainContent} className=\"main-content\">\n        <Services7 servicesData={servicesData} props={props} />\n        <div className=\"services-page-contact\">\n          <SContactForm />\n        </div>\n        <Footer />\n      </div>\n    </DarkTheme>\n  );\n};\n\nexport const Head = () => {\n  const liveUrl = typeof window !== \"undefined\" ? window.location.href : \"\";\n  return (\n    <>\n      <SEO\n        canonical={liveUrl}\n        title=\"Services | Evolvan Info Solutions\"\n        description=\"Unleash the complete potential of your business through Evolvan's exceptional Digital engineering services, ranging from pioneering product development to strategic transformations\"\n      />\n\n      <link\n        href=\"https://fonts.googleapis.com/css2?family=Manrope:wght@200;300;400;500;600;700;800&display=swap\"\n        rel=\"stylesheet\"\n      />\n    </>\n  );\n};\n\nexport default MobileAppServicesDark;\n","const scrollToTop = () => {\r\n  let progressPath = document.querySelector(\".progress-wrap path\");\r\n  if (!progressPath) return;\r\n  let pathLength = progressPath.getTotalLength();\r\n  progressPath.style.transition = progressPath.style.WebkitTransition = \"none\";\r\n  progressPath.style.strokeDasharray = pathLength + \" \" + pathLength;\r\n  progressPath.style.strokeDashoffset = pathLength;\r\n  progressPath.getBoundingClientRect();\r\n  progressPath.style.transition = progressPath.style.WebkitTransition =\r\n    \"stroke-dashoffset 10ms linear\";\r\n  const updateProgress = function () {\r\n    let scroll = window.pageYOffset;\r\n    let height = document.documentElement.scrollHeight - window.innerHeight;\r\n    let progress = pathLength - (scroll * pathLength) / height;\r\n    progressPath.style.strokeDashoffset = progress;\r\n  };\r\n  updateProgress();\r\n  window.addEventListener(\"scroll\", updateProgress);\r\n  let progressWrap = document.querySelector(\".progress-wrap\");\r\n  let offset = 150;\r\n  window.addEventListener(\"scroll\", function () {\r\n    let currentWrap = document.querySelector(\".progress-wrap\");\r\n    if (!currentWrap) return;\r\n    if (window.pageYOffset > offset) {\r\n      currentWrap.classList.add(\"active-progress\");\r\n    } else {\r\n      currentWrap.classList.remove(\"active-progress\");\r\n    }\r\n  });\r\n  if (progressWrap) {\r\n    progressWrap.addEventListener(\"click\", function (event) {\r\n      event.preventDefault();\r\n      window.scrollTo({ top: 0, behavior: \"smooth\" });\r\n      return false;\r\n    });\r\n  }\r\n};\r\n\r\nexport default scrollToTop;\r\n","import React from \"react\";\r\nimport scrollToTop from \"common/scrollToTop\";\r\n\r\nconst ScrollToTop = () => {\r\n  React.useEffect(() => {\r\n    scrollToTop();\r\n  }, []);\r\n  \r\n  return (\r\n    <div className=\"progress-wrap cursor-pointer\">\r\n      <svg\r\n        className=\"progress-circle svg-content\"\r\n        width=\"100%\"\r\n        height=\"100%\"\r\n        viewBox=\"-1 -1 102 102\"\r\n      >\r\n        <path d=\"M50,1 a49,49 0 0,1 0,98 a49,49 0 0,1 0,-98\" />\r\n      </svg>\r\n    </div>\r\n  );\r\n};\r\n\r\nexport default ScrollToTop;\r\n"],"names":["_ref","title","description","author","ogurl","ogtype","ogtitle","ogdescription","ogimage","ogsitename","fbappid","shouldhideMetaTags","twittercard","twittertitle","twittersite","twitterimage","twitterdescription","canonical","publisher","detail","pathname","keywords","twittercreator","metadataTwitterCreator","georegion","metadataGeoregion","geoplacename","metadataGeoplacename","geoposition","metadataGeoposition","ICBM","metadataICBM","alternate","metadataAlternate","hreflang","metadataHreflang","restMetadata","metadata","joinUrl","baseUrl","path","replace","seo","React","name","content","property","rel","href","hrefLang","children","useSkin","mobileappstyle","window","theme","skinCssLink","document","createElement","head","appendChild","mobileAppCssLink","Cursor","ScrollToTop","Script","defer","src","ParticalsOverlay","particlesInit","useCallback","async","loadFull","engine","Particles","id","init","options","particlesConfig","style","pointerEvents","noLine","hidePaddingAndText","servicesData","showBudgetLink","APOLLO_CLIENT","ApolloClient","uri","process","cache","InMemoryCache","Form","_servicesData$","messageRef","fullNameValue","setFullNameValue","useState","emailValue","setEmailValue","messageValue","setMessageValue","emailError","setEmailError","mobileValue","setMobileValue","CONTACT_MUTATION","gql","mutateFunction","data","loading","error","useMutation","className","onSubmit","event","preventDefault","variables","clientMutationId","full_name","email","message","mobile","ref","type","placeholder","required","onChange","target","value","test","validateEmail","as","rows","createSubmission","success","ApolloProvider","client","mouseEffect","cursorInner","querySelector","cursorOuter","n","i","onmousemove","s","transform","clientX","clientY","addEventListener","classList","add","remove","visibility","querySelectorAll","forEach","item","mousecursor","map","index","_value$serviceImage","_value$serviceImage$l","_value$serviceImage$l2","_value$technologiesDa","_value$technologiesDa2","kay","key","GatsbyImage","image","serviceImage","localFile","childImageSharp","gatsbyImageData","alt","altText","slug","subTitle","technologiesData","nodes","xmlns","viewBox","d","Link","to","state","selectedTechnology","onClick","checkPaceClass","Head","liveUrl","location","SEO","props","GetServicesData","navbarRef","logoRef","setTheme","fixedHeader","MainContent","navbar","current","pageYOffset","storage","localStorage","getItem","setTimeout","slidHeight","offsetHeight","marginTop","DarkTheme","LoadingScreen","Navbar","nr","lr","themeModeChange","themeMode","bodyEl","setItem","removeItem","Services7","SContactForm","Footer","scrollToTop","progressPath","pathLength","getTotalLength","transition","WebkitTransition","strokeDasharray","strokeDashoffset","getBoundingClientRect","updateProgress","scroll","height","documentElement","scrollHeight","innerHeight","progress","progressWrap","currentWrap","scrollTo","top","behavior","width"],"sourceRoot":""}