{"version":3,"file":"Intercom.BlkGiHCS.mjs","names":["log","isEmptyObject","removeUndefined","IntercomAPI","initialize","i","l","mapMessengerAttributesToRawMessengerAttributes","mapDataAttributesCompanyToRawDataAttributesCompany","mapDataAttributesAvatarToRawDataAttributesAvatar","mapDataAttributesToRawDataAttributes","mapIntercomPropsToRawIntercomProps","IntercomProvider","useRef","useCallback","useMemo","createElement"],"sources":["https:/framerusercontent.com/modules/8rFM07oYyTNY18wkNJ2K/xq566L19twfZfdUEg8od/react-use-intercom.js","https:/framer.com/m/framer/react-use-intercom.js@0.0.3","https:/framer.com/m/framer/integrations-styles.js@^0.2.0","https:/framerusercontent.com/modules/UIhUTcd796YH7Ndybys8/totj55n8qE3VYpdXhshW/Intercom.js"],"sourcesContent":["import { createContext, useRef, useCallback, useMemo, createElement, useContext } from 'react';\n\nfunction _extends() {\n  _extends = Object.assign || function (target) {\n    for (var i = 1; i < arguments.length; i++) {\n      var source = arguments[i];\n\n      for (var key in source) {\n        if (Object.prototype.hasOwnProperty.call(source, key)) {\n          target[key] = source[key];\n        }\n      }\n    }\n\n    return target;\n  };\n\n  return _extends.apply(this, arguments);\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n  if (source == null) return {};\n  var target = {};\n  var sourceKeys = Object.keys(source);\n  var key, i;\n\n  for (i = 0; i < sourceKeys.length; i++) {\n    key = sourceKeys[i];\n    if (excluded.indexOf(key) >= 0) continue;\n    target[key] = source[key];\n  }\n\n  return target;\n}\n\n/**\r\n * Logs messages in the console with a corresponding urgency\r\n *\r\n * @param level the urgency of the message\r\n * @param message the message to log in the console\r\n */\nvar log = function log(level, message) {\n  if (process.env.NODE_ENV !== \"production\") {\n    var packageName = '[react-use-intercom]';\n\n    switch (level) {\n      case 'info':\n        console.log(packageName + \" \" + message);\n        break;\n\n      case 'warn':\n        console.warn(packageName + \" \" + message);\n        break;\n\n      case 'error':\n        console.error(packageName + \" \" + message);\n        break;\n\n      default:\n        console.log(packageName + \" \" + message);\n    }\n  }\n};\n\nvar isEmptyObject = function isEmptyObject(obj) {\n  return Object.keys(obj).length === 0 && obj.constructor === Object;\n};\nvar isSSR = typeof window === 'undefined';\n/**\r\n * Removes object entries where the value equals to `undefined`\r\n *\r\n * @param obj\r\n */\n\nvar removeUndefined = function removeUndefined(obj) {\n  Object.keys(obj).forEach(function (key) {\n    if (obj[key] && typeof obj[key] === 'object') removeUndefined(obj[key]);else if (obj[key] === undefined) delete obj[key];\n  });\n  return obj;\n};\n\n/**\r\n * Safely exposes `window.Intercom` and passes the arguments to the instance\r\n *\r\n * @param method method passed to the `window.Intercom` instance\r\n * @param args arguments passed to the `window.Intercom` instance\r\n *\r\n * @see {@link https://developers.intercom.com/installing-intercom/docs/intercom-javascript}\r\n */\n\nvar IntercomAPI = function IntercomAPI(method) {\n  if (!isSSR && window.Intercom) {\n    for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n      args[_key - 1] = arguments[_key];\n    }\n\n    return window.Intercom.apply(null, [method].concat(args));\n  } else {\n    log('error', method + \" Intercom instance is not initalized yet\");\n  }\n};\n\nvar NO_INTERCOM_PROVIDER_MESSAGE = 'Please wrap your component with `IntercomProvider`.';\nvar IntercomContext = /*#__PURE__*/createContext({\n  boot: function boot() {\n    return log('error', NO_INTERCOM_PROVIDER_MESSAGE);\n  },\n  shutdown: function shutdown() {\n    return log('error', NO_INTERCOM_PROVIDER_MESSAGE);\n  },\n  hardShutdown: function hardShutdown() {\n    return log('error', NO_INTERCOM_PROVIDER_MESSAGE);\n  },\n  update: function update() {\n    return log('error', NO_INTERCOM_PROVIDER_MESSAGE);\n  },\n  hide: function hide() {\n    return log('error', NO_INTERCOM_PROVIDER_MESSAGE);\n  },\n  show: function show() {\n    return log('error', NO_INTERCOM_PROVIDER_MESSAGE);\n  },\n  showMessages: function showMessages() {\n    return log('error', NO_INTERCOM_PROVIDER_MESSAGE);\n  },\n  showNewMessages: function showNewMessages() {\n    return log('error', NO_INTERCOM_PROVIDER_MESSAGE);\n  },\n  getVisitorId: function getVisitorId() {\n    log('error', NO_INTERCOM_PROVIDER_MESSAGE);\n    return '';\n  },\n  startTour: function startTour() {\n    return log('error', NO_INTERCOM_PROVIDER_MESSAGE);\n  },\n  trackEvent: function trackEvent() {\n    return log('error', NO_INTERCOM_PROVIDER_MESSAGE);\n  }\n});\n\n// @ts-nocheck\n\n/**\r\n * Snippet to initialize the Intercom instance\r\n *\r\n * @param appId - Intercom app id\r\n * @param [timeout=0] - Amount of milliseconds that the initialization should be delayed, defaults to 0\r\n *\r\n * @see {@link https://developers.intercom.com/installing-intercom/docs/basic-javascript}\r\n */\nvar initialize = function initialize(appId, timeout) {\n  if (timeout === void 0) {\n    timeout = 0;\n  }\n\n  var w = window;\n  var ic = w.Intercom;\n\n  if (typeof ic === 'function') {\n    ic('reattach_activator');\n    ic('update', w.intercomSettings);\n  } else {\n    var d = document;\n\n    var i = function i() {\n      i.c(arguments);\n    };\n\n    i.q = [];\n\n    i.c = function (args) {\n      i.q.push(args);\n    };\n\n    w.Intercom = i;\n\n    var l = function l() {\n      setTimeout(function () {\n        var s = d.createElement('script');\n        s.type = 'text/javascript';\n        s.async = true;\n        s.src = 'https://widget.intercom.io/widget/' + appId;\n        var x = d.getElementsByTagName('script')[0];\n        x.parentNode.insertBefore(s, x);\n      }, timeout);\n    };\n\n    if (document.readyState === 'complete') {\n      l();\n    } else if (w.attachEvent) {\n      w.attachEvent('onload', l);\n    } else {\n      w.addEventListener('load', l, false);\n    }\n  }\n};\n\nvar mapMessengerAttributesToRawMessengerAttributes = function mapMessengerAttributesToRawMessengerAttributes(attributes) {\n  return {\n    custom_launcher_selector: attributes.customLauncherSelector,\n    alignment: attributes.alignment,\n    vertical_padding: attributes.verticalPadding,\n    horizontal_padding: attributes.horizontalPadding,\n    hide_default_launcher: attributes.hideDefaultLauncher,\n    session_duration: attributes.sessionDuration,\n    action_color: attributes.actionColor,\n    background_color: attributes.backgroundColor\n  };\n};\n\nvar mapDataAttributesCompanyToRawDataAttributesCompany = function mapDataAttributesCompanyToRawDataAttributesCompany(attributes) {\n  return _extends({\n    company_id: attributes.companyId,\n    name: attributes.name,\n    created_at: attributes.createdAt,\n    plan: attributes.plan,\n    monthly_spend: attributes.monthlySpend,\n    user_count: attributes.userCount,\n    size: attributes.size,\n    website: attributes.website,\n    industry: attributes.industry\n  }, attributes.customAttributes);\n};\n\nvar mapDataAttributesAvatarToRawDataAttributesAvatar = function mapDataAttributesAvatarToRawDataAttributesAvatar(attributes) {\n  return {\n    type: attributes.type,\n    image_url: attributes.imageUrl\n  };\n};\n\nvar mapDataAttributesToRawDataAttributes = function mapDataAttributesToRawDataAttributes(attributes) {\n  var _attributes$companies;\n\n  return _extends({\n    email: attributes.email,\n    user_id: attributes.userId,\n    created_at: attributes.createdAt,\n    name: attributes.name,\n    phone: attributes.phone,\n    last_request_at: attributes.lastRequestAt,\n    unsubscribed_from_emails: attributes.unsubscribedFromEmails,\n    language_override: attributes.languageOverride,\n    utm_campaign: attributes.utmCampaign,\n    utm_content: attributes.utmContent,\n    utm_medium: attributes.utmMedium,\n    utm_source: attributes.utmSource,\n    utm_term: attributes.utmTerm,\n    avatar: attributes.avatar && mapDataAttributesAvatarToRawDataAttributesAvatar(attributes.avatar),\n    user_hash: attributes.userHash,\n    company: attributes.company && mapDataAttributesCompanyToRawDataAttributesCompany(attributes.company),\n    companies: (_attributes$companies = attributes.companies) == null ? void 0 : _attributes$companies.map(mapDataAttributesCompanyToRawDataAttributesCompany)\n  }, attributes.customAttributes);\n};\nvar mapIntercomPropsToRawIntercomProps = function mapIntercomPropsToRawIntercomProps(props) {\n  return removeUndefined(_extends({}, mapMessengerAttributesToRawMessengerAttributes(props), mapDataAttributesToRawDataAttributes(props)));\n};\n\nvar IntercomProvider = function IntercomProvider(_ref) {\n  var appId = _ref.appId,\n      _ref$autoBoot = _ref.autoBoot,\n      autoBoot = _ref$autoBoot === void 0 ? false : _ref$autoBoot,\n      autoBootProps = _ref.autoBootProps,\n      children = _ref.children,\n      onHide = _ref.onHide,\n      onShow = _ref.onShow,\n      onUnreadCountChange = _ref.onUnreadCountChange,\n      _ref$shouldInitialize = _ref.shouldInitialize,\n      shouldInitialize = _ref$shouldInitialize === void 0 ? !isSSR : _ref$shouldInitialize,\n      apiBase = _ref.apiBase,\n      initializeDelay = _ref.initializeDelay,\n      rest = _objectWithoutPropertiesLoose(_ref, [\"appId\", \"autoBoot\", \"autoBootProps\", \"children\", \"onHide\", \"onShow\", \"onUnreadCountChange\", \"shouldInitialize\", \"apiBase\", \"initializeDelay\"]);\n\n  var isBooted = useRef(false);\n  var isInitialized = useRef(false);\n  if (!isEmptyObject(rest) && process.env.NODE_ENV !== \"production\") log('error', ['some invalid props were passed to IntercomProvider. ', \"Please check following props: \" + Object.keys(rest).join(', ') + \".\"].join(''));\n  var boot = useCallback(function (props) {\n    if (!window.Intercom && !shouldInitialize) {\n      log('warn', 'Intercom instance is not initialized because `shouldInitialize` is set to `false` in `IntercomProvider`');\n      return;\n    }\n\n    if (isBooted.current) {\n      return;\n    }\n\n    var metaData = _extends({\n      app_id: appId\n    }, apiBase && {\n      api_base: apiBase\n    }, props && mapIntercomPropsToRawIntercomProps(props));\n\n    window.intercomSettings = metaData;\n    IntercomAPI('boot', metaData);\n    isBooted.current = true;\n  }, [apiBase, appId, shouldInitialize]);\n\n  if (!isSSR && shouldInitialize && !isInitialized.current) {\n    initialize(appId, initializeDelay); // attach listeners\n\n    if (onHide) IntercomAPI('onHide', onHide);\n    if (onShow) IntercomAPI('onShow', onShow);\n    if (onUnreadCountChange) IntercomAPI('onUnreadCountChange', onUnreadCountChange);\n\n    if (autoBoot) {\n      boot(autoBootProps);\n    }\n\n    isInitialized.current = true;\n  }\n\n  var ensureIntercom = useCallback(function (functionName, callback) {\n    if (functionName === void 0) {\n      functionName = 'A function';\n    }\n\n    if (!window.Intercom && !shouldInitialize) {\n      log('warn', 'Intercom instance is not initialized because `shouldInitialize` is set to `false` in `IntercomProvider`');\n      return;\n    }\n\n    if (!isBooted.current) {\n      log('warn', [\"'\" + functionName + \"' was called but Intercom has not booted yet. \", \"Please call 'boot' before calling '\" + functionName + \"' or \", \"set 'autoBoot' to true in the IntercomProvider.\"].join(''));\n      return;\n    }\n\n    return callback();\n  }, [shouldInitialize]);\n  var shutdown = useCallback(function () {\n    if (!isBooted.current) return;\n    IntercomAPI('shutdown');\n    isBooted.current = false;\n  }, []);\n  var hardShutdown = useCallback(function () {\n    if (!isBooted.current) return;\n    IntercomAPI('shutdown');\n    delete window.Intercom;\n    delete window.intercomSettings;\n    isBooted.current = false;\n  }, []);\n  var refresh = useCallback(function () {\n    ensureIntercom('update', function () {\n      var lastRequestedAt = new Date().getTime();\n      IntercomAPI('update', {\n        last_requested_at: lastRequestedAt\n      });\n    });\n  }, [ensureIntercom]);\n  var update = useCallback(function (props) {\n    ensureIntercom('update', function () {\n      if (!props) {\n        refresh();\n        return;\n      }\n\n      var rawProps = mapIntercomPropsToRawIntercomProps(props);\n      window.intercomSettings = _extends({}, window.intercomSettings, rawProps);\n      IntercomAPI('update', rawProps);\n    });\n  }, [ensureIntercom, refresh]);\n  var hide = useCallback(function () {\n    ensureIntercom('hide', function () {\n      IntercomAPI('hide');\n    });\n  }, [ensureIntercom]);\n  var show = useCallback(function () {\n    ensureIntercom('show', function () {\n      return IntercomAPI('show');\n    });\n  }, [ensureIntercom]);\n  var showMessages = useCallback(function () {\n    ensureIntercom('showMessages', function () {\n      IntercomAPI('showMessages');\n    });\n  }, [ensureIntercom]);\n  var showNewMessages = useCallback(function (message) {\n    ensureIntercom('showNewMessage', function () {\n      if (!message) {\n        IntercomAPI('showNewMessage');\n      } else {\n        IntercomAPI('showNewMessage', message);\n      }\n    });\n  }, [ensureIntercom]);\n  var getVisitorId = useCallback(function () {\n    return ensureIntercom('getVisitorId', function () {\n      return IntercomAPI('getVisitorId');\n    });\n  }, [ensureIntercom]);\n  var startTour = useCallback(function (tourId) {\n    ensureIntercom('startTour', function () {\n      IntercomAPI('startTour', tourId);\n    });\n  }, [ensureIntercom]);\n  var trackEvent = useCallback(function (event, metaData) {\n    ensureIntercom('trackEvent', function () {\n      if (metaData) {\n        IntercomAPI('trackEvent', event, metaData);\n      } else {\n        IntercomAPI('trackEvent', event);\n      }\n    });\n  }, [ensureIntercom]);\n  var providerValue = useMemo(function () {\n    return {\n      boot: boot,\n      shutdown: shutdown,\n      hardShutdown: hardShutdown,\n      update: update,\n      hide: hide,\n      show: show,\n      showMessages: showMessages,\n      showNewMessages: showNewMessages,\n      getVisitorId: getVisitorId,\n      startTour: startTour,\n      trackEvent: trackEvent\n    };\n  }, [boot, shutdown, hardShutdown, update, hide, show, showMessages, showNewMessages, getVisitorId, startTour, trackEvent]);\n  var content = useMemo(function () {\n    return children;\n  }, [children]);\n  return createElement(IntercomContext.Provider, {\n    value: providerValue\n  }, content);\n};\nvar useIntercomContext = function useIntercomContext() {\n  return useContext(IntercomContext);\n};\n\nvar useIntercom = function useIntercom() {\n  return useIntercomContext();\n};\n\nexport { IntercomProvider, useIntercom };\n//# sourceMappingURL=react-use-intercom.esm.js.map\n","/*\n * react-use-intercom (framer/react-use-intercom@0.0.3)\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/8rFM07oYyTNY18wkNJ2K/xq566L19twfZfdUEg8od/react-use-intercom.js\"\n","/*\n * styles (framer/integrations-styles@0.2.0)\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/ZORE1BBUY4n4vHC0WFDH/bnwaYkSw2e4q5eLH4jPK/styles.js\"\n","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{motion}from\"framer-motion\";import{IntercomProvider}from\"https://framer.com/m/framer/react-use-intercom.js@0.0.3\";import{neutralStateStyle,stateParagraphStyle,stateTitleStyle}from\"https://framer.com/m/framer/integrations-styles.js@^0.2.0\";/**\n * INTERCOM\n *\n * @framerIntrinsicWidth 200\n * @framerIntrinsicHeight 100\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */ export default function Intercom({appId,style,...props}){const isCanvas=RenderTarget.current()===RenderTarget.canvas;return isCanvas?/*#__PURE__*/ _jsxs(motion.div,{style:{...neutralStateStyle,...style},children:[/*#__PURE__*/ _jsx(\"h1\",{style:stateTitleStyle,children:\"Intercom\"}),/*#__PURE__*/ _jsx(\"p\",{style:stateParagraphStyle,children:\"Drop this component into a Screen to add Intercom.\"})]}):/*#__PURE__*/ _jsx(IntercomProvider,{autoBoot:true,appId:appId});};addPropertyControls(Intercom,{appId:{title:\"ID\",type:ControlType.String,description:\"Create an [Intercom](https://www.intercom.com/) account and copy your workspace ID. [Learn more…](https://www.framer.com/sites/integrations/intercom/)\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Intercom\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerIntrinsicHeight\":\"100\",\"framerIntrinsicWidth\":\"200\",\"framerSupportedLayoutWidth\":\"fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Intercom.map"],"mappings":"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"}