{"version":3,"sources":["webpack:///./node_modules/lodash/_listCacheHas.js","webpack:///./node_modules/lodash/isSymbol.js","webpack:///./node_modules/lodash/memoize.js","webpack:///./node_modules/lodash/_Hash.js","webpack:///./node_modules/lodash/_castPath.js","webpack:///./node_modules/lodash/_toKey.js","webpack:///./node_modules/lodash/_isKey.js","webpack:///./node_modules/lodash/_isKeyable.js","webpack:///./node_modules/lodash/_stringToPath.js","webpack:///./node_modules/lodash/_mapCacheSet.js","webpack:///./src/braintree/lib/docs-url-parser.js","webpack:///./node_modules/lodash/_hashDelete.js","webpack:///./node_modules/lodash/_memoizeCapped.js","webpack:///./node_modules/lodash/_mapCacheGet.js","webpack:///./node_modules/lodash/_hashSet.js","webpack:///./node_modules/lodash/_listCacheClear.js","webpack:///./node_modules/lodash/_getMapData.js","webpack:///./node_modules/lodash/_hashClear.js","webpack:///./src/compiled/braintree/templates/partials/footer/global_footer.hbs","webpack:///./node_modules/lodash/_ListCache.js","webpack:///./node_modules/lodash/_nativeCreate.js","webpack:///./node_modules/lodash/_listCacheSet.js","webpack:///./node_modules/lodash/_baseGet.js","webpack:///./node_modules/lodash/_listCacheDelete.js","webpack:///./node_modules/lodash/toString.js","webpack:///./node_modules/lodash/_MapCache.js","webpack:///./node_modules/lodash/_arrayMap.js","webpack:///./node_modules/lodash/_hashHas.js","webpack:///./node_modules/lodash/_mapCacheClear.js","webpack:///./src/compiled/braintree/templates/partials/sidebar.hbs","webpack:///./src/braintree/lib/shared/sdk-util.js","webpack:///./node_modules/lodash/_mapCacheDelete.js","webpack:///./node_modules/lodash/eq.js","webpack:///./node_modules/lodash/get.js","webpack:///./node_modules/lodash/_mapCacheHas.js","webpack:///./node_modules/lodash/_listCacheGet.js","webpack:///./src/components/product-layout/left-navigation/utils.js","webpack:///./src/components/product-layout/left-navigation/index.js","webpack:///./src/components/product-layout/right-navigation/index.js","webpack:///./src/components/hoc/withBTScriptLoader.js","webpack:///./src/components/product-layout/index.js","webpack:///./src/components/product-layout/Header/index.js","webpack:///./src/components/product-layout/Footer/index.js","webpack:///./node_modules/lodash/_hashGet.js","webpack:///./node_modules/lodash/_assocIndexOf.js","webpack:///./node_modules/lodash/_baseToString.js"],"names":["assocIndexOf","module","exports","key","this","__data__","baseGetTag","isObjectLike","value","MapCache","memoize","func","resolver","TypeError","memoized","args","arguments","apply","cache","has","get","result","set","Cache","hashClear","hashDelete","hashGet","hashHas","hashSet","Hash","entries","index","length","clear","entry","prototype","isArray","isKey","stringToPath","toString","object","isSymbol","reIsDeepProp","reIsPlainProp","type","test","Object","memoizeCapped","rePropName","reEscapeChar","string","charCodeAt","push","replace","match","number","quote","subString","getMapData","data","size","sdkUtil","require","url","pathSegments","contentPath","sdk","version","last","secondToLast","urlSegments","split","isSearchUrl","undefined","slice","pop","isValidSdk","join","nativeCreate","isKeyable","map","listCacheClear","listCacheDelete","listCacheGet","listCacheHas","listCacheSet","ListCache","getNative","castPath","toKey","path","splice","Array","call","baseToString","mapCacheClear","mapCacheDelete","mapCacheGet","mapCacheHas","mapCacheSet","array","iteratee","hasOwnProperty","Map","sdkData","isValidClientSdk","client","isValidServerSdk","server","getAllSdkNames","serverNames","keys","clientNames","concat","getServerSdkNames","getCurrentVersion","sdkInfo","defaultVersion","versions","getCurrentClientSdkIds","clientSdkInfo","sdkKey","getDefaultClientSdk","defaults","getDefaultServerSdk","getSdk","isValidLanguage","lang","languages","indexOf","other","baseGet","defaultValue","parse","hasClass","element","classname","from","classList","includes","addClass","add","removeClass","remove","selectActiveNav","_pathname","pathname","substr","pathObject","anchor","document","querySelector","activeElement","parent","parentElement","unselectActiveNav","firstElementChild","scrollIntoView","console","log","selectFirstMenuChild","event","target","parentNode","querySelectorAll","click","selectFirstSecMenuChild","onScroll","scrollTop","LeftNavigation","location","leftNav","withPrefix","currentNav","useMemo","obj","splitKey","BTConstant","check","i","ref_param","findBTLeftNav","handleBarCompiler","useApplicationContext","rawTemplate","useContentCompiler","sidenav","ifNotHidden","currentPath","content","loaded","useEffect","forEach","menu","addEventListener","menuSecondary","initLeftNav","removeEventListener","style","width","dangerouslySetInnerHTML","__html","RightNavigation","paths","components","product_header","context","useState","setContent","getContent","window","BTBaseLib","initializeSearchComponent","initHeader","clearHeader","product_footer","footerContent","setFooterContent","alignCenter","ARTICLES_PREFIX","DOC_PREFIX","getComponentFromConfig","config","react_component","Layout","hideLeftNav","hideRightNav","hideMenu","children","pageHeader","isProductPage","isArticles","setIsArticles","header","footer","left","page","showMobileMenu","setShowMobileMenu","elm","flex","right","lineHeight","fontSize","initProductLayout","layout","_isArticles","BTAnalyticsLib","loadAnalytics","Header","Footer","mainClassName","SEO","className","data-track-event-context","onClick","id","defaultProps","withBTScriptLoader","WrappendComponent","props","submitButton","braintree","dropin","create","authorization","container","paypal","flow","err","dropinInstance","on","removeAttribute","setAttribute","requestPaymentMethod","reqErr","eq","Symbol","arrayMap","symbolProto","symbolToString"],"mappings":"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","file":"425448dd77b7bc33f34a2a21d7d5f50dd6b90489-917ef05459eb85722cec.js","sourcesContent":["var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n}\n\nmodule.exports = listCacheHas;\n","var baseGetTag = require('./_baseGetTag'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && baseGetTag(value) == symbolTag);\n}\n\nmodule.exports = isSymbol;\n","var MapCache = require('./_MapCache');\n\n/** Error message constants. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/**\n * Creates a function that memoizes the result of `func`. If `resolver` is\n * provided, it determines the cache key for storing the result based on the\n * arguments provided to the memoized function. By default, the first argument\n * provided to the memoized function is used as the map cache key. The `func`\n * is invoked with the `this` binding of the memoized function.\n *\n * **Note:** The cache is exposed as the `cache` property on the memoized\n * function. Its creation may be customized by replacing the `_.memoize.Cache`\n * constructor with one whose instances implement the\n * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)\n * method interface of `clear`, `delete`, `get`, `has`, and `set`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to have its output memoized.\n * @param {Function} [resolver] The function to resolve the cache key.\n * @returns {Function} Returns the new memoized function.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n * var other = { 'c': 3, 'd': 4 };\n *\n * var values = _.memoize(_.values);\n * values(object);\n * // => [1, 2]\n *\n * values(other);\n * // => [3, 4]\n *\n * object.a = 2;\n * values(object);\n * // => [1, 2]\n *\n * // Modify the result cache.\n * values.cache.set(object, ['a', 'b']);\n * values(object);\n * // => ['a', 'b']\n *\n * // Replace `_.memoize.Cache`.\n * _.memoize.Cache = WeakMap;\n */\nfunction memoize(func, resolver) {\n if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n var memoized = function() {\n var args = arguments,\n key = resolver ? resolver.apply(this, args) : args[0],\n cache = memoized.cache;\n\n if (cache.has(key)) {\n return cache.get(key);\n }\n var result = func.apply(this, args);\n memoized.cache = cache.set(key, result) || cache;\n return result;\n };\n memoized.cache = new (memoize.Cache || MapCache);\n return memoized;\n}\n\n// Expose `MapCache`.\nmemoize.Cache = MapCache;\n\nmodule.exports = memoize;\n","var hashClear = require('./_hashClear'),\n hashDelete = require('./_hashDelete'),\n hashGet = require('./_hashGet'),\n hashHas = require('./_hashHas'),\n hashSet = require('./_hashSet');\n\n/**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Hash(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `Hash`.\nHash.prototype.clear = hashClear;\nHash.prototype['delete'] = hashDelete;\nHash.prototype.get = hashGet;\nHash.prototype.has = hashHas;\nHash.prototype.set = hashSet;\n\nmodule.exports = Hash;\n","var isArray = require('./isArray'),\n isKey = require('./_isKey'),\n stringToPath = require('./_stringToPath'),\n toString = require('./toString');\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\nmodule.exports = castPath;\n","var isSymbol = require('./isSymbol');\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\nmodule.exports = toKey;\n","var isArray = require('./isArray'),\n isSymbol = require('./isSymbol');\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\nmodule.exports = isKey;\n","/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\nmodule.exports = isKeyable;\n","var memoizeCapped = require('./_memoizeCapped');\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\nmodule.exports = stringToPath;\n","var getMapData = require('./_getMapData');\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n}\n\nmodule.exports = mapCacheSet;\n","'use strict';\n\nvar sdkUtil = require('./shared/sdk-util');\n\nfunction isSearchUrl(url) {\n var urlSegments = url.split('/');\n\n // handles /search and /lang+lang/search\n if (urlSegments[1] === 'search' || urlSegments[2] === 'search') {\n return true;\n }\n\n return false;\n}\n\nmodule.exports = function () {\n return function (url) {\n var pathSegments, contentPath, sdk, version, last, matchedVersion, secondToLast;\n\n if (url === '/' || isSearchUrl(url)) {\n return {\n contentPath: url,\n sdk: undefined,\n version: undefined\n };\n }\n\n if (url.slice(-1) === '/') {\n url = url.slice(0, url.length - 1);\n }\n\n pathSegments = url.split('/');\n last = pathSegments.pop();\n matchedVersion = last.match(/^v?(\\d+)$/);\n\n if (matchedVersion) {\n version = last;\n }\n if (!version) {\n // assign the full url to the content path in the case\n // that no sdk is present or the url is /lang\n if (!sdkUtil.isValidSdk(last) || pathSegments.length === 1) {\n contentPath = url;\n } else {\n contentPath = pathSegments.join('/');\n sdk = last;\n }\n } else {\n secondToLast = pathSegments.pop();\n\n if (!sdkUtil.isValidSdk(secondToLast)) {\n pathSegments.push(secondToLast);\n contentPath = pathSegments.join('/');\n version = undefined;\n } else {\n sdk = secondToLast;\n contentPath = pathSegments.join('/');\n }\n }\n\n return {\n contentPath: contentPath,\n sdk: sdk,\n version: version\n };\n };\n};\n","/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n}\n\nmodule.exports = hashDelete;\n","var memoize = require('./memoize');\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\nmodule.exports = memoizeCapped;\n","var getMapData = require('./_getMapData');\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return getMapData(this, key).get(key);\n}\n\nmodule.exports = mapCacheGet;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\nmodule.exports = hashSet;\n","/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n}\n\nmodule.exports = listCacheClear;\n","var isKeyable = require('./_isKeyable');\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\nmodule.exports = getMapData;\n","var nativeCreate = require('./_nativeCreate');\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n}\n\nmodule.exports = hashClear;\n","module.exports = \"\\n\"","var listCacheClear = require('./_listCacheClear'),\n listCacheDelete = require('./_listCacheDelete'),\n listCacheGet = require('./_listCacheGet'),\n listCacheHas = require('./_listCacheHas'),\n listCacheSet = require('./_listCacheSet');\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = listCacheClear;\nListCache.prototype['delete'] = listCacheDelete;\nListCache.prototype.get = listCacheGet;\nListCache.prototype.has = listCacheHas;\nListCache.prototype.set = listCacheSet;\n\nmodule.exports = ListCache;\n","var getNative = require('./_getNative');\n\n/* Built-in method references that are verified to be native. */\nvar nativeCreate = getNative(Object, 'create');\n\nmodule.exports = nativeCreate;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\nmodule.exports = listCacheSet;\n","var castPath = require('./_castPath'),\n toKey = require('./_toKey');\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\nmodule.exports = baseGet;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype;\n\n/** Built-in value references. */\nvar splice = arrayProto.splice;\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n}\n\nmodule.exports = listCacheDelete;\n","var baseToString = require('./_baseToString');\n\n/**\n * Converts `value` to a string. An empty string is returned for `null`\n * and `undefined` values. The sign of `-0` is preserved.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n * @example\n *\n * _.toString(null);\n * // => ''\n *\n * _.toString(-0);\n * // => '-0'\n *\n * _.toString([1, 2, 3]);\n * // => '1,2,3'\n */\nfunction toString(value) {\n return value == null ? '' : baseToString(value);\n}\n\nmodule.exports = toString;\n","var mapCacheClear = require('./_mapCacheClear'),\n mapCacheDelete = require('./_mapCacheDelete'),\n mapCacheGet = require('./_mapCacheGet'),\n mapCacheHas = require('./_mapCacheHas'),\n mapCacheSet = require('./_mapCacheSet');\n\n/**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction MapCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `MapCache`.\nMapCache.prototype.clear = mapCacheClear;\nMapCache.prototype['delete'] = mapCacheDelete;\nMapCache.prototype.get = mapCacheGet;\nMapCache.prototype.has = mapCacheHas;\nMapCache.prototype.set = mapCacheSet;\n\nmodule.exports = MapCache;\n","/**\n * A specialized version of `_.map` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n */\nfunction arrayMap(array, iteratee) {\n var index = -1,\n length = array == null ? 0 : array.length,\n result = Array(length);\n\n while (++index < length) {\n result[index] = iteratee(array[index], index, array);\n }\n return result;\n}\n\nmodule.exports = arrayMap;\n","var nativeCreate = require('./_nativeCreate');\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 * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n}\n\nmodule.exports = hashHas;\n","var Hash = require('./_Hash'),\n ListCache = require('./_ListCache'),\n Map = require('./_Map');\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n this.size = 0;\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n}\n\nmodule.exports = mapCacheClear;\n","module.exports = \"\\n\"","'use strict';\n\nvar sdkData = require('../../config/sdks.json');\n\nfunction getAllSdkNames() {\n var serverNames = Object.keys(sdkData.server);\n var clientNames = Object.keys(sdkData.client);\n\n return serverNames.concat(clientNames);\n}\n\nfunction getServerSdkNames() {\n return Object.keys(sdkData.server);\n}\n\nfunction getSdk(sdk) {\n return sdkData.server[sdk] || sdkData.client[sdk];\n}\n\nfunction getCurrentVersion(sdk) {\n var sdkInfo = sdkData.server[sdk] || sdkData.client[sdk];\n\n if (sdkInfo.defaultVersion) {\n return sdkInfo.defaultVersion;\n }\n\n if (sdkInfo.versions) {\n return sdkInfo.versions[sdkInfo.versions.length - 1];\n }\n\n return null;\n}\n\nfunction getCurrentClientSdkIds() {\n var version;\n var clientSdkInfo = sdkData.client;\n\n return Object.keys(clientSdkInfo).map(function (sdkKey) {\n version = clientSdkInfo[sdkKey].defaultVersion ? clientSdkInfo[sdkKey].defaultVersion : clientSdkInfo[sdkKey].versions.slice(-1);\n\n return '/' + sdkKey + '/v' + version;\n });\n}\n\nfunction getDefaultClientSdk() {\n return sdkData.defaults.client;\n}\n\nfunction getDefaultServerSdk() {\n return sdkData.defaults.server;\n}\n\nfunction isValidSdk(sdk) {\n return isValidClientSdk(sdk) || isValidServerSdk(sdk);\n}\n\nfunction isValidClientSdk(sdk) {\n return sdk in sdkData.client;\n}\n\nfunction isValidServerSdk(sdk) {\n return sdk in sdkData.server;\n}\n\nfunction isValidLanguage(sdk, lang) {\n var languages;\n\n if (isValidClientSdk(sdk)) {\n languages = sdkData.client[sdk].languages;\n } else {\n languages = sdkData.server[sdk].languages;\n }\n\n return languages.indexOf(lang) !== -1;\n}\n\nmodule.exports = {\n getAllSdkNames: getAllSdkNames,\n getServerSdkNames: getServerSdkNames,\n getCurrentVersion: getCurrentVersion,\n getCurrentClientSdkIds: getCurrentClientSdkIds,\n getDefaultClientSdk: getDefaultClientSdk,\n getDefaultServerSdk: getDefaultServerSdk,\n getSdk: getSdk,\n isValidSdk: isValidSdk,\n isValidClientSdk: isValidClientSdk,\n isValidServerSdk: isValidServerSdk,\n isValidLanguage: isValidLanguage\n};\n","var getMapData = require('./_getMapData');\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n var result = getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n}\n\nmodule.exports = mapCacheDelete;\n","/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n return value === other || (value !== value && other !== other);\n}\n\nmodule.exports = eq;\n","var baseGet = require('./_baseGet');\n\n/**\n * Gets the value at `path` of `object`. If the resolved value is\n * `undefined`, the `defaultValue` is returned in its place.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @param {*} [defaultValue] The value returned for `undefined` resolved values.\n * @returns {*} Returns the resolved value.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.get(object, 'a[0].b.c');\n * // => 3\n *\n * _.get(object, ['a', '0', 'b', 'c']);\n * // => 3\n *\n * _.get(object, 'a.b.c', 'default');\n * // => 'default'\n */\nfunction get(object, path, defaultValue) {\n var result = object == null ? undefined : baseGet(object, path);\n return result === undefined ? defaultValue : result;\n}\n\nmodule.exports = get;\n","var getMapData = require('./_getMapData');\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n return getMapData(this, key).has(key);\n}\n\nmodule.exports = mapCacheHas;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n}\n\nmodule.exports = listCacheGet;\n","import * as BTConstant from '../../../utils/bt-constant'\nconst parse = require('../../../braintree/lib/docs-url-parser')();\nexport const findBTLeftNav = (obj, pathname) => {\n const keys = Object.keys(obj) \n const splitKey = pathname.includes(BTConstant.DOC_PREFIX) ? BTConstant.DOC_PREFIX : BTConstant.ARTICLES_PREFIX\n const check = pathname.split(splitKey)[1].split('/')[1] \n for(let i=0; i {\n if(element && classname) return Array.from(element.classList).includes(classname)\n return false\n}\n\nconst addClass = (element, classname) => {\n element.classList.add(classname)\n return element\n}\n\nconst removeClass = (element, classname) => {\n element.classList.remove(classname)\n return element\n}\n\nconst unselectActiveNav = () => {\n const activeElement = document.querySelector('.sidebar a.is-active');\n if(!activeElement) return \n if(hasClass(activeElement, 'is-active')) removeClass(activeElement, 'is-active')\n let parent = activeElement.parentElement\n while(parent && parent.classList.value !== 'menu') {\n if(hasClass(parent, 'menu-tertiary')) removeClass(parent, 'is-open')\n parent = parent.parentElement\n }\n}\n\nconst selectActiveNav = (_pathname) => {\n let pathname = _pathname.substr(-1) === '/' ? _pathname.slice(0, -1) : _pathname\n let pathObject = parse(pathname)\n pathname = pathObject && pathObject.contentPath ? pathObject.contentPath : pathname // if path contains language and /or version\n const anchor = document.querySelector(`.sidebar a[href='${pathname}']`)\n if(!anchor) {\n console.log(\"9908Error: No Active nav found\", pathname)\n return\n }\n unselectActiveNav()\n if(!hasClass(anchor, 'is-active')) addClass(anchor, 'is-active')\n let parent = anchor.parentElement\n while(parent && parent.classList.value !== 'menu') {\n if(hasClass(parent, 'menu-tertiary')) addClass(parent, 'is-open')\n if(hasClass(parent.firstElementChild, 'has-menu')) addClass(parent, 'is-open')\n if( hasClass(parent,\"menu__item\") ) parent.scrollIntoView()\n parent = parent.parentElement\n }\n}\n\nfunction selectFirstMenuChild (event) {\n event.target.parentNode.querySelectorAll('.menu-secondary__link')[0].click()\n}\nfunction selectFirstSecMenuChild (event) {\n event.target.parentNode.querySelectorAll('.menu-tertiary__link')[0].click()\n}\n\nexport const initLeftNav = (pathname) => {\n document.querySelectorAll('.menu__link.has-menu').forEach(menu => {\n menu.addEventListener('click', selectFirstMenuChild)\n })\n document.querySelectorAll('.menu-secondary__link.has-menu').forEach(menuSecondary => {\n menuSecondary.addEventListener('click', selectFirstSecMenuChild)\n })\n selectActiveNav(pathname)\n}\n\nexport const clearLeftNav = () => {\n document.querySelectorAll('.menu__link.has-menu').forEach(menu => {\n menu.removeEventListener('click', selectFirstMenuChild)\n })\n document.querySelectorAll('.menu-secondary__link.has-menu').forEach(menuSecondary => {\n menuSecondary.removeEventListener('click', selectFirstSecMenuChild)\n })\n}\n\nfunction onScroll(event){\n const element = document.querySelector('.flex.app')\n const scrollTop = event.target.scrollTop; \n if(scrollTop < 100 ) { \n removeClass(element, 'app--collapsed')\n } else {\n !hasClass(element, 'app--collapsed') && addClass(element, 'app--collapsed') \n }\n}\n\nexport const initProductLayout = (config) => {\n let elm = document.querySelector('.flex-sidebar')\n elm && (elm.style.flex = `0 0 ${config.left.width}`)\n document.querySelector('.flex-content').style.flex = `1 1 ${config.right.width}`\n document.querySelector('html').style.lineHeight = 1.875\n document.querySelector('body').style.fontSize = \"1.125rem\"\n document.querySelector('.flex-content').addEventListener('scroll', onScroll)\n}\n\nexport const clearProductLayout = () => {\n\n document.querySelector('html').style.lineHeight = 1.25\n document.querySelector('body').style.fontSize = \"unset\"\n document.querySelector('.flex-content').removeEventListener('scroll', onScroll)\n}\n\n\n\n","\nimport React, { useMemo, useEffect } from \"react\";\nimport useContentCompiler from \"../../../react-hooks/useContentCompiler\"\nimport { findBTLeftNav, initLeftNav, clearLeftNav } from \"./utils\"\nimport { withPrefix } from \"gatsby\";\nimport {useApplicationContext} from '../../../provider'\n\n\nexport default function LeftNavigation ({ location, leftNav }) {\n const pathname = withPrefix('/') !== '/' ? '/'+location.pathname.split('/').slice(2).join('/') : location.pathname\n const currentNav = useMemo(() => {\n return findBTLeftNav(leftNav, pathname)\n }, [ pathname ])\n const { handleBarCompiler } = useApplicationContext() ; \n const rawTemplate = require(`raw-loader!../../../compiled/braintree/templates/partials/sidebar.hbs`)\n const { content, loaded } = useContentCompiler(rawTemplate, handleBarCompiler, {sidenav: currentNav, ifNotHidden:true , currentPath:location.pathname,\n \"isArticles\":false,\"sub_menu\":false, \"external_link\":true})\n \n useEffect(() => {\n if(!loaded) return;\n initLeftNav(pathname)\n return () => clearLeftNav()\n }, [pathname, loaded])\n\n return (\n loaded ? : null\n );\n};\n","import React from 'react'\n\n\nexport default function RightNavigation () {\n return (\n \n Right Navigation\n \n )\n}\n\n","import React, { useEffect } from 'react'\nimport * as BTConstant from '../../utils/bt-constant' \nconst paths = [\n `${BTConstant.DOC_PREFIX}/guides/drop-in/overview`\n]\n\nexport default (WrappendComponent) => {\n function runDemo() {\n let authorization = 'sandbox_f252zhq7_hh4cpc39zq4rgjcg';\n let submitButton = document.querySelector('#submit');\n\n braintree.dropin.create({ // eslint-disable-line no-undef\n authorization,\n container: '#dropin-container',\n paypal: {\n flow: 'vault'\n }\n }, function (err, dropinInstance) {\n if (err) {\n return;\n }\n\n dropinInstance.on('paymentMethodRequestable', function () {\n submitButton.removeAttribute('disabled');\n });\n\n dropinInstance.on('noPaymentMethodRequestable', function () {\n submitButton.setAttribute('disabled', true);\n });\n\n submitButton.addEventListener('click', function () {\n dropinInstance.requestPaymentMethod(function (reqErr) {\n if (reqErr) {\n return;\n }\n });\n }, false);\n });\n }\n return function WithBTScriptLoader(props) {\n useEffect(() => {\n if (\n props.loaded && props.location &&\n (paths.includes(props.location.pathname) ||\n paths.includes(props.location.pathname.slice(0, -1)))\n ) {\n try {\n runDemo();\n } catch (err) {\n console.log('Drop-in demo error: ', err)\n }\n }\n }, [props.loaded])\n return \n }\n}\n","import React, { useState, useEffect} from \"react\";\nimport { get } from 'lodash'\n\nimport LeftNavigation from \"./left-navigation\"\nimport RightNavigation from \"./right-navigation\"\nimport ProductFooter from \"./Footer\"\nimport ProductHeader from \"./Header\"\nimport '../../product-css/compiled/app.css'\nimport { withBTScriptLoader } from '../hoc'\nimport { initProductLayout, clearProductLayout } from \"./left-navigation/utils\";\nimport SEO from \"../SEO\";\n\n\nconst components = {\n product_header: ProductHeader,\n product_footer: ProductFooter\n}\n\nexport const getComponentFromConfig = (config) => components[config.react_component]\n\nconst Layout = ({\n hideLeftNav,\n hideRightNav,\n hideMenu,\n children,\n config,\n location,\n leftNav,\n context,\n pageHeader,\n isProductPage\n}) => {\n const [isArticles, setIsArticles] = useState(false)\nconst { header, footer, page: { left } } = get(config, 'layout', {})\nconst [showMobileMenu, setShowMobileMenu] = useState(false)\nconst toggleMobileMenu = () => {\nsetShowMobileMenu(!showMobileMenu)\n}\n\n useEffect(() => {\n initProductLayout(config.layout.page)\n const _isArticles = location.pathname.split('/')[1] === 'articles'\n setIsArticles(_isArticles)\n return () => clearProductLayout()\n }, [location.pathname]) \n\n useEffect(()=>{\n window.BTAnalyticsLib.loadAnalytics()\n },[])\n\n const Header = getComponentFromConfig(header)\n const Footer = getComponentFromConfig(footer)\n const mainClassName = isProductPage ? \"main-content container--center\" : `${isArticles ? 'articles-content__wrapper ' : 'documentation-content__wrapper '}`\n return (\n <>\n \n \n \n \n { hideMenu ? null :\n \n Menu\n }\n \n \n {!hideLeftNav ?\n (\n \n ) : null}\n \n \n \n {/* \n {{> documentation_title_block_content }}\n */}\n {pageHeader}\n \n {children}\n \n {!hideRightNav ? (\n \n ) : null}\n \n \n \n \n \n \n >\n );\n};\n\nLayout.defaultProps = {\n hideLeftNav: false,\n hideRightNav: false,\n}\n\nexport default withBTScriptLoader(Layout)\n\n\n","import React, {useState, useEffect} from \"react\";\nimport {useApplicationContext} from '../../../provider'\nimport {getContent} from '../../../react-hooks/useContentCompiler'\nimport { initHeader, clearHeader } from \"../utils\";\n\nexport default function Header ({ context }) {\n\n\n const { handleBarCompiler } = useApplicationContext()\n const [content, setContent] = useState('')\n const rawTemplate = require(`raw-loader!../../../compiled/braintree/templates/partials/header.hbs`)\n useEffect(()=>{\n setContent(getContent(rawTemplate, handleBarCompiler, context))\n },[context])\n\n useEffect(() => {\n if(content){\n window.BTBaseLib.initializeSearchComponent(context)\n initHeader() \n return () => clearHeader()\n }\n },[content])\n \n return (\n <>\n \n >\n );\n};\n","import React, { useState, useEffect } from \"react\";\nimport {useApplicationContext} from '../../../provider'\nimport {getContent} from '../../../react-hooks/useContentCompiler'\nimport BTConstant from \"../../../utils/bt-constant\";\n\nexport default function Footer ({ context }) {\n\n const { handleBarCompiler } = useApplicationContext()\n const [footerContent, setFooterContent] = useState('')\n const rawTemplate = require(`raw-loader!../../../compiled/braintree/templates/partials/footer/global_footer.hbs`) \n const alignCenter = [BTConstant.ARTICLES_PREFIX, BTConstant.DOC_PREFIX].includes(context.currentPath) ? true : false \n useEffect(()=>{\n setFooterContent(getContent(rawTemplate, handleBarCompiler, {...context, \"align-center\": alignCenter, \"paypalReturnUrl\":false}))\n },[context])\n return (\n <>\n \n >\n );\n};\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\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 * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\nmodule.exports = hashGet;\n","var eq = require('./eq');\n\n/**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\nmodule.exports = assocIndexOf;\n","var Symbol = require('./_Symbol'),\n arrayMap = require('./_arrayMap'),\n isArray = require('./isArray'),\n isSymbol = require('./isSymbol');\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolToString = symbolProto ? symbolProto.toString : undefined;\n\n/**\n * The base implementation of `_.toString` which doesn't convert nullish\n * values to empty strings.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n */\nfunction baseToString(value) {\n // Exit early for strings to avoid a performance hit in some environments.\n if (typeof value == 'string') {\n return value;\n }\n if (isArray(value)) {\n // Recursively convert values (susceptible to call stack limits).\n return arrayMap(value, baseToString) + '';\n }\n if (isSymbol(value)) {\n return symbolToString ? symbolToString.call(value) : '';\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\nmodule.exports = baseToString;\n"],"sourceRoot":""}