{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/qVPJXIqqcmIbth81tilS/u4RPRbIfU42x8A2RMcRy/UsePageYOffset.js", "ssg:https://framerusercontent.com/modules/jvOn29EfE2JGvjU48aZq/9lZ8rpUSDtOJWdQbT8J0/GetBrowserName.js", "ssg:https://framerusercontent.com/modules/nqBrIRHsMiKIfBpQzweL/WWsZrHolrAp09FVOLTRL/Overrides.js"],
  "sourcesContent": ["import React from \"react\";\nexport const usePageYOffset = () => {\n  const [state, setState] = React.useState(0);\n  const scrollListener = React.useCallback(() => setState(window.pageYOffset), []);\n  React.useEffect(() => {\n    window.addEventListener(\"scroll\", scrollListener);\n    return () => {\n      window.removeEventListener(\"scroll\", scrollListener);\n    };\n  }, []);\n  return state;\n};\nexport const __FramerMetadata__ = {\n  \"exports\": {\n    \"usePageYOffset\": {\n      \"type\": \"variable\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"__FramerMetadata__\": {\n      \"type\": \"variable\"\n    }\n  }\n};\n//# sourceMappingURL=./UsePageYOffset.map", "export const getBrowserName = () => {\n  const {\n    userAgent\n  } = window.navigator || {};\n  if (!userAgent) {\n    return null;\n  }\n  if (window.navigator.brave !== undefined) {\n    try {\n      if (window.navigator.brave.isBrave.name == \"isBrave\") {\n        return \"Brave\";\n      }\n    } catch (e) {}\n  }\n  if (userAgent.indexOf(\"Firefox\") > -1) {\n    return \"Firefox\";\n  }\n  if (userAgent.indexOf(\"SamsungBrowser\") > -1) {\n    return \"Samsung Internet\";\n  }\n  if (userAgent.indexOf(\"Opera\") > -1 || userAgent.indexOf(\"OPR\") > -1) {\n    return \"Opera\";\n  }\n  if (userAgent.indexOf(\"Trident\") > -1) {\n    return \"Internet Explorer\";\n  }\n  if (userAgent.indexOf(\"Edge\") > -1) {\n    return \"Microsoft Edge (Legacy)\";\n  }\n  if (userAgent.indexOf(\"Edg\") > -1) {\n    return \"Edge\";\n  }\n  if (userAgent.indexOf(\"Chrome\") > -1) {\n    return \"Chrome\";\n  }\n  if (userAgent.indexOf(\"Safari\") > -1) {\n    return \"Safari\";\n  }\n  return null;\n};\nexport const getBrowserNameForLandingPageButton = () => {\n  const browser = getBrowserName();\n  if (browser && [\"Firefox\", \"Edge\", \"Brave\"].includes(browser)) {\n    return browser;\n  } else {\n    return \"Chrome\";\n  }\n};\nexport const __FramerMetadata__ = {\n  \"exports\": {\n    \"getBrowserName\": {\n      \"type\": \"variable\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"getBrowserNameForLandingPageButton\": {\n      \"type\": \"variable\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"__FramerMetadata__\": {\n      \"type\": \"variable\"\n    }\n  }\n};\n//# sourceMappingURL=./GetBrowserName.map", "import { jsx as _jsx } from \"react/jsx-runtime\";\nimport React from \"react\";\nimport { usePageYOffset } from \"https://framerusercontent.com/modules/qVPJXIqqcmIbth81tilS/u4RPRbIfU42x8A2RMcRy/UsePageYOffset.js\";\nimport { getBrowserNameForLandingPageButton } from \"https://framerusercontent.com/modules/jvOn29EfE2JGvjU48aZq/9lZ8rpUSDtOJWdQbT8J0/GetBrowserName.js\";\nexport function segment(Component) {\n  return props => {\n    React.useEffect(() => {\n      var ref;\n      (ref = window.analytics) === null || ref === void 0 ? void 0 : ref.ready(() => {\n        window.analytics.page();\n      });\n    }, []);\n    return /*#__PURE__*/_jsx(Component, {\n      ...props,\n      style: {\n        ...props.style,\n        backgroundColor: \"transparent\"\n      }\n    });\n  };\n}\nexport function mailtoLinkOverride(Component) {\n  return props => {\n    return /*#__PURE__*/_jsx(Component, {\n      ...props,\n      style: {\n        ...props.style,\n        backgroundColor: \"transparent\"\n      }\n    });\n  };\n}\nexport function mainButtonOverrides(Component) {\n  return props => {\n    const browserName = getBrowserNameForLandingPageButton();\n    return /*#__PURE__*/_jsx(Component, {\n      ...props,\n      title: `Add to ${browserName} for free`\n    });\n  };\n}\nexport function headerButtonOverride(Component) {\n  return props => {\n    const yOffset = usePageYOffset();\n    const [isVisible, setisVisible] = React.useState(false);\n    React.useEffect(() => {\n      if (yOffset > 500) {\n        setisVisible(true);\n      } else {\n        setisVisible(false);\n      }\n    }, [yOffset]);\n    if (!isVisible) {\n      return null;\n    }\n    return /*#__PURE__*/_jsx(Component, {\n      ...props\n    });\n  };\n}\nexport function headerOverride(Component) {\n  return props => {\n    const yOffset = usePageYOffset();\n    const [isPageTop, setIsPageTop] = React.useState(true);\n    const [position, setPosition] = React.useState(\"relative\");\n    React.useEffect(() => {\n      if (yOffset === 0) {\n        setIsPageTop(true);\n      } else {\n        setIsPageTop(false);\n      }\n      setPosition(yOffset >= 12 ? \"fixed\" : \"relative\");\n    }, [yOffset, setPosition, setIsPageTop]);\n    return /*#__PURE__*/_jsx(Component, {\n      ...props,\n      style: {\n        ...props.style,\n        position: \"fixed\",\n        top: 0,\n        zIndex: \"5\",\n        boxShadow: !isPageTop ? \"0 1px 16px 0 rgba(255, 255, 255, 1)\" : \"\"\n      }\n    });\n  };\n}\nexport const __FramerMetadata__ = {\n  \"exports\": {\n    \"mailtoLinkOverride\": {\n      \"type\": \"reactHoc\",\n      \"name\": \"mailtoLinkOverride\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"segment\": {\n      \"type\": \"reactHoc\",\n      \"name\": \"segment\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"mainButtonOverrides\": {\n      \"type\": \"reactHoc\",\n      \"name\": \"mainButtonOverrides\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"headerOverride\": {\n      \"type\": \"reactHoc\",\n      \"name\": \"headerOverride\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"headerButtonOverride\": {\n      \"type\": \"reactHoc\",\n      \"name\": \"headerButtonOverride\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"__FramerMetadata__\": {\n      \"type\": \"variable\"\n    }\n  }\n};"],
  "mappings": "sHACO,IAAMA,EAAiB,IAAM,CAClC,GAAM,CAACC,EAAOC,CAAQ,EAAIC,EAAM,SAAS,CAAC,EACpCC,EAAiBD,EAAM,YAAY,IAAMD,EAASG,EAAO,WAAW,EAAG,CAAC,CAAC,EAC/E,OAAAF,EAAM,UAAU,KACdE,EAAO,iBAAiB,SAAUD,CAAc,EACzC,IAAM,CACXC,EAAO,oBAAoB,SAAUD,CAAc,CACrD,GACC,CAAC,CAAC,EACEH,CACT,ECXO,IAAMK,EAAiB,IAAM,CAClC,GAAM,CACJ,UAAAC,CACF,EAAIC,EAAO,WAAa,CAAC,EACzB,GAAI,CAACD,EACH,OAAO,KAET,GAAIC,EAAO,UAAU,QAAU,OAC7B,GAAI,CACF,GAAIA,EAAO,UAAU,MAAM,QAAQ,MAAQ,UACzC,MAAO,OAEX,MAAE,CAAW,CAEf,OAAID,EAAU,QAAQ,SAAS,EAAI,GAC1B,UAELA,EAAU,QAAQ,gBAAgB,EAAI,GACjC,mBAELA,EAAU,QAAQ,OAAO,EAAI,IAAMA,EAAU,QAAQ,KAAK,EAAI,GACzD,QAELA,EAAU,QAAQ,SAAS,EAAI,GAC1B,oBAELA,EAAU,QAAQ,MAAM,EAAI,GACvB,0BAELA,EAAU,QAAQ,KAAK,EAAI,GACtB,OAELA,EAAU,QAAQ,QAAQ,EAAI,GACzB,SAELA,EAAU,QAAQ,QAAQ,EAAI,GACzB,SAEF,IACT,EACaE,EAAqC,IAAM,CACtD,IAAMC,EAAUJ,EAAe,EAC/B,OAAII,GAAW,CAAC,UAAW,OAAQ,OAAO,EAAE,SAASA,CAAO,EACnDA,EAEA,QAEX,EC3CO,SAASC,GAAQC,EAAW,CACjC,OAAOC,IACLC,EAAM,UAAU,IAAM,CACpB,IAAIC,GACHA,EAAMC,EAAO,aAAe,MAAQD,IAAQ,QAAkBA,EAAI,MAAM,IAAM,CAC7EC,EAAO,UAAU,KAAK,CACxB,CAAC,CACH,EAAG,CAAC,CAAC,EACeC,EAAKL,EAAW,CAClC,GAAGC,EACH,MAAO,CACL,GAAGA,EAAM,MACT,gBAAiB,aACnB,CACF,CAAC,EAEL,CACO,SAASK,GAAmBN,EAAW,CAC5C,OAAOC,GACeI,EAAKL,EAAW,CAClC,GAAGC,EACH,MAAO,CACL,GAAGA,EAAM,MACT,gBAAiB,aACnB,CACF,CAAC,CAEL,CACO,SAASM,GAAoBP,EAAW,CAC7C,OAAOC,GAAS,CACd,IAAMO,EAAcC,EAAmC,EACvD,OAAoBJ,EAAKL,EAAW,CAClC,GAAGC,EACH,MAAO,UAAUO,YACnB,CAAC,CACH,CACF,CACO,SAASE,GAAqBV,EAAW,CAC9C,OAAOC,GAAS,CACd,IAAMU,EAAUC,EAAe,EACzB,CAACC,EAAWC,CAAY,EAAIZ,EAAM,SAAS,EAAK,EAQtD,OAPAA,EAAM,UAAU,IAAM,CAChBS,EAAU,IACZG,EAAa,EAAI,EAEjBA,EAAa,EAAK,CAEtB,EAAG,CAACH,CAAO,CAAC,EACPE,EAGeR,EAAKL,EAAW,CAClC,GAAGC,CACL,CAAC,EAJQ,IAKX,CACF",
  "names": ["usePageYOffset", "state", "setState", "e", "scrollListener", "window", "getBrowserName", "userAgent", "window", "getBrowserNameForLandingPageButton", "browser", "segment", "Component", "props", "e", "ref", "window", "p", "mailtoLinkOverride", "mainButtonOverrides", "browserName", "getBrowserNameForLandingPageButton", "headerButtonOverride", "yOffset", "usePageYOffset", "isVisible", "setisVisible"]
}
