{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/nGHj7ohazgCbrRN7DP5i/GrJENcPx21zIJTFiE7wW/siteMetadata.js"],
  "sourcesContent": ["// Generated by Framer (c105afa)\nexport default function metadata(params,activeLocale){return{customHTMLBodyEnd:\"<script>\\nconst getRandomCharacter = (arrayOrString) => {\\n  const index = Math.floor(Math.random() * arrayOrString.length);\\n\\n  if (typeof arrayOrString === 'string') {\\n    return arrayOrString.substr(index, 1);\\n  }\\n\\n  return arrayOrString[index];\\n};\\n\\nconst UNMISTAKABLE_CHARS =\\n  '23456789ABCDEFGHJKLMNPQRSTWXYZabcdefghijkmnopqrstuvwxyz';\\n\\nconst getRandomId = (charCount = 17) => {\\n  return Array.from(new Array(charCount)).reduce((acc) => {\\n    return `${acc}${getRandomCharacter(UNMISTAKABLE_CHARS)}`;\\n  }, '');\\n};\\n\\nconst isNil = (val) => {\\n  return val == null;\\n};\\n\\nconst get = (obj, path, defValue) => {\\n  // If path is not defined or it has false value\\n  if (!path) return undefined;\\n  // Check if path is string or array. Regex : ensure that we do not have '.' and brackets.\\n  // Regex explained: https://regexr.com/58j0k\\n  const pathArray = Array.isArray(path) ? path : path.match(/([^[.\\\\]])+/g);\\n  // Find value\\n  const result = pathArray.reduce((prevObj, key) => {\\n    return prevObj && prevObj[key];\\n  }, obj);\\n  // If found value is undefined return default value; otherwise return the value\\n  return result === undefined ? defValue : result;\\n};\\n\\nconst set = (obj, path, value) => {\\n  const pathArray = path.split('.');\\n\\n  pathArray.reduce((acc, key, i) => {\\n    if (acc[key] === undefined) acc[key] = {};\\n    if (i === pathArray.length - 1) acc[key] = value;\\n    return acc[key];\\n  }, obj);\\n};\\n\\nconst getStorage = () => {\\n  try {\\n    return JSON.parse(window.localStorage.getItem('ccStorage')) || {};\\n  } catch (err) {\\n    return {};\\n  }\\n};\\n\\nconst setStorage = (newStorage) => {\\n  try {\\n    window.localStorage.setItem('ccStorage', JSON.stringify(newStorage));\\n\\n    const event = new CustomEvent('storageset', {\\n      detail: { storage: newStorage },\\n    });\\n    window.dispatchEvent(event);\\n\\n    return newStorage;\\n  } catch (err) {\\n    return undefined;\\n  }\\n};\\n\\nconst getStorageItem = (key) => {\\n  const ccStorage = getStorage();\\n\\n  return get(ccStorage, key);\\n};\\n\\nconst setStorageItem = (key, value) => {\\n  if (isNil(value)) return;\\n\\n  const ccStorage = getStorage();\\n\\n  set(ccStorage, key, value);\\n\\n  console.log({ ccStorage });\\n\\n  setStorage(ccStorage);\\n};\\n\\nconst getReferrer = () => {\\n  if (!document.referrer) return '$direct';\\n\\n  const referrer = new URL(document.referrer);\\n\\n  return referrer.href;\\n};\\n\\nconst getReferrerDomain = () => {\\n  if (!document.referrer) return '$unknown';\\n  const referrer = new URL(document.referrer);\\n  const current = new URL(window.location.href);\\n\\n  if (referrer.hostname === current.hostname) return '$direct';\\n\\n  return referrer.hostname;\\n};\\n\\nconst setTrackingProp = (key, value) => {\\n  const existingItem = getStorageItem(key);\\n\\n  if (isNil(existingItem)) {\\n    setStorageItem(key, value);\\n  }\\n\\n  setStorageItem(`${key}LastTouch`, value);\\n};\\n\\nconst setUserProperties = async () => {\\n  if (typeof window === 'undefined') return;\\n\\n  const urlParams = new URLSearchParams(window.location.search);\\n\\n  if (!getStorageItem('trackingId')) {\\n    setStorageItem('trackingId', getRandomId());\\n  }\\n\\n  if (!window.sessionStorage.getItem('sessionId')) {\\n    window.sessionStorage.setItem('sessionId', getRandomId());\\n  }\\n\\n  setTrackingProp(\\n    'trackingProps.affiliateLinkId',\\n    urlParams.get('affiliate_link_id'),\\n  );\\n  setTrackingProp('trackingProps.entryPage', window.location.href.split('?')[0]);\\n  setTrackingProp('trackingProps.utmSource', urlParams.get('utm_source'));\\n  setTrackingProp('trackingProps.utmMedium', urlParams.get('utm_medium'));\\n  setTrackingProp('trackingProps.utmCampaign', urlParams.get('utm_campaign'));\\n  setTrackingProp('trackingProps.utmContent', urlParams.get('utm_content'));\\n  setTrackingProp('trackingProps.utmTerm', urlParams.get('utm_term'));\\n  setTrackingProp('trackingProps.referrerDomain', getReferrerDomain());\\n  setTrackingProp('trackingProps.referrer', getReferrer());\\n};\\n\\nwindow.addEventListener('load', setUserProperties);\\n\\n</script>\",customHTMLHeadEnd:'<link rel=\"apple-touch-icon\" href=\"https://framerusercontent.com/images/PQBUzeXTF5vKbciPwpvKHfTP23k.png\">\\n<script defer=\"\" data-domain=\"convertcalculator.com\" src=\"https://plausible.io/js/script.js\"></script>\\n<script type=\"application/ld+json\">\\n    {\\n        \"@context\":\"http://schema.org\",\\n        \"@type\":\"WebApplication\",\\n        \"@id\":\"convertcalculator\",\\n        \"applicationCategory\":\"BusinessApplication\",\\n        \"name\":\"ConvertCalculator - Create powerful calculators, quote forms, lead funnels, and more without code\",\\n        \"operatingSystem\":\"all\",\\n        \"browserRequirements\":\"Requires Javascript and HTML5 support\",\\n        \"url\":\"https://www.convertcalculator.com\",\\n        \"screenshot\":\"https://framerusercontent.com/assets/53BJEwtVKqxmAGQl2fbToayuE.jpg\",\\n        \"aggregateRating\":{\\n        \"@type\":\"AggregateRating\",\\n        \"ratingValue\":\"4.9\",\\n        \"reviewCount\":\"31\"\\n        },\\n        \"offers\":{\\n        \"@type\":\"AggregateOffer\",\\n        \"offeredBy\":{\\n            \"@type\":\"Organization\",\\n            \"name\":\"convertcalculator\"\\n        },\\n        \"highPrice\":\"1440.00\",\\n        \"lowPrice\":\"15\",\\n        \"offerCount\":\"4\",\\n        \"priceCurrency\":\"USD\",\\n        \"priceSpecification\":[\\n            {\\n                \"@type\":\"UnitPriceSpecification\",\\n                \"price\":\"0.00\",\\n                \"priceCurrency\":\"USD\",\\n                \"name\":\"Free\"\\n            },\\n            {\\n                \"@type\":\"UnitPriceSpecification\",\\n                \"price\":\"20.00\",\\n                \"priceCurrency\":\"USD\",\\n                \"name\":\"Hobby monthly\",\\n                \"referenceQuantity\":{\\n                    \"@type\":\"QuantitativeValue\",\\n                    \"value\":\"1\",\\n                    \"unitCode\":\"MON\"\\n                }\\n            },\\n            {\\n                \"@type\":\"UnitPriceSpecification\",\\n                \"price\":\"40.00\",\\n                \"priceCurrency\":\"USD\",\\n                \"name\":\"Pro monthly\",\\n                \"referenceQuantity\":{\\n                    \"@type\":\"QuantitativeValue\",\\n                    \"value\":\"1\",\\n                    \"unitCode\":\"MON\"\\n                }\\n            },\\n            {\\n                \"@type\":\"UnitPriceSpecification\",\\n                \"price\":\"80.00\",\\n                \"priceCurrency\":\"USD\",\\n                \"name\":\"Premium monthly\",\\n                \"referenceQuantity\":{\\n                    \"@type\":\"QuantitativeValue\",\\n                    \"value\":\"1\",\\n                    \"unitCode\":\"MON\"\\n                }\\n            },\\n            {\\n                \"@type\":\"UnitPriceSpecification\",\\n                \"price\":\"120.00\",\\n                \"priceCurrency\":\"USD\",\\n                \"name\":\"Platinum monthly\",\\n                \"referenceQuantity\":{\\n                    \"@type\":\"QuantitativeValue\",\\n                    \"value\":\"1\",\\n                    \"unitCode\":\"MON\"\\n                }\\n            },\\n            {\\n                \"@type\":\"UnitPriceSpecification\",\\n                \"price\":\"180.00\",\\n                \"priceCurrency\":\"USD\",\\n                \"name\":\"Hobby annually\",\\n                \"referenceQuantity\":{\\n                    \"@type\":\"QuantitativeValue\",\\n                    \"value\":\"1\",\\n                    \"unitCode\":\"ANN\"\\n                }\\n            },\\n            {\\n                \"@type\":\"UnitPriceSpecification\",\\n                \"price\":\"420.00\",\\n                \"priceCurrency\":\"USD\",\\n                \"name\":\"Pro annually\",\\n                \"referenceQuantity\":{\\n                    \"@type\":\"QuantitativeValue\",\\n                    \"value\":\"1\",\\n                    \"unitCode\":\"ANN\"\\n                }\\n            },\\n            {\\n                \"@type\":\"UnitPriceSpecification\",\\n                \"price\":\"780.00\",\\n                \"priceCurrency\":\"USD\",\\n                \"name\":\"Premium annually\",\\n                \"referenceQuantity\":{\\n                    \"@type\":\"QuantitativeValue\",\\n                    \"value\":\"1\",\\n                    \"unitCode\":\"ANN\"\\n                }\\n            },\\n            {\\n                \"@type\":\"UnitPriceSpecification\",\\n                \"price\":\"1200.00\",\\n                \"priceCurrency\":\"USD\",\\n                \"name\":\"Platinum annually\",\\n                \"referenceQuantity\":{\\n                    \"@type\":\"QuantitativeValue\",\\n                    \"value\":\"1\",\\n                    \"unitCode\":\"ANN\"\\n                }\\n            }\\n        ]\\n        },\\n        \"creator\":{\\n        \"@type\":\"Organization\",\\n        \"@id\":\"#organization\",\\n        \"url\":\"https://www.convertcalcualtor.co/\",\\n        \"name\":\"convertcalculator\",\\n        \"logo\":{\\n            \"@type\":\"ImageObject\",\\n            \"url\":\"https://framerusercontent.com/images/PQBUzeXTF5vKbciPwpvKHfTP23k.png\",\\n            \"width\":\"384px\",\\n            \"height\":\"384px\"\\n        }\\n        }\\n    }\\n</script>\\n\\n<script type=\"application/ld+json\">\\n    {\\n        \"@context\": \"https://schema.org\",\\n        \"@type\": \"Organization\",\\n        \"url\": \"https://www.convertcalculator.com/\",\\n        \"mainEntityOfPage\": \"https://www.convertcalculator.com/\",\\n        \"@id\": \"#convertcalculator\",\\n        \"name\": \"ConvertCalculator\",\\n        \"founders\": [\\n            {\\n                \"@type\": \"Person\",\\n                \"name\": \"Joris de Ruiter\"\\n            },\\n            {\\n                \"@type\": \"Person\",\\n                \"name\": \"Bas Hennephof\"\\n            }\\n        ],\\n        \"description\": \"ConvertCalculator - Create powerful calculators, quote forms, lead funnels, and more without code\",\\n        \"logo\": {\\n            \"@type\": \"imageObject\",\\n            \"url\": \"https://framerusercontent.com/images/PQBUzeXTF5vKbciPwpvKHfTP23k.png\",\\n            \"width\": \"384\",\\n            \"height\": \"384\",\\n            \"caption\": \"ConvertCalculator Logo\"\\n        },\\n        \"sameAs\": [      \\n            \"https://twitter.com/convertcalc\",\\n            \"https://www.linkedin.com/company/convertcalculator/\",\\n            \"https://www.youtube.com/@convertcalculator\"\\n        ],\\n        \"contactPoint\": { \\n            \"contactType\": \"Support\",\\n            \"email\": \"support@convertcalculator.co\",\\n            \"url\": \"https://www.convertcalculator.com/contact\"\\n        },\\n        \"address\": {\\n            \"@type\": \"PostalAddress\",\\n            \"streetAddress\": \"Hoeveneind 60\",\\n            \"addressLocality\": \"Teteringen\",\\n            \"addressRegion\": \"Noord-Brabant\",\\n            \"postalCode\": \"4847 NG\",\\n            \"addressCountry\": \"The Netherlands\"\\n        }\\n    }\\n</script>\\n\\n<script>\\n    !function(t,e){var o,n,p,r;e.__SV||(window.posthog=e,e._i=[],e.init=function(i,s,a){function g(t,e){var o=e.split(\".\");2==o.length&&(t=t[o[0]],e=o[1]),t[e]=function(){t.push([e].concat(Array.prototype.slice.call(arguments,0)))}}(p=t.createElement(\"script\")).type=\"text/javascript\",p.crossOrigin=\"anonymous\",p.async=!0,p.src=s.api_host.replace(\".i.posthog.com\",\"-assets.i.posthog.com\")+\"/static/array.js\",(r=t.getElementsByTagName(\"script\")[0]).parentNode.insertBefore(p,r);var u=e;for(void 0!==a?u=e[a]=[]:a=\"posthog\",u.people=u.people||[],u.toString=function(t){var e=\"posthog\";return\"posthog\"!==a&&(e+=\".\"+a),t||(e+=\" (stub)\"),e},u.people.toString=function(){return u.toString(1)+\".people (stub)\"},o=\"init capture register register_once register_for_session unregister unregister_for_session getFeatureFlag getFeatureFlagPayload isFeatureEnabled reloadFeatureFlags updateEarlyAccessFeatureEnrollment getEarlyAccessFeatures on onFeatureFlags onSessionId getSurveys getActiveMatchingSurveys renderSurvey canRenderSurvey getNextSurveyStep identify setPersonProperties group resetGroups setPersonPropertiesForFlags resetPersonPropertiesForFlags setGroupPropertiesForFlags resetGroupPropertiesForFlags reset get_distinct_id getGroups get_session_id get_session_replay_url alias set_config startSessionRecording stopSessionRecording sessionRecordingStarted captureException loadToolbar get_property getSessionProperty createPersonProfile opt_in_capturing opt_out_capturing has_opted_in_capturing has_opted_out_capturing clear_opt_in_out_capturing debug\".split(\" \"),n=0;n<o.length;n++)g(u,o[n]);e._i.push([i,s,a])},e.__SV=1)}(document,window.posthog||[]);\\n    posthog.init(\\'phc_av36ZWjuyEHBaog1j353UL9iqp7XsXz8jJ2v3J0mpAq\\', {\\n        api_host:\\'https://eu.i.posthog.com\\',\\n        person_profiles: \\'always\\'\\n    })\\n</script>\\n<!-- Google tag (gtag.js) -->\\n<script async=\"\" src=\"https://www.googletagmanager.com/gtag/js?id=AW-722472359\"></script>\\n<script>\\n  window.dataLayer = window.dataLayer || [];\\n  function gtag(){dataLayer.push(arguments);}\\n  gtag(\\'js\\', new Date());\\n  gtag(\\'config\\', \\'AW-722472359\\');\\n</script>\\n<script>console.log(\\'If you see this, its not a caching\\')</script>',description:\"Start building the future of your company, today. Create powerful on brand calculators, lead generation forms and apps that automate your marketing and sales processes.\",favicon:\"https://framerusercontent.com/assets/PQBUzeXTF5vKbciPwpvKHfTP23k.png\",robots:\"max-image-preview:large\",socialImage:\"https://framerusercontent.com/assets/53BJEwtVKqxmAGQl2fbToayuE.jpg\",title:\"Create no-code interactive marketing and sales content\"};}export const metadataVersion=1;\nexport const __FramerMetadata__ = {\"exports\":{\"metadataVersion\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],
  "mappings": "AACe,SAARA,EAA0BC,EAAOC,EAAa,CAAC,MAAM,CAAC,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,YAAu+H,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qEAA2mR,YAAY,2KAA2K,QAAQ,uEAAuE,OAAO,0BAA0B,YAAY,qEAAqE,MAAM,wDAAwD,CAAE",
  "names": ["metadata", "params", "activeLocale"]
}
