{
  "version": 3,
  "sources": ["../../../../../node_modules/lodash-es/_isKey.js", "../../../../../node_modules/lodash-es/_memoizeCapped.js", "../../../../../node_modules/lodash-es/_stringToPath.js", "../../../../../node_modules/lodash-es/_castPath.js", "../../../../../node_modules/lodash-es/last.js", "../../../../../node_modules/lodash-es/_toKey.js", "../../../../../node_modules/lodash-es/_baseGet.js", "../../../../../node_modules/lodash-es/_parent.js", "../../../../../node_modules/lodash-es/_baseUnset.js", "../../../../../node_modules/lodash-es/_customOmitClone.js", "../../../../../node_modules/lodash-es/flatten.js", "../../../../../node_modules/lodash-es/_flatRest.js", "../../../../../node_modules/lodash-es/omit.js", "../../../../../node_modules/@snapchat/parse-domain/src/location.ts"],
  "sourcesContent": ["import isArray from './isArray.js';\nimport isSymbol from './isSymbol.js';\n\n/** Used to match property names within property paths. */\nvar reIsDeepProp = /\\.|\\[(?:[^[\\]]*|([\"'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/,\n    reIsPlainProp = /^\\w*$/;\n\n/**\n * Checks if `value` is a property name and not a property path.\n *\n * @private\n * @param {*} value The value to check.\n * @param {Object} [object] The object to query keys on.\n * @returns {boolean} Returns `true` if `value` is a property name, else `false`.\n */\nfunction isKey(value, object) {\n  if (isArray(value)) {\n    return false;\n  }\n  var type = typeof value;\n  if (type == 'number' || type == 'symbol' || type == 'boolean' ||\n      value == null || isSymbol(value)) {\n    return true;\n  }\n  return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||\n    (object != null && value in Object(object));\n}\n\nexport default isKey;\n", "import memoize from './memoize.js';\n\n/** Used as the maximum memoize cache size. */\nvar MAX_MEMOIZE_SIZE = 500;\n\n/**\n * A specialized version of `_.memoize` which clears the memoized function's\n * cache when it exceeds `MAX_MEMOIZE_SIZE`.\n *\n * @private\n * @param {Function} func The function to have its output memoized.\n * @returns {Function} Returns the new memoized function.\n */\nfunction memoizeCapped(func) {\n  var result = memoize(func, function(key) {\n    if (cache.size === MAX_MEMOIZE_SIZE) {\n      cache.clear();\n    }\n    return key;\n  });\n\n  var cache = result.cache;\n  return result;\n}\n\nexport default memoizeCapped;\n", "import memoizeCapped from './_memoizeCapped.js';\n\n/** Used to match property names within property paths. */\nvar rePropName = /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g;\n\n/** Used to match backslashes in property paths. */\nvar reEscapeChar = /\\\\(\\\\)?/g;\n\n/**\n * Converts `string` to a property path array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the property path array.\n */\nvar stringToPath = memoizeCapped(function(string) {\n  var result = [];\n  if (string.charCodeAt(0) === 46 /* . */) {\n    result.push('');\n  }\n  string.replace(rePropName, function(match, number, quote, subString) {\n    result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match));\n  });\n  return result;\n});\n\nexport default stringToPath;\n", "import isArray from './isArray.js';\nimport isKey from './_isKey.js';\nimport stringToPath from './_stringToPath.js';\nimport toString from './toString.js';\n\n/**\n * Casts `value` to a path array if it's not one.\n *\n * @private\n * @param {*} value The value to inspect.\n * @param {Object} [object] The object to query keys on.\n * @returns {Array} Returns the cast property path array.\n */\nfunction castPath(value, object) {\n  if (isArray(value)) {\n    return value;\n  }\n  return isKey(value, object) ? [value] : stringToPath(toString(value));\n}\n\nexport default castPath;\n", "/**\n * Gets the last element of `array`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to query.\n * @returns {*} Returns the last element of `array`.\n * @example\n *\n * _.last([1, 2, 3]);\n * // => 3\n */\nfunction last(array) {\n  var length = array == null ? 0 : array.length;\n  return length ? array[length - 1] : undefined;\n}\n\nexport default last;\n", "import isSymbol from './isSymbol.js';\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/**\n * Converts `value` to a string key if it's not a string or symbol.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {string|symbol} Returns the key.\n */\nfunction toKey(value) {\n  if (typeof value == 'string' || isSymbol(value)) {\n    return value;\n  }\n  var result = (value + '');\n  return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\nexport default toKey;\n", "import castPath from './_castPath.js';\nimport toKey from './_toKey.js';\n\n/**\n * The base implementation of `_.get` without support for default values.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @returns {*} Returns the resolved value.\n */\nfunction baseGet(object, path) {\n  path = castPath(path, object);\n\n  var index = 0,\n      length = path.length;\n\n  while (object != null && index < length) {\n    object = object[toKey(path[index++])];\n  }\n  return (index && index == length) ? object : undefined;\n}\n\nexport default baseGet;\n", "import baseGet from './_baseGet.js';\nimport baseSlice from './_baseSlice.js';\n\n/**\n * Gets the parent value at `path` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array} path The path to get the parent value of.\n * @returns {*} Returns the parent value.\n */\nfunction parent(object, path) {\n  return path.length < 2 ? object : baseGet(object, baseSlice(path, 0, -1));\n}\n\nexport default parent;\n", "import castPath from './_castPath.js';\nimport last from './last.js';\nimport parent from './_parent.js';\nimport toKey from './_toKey.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.unset`.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {Array|string} path The property path to unset.\n * @returns {boolean} Returns `true` if the property is deleted, else `false`.\n */\nfunction baseUnset(object, path) {\n  path = castPath(path, object);\n\n  // Prevent prototype pollution, see: https://github.com/lodash/lodash/security/advisories/GHSA-xxjr-mmjv-4gpg\n  var index = -1,\n      length = path.length;\n\n  if (!length) {\n    return true;\n  }\n\n  var isRootPrimitive = object == null || (typeof object !== 'object' && typeof object !== 'function');\n\n  while (++index < length) {\n    var key = path[index];\n\n    // skip non-string keys (e.g., Symbols, numbers)\n    if (typeof key !== 'string') {\n      continue;\n    }\n\n    // Always block \"__proto__\" anywhere in the path if it's not expected\n    if (key === '__proto__' && !hasOwnProperty.call(object, '__proto__')) {\n      return false;\n    }\n\n    // Block \"constructor.prototype\" chains\n    if (key === 'constructor' &&\n        (index + 1) < length &&\n        typeof path[index + 1] === 'string' &&\n        path[index + 1] === 'prototype') {\n\n      // Allow ONLY when the path starts at a primitive root, e.g., _.unset(0, 'constructor.prototype.a')\n      if (isRootPrimitive && index === 0) {\n        continue;\n      }\n\n      return false;\n    }\n  }\n\n  var obj = parent(object, path);\n  return obj == null || delete obj[toKey(last(path))];\n}\n\nexport default baseUnset;\n", "import isPlainObject from './isPlainObject.js';\n\n/**\n * Used by `_.omit` to customize its `_.cloneDeep` use to only clone plain\n * objects.\n *\n * @private\n * @param {*} value The value to inspect.\n * @param {string} key The key of the property to inspect.\n * @returns {*} Returns the uncloned value or `undefined` to defer cloning to `_.cloneDeep`.\n */\nfunction customOmitClone(value) {\n  return isPlainObject(value) ? undefined : value;\n}\n\nexport default customOmitClone;\n", "import baseFlatten from './_baseFlatten.js';\n\n/**\n * Flattens `array` a single level deep.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to flatten.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * _.flatten([1, [2, [3, [4]], 5]]);\n * // => [1, 2, [3, [4]], 5]\n */\nfunction flatten(array) {\n  var length = array == null ? 0 : array.length;\n  return length ? baseFlatten(array, 1) : [];\n}\n\nexport default flatten;\n", "import flatten from './flatten.js';\nimport overRest from './_overRest.js';\nimport setToString from './_setToString.js';\n\n/**\n * A specialized version of `baseRest` which flattens the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @returns {Function} Returns the new function.\n */\nfunction flatRest(func) {\n  return setToString(overRest(func, undefined, flatten), func + '');\n}\n\nexport default flatRest;\n", "import arrayMap from './_arrayMap.js';\nimport baseClone from './_baseClone.js';\nimport baseUnset from './_baseUnset.js';\nimport castPath from './_castPath.js';\nimport copyObject from './_copyObject.js';\nimport customOmitClone from './_customOmitClone.js';\nimport flatRest from './_flatRest.js';\nimport getAllKeysIn from './_getAllKeysIn.js';\n\n/** Used to compose bitmasks for cloning. */\nvar CLONE_DEEP_FLAG = 1,\n    CLONE_FLAT_FLAG = 2,\n    CLONE_SYMBOLS_FLAG = 4;\n\n/**\n * The opposite of `_.pick`; this method creates an object composed of the\n * own and inherited enumerable property paths of `object` that are not omitted.\n *\n * **Note:** This method is considerably slower than `_.pick`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The source object.\n * @param {...(string|string[])} [paths] The property paths to omit.\n * @returns {Object} Returns the new object.\n * @example\n *\n * var object = { 'a': 1, 'b': '2', 'c': 3 };\n *\n * _.omit(object, ['a', 'c']);\n * // => { 'b': '2' }\n */\nvar omit = flatRest(function(object, paths) {\n  var result = {};\n  if (object == null) {\n    return result;\n  }\n  var isDeep = false;\n  paths = arrayMap(paths, function(path) {\n    path = castPath(path, object);\n    isDeep || (isDeep = path.length > 1);\n    return path;\n  });\n  copyObject(object, getAllKeysIn(object), result);\n  if (isDeep) {\n    result = baseClone(result, CLONE_DEEP_FLAG | CLONE_FLAT_FLAG | CLONE_SYMBOLS_FLAG, customOmitClone);\n  }\n  var length = paths.length;\n  while (length--) {\n    baseUnset(result, paths[length]);\n  }\n  return result;\n});\n\nexport default omit;\n", "/**\n * TLDs that Snap can register domains on.\n *\n * We need to support anything in certifier: https://certifier.sc-corp.net/request/dns?select=create\n *\n * We ran into size issues importing all of possible TLDs from\n * https://github.com/thom4parisot/tld.js or https://www.npmjs.com/package/parse-domain both of\n * which use https://publicsuffix.org/list/public_suffix_list.dat which is HUGE. For practical\n * reasons we only need to account for the domains that Snap is likely to purchase, which would in\n * all likelyhood be a subset of where Google is.\n */\nconst topLevelDomains = [\n  // Origin top level domains.\n  // https://en.wikipedia.org/wiki/List_of_Internet_top-level_domains#Original_top-level_domains.\n  'com',\n  'net',\n  'org',\n  'int',\n  'mil',\n  'edu',\n  'gov',\n\n  // Domains from Certifier\n  // https://certifier.sc-corp.net/request/dns?select=create\n  'io',\n  'as',\n  'co',\n  'ly',\n  'ht',\n  'ar',\n  'co.uk',\n\n  // Domains from Google\n  'app', // For Cloud Run's *.run.app\n] as const;\n\n/** Returns the top level domain from a hostname. */\nexport const getTopLevelDomain = (hostname: string): string => {\n  const topLevelDomain = topLevelDomains.find(tld => hostname.endsWith(tld));\n  if (!topLevelDomain) return hostname; // Give up and return hostname.\n\n  const noTld = hostname.substring(0, hostname.length - topLevelDomain.length - 1);\n  const lastPeriod = noTld.lastIndexOf('.');\n  return lastPeriod > 0 ? `${hostname.substring(lastPeriod + 1)}` : hostname;\n};\n"],
  "mappings": "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",
  "names": ["init_isSymbol", "reIsDeepProp", "reIsPlainProp", "isKey", "value", "object", "isArray_default", "type", "isSymbol_default", "isKey_default", "init_memoize", "MAX_MEMOIZE_SIZE", "memoizeCapped", "func", "result", "memoize_default", "key", "cache", "memoizeCapped_default", "rePropName", "reEscapeChar", "stringToPath", "memoizeCapped_default", "string", "result", "match", "number", "quote", "subString", "stringToPath_default", "castPath", "value", "object", "isArray_default", "isKey_default", "stringToPath_default", "toString_default", "castPath_default", "last", "array", "length", "last_default", "init_isSymbol", "INFINITY", "toKey", "value", "isSymbol_default", "result", "toKey_default", "baseGet", "object", "path", "castPath_default", "index", "length", "toKey_default", "baseGet_default", "parent", "object", "path", "baseGet_default", "baseSlice_default", "parent_default", "objectProto", "hasOwnProperty", "baseUnset", "object", "path", "castPath_default", "index", "length", "isRootPrimitive", "key", "obj", "parent_default", "toKey_default", "last_default", "baseUnset_default", "customOmitClone", "value", "isPlainObject_default", "customOmitClone_default", "flatten", "array", "length", "baseFlatten_default", "flatten_default", "flatRest", "func", "setToString_default", "overRest_default", "flatten_default", "flatRest_default", "CLONE_DEEP_FLAG", "CLONE_FLAT_FLAG", "CLONE_SYMBOLS_FLAG", "omit", "flatRest_default", "object", "paths", "result", "isDeep", "arrayMap_default", "path", "castPath_default", "copyObject_default", "getAllKeysIn_default", "baseClone_default", "customOmitClone_default", "length", "baseUnset_default", "omit_default", "topLevelDomains", "getTopLevelDomain", "__name", "hostname", "topLevelDomain", "tld", "lastPeriod"]
}
