{"version":3,"sources":["jsdelivr-header.js","/npm/@analytics/mixpanel@0.4.0/lib/analytics-plugin-mixpanel.browser.cjs.js"],"names":[],"mappings":"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","file":"/npm/@analytics/mixpanel@0.4.0/lib/analytics-plugin-mixpanel.browser.cjs.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.37.0.\n * Original file: /npm/@analytics/mixpanel@0.4.0/lib/analytics-plugin-mixpanel.browser.cjs.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","'use strict';\n\nfunction _defineProperty(obj, key, value) {\n  if (key in obj) {\n    Object.defineProperty(obj, key, {\n      value: value,\n      enumerable: true,\n      configurable: true,\n      writable: true\n    });\n  } else {\n    obj[key] = value;\n  }\n\n  return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n  var keys = Object.keys(object);\n\n  if (Object.getOwnPropertySymbols) {\n    var symbols = Object.getOwnPropertySymbols(object);\n    if (enumerableOnly) symbols = symbols.filter(function (sym) {\n      return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n    });\n    keys.push.apply(keys, symbols);\n  }\n\n  return keys;\n}\n\nfunction _objectSpread2(target) {\n  for (var i = 1; i < arguments.length; i++) {\n    var source = arguments[i] != null ? arguments[i] : {};\n\n    if (i % 2) {\n      ownKeys(source, true).forEach(function (key) {\n        _defineProperty(target, key, source[key]);\n      });\n    } else if (Object.getOwnPropertyDescriptors) {\n      Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n    } else {\n      ownKeys(source).forEach(function (key) {\n        Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n      });\n    }\n  }\n\n  return target;\n}\n\nfunction mixpanelPlugin$1() {\n  var pluginConfig = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n  return {\n    name: \"mixpanel\",\n    config: pluginConfig,\n\n    /* https://developer.mixpanel.com/docs/javascript-full-api-reference#mixpanelinit */\n    initialize: function initialize(_ref) {\n      var config = _ref.config;\n      var token = config.token,\n          customScriptSrc = config.customScriptSrc,\n          _config$options = config.options,\n          options = _config$options === void 0 ? {} : _config$options;\n\n      if (!token) {\n        throw new Error(\"No mixpanel token defined\");\n      } // NoOp if mixpanel already loaded by external source or already loaded\n\n\n      if (typeof window.mixpanel !== \"undefined\") {\n        return;\n      } // Load mixpanel library\n\n\n      (function (c, a) {\n        if (!a.__SV) {\n          var b = window;\n\n          try {\n            var d,\n                m,\n                j,\n                k = b.location,\n                f = k.hash;\n\n            d = function d(a, b) {\n              return (m = a.match(RegExp(b + \"=([^&]*)\"))) ? m[1] : null;\n            };\n\n            f && d(f, \"state\") && (j = JSON.parse(decodeURIComponent(d(f, \"state\"))), \"mpeditor\" === j.action && (b.sessionStorage.setItem(\"_mpcehash\", f), history.replaceState(j.desiredHash || \"\", c.title, k.pathname + k.search)));\n          } catch (n) {}\n\n          var l, h;\n          window.mixpanel = a;\n          a._i = [];\n\n          a.init = function (b, d, g) {\n            function c(b, i) {\n              var a = i.split(\".\");\n              2 == a.length && (b = b[a[0]], i = a[1]);\n\n              b[i] = function () {\n                b.push([i].concat(Array.prototype.slice.call(arguments, 0)));\n              };\n            }\n\n            var e = a;\n            \"undefined\" !== typeof g ? e = a[g] = [] : g = \"mixpanel\";\n            e.people = e.people || [];\n\n            e.toString = function (b) {\n              var a = \"mixpanel\";\n              \"mixpanel\" !== g && (a += \".\" + g);\n              b || (a += \" (stub)\");\n              return a;\n            };\n\n            e.people.toString = function () {\n              return e.toString(1) + \".people (stub)\";\n            };\n\n            l = \"disable time_event track track_pageview track_links track_forms track_with_groups add_group set_group remove_group register register_once alias unregister identify name_tag set_config reset opt_in_tracking opt_out_tracking has_opted_in_tracking has_opted_out_tracking clear_opt_in_out_tracking people.set people.set_once people.unset people.increment people.append people.union people.track_charge people.clear_charges people.delete_user people.remove\".split(\" \");\n\n            for (h = 0; h < l.length; h++) {\n              c(e, l[h]);\n            }\n\n            var f = \"set set_once union unset remove delete\".split(\" \");\n\n            e.get_group = function () {\n              function a(c) {\n                b[c] = function () {\n                  call2_args = arguments;\n                  call2 = [c].concat(Array.prototype.slice.call(call2_args, 0));\n                  e.push([d, call2]);\n                };\n              }\n\n              for (var b = {}, d = [\"get_group\"].concat(Array.prototype.slice.call(arguments, 0)), c = 0; c < f.length; c++) {\n                a(f[c]);\n              }\n\n              return b;\n            };\n\n            a._i.push([b, d, g]);\n          };\n\n          a.__SV = 1.2;\n          b = c.createElement(\"script\");\n          b.type = \"text/javascript\";\n          b.async = !0;\n          b.src = customScriptSrc ? customScriptSrc : \"undefined\" !== typeof MIXPANEL_CUSTOM_LIB_URL ? MIXPANEL_CUSTOM_LIB_URL : \"file:\" === c.location.protocol && \"//cdn.mxpnl.com/libs/mixpanel-2-latest.min.js\".match(/^\\/\\//) ? \"https://cdn.mxpnl.com/libs/mixpanel-2-latest.min.js\" : \"//cdn.mxpnl.com/libs/mixpanel-2-latest.min.js\";\n          d = c.getElementsByTagName(\"script\")[0];\n          d.parentNode.insertBefore(b, d);\n        }\n      })(document, window.mixpanel || []);\n\n      mixpanel.init(config.token, _objectSpread2({\n        batch_requests: true\n      }, options));\n    },\n\n    /**\n     * Identify a visitor in mixpanel\n     * @link https://developer.mixpanel.com/docs/javascript-full-api-reference#mixpanelidentify\n     *\n     * Mixpanel doesn't allow to set properties directly in identify, so mixpanel.people.set is\n     * also called if properties are passed\n     */\n    identify: function identify(_ref2) {\n      var payload = _ref2.payload;\n      var userId = payload.userId,\n          traits = payload.traits;\n\n      if (typeof userId === \"string\") {\n        mixpanel.identify(userId);\n      }\n\n      if (traits) {\n        mixpanel.people.set(traits);\n      }\n    },\n\n    /**\n     * Mixpanel doesn't have a \"page\" function, so we are using the track method by sending\n     * the path as tracked event and search parameters as properties\n     */\n    page: function page(_ref3) {\n      var payload = _ref3.payload;\n      mixpanel.track(pluginConfig.pageEvent || payload.properties.path, payload.properties);\n    },\n\n    /* https://developer.mixpanel.com/docs/javascript-full-api-reference#mixpaneltrack */\n    track: function track(_ref4) {\n      var payload = _ref4.payload;\n      mixpanel.track(payload.event, payload.properties);\n    },\n    loaded: function loaded() {\n      return !!window.mixpanel;\n    },\n\n    /* Clears super properties and generates a new random distinct_id for this instance. Useful for clearing data when a user logs out. */\n    reset: function reset() {\n      mixpanel.reset();\n    },\n\n    /* Custom methods to add .alias call */\n    methods: {\n      /**\n       * The alias method creates an alias which Mixpanel will use to remap one id to another. Multiple aliases can point to the same identifier.\n       * @link https://developer.mixpanel.com/docs/javascript-full-api-reference#mixpanelalias\n       *\n       * @param  {string} [alias] - A unique identifier that you want to use for this user in the future.\n       * @param  {string} [original] - The current identifier being used for this user.\n       */\n      alias: function alias(_alias, original) {\n        mixpanel.alias(_alias, original);\n      }\n    }\n  };\n}\n\n/* This module will shake out unused code and work in browser and node 🎉 */\n\nvar index = mixpanelPlugin$1;\n\nmodule.exports = index;\n"]}