react-tooltip 4.5.1 → 5.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.editorconfig +25 -0
- package/.eslintrc.json +94 -0
- package/.gitattributes +3 -0
- package/.github/FUNDING.yml +13 -0
- package/.github/workflows/lint.yaml +35 -0
- package/.github/workflows/pull-request.yaml +11 -0
- package/.github/workflows/release.yaml +30 -0
- package/.husky/pre-commit +6 -0
- package/.prettierrc.json +10 -0
- package/.stylelintrc.json +19 -0
- package/.vscode/settings.json +27 -0
- package/bower.json +26 -0
- package/build/dist/react-tooltip.cjs.js +2909 -0
- package/build/dist/react-tooltip.cjs.min.js +6 -0
- package/build/dist/react-tooltip.css +73 -0
- package/build/dist/react-tooltip.esm.js +2901 -0
- package/build/dist/react-tooltip.esm.min.js +6 -0
- package/build/dist/react-tooltip.min.css +1 -0
- package/build/dist/react-tooltip.umd.js +2913 -0
- package/build/dist/react-tooltip.umd.min.js +6 -0
- package/build/index.css +79 -0
- package/build/index.html +19 -0
- package/build/index.js +36190 -0
- package/cli.js +30 -0
- package/contributing.md +40 -0
- package/dist/react-tooltip-tokens.css +8 -0
- package/dist/react-tooltip.cjs.js +2932 -0
- package/dist/react-tooltip.cjs.min.js +6 -0
- package/dist/react-tooltip.css +73 -0
- package/dist/react-tooltip.d.ts +21 -120
- package/dist/react-tooltip.esm.js +2924 -0
- package/dist/react-tooltip.esm.min.js +6 -0
- package/dist/react-tooltip.min.css +1 -0
- package/dist/react-tooltip.umd.js +2936 -0
- package/dist/react-tooltip.umd.min.js +6 -0
- package/docs/README.md +50 -0
- package/docs/babel.config.js +3 -0
- package/docs/docs/examples/_category_.json +7 -0
- package/docs/docs/examples/basic-examples.mdx +68 -0
- package/docs/docs/examples/children.mdx +67 -0
- package/docs/docs/examples/content.mdx +80 -0
- package/docs/docs/examples/delay.mdx +84 -0
- package/docs/docs/examples/events.mdx +85 -0
- package/docs/docs/examples/get-content.mdx +58 -0
- package/docs/docs/examples/html.mdx +75 -0
- package/docs/docs/examples/multiline.mdx +91 -0
- package/docs/docs/examples/offset.mdx +69 -0
- package/docs/docs/examples/place.mdx +55 -0
- package/docs/docs/examples/state.mdx +331 -0
- package/docs/docs/examples/styling.mdx +388 -0
- package/docs/docs/examples/variant.mdx +100 -0
- package/docs/docs/getting-started.mdx +100 -0
- package/docs/docs/options.mdx +105 -0
- package/docs/docs/upgrade-guide/_category_.json +7 -0
- package/docs/docs/upgrade-guide/basic-examples-v4-v5.mdx +119 -0
- package/docs/docs/upgrade-guide/changelog-v4-v5.md +86 -0
- package/docs/docusaurus.config.js +135 -0
- package/docs/package.json +47 -0
- package/docs/sidebars.js +33 -0
- package/docs/src/components/HomepageFeatures/index.tsx +71 -0
- package/docs/src/components/HomepageFeatures/styles.module.css +11 -0
- package/docs/src/css/custom.css +74 -0
- package/docs/src/pages/index.module.css +35 -0
- package/docs/src/pages/index.tsx +45 -0
- package/docs/src/pages/markdown-page.md +7 -0
- package/docs/static/.nojekyll +0 -0
- package/docs/static/img/Octocat.jpg +0 -0
- package/docs/static/img/Octocat.png +0 -0
- package/docs/static/img/Octocat.svg +9 -0
- package/docs/static/img/android-chrome-192x192.png +0 -0
- package/docs/static/img/android-chrome-512x512.png +0 -0
- package/docs/static/img/apple-touch-icon.png +0 -0
- package/docs/static/img/docusaurus.png +0 -0
- package/docs/static/img/favicon-16x16.png +0 -0
- package/docs/static/img/favicon-32x32.png +0 -0
- package/docs/static/img/favicon-old.ico +0 -0
- package/docs/static/img/favicon.ico +0 -0
- package/docs/static/img/github.svg +1 -0
- package/docs/static/img/happy-face-tooltip.png +0 -0
- package/docs/static/img/happy-face-tooltip.svg +21 -0
- package/docs/static/img/logo-dinossaur.svg +1 -0
- package/docs/static/img/logo.png +0 -0
- package/docs/static/img/logo.svg +21 -0
- package/docs/static/img/only-tooltip-top.png +0 -0
- package/docs/static/img/only-tooltip-top.svg +4 -0
- package/docs/static/img/only-tooltip.png +0 -0
- package/docs/static/img/only-tooltip.svg +4 -0
- package/docs/static/img/site.webmanifest +1 -0
- package/docs/static/img/undraw_docusaurus_mountain.svg +171 -0
- package/docs/static/img/undraw_docusaurus_react.svg +170 -0
- package/docs/static/img/undraw_docusaurus_tree.svg +40 -0
- package/docs/tsconfig.json +7 -0
- package/docs/yarn.lock +7599 -0
- package/example-v5/package.json +21 -0
- package/example-v5/public/index.html +20 -0
- package/example-v5/public/manifest.json +8 -0
- package/example-v5/src/App.jsx +908 -0
- package/example-v5/src/index.css +238 -0
- package/example-v5/src/index.js +15 -0
- package/example-v5/src/index.scss +251 -0
- package/package.json +94 -146
- package/public/index.html +19 -0
- package/rollup.config.dev.js +88 -0
- package/rollup.config.prod.js +104 -0
- package/rollup.config.types.js +17 -0
- package/tsconfig.json +109 -0
- package/dist/index.es.js +0 -3185
- package/dist/index.es.js.map +0 -1
- package/dist/index.js +0 -3192
- package/dist/index.js.map +0 -1
package/dist/index.es.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.es.js","sources":["../node_modules/core-js/internals/global.js","../node_modules/core-js/internals/fails.js","../node_modules/core-js/internals/descriptors.js","../node_modules/core-js/internals/function-bind-native.js","../node_modules/core-js/internals/function-call.js","../node_modules/core-js/internals/object-property-is-enumerable.js","../node_modules/core-js/internals/create-property-descriptor.js","../node_modules/core-js/internals/function-uncurry-this-raw.js","../node_modules/core-js/internals/classof-raw.js","../node_modules/core-js/internals/function-uncurry-this.js","../node_modules/core-js/internals/indexed-object.js","../node_modules/core-js/internals/is-null-or-undefined.js","../node_modules/core-js/internals/require-object-coercible.js","../node_modules/core-js/internals/to-indexed-object.js","../node_modules/core-js/internals/document-all.js","../node_modules/core-js/internals/is-callable.js","../node_modules/core-js/internals/is-object.js","../node_modules/core-js/internals/get-built-in.js","../node_modules/core-js/internals/object-is-prototype-of.js","../node_modules/core-js/internals/engine-user-agent.js","../node_modules/core-js/internals/engine-v8-version.js","../node_modules/core-js/internals/symbol-constructor-detection.js","../node_modules/core-js/internals/use-symbol-as-uid.js","../node_modules/core-js/internals/is-symbol.js","../node_modules/core-js/internals/try-to-string.js","../node_modules/core-js/internals/a-callable.js","../node_modules/core-js/internals/get-method.js","../node_modules/core-js/internals/ordinary-to-primitive.js","../node_modules/core-js/internals/define-global-property.js","../node_modules/core-js/internals/shared-store.js","../node_modules/core-js/internals/shared.js","../node_modules/core-js/internals/to-object.js","../node_modules/core-js/internals/has-own-property.js","../node_modules/core-js/internals/uid.js","../node_modules/core-js/internals/well-known-symbol.js","../node_modules/core-js/internals/to-primitive.js","../node_modules/core-js/internals/to-property-key.js","../node_modules/core-js/internals/document-create-element.js","../node_modules/core-js/internals/ie8-dom-define.js","../node_modules/core-js/internals/object-get-own-property-descriptor.js","../node_modules/core-js/internals/v8-prototype-define-bug.js","../node_modules/core-js/internals/an-object.js","../node_modules/core-js/internals/object-define-property.js","../node_modules/core-js/internals/create-non-enumerable-property.js","../node_modules/core-js/internals/function-name.js","../node_modules/core-js/internals/inspect-source.js","../node_modules/core-js/internals/weak-map-basic-detection.js","../node_modules/core-js/internals/shared-key.js","../node_modules/core-js/internals/hidden-keys.js","../node_modules/core-js/internals/internal-state.js","../node_modules/core-js/internals/make-built-in.js","../node_modules/core-js/internals/define-built-in.js","../node_modules/core-js/internals/math-trunc.js","../node_modules/core-js/internals/to-integer-or-infinity.js","../node_modules/core-js/internals/to-absolute-index.js","../node_modules/core-js/internals/to-length.js","../node_modules/core-js/internals/length-of-array-like.js","../node_modules/core-js/internals/array-includes.js","../node_modules/core-js/internals/object-keys-internal.js","../node_modules/core-js/internals/enum-bug-keys.js","../node_modules/core-js/internals/object-get-own-property-names.js","../node_modules/core-js/internals/object-get-own-property-symbols.js","../node_modules/core-js/internals/own-keys.js","../node_modules/core-js/internals/copy-constructor-properties.js","../node_modules/core-js/internals/is-forced.js","../node_modules/core-js/internals/export.js","../node_modules/core-js/internals/function-bind-context.js","../node_modules/core-js/internals/is-array.js","../node_modules/core-js/internals/to-string-tag-support.js","../node_modules/core-js/internals/classof.js","../node_modules/core-js/internals/is-constructor.js","../node_modules/core-js/internals/array-species-constructor.js","../node_modules/core-js/internals/array-species-create.js","../node_modules/core-js/internals/array-iteration.js","../node_modules/core-js/internals/object-keys.js","../node_modules/core-js/internals/object-define-properties.js","../node_modules/core-js/internals/html.js","../node_modules/core-js/internals/object-create.js","../node_modules/core-js/internals/add-to-unscopables.js","../node_modules/core-js/modules/es.array.find.js","../src/constant.js","../src/decorators/staticMethods.js","../src/decorators/windowListener.js","../src/decorators/customEvent.js","../src/decorators/isCapture.js","../src/decorators/getEffect.js","../src/decorators/bodyMode.js","../src/decorators/trackRemoval.js","../src/utils/getPosition.js","../src/utils/getTipContent.js","../src/utils/aria.js","../src/utils/nodeListToArray.js","../src/utils/uuid.js","../src/decorators/defaultStyles.js","../src/decorators/styler.js","../src/index.js"],"sourcesContent":["var check = function (it) {\n return it && it.Math == Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","var fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;\n});\n","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","var NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","var NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar call = FunctionPrototype.call;\nvar uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n\nmodule.exports = function (fn) {\n return NATIVE_BIND ? uncurryThisWithBind(fn) : function () {\n return call.apply(fn, arguments);\n };\n};\n","var uncurryThisRaw = require('../internals/function-uncurry-this-raw');\n\nvar toString = uncurryThisRaw({}.toString);\nvar stringSlice = uncurryThisRaw(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","var classofRaw = require('../internals/classof-raw');\nvar uncurryThisRaw = require('../internals/function-uncurry-this-raw');\n\nmodule.exports = function (fn) {\n // Nashorn bug:\n // https://github.com/zloirock/core-js/issues/1128\n // https://github.com/zloirock/core-js/issues/1130\n if (classofRaw(fn) === 'Function') return uncurryThisRaw(fn);\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) == 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n","var isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","var documentAll = typeof document == 'object' && document.all;\n\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\nvar IS_HTMLDDA = typeof documentAll == 'undefined' && documentAll !== undefined;\n\nmodule.exports = {\n all: documentAll,\n IS_HTMLDDA: IS_HTMLDDA\n};\n","var $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\n// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = $documentAll.IS_HTMLDDA ? function (argument) {\n return typeof argument == 'function' || argument === documentAll;\n} : function (argument) {\n return typeof argument == 'function';\n};\n","var isCallable = require('../internals/is-callable');\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\nmodule.exports = $documentAll.IS_HTMLDDA ? function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it) || it === documentAll;\n} : function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","var global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\n","var global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol();\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n return !String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","var getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","var $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","var isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw $TypeError(tryToString(argument) + ' is not a function');\n};\n","var aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n","var call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw $TypeError(\"Can't convert object to primitive value\");\n};\n","var global = require('../internals/global');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","var global = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || defineGlobalProperty(SHARED, {});\n\nmodule.exports = store;\n","var IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.25.5',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2022 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.25.5/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","var requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","var global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar WellKnownSymbolsStore = shared('wks');\nvar Symbol = global.Symbol;\nvar symbolFor = Symbol && Symbol['for'];\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name) || !(NATIVE_SYMBOL || typeof WellKnownSymbolsStore[name] == 'string')) {\n var description = 'Symbol.' + name;\n if (NATIVE_SYMBOL && hasOwn(Symbol, name)) {\n WellKnownSymbolsStore[name] = Symbol[name];\n } else if (USE_SYMBOL_AS_UID && symbolFor) {\n WellKnownSymbolsStore[name] = symbolFor(description);\n } else {\n WellKnownSymbolsStore[name] = createWellKnownSymbol(description);\n }\n } return WellKnownSymbolsStore[name];\n};\n","var call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","var toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","var global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a != 7;\n});\n","var DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype != 42;\n});\n","var isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw $TypeError($String(argument) + ' is not an object');\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","var global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n","var shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","module.exports = {};\n","var NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n /* eslint-disable no-self-assign -- prototype methods protection */\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n /* eslint-enable no-self-assign -- prototype methods protection */\n set = function (it, metadata) {\n if (store.has(it)) throw TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get = function (it) {\n return store.get(it) || {};\n };\n has = function (it) {\n return store.has(it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","var fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (String(name).slice(0, 7) === 'Symbol(') {\n name = '[' + String(name).replace(/^Symbol\\(([^)]*)\\)/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = TEMPLATE.join(typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","var isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","var ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","var trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","var toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","var toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","var toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","var toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","var getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","var hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","var fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value == POLYFILL ? true\n : value == NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar bind = uncurryThis(uncurryThis.bind);\n\n// optional / simple context binding\nmodule.exports = function (fn, that) {\n aCallable(fn);\n return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","var classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\n// eslint-disable-next-line es/no-array-isarray -- safe\nmodule.exports = Array.isArray || function isArray(argument) {\n return classof(argument) == 'Array';\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) == 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof');\nvar getBuiltIn = require('../internals/get-built-in');\nvar inspectSource = require('../internals/inspect-source');\n\nvar noop = function () { /* empty */ };\nvar empty = [];\nvar construct = getBuiltIn('Reflect', 'construct');\nvar constructorRegExp = /^\\s*(?:class|function)\\b/;\nvar exec = uncurryThis(constructorRegExp.exec);\nvar INCORRECT_TO_STRING = !constructorRegExp.exec(noop);\n\nvar isConstructorModern = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n try {\n construct(noop, empty, argument);\n return true;\n } catch (error) {\n return false;\n }\n};\n\nvar isConstructorLegacy = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n switch (classof(argument)) {\n case 'AsyncFunction':\n case 'GeneratorFunction':\n case 'AsyncGeneratorFunction': return false;\n }\n try {\n // we can't check .prototype since constructors produced by .bind haven't it\n // `Function#toString` throws on some built-it function in some legacy engines\n // (for example, `DOMQuad` and similar in FF41-)\n return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));\n } catch (error) {\n return true;\n }\n};\n\nisConstructorLegacy.sham = true;\n\n// `IsConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-isconstructor\nmodule.exports = !construct || fails(function () {\n var called;\n return isConstructorModern(isConstructorModern.call)\n || !isConstructorModern(Object)\n || !isConstructorModern(function () { called = true; })\n || called;\n}) ? isConstructorLegacy : isConstructorModern;\n","var isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\n\n// a part of `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return C === undefined ? $Array : C;\n};\n","var arraySpeciesConstructor = require('../internals/array-species-constructor');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);\n};\n","var bind = require('../internals/function-bind-context');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = uncurryThis([].push);\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterReject }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE == 1;\n var IS_FILTER = TYPE == 2;\n var IS_SOME = TYPE == 3;\n var IS_EVERY = TYPE == 4;\n var IS_FIND_INDEX = TYPE == 6;\n var IS_FILTER_REJECT = TYPE == 7;\n var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var boundFunction = bind(callbackfn, that);\n var length = lengthOfArrayLike(self);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_REJECT ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push(target, value); // filter\n } else switch (TYPE) {\n case 4: return false; // every\n case 7: push(target, value); // filterReject\n }\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.es/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.es/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.es/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.es/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.es/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.es/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.es/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6),\n // `Array.prototype.filterReject` method\n // https://github.com/tc39/proposal-array-filtering\n filterReject: createMethod(7)\n};\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es/no-object-defineproperties -- safe\nexports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var props = toIndexedObject(Properties);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);\n return O;\n};\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","/* global ActiveXObject -- old IE, WSH */\nvar anObject = require('../internals/an-object');\nvar definePropertiesModule = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n activeXDocument = new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = typeof document != 'undefined'\n ? document.domain && activeXDocument\n ? NullProtoObjectViaActiveX(activeXDocument) // old IE\n : NullProtoObjectViaIFrame()\n : NullProtoObjectViaActiveX(activeXDocument); // WSH\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.es/ecma262/#sec-object.create\n// eslint-disable-next-line es/no-object-create -- safe\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : definePropertiesModule.f(result, Properties);\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] == undefined) {\n defineProperty(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $find = require('../internals/array-iteration').find;\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\nvar FIND = 'find';\nvar SKIPS_HOLES = true;\n\n// Shouldn't skip holes\nif (FIND in []) Array(1)[FIND](function () { SKIPS_HOLES = false; });\n\n// `Array.prototype.find` method\n// https://tc39.es/ecma262/#sec-array.prototype.find\n$({ target: 'Array', proto: true, forced: SKIPS_HOLES }, {\n find: function find(callbackfn /* , that = undefined */) {\n return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables(FIND);\n","export default {\n GLOBAL: {\n HIDE: '__react_tooltip_hide_event',\n REBUILD: '__react_tooltip_rebuild_event',\n SHOW: '__react_tooltip_show_event'\n }\n};\n","/**\n * Static methods for react-tooltip\n */\nimport CONSTANT from '../constant';\n\nconst dispatchGlobalEvent = (eventName, opts) => {\n // Compatible with IE\n // @see http://stackoverflow.com/questions/26596123/internet-explorer-9-10-11-event-constructor-doesnt-work\n // @see https://developer.mozilla.org/en-US/docs/Web/API/CustomEvent/CustomEvent\n let event;\n\n if (typeof window.CustomEvent === 'function') {\n event = new window.CustomEvent(eventName, { detail: opts });\n } else {\n event = document.createEvent('Event');\n event.initEvent(eventName, false, true, opts);\n }\n\n window.dispatchEvent(event);\n};\n\nexport default function(target) {\n /**\n * Hide all tooltip\n * @trigger ReactTooltip.hide()\n */\n target.hide = target => {\n dispatchGlobalEvent(CONSTANT.GLOBAL.HIDE, { target });\n };\n\n /**\n * Rebuild all tooltip\n * @trigger ReactTooltip.rebuild()\n */\n target.rebuild = () => {\n dispatchGlobalEvent(CONSTANT.GLOBAL.REBUILD);\n };\n\n /**\n * Show specific tooltip\n * @trigger ReactTooltip.show()\n */\n target.show = target => {\n dispatchGlobalEvent(CONSTANT.GLOBAL.SHOW, { target });\n };\n\n target.prototype.globalRebuild = function() {\n if (this.mount) {\n this.unbindListener();\n this.bindListener();\n }\n };\n\n target.prototype.globalShow = function(event) {\n if (this.mount) {\n const hasTarget =\n (event && event.detail && event.detail.target && true) || false;\n // Create a fake event, specific show will limit the type to `solid`\n // only `float` type cares e.clientX e.clientY\n this.showTooltip(\n { currentTarget: hasTarget && event.detail.target },\n true\n );\n }\n };\n\n target.prototype.globalHide = function(event) {\n if (this.mount) {\n const hasTarget =\n (event && event.detail && event.detail.target && true) || false;\n this.hideTooltip(\n { currentTarget: hasTarget && event.detail.target },\n hasTarget\n );\n }\n };\n}\n","/**\n * Events that should be bound to the window\n */\nimport CONSTANT from '../constant';\n\nexport default function(target) {\n target.prototype.bindWindowEvents = function(resizeHide) {\n // ReactTooltip.hide\n window.removeEventListener(CONSTANT.GLOBAL.HIDE, this.globalHide);\n window.addEventListener(CONSTANT.GLOBAL.HIDE, this.globalHide, false);\n\n // ReactTooltip.rebuild\n window.removeEventListener(CONSTANT.GLOBAL.REBUILD, this.globalRebuild);\n window.addEventListener(CONSTANT.GLOBAL.REBUILD, this.globalRebuild, false);\n\n // ReactTooltip.show\n window.removeEventListener(CONSTANT.GLOBAL.SHOW, this.globalShow);\n window.addEventListener(CONSTANT.GLOBAL.SHOW, this.globalShow, false);\n\n // Resize\n if (resizeHide) {\n window.removeEventListener('resize', this.onWindowResize);\n window.addEventListener('resize', this.onWindowResize, false);\n }\n };\n\n target.prototype.unbindWindowEvents = function() {\n window.removeEventListener(CONSTANT.GLOBAL.HIDE, this.globalHide);\n window.removeEventListener(CONSTANT.GLOBAL.REBUILD, this.globalRebuild);\n window.removeEventListener(CONSTANT.GLOBAL.SHOW, this.globalShow);\n window.removeEventListener('resize', this.onWindowResize);\n };\n\n /**\n * invoked by resize event of window\n */\n target.prototype.onWindowResize = function() {\n if (!this.mount) return;\n this.hideTooltip();\n };\n}\n","/**\n * Custom events to control showing and hiding of tooltip\n *\n * @attributes\n * - `event` {String}\n * - `eventOff` {String}\n */\n\nexport const checkStatus = function(dataEventOff, e) {\n const { show } = this.state;\n const { id } = this.props;\n const isCapture = this.isCapture(e.currentTarget);\n const currentItem = e.currentTarget.getAttribute('currentItem');\n\n if (!isCapture) e.stopPropagation();\n if (show && currentItem === 'true') {\n if (!dataEventOff) this.hideTooltip(e);\n } else {\n e.currentTarget.setAttribute('currentItem', 'true');\n setUntargetItems(e.currentTarget, this.getTargetArray(id));\n this.showTooltip(e);\n }\n};\n\nconst setUntargetItems = function(currentTarget, targetArray) {\n for (let i = 0; i < targetArray.length; i++) {\n if (currentTarget !== targetArray[i]) {\n targetArray[i].setAttribute('currentItem', 'false');\n } else {\n targetArray[i].setAttribute('currentItem', 'true');\n }\n }\n};\n\nconst customListeners = {\n id: '9b69f92e-d3fe-498b-b1b4-c5e63a51b0cf',\n set(target, event, listener) {\n if (this.id in target) {\n const map = target[this.id];\n map[event] = listener;\n } else {\n // this is workaround for WeakMap, which is not supported in older browsers, such as IE\n Object.defineProperty(target, this.id, {\n configurable: true,\n value: { [event]: listener }\n });\n }\n },\n get(target, event) {\n const map = target[this.id];\n if (map !== undefined) {\n return map[event];\n }\n }\n};\n\nexport default function(target) {\n target.prototype.isCustomEvent = function(ele) {\n const { event } = this.state;\n return event || !!ele.getAttribute('data-event');\n };\n\n /* Bind listener for custom event */\n target.prototype.customBindListener = function(ele) {\n const { event, eventOff } = this.state;\n const dataEvent = ele.getAttribute('data-event') || event;\n const dataEventOff = ele.getAttribute('data-event-off') || eventOff;\n\n dataEvent.split(' ').forEach(event => {\n ele.removeEventListener(event, customListeners.get(ele, event));\n const customListener = checkStatus.bind(this, dataEventOff);\n customListeners.set(ele, event, customListener);\n ele.addEventListener(event, customListener, false);\n });\n if (dataEventOff) {\n dataEventOff.split(' ').forEach(event => {\n ele.removeEventListener(event, this.hideTooltip);\n ele.addEventListener(event, this.hideTooltip, false);\n });\n }\n };\n\n /* Unbind listener for custom event */\n target.prototype.customUnbindListener = function(ele) {\n const { event, eventOff } = this.state;\n const dataEvent = event || ele.getAttribute('data-event');\n const dataEventOff = eventOff || ele.getAttribute('data-event-off');\n\n ele.removeEventListener(dataEvent, customListeners.get(ele, event));\n if (dataEventOff) ele.removeEventListener(dataEventOff, this.hideTooltip);\n };\n}\n","/**\n * Util method to judge if it should follow capture model\n */\n\nexport default function(target) {\n target.prototype.isCapture = function(currentTarget) {\n return (\n (currentTarget &&\n currentTarget.getAttribute('data-iscapture') === 'true') ||\n this.props.isCapture ||\n false\n );\n };\n}\n","/**\n * Util method to get effect\n */\n\nexport default function(target) {\n target.prototype.getEffect = function(currentTarget) {\n const dataEffect = currentTarget.getAttribute('data-effect');\n return dataEffect || this.props.effect || 'float';\n };\n}\n","/**\n * Util method to get effect\n */\nimport { checkStatus } from './customEvent';\n\nconst makeProxy = (e) => {\n const proxy = {};\n for (const key in e) {\n if (typeof e[key] === 'function') {\n proxy[key] = e[key].bind(e);\n } else {\n proxy[key] = e[key];\n }\n }\n return proxy;\n};\n\nconst bodyListener = function (callback, options, e) {\n const { respectEffect = false, customEvent = false } = options;\n const { id } = this.props;\n\n let tip = null;\n let forId;\n let target = e.target;\n let lastTarget;\n // walk up parent chain until tip is found\n // there is no match if parent visible area is matched by mouse position, so some corner cases might not work as expected\n while (tip === null && target !== null) {\n lastTarget = target;\n tip = target.getAttribute('data-tip') || null;\n forId = target.getAttribute('data-for') || null;\n target = target.parentElement;\n }\n\n target = lastTarget || e.target;\n\n if (this.isCustomEvent(target) && !customEvent) {\n return;\n }\n\n const isTargetBelongsToTooltip =\n (id == null && forId == null) || forId === id;\n\n if (\n tip != null &&\n (!respectEffect || this.getEffect(target) === 'float') &&\n isTargetBelongsToTooltip\n ) {\n const proxy = makeProxy(e);\n proxy.currentTarget = target;\n callback(proxy);\n }\n};\n\nconst findCustomEvents = (targetArray, dataAttribute) => {\n const events = {};\n targetArray.forEach((target) => {\n const event = target.getAttribute(dataAttribute);\n if (event) event.split(' ').forEach((event) => (events[event] = true));\n });\n\n return events;\n};\n\nconst getBody = () => document.getElementsByTagName('body')[0];\n\nexport default function (target) {\n target.prototype.isBodyMode = function () {\n return !!this.props.bodyMode;\n };\n\n target.prototype.bindBodyListener = function (targetArray) {\n const { event, eventOff, possibleCustomEvents, possibleCustomEventsOff } =\n this.state;\n const body = getBody();\n\n const customEvents = findCustomEvents(targetArray, 'data-event');\n const customEventsOff = findCustomEvents(targetArray, 'data-event-off');\n\n if (event != null) customEvents[event] = true;\n if (eventOff != null) customEventsOff[eventOff] = true;\n possibleCustomEvents\n .split(' ')\n .forEach((event) => (customEvents[event] = true));\n possibleCustomEventsOff\n .split(' ')\n .forEach((event) => (customEventsOff[event] = true));\n\n this.unbindBodyListener(body);\n\n const listeners = (this.bodyModeListeners = {});\n if (event == null) {\n listeners.mouseover = bodyListener.bind(this, this.showTooltip, {});\n listeners.mousemove = bodyListener.bind(this, this.updateTooltip, {\n respectEffect: true\n });\n listeners.mouseout = bodyListener.bind(this, this.hideTooltip, {});\n }\n\n for (const event in customEvents) {\n listeners[event] = bodyListener.bind(\n this,\n (e) => {\n const targetEventOff =\n e.currentTarget.getAttribute('data-event-off') || eventOff;\n checkStatus.call(this, targetEventOff, e);\n },\n { customEvent: true }\n );\n }\n for (const event in customEventsOff) {\n listeners[event] = bodyListener.bind(this, this.hideTooltip, {\n customEvent: true\n });\n }\n for (const event in listeners) {\n body.addEventListener(event, listeners[event]);\n }\n };\n\n target.prototype.unbindBodyListener = function (body) {\n body = body || getBody();\n\n const listeners = this.bodyModeListeners;\n for (const event in listeners) {\n body.removeEventListener(event, listeners[event]);\n }\n };\n}\n","/**\n * Tracking target removing from DOM.\n * It's necessary to hide tooltip when it's target disappears.\n * Otherwise, the tooltip would be shown forever until another target\n * is triggered.\n *\n * If MutationObserver is not available, this feature just doesn't work.\n */\n\n// https://hacks.mozilla.org/2012/05/dom-mutationobserver-reacting-to-dom-changes-without-killing-browser-performance/\nconst getMutationObserverClass = () => {\n return (\n window.MutationObserver ||\n window.WebKitMutationObserver ||\n window.MozMutationObserver\n );\n};\n\nexport default function(target) {\n target.prototype.bindRemovalTracker = function() {\n const MutationObserver = getMutationObserverClass();\n if (MutationObserver == null) return;\n\n const observer = new MutationObserver(mutations => {\n for (let m1 = 0; m1 < mutations.length; m1++) {\n const mutation = mutations[m1];\n for (let m2 = 0; m2 < mutation.removedNodes.length; m2++) {\n const element = mutation.removedNodes[m2];\n if (element === this.state.currentTarget) {\n this.hideTooltip();\n return;\n }\n }\n }\n });\n\n observer.observe(window.document, { childList: true, subtree: true });\n\n this.removalTracker = observer;\n };\n\n target.prototype.unbindRemovalTracker = function() {\n if (this.removalTracker) {\n this.removalTracker.disconnect();\n this.removalTracker = null;\n }\n };\n}\n","/**\n * Calculate the position of tooltip\n *\n * @params\n * - `e` {Event} the event of current mouse\n * - `target` {Element} the currentTarget of the event\n * - `node` {DOM} the react-tooltip object\n * - `place` {String} top / right / bottom / left\n * - `effect` {String} float / solid\n * - `offset` {Object} the offset to default position\n *\n * @return {Object}\n * - `isNewState` {Bool} required\n * - `newState` {Object}\n * - `position` {Object} {left: {Number}, top: {Number}}\n */\nexport default function (e, target, node, place, desiredPlace, effect, offset) {\n const { width: tipWidth, height: tipHeight } = getDimensions(node);\n\n const { width: targetWidth, height: targetHeight } = getDimensions(target);\n\n const { mouseX, mouseY } = getCurrentOffset(e, target, effect);\n const defaultOffset = getDefaultPosition(\n effect,\n targetWidth,\n targetHeight,\n tipWidth,\n tipHeight\n );\n const { extraOffsetX, extraOffsetY } = calculateOffset(offset);\n\n const windowWidth = window.innerWidth;\n const windowHeight = window.innerHeight;\n\n const { parentTop, parentLeft } = getParent(node);\n\n // Get the edge offset of the tooltip\n const getTipOffsetLeft = (place) => {\n const offsetX = defaultOffset[place].l;\n return mouseX + offsetX + extraOffsetX;\n };\n const getTipOffsetRight = (place) => {\n const offsetX = defaultOffset[place].r;\n return mouseX + offsetX + extraOffsetX;\n };\n const getTipOffsetTop = (place) => {\n const offsetY = defaultOffset[place].t;\n return mouseY + offsetY + extraOffsetY;\n };\n const getTipOffsetBottom = (place) => {\n const offsetY = defaultOffset[place].b;\n return mouseY + offsetY + extraOffsetY;\n };\n\n //\n // Functions to test whether the tooltip's sides are inside\n // the client window for a given orientation p\n //\n // _____________\n // | | <-- Right side\n // | p = 'left' |\\\n // | |/ |\\\n // |_____________| |_\\ <-- Mouse\n // / \\ |\n // |\n // |\n // Bottom side\n //\n const outsideLeft = (p) => getTipOffsetLeft(p) < 0;\n const outsideRight = (p) => getTipOffsetRight(p) > windowWidth;\n const outsideTop = (p) => getTipOffsetTop(p) < 0;\n const outsideBottom = (p) => getTipOffsetBottom(p) > windowHeight;\n\n // Check whether the tooltip with orientation p is completely inside the client window\n const outside = (p) =>\n outsideLeft(p) || outsideRight(p) || outsideTop(p) || outsideBottom(p);\n const inside = (p) => !outside(p);\n\n const placeIsInside = {\n top: inside('top'),\n bottom: inside('bottom'),\n left: inside('left'),\n right: inside('right')\n };\n\n function choose() {\n const allPlaces = desiredPlace\n .split(',')\n .concat(place, ['top', 'bottom', 'left', 'right']);\n for (const d of allPlaces) {\n if (placeIsInside[d]) return d;\n }\n // if nothing is inside, just use the old place.\n return place;\n }\n\n const chosen = choose();\n\n let isNewState = false;\n let newPlace;\n if (chosen && chosen !== place) {\n isNewState = true;\n newPlace = chosen;\n }\n\n if (isNewState) {\n return {\n isNewState: true,\n newState: { place: newPlace }\n };\n }\n\n return {\n isNewState: false,\n position: {\n left: parseInt(getTipOffsetLeft(place) - parentLeft, 10),\n top: parseInt(getTipOffsetTop(place) - parentTop, 10)\n }\n };\n}\n\nconst getDimensions = (node) => {\n const { height, width } = node.getBoundingClientRect();\n return {\n height: parseInt(height, 10),\n width: parseInt(width, 10)\n };\n};\n\n// Get current mouse offset\nconst getCurrentOffset = (e, currentTarget, effect) => {\n const boundingClientRect = currentTarget.getBoundingClientRect();\n const targetTop = boundingClientRect.top;\n const targetLeft = boundingClientRect.left;\n const { width: targetWidth, height: targetHeight } =\n getDimensions(currentTarget);\n\n if (effect === 'float') {\n return {\n mouseX: e.clientX,\n mouseY: e.clientY\n };\n }\n return {\n mouseX: targetLeft + targetWidth / 2,\n mouseY: targetTop + targetHeight / 2\n };\n};\n\n// List all possibility of tooltip final offset\n// This is useful in judging if it is necessary for tooltip to switch position when out of window\nconst getDefaultPosition = (\n effect,\n targetWidth,\n targetHeight,\n tipWidth,\n tipHeight\n) => {\n let top;\n let right;\n let bottom;\n let left;\n const disToMouse = 3;\n const triangleHeight = 2;\n const cursorHeight = 12; // Optimize for float bottom only, cause the cursor will hide the tooltip\n\n if (effect === 'float') {\n top = {\n l: -(tipWidth / 2),\n r: tipWidth / 2,\n t: -(tipHeight + disToMouse + triangleHeight),\n b: -disToMouse\n };\n bottom = {\n l: -(tipWidth / 2),\n r: tipWidth / 2,\n t: disToMouse + cursorHeight,\n b: tipHeight + disToMouse + triangleHeight + cursorHeight\n };\n left = {\n l: -(tipWidth + disToMouse + triangleHeight),\n r: -disToMouse,\n t: -(tipHeight / 2),\n b: tipHeight / 2\n };\n right = {\n l: disToMouse,\n r: tipWidth + disToMouse + triangleHeight,\n t: -(tipHeight / 2),\n b: tipHeight / 2\n };\n } else if (effect === 'solid') {\n top = {\n l: -(tipWidth / 2),\n r: tipWidth / 2,\n t: -(targetHeight / 2 + tipHeight + triangleHeight),\n b: -(targetHeight / 2)\n };\n bottom = {\n l: -(tipWidth / 2),\n r: tipWidth / 2,\n t: targetHeight / 2,\n b: targetHeight / 2 + tipHeight + triangleHeight\n };\n left = {\n l: -(tipWidth + targetWidth / 2 + triangleHeight),\n r: -(targetWidth / 2),\n t: -(tipHeight / 2),\n b: tipHeight / 2\n };\n right = {\n l: targetWidth / 2,\n r: tipWidth + targetWidth / 2 + triangleHeight,\n t: -(tipHeight / 2),\n b: tipHeight / 2\n };\n }\n\n return { top, bottom, left, right };\n};\n\n// Consider additional offset into position calculation\nconst calculateOffset = (offset) => {\n let extraOffsetX = 0;\n let extraOffsetY = 0;\n\n if (Object.prototype.toString.apply(offset) === '[object String]') {\n offset = JSON.parse(offset.toString().replace(/'/g, '\"'));\n }\n for (const key in offset) {\n if (key === 'top') {\n extraOffsetY -= parseInt(offset[key], 10);\n } else if (key === 'bottom') {\n extraOffsetY += parseInt(offset[key], 10);\n } else if (key === 'left') {\n extraOffsetX -= parseInt(offset[key], 10);\n } else if (key === 'right') {\n extraOffsetX += parseInt(offset[key], 10);\n }\n }\n\n return { extraOffsetX, extraOffsetY };\n};\n\n// Get the offset of the parent elements\nconst getParent = (currentTarget) => {\n let currentParent = currentTarget;\n while (currentParent) {\n const computedStyle = window.getComputedStyle(currentParent);\n // transform and will-change: transform change the containing block\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_Block\n if (\n computedStyle.getPropertyValue('transform') !== 'none' ||\n computedStyle.getPropertyValue('will-change') === 'transform'\n )\n break;\n currentParent = currentParent.parentElement;\n }\n\n const parentTop =\n (currentParent && currentParent.getBoundingClientRect().top) || 0;\n const parentLeft =\n (currentParent && currentParent.getBoundingClientRect().left) || 0;\n\n return { parentTop, parentLeft };\n};\n","/**\n * To get the tooltip content\n * it may comes from data-tip or this.props.children\n * it should support multiline\n *\n * @params\n * - `tip` {String} value of data-tip\n * - `children` {ReactElement} this.props.children\n * - `multiline` {Any} could be Bool(true/false) or String('true'/'false')\n *\n * @return\n * - String or react component\n */\nimport React from 'react';\n\nexport default function TipContent(tip, children, getContent, multiline) {\n if (children) return children;\n if (getContent !== undefined && getContent !== null) return getContent; // getContent can be 0, '', etc.\n if (getContent === null) return null; // Tip not exist and children is null or undefined\n\n const regexp = /<br\\s*\\/?>/;\n if (!multiline || multiline === 'false' || !regexp.test(tip)) {\n // No trim(), so that user can keep their input\n return tip;\n }\n\n // Multiline tooltip content\n return tip.split(regexp).map((d, i) => {\n return (\n <span key={i} className=\"multi-line\">\n {d}\n </span>\n );\n });\n}\n","/**\n * Support aria- and role in ReactTooltip\n *\n * @params props {Object}\n * @return {Object}\n */\nexport function parseAria(props) {\n const ariaObj = {};\n Object.keys(props)\n .filter(prop => {\n // aria-xxx and role is acceptable\n return /(^aria-\\w+$|^role$)/.test(prop);\n })\n .forEach(prop => {\n ariaObj[prop] = props[prop];\n });\n\n return ariaObj;\n}\n","/**\n * Convert nodelist to array\n * @see https://github.com/facebook/fbjs/blob/e66ba20ad5be433eb54423f2b097d829324d9de6/packages/fbjs/src/core/createArrayFromMixed.js#L24\n * NodeLists are functions in Safari\n */\n\nexport default function(nodeList) {\n const length = nodeList.length;\n if (nodeList.hasOwnProperty) {\n return Array.prototype.slice.call(nodeList);\n }\n return new Array(length).fill().map(index => nodeList[index]);\n}\n","import { v4 as uuid } from 'uuid';\n\nexport function generateUUID() {\n return 't' + uuid();\n}\n","/**\n * Default pop-up style values (text color, background color).\n */\nconst defaultColors = {\n dark: {\n text: '#fff',\n background: '#222',\n border: 'transparent',\n arrow: '#222'\n },\n success: {\n text: '#fff',\n background: '#8DC572',\n border: 'transparent',\n arrow: '#8DC572'\n },\n warning: {\n text: '#fff',\n background: '#F0AD4E',\n border: 'transparent',\n arrow: '#F0AD4E'\n },\n error: {\n text: '#fff',\n background: '#BE6464',\n border: 'transparent',\n arrow: '#BE6464'\n },\n info: {\n text: '#fff',\n background: '#337AB7',\n border: 'transparent',\n arrow: '#337AB7'\n },\n light: {\n text: '#222',\n background: '#fff',\n border: 'transparent',\n arrow: '#fff'\n }\n};\n\nexport function getDefaultPopupColors(type) {\n return defaultColors[type] ? { ...defaultColors[type] } : undefined;\n}\n\nexport const DEFAULT_PADDING = '8px 21px';\n\nexport const DEFAULT_RADIUS = {\n tooltip: 3,\n arrow: 0\n};\n","import {\n getDefaultPopupColors,\n DEFAULT_PADDING,\n DEFAULT_RADIUS\n} from './defaultStyles';\n\n/**\n * Generates the specific tooltip style for use on render.\n */\nexport function generateTooltipStyle(\n uuid,\n customColors,\n type,\n hasBorder,\n padding,\n radius\n) {\n return generateStyle(\n uuid,\n getPopupColors(customColors, type, hasBorder),\n padding,\n radius\n );\n}\n\n/**\n * Generates the tooltip style rules based on the element-specified \"data-type\" property.\n */\nfunction generateStyle(\n uuid,\n colors,\n padding = DEFAULT_PADDING,\n radius = DEFAULT_RADIUS\n) {\n const textColor = colors.text;\n const backgroundColor = colors.background;\n const borderColor = colors.border;\n const arrowColor = colors.arrow;\n const arrowRadius = radius.arrow;\n const tooltipRadius = radius.tooltip;\n\n return `\n \t.${uuid} {\n\t color: ${textColor};\n\t background: ${backgroundColor};\n\t border: 1px solid ${borderColor};\n\t border-radius: ${tooltipRadius}px;\n\t padding: ${padding};\n \t}\n\n \t.${uuid}.place-top {\n margin-top: -10px;\n }\n .${uuid}.place-top::before {\n content: \"\";\n background-color: inherit;\n position: absolute;\n z-index: 2;\n width: 20px;\n height: 12px;\n }\n .${uuid}.place-top::after {\n content: \"\";\n position: absolute;\n width: 10px;\n height: 10px;\n border-top-right-radius: ${arrowRadius}px;\n border: 1px solid ${borderColor};\n background-color: ${arrowColor};\n z-index: -2;\n bottom: -6px;\n left: 50%;\n margin-left: -6px;\n transform: rotate(135deg);\n }\n\n .${uuid}.place-bottom {\n margin-top: 10px;\n }\n .${uuid}.place-bottom::before {\n content: \"\";\n background-color: inherit;\n position: absolute;\n z-index: -1;\n width: 18px;\n height: 10px;\n }\n .${uuid}.place-bottom::after {\n content: \"\";\n position: absolute;\n width: 10px;\n height: 10px;\n border-top-right-radius: ${arrowRadius}px;\n border: 1px solid ${borderColor};\n background-color: ${arrowColor};\n z-index: -2;\n top: -6px;\n left: 50%;\n margin-left: -6px;\n transform: rotate(45deg);\n }\n\n .${uuid}.place-left {\n margin-left: -10px;\n }\n .${uuid}.place-left::before {\n content: \"\";\n background-color: inherit;\n position: absolute;\n z-index: -1;\n width: 10px;\n height: 18px;\n }\n .${uuid}.place-left::after {\n content: \"\";\n position: absolute;\n width: 10px;\n height: 10px;\n border-top-right-radius: ${arrowRadius}px;\n border: 1px solid ${borderColor};\n background-color: ${arrowColor};\n z-index: -2;\n right: -6px;\n top: 50%;\n margin-top: -6px;\n transform: rotate(45deg);\n }\n\n .${uuid}.place-right {\n margin-left: 10px;\n }\n .${uuid}.place-right::before {\n content: \"\";\n background-color: inherit;\n position: absolute;\n z-index: -1;\n width: 10px;\n height: 18px;\n }\n .${uuid}.place-right::after {\n content: \"\";\n position: absolute;\n width: 10px;\n height: 10px;\n border-top-right-radius: ${arrowRadius}px;\n border: 1px solid ${borderColor};\n background-color: ${arrowColor};\n z-index: -2;\n left: -6px;\n top: 50%;\n margin-top: -6px;\n transform: rotate(-135deg);\n }\n `;\n}\n\nfunction getPopupColors(customColors, type, hasBorder) {\n const textColor = customColors.text;\n const backgroundColor = customColors.background;\n const borderColor = customColors.border;\n const arrowColor = customColors.arrow\n ? customColors.arrow\n : customColors.background;\n\n const colors = getDefaultPopupColors(type);\n\n if (textColor) {\n colors.text = textColor;\n }\n\n if (backgroundColor) {\n colors.background = backgroundColor;\n }\n\n if (hasBorder) {\n if (borderColor) {\n colors.border = borderColor;\n } else {\n colors.border = type === 'light' ? 'black' : 'white';\n }\n }\n\n if (arrowColor) {\n colors.arrow = arrowColor;\n }\n\n return colors;\n}\n","/* eslint-disable no-unused-vars, dot-notation */\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\n/* Decorators */\nimport staticMethods from './decorators/staticMethods';\nimport windowListener from './decorators/windowListener';\nimport customEvent from './decorators/customEvent';\nimport isCapture from './decorators/isCapture';\nimport getEffect from './decorators/getEffect';\nimport bodyMode from './decorators/bodyMode';\nimport trackRemoval from './decorators/trackRemoval';\n\n/* Utils */\nimport getPosition from './utils/getPosition';\nimport getTipContent from './utils/getTipContent';\nimport { parseAria } from './utils/aria';\nimport nodeListToArray from './utils/nodeListToArray';\nimport { generateUUID } from './utils/uuid';\n\n/* CSS */\nimport baseCss from './index.scss';\nimport { generateTooltipStyle } from './decorators/styler';\n\n/* Polyfill */\nimport 'core-js/modules/es.array.find';\n\n@staticMethods\n@windowListener\n@customEvent\n@isCapture\n@getEffect\n@bodyMode\n@trackRemoval\nclass ReactTooltip extends React.Component {\n static get propTypes() {\n return {\n uuid: PropTypes.string,\n children: PropTypes.any,\n place: PropTypes.string,\n type: PropTypes.string,\n effect: PropTypes.string,\n offset: PropTypes.object,\n padding: PropTypes.string,\n multiline: PropTypes.bool,\n border: PropTypes.bool,\n borderClass: PropTypes.string,\n textColor: PropTypes.string,\n backgroundColor: PropTypes.string,\n borderColor: PropTypes.string,\n arrowColor: PropTypes.string,\n arrowRadius: PropTypes.string,\n tooltipRadius: PropTypes.string,\n insecure: PropTypes.bool,\n class: PropTypes.string,\n className: PropTypes.string,\n id: PropTypes.string,\n html: PropTypes.bool,\n delayHide: PropTypes.number,\n delayUpdate: PropTypes.number,\n delayShow: PropTypes.number,\n event: PropTypes.string,\n eventOff: PropTypes.string,\n isCapture: PropTypes.bool,\n globalEventOff: PropTypes.string,\n getContent: PropTypes.any,\n afterShow: PropTypes.func,\n afterHide: PropTypes.func,\n overridePosition: PropTypes.func,\n disable: PropTypes.bool,\n scrollHide: PropTypes.bool,\n resizeHide: PropTypes.bool,\n wrapper: PropTypes.string,\n bodyMode: PropTypes.bool,\n possibleCustomEvents: PropTypes.string,\n possibleCustomEventsOff: PropTypes.string,\n clickable: PropTypes.bool,\n disableInternalStyle: PropTypes.bool\n };\n }\n\n static defaultProps = {\n insecure: true,\n resizeHide: true,\n wrapper: 'div',\n clickable: false\n };\n\n static supportedWrappers = ['div', 'span'];\n\n static displayName = 'ReactTooltip';\n\n constructor(props) {\n super(props);\n\n this.state = {\n uuid: props.uuid || generateUUID(),\n place: props.place || 'top', // Direction of tooltip\n desiredPlace: props.place || 'top',\n type: props.type || 'dark', // Color theme of tooltip\n effect: props.effect || 'float', // float or fixed\n show: false,\n border: false,\n borderClass: 'border',\n customColors: {},\n customRadius: {},\n offset: {},\n padding: props.padding,\n extraClass: '',\n html: false,\n delayHide: 0,\n delayShow: 0,\n event: props.event || null,\n eventOff: props.eventOff || null,\n currentEvent: null, // Current mouse event\n currentTarget: null, // Current target of mouse event\n ariaProps: parseAria(props), // aria- and role attributes\n isEmptyTip: false,\n disable: false,\n possibleCustomEvents: props.possibleCustomEvents || '',\n possibleCustomEventsOff: props.possibleCustomEventsOff || '',\n originTooltip: null,\n isMultiline: false\n };\n\n this.bind([\n 'showTooltip',\n 'updateTooltip',\n 'hideTooltip',\n 'hideTooltipOnScroll',\n 'getTooltipContent',\n 'globalRebuild',\n 'globalShow',\n 'globalHide',\n 'onWindowResize',\n 'mouseOnToolTip'\n ]);\n\n this.mount = true;\n this.delayShowLoop = null;\n this.delayHideLoop = null;\n this.delayReshow = null;\n this.intervalUpdateContent = null;\n }\n\n /**\n * For unify the bind and unbind listener\n */\n bind(methodArray) {\n methodArray.forEach((method) => {\n this[method] = this[method].bind(this);\n });\n }\n\n componentDidMount() {\n const { insecure, resizeHide, disableInternalStyle } = this.props;\n this.mount = true;\n\n this.bindListener(); // Bind listener for tooltip\n this.bindWindowEvents(resizeHide); // Bind global event for static method\n\n if (!disableInternalStyle) {\n this.injectStyles(); // Inject styles for each DOM root having tooltip.\n }\n }\n\n static getDerivedStateFromProps(nextProps, prevState) {\n const { ariaProps } = prevState;\n const newAriaProps = parseAria(nextProps);\n const isChanged = Object.keys(newAriaProps).some((props) => {\n return newAriaProps[props] !== ariaProps[props];\n });\n if (!isChanged) {\n return null;\n }\n return {\n ...prevState,\n ariaProps: newAriaProps\n };\n }\n\n componentWillUnmount() {\n this.mount = false;\n\n this.clearTimer();\n\n this.unbindListener();\n this.removeScrollListener(this.state.currentTarget);\n this.unbindWindowEvents();\n }\n\n /* Look for the closest DOM root having tooltip and inject styles. */\n injectStyles() {\n const { tooltipRef } = this;\n if (!tooltipRef) {\n return;\n }\n\n let parentNode = tooltipRef.parentNode;\n while (parentNode.parentNode) {\n parentNode = parentNode.parentNode;\n }\n\n let domRoot;\n\n switch (parentNode.constructor.name) {\n case 'Document':\n case 'HTMLDocument':\n case undefined:\n domRoot = parentNode.head;\n break;\n case 'ShadowRoot':\n default:\n domRoot = parentNode;\n break;\n }\n\n // Prevent styles duplication.\n if (!domRoot.querySelector('style[data-react-tooltip]')) {\n const style = document.createElement('style');\n style.textContent = baseCss;\n style.setAttribute('data-react-tooltip', 'true');\n\n domRoot.appendChild(style);\n }\n }\n\n /**\n * Return if the mouse is on the tooltip.\n * @returns {boolean} true - mouse is on the tooltip\n */\n mouseOnToolTip() {\n const { show } = this.state;\n\n if (show && this.tooltipRef) {\n /* old IE or Firefox work around */\n if (!this.tooltipRef.matches) {\n /* old IE work around */\n if (this.tooltipRef.msMatchesSelector) {\n this.tooltipRef.matches = this.tooltipRef.msMatchesSelector;\n } else {\n /* old Firefox work around */\n this.tooltipRef.matches = this.tooltipRef.mozMatchesSelector;\n }\n }\n return this.tooltipRef.matches(':hover');\n }\n return false;\n }\n\n /**\n * Pick out corresponded target elements\n */\n getTargetArray(id) {\n let targetArray = [];\n let selector;\n if (!id) {\n selector = '[data-tip]:not([data-for])';\n } else {\n const escaped = id.replace(/\\\\/g, '\\\\\\\\').replace(/\"/g, '\\\\\"');\n selector = `[data-tip][data-for=\"${escaped}\"]`;\n }\n\n // Scan document for shadow DOM elements\n nodeListToArray(document.getElementsByTagName('*'))\n .filter((element) => element.shadowRoot)\n .forEach((element) => {\n targetArray = targetArray.concat(\n nodeListToArray(element.shadowRoot.querySelectorAll(selector))\n );\n });\n return targetArray.concat(\n nodeListToArray(document.querySelectorAll(selector))\n );\n }\n\n /**\n * Bind listener to the target elements\n * These listeners used to trigger showing or hiding the tooltip\n */\n bindListener() {\n const { id, globalEventOff, isCapture } = this.props;\n const targetArray = this.getTargetArray(id);\n\n targetArray.forEach((target) => {\n if (target.getAttribute('currentItem') === null) {\n target.setAttribute('currentItem', 'false');\n }\n this.unbindBasicListener(target);\n if (this.isCustomEvent(target)) {\n this.customUnbindListener(target);\n }\n });\n\n if (this.isBodyMode()) {\n this.bindBodyListener(targetArray);\n } else {\n targetArray.forEach((target) => {\n const isCaptureMode = this.isCapture(target);\n const effect = this.getEffect(target);\n if (this.isCustomEvent(target)) {\n this.customBindListener(target);\n return;\n }\n\n target.addEventListener('mouseenter', this.showTooltip, isCaptureMode);\n target.addEventListener('focus', this.showTooltip, isCaptureMode);\n if (effect === 'float') {\n target.addEventListener(\n 'mousemove',\n this.updateTooltip,\n isCaptureMode\n );\n }\n target.addEventListener('mouseleave', this.hideTooltip, isCaptureMode);\n target.addEventListener('blur', this.hideTooltip, isCaptureMode);\n });\n }\n\n // Global event to hide tooltip\n if (globalEventOff) {\n window.removeEventListener(globalEventOff, this.hideTooltip);\n window.addEventListener(globalEventOff, this.hideTooltip, isCapture);\n }\n\n // Track removal of targetArray elements from DOM\n this.bindRemovalTracker();\n }\n\n /**\n * Unbind listeners on target elements\n */\n unbindListener() {\n const { id, globalEventOff } = this.props;\n if (this.isBodyMode()) {\n this.unbindBodyListener();\n } else {\n const targetArray = this.getTargetArray(id);\n targetArray.forEach((target) => {\n this.unbindBasicListener(target);\n if (this.isCustomEvent(target)) this.customUnbindListener(target);\n });\n }\n\n if (globalEventOff)\n window.removeEventListener(globalEventOff, this.hideTooltip);\n this.unbindRemovalTracker();\n }\n\n /**\n * Invoke this before bind listener and unmount the component\n * it is necessary to invoke this even when binding custom event\n * so that the tooltip can switch between custom and default listener\n */\n unbindBasicListener(target) {\n const isCaptureMode = this.isCapture(target);\n target.removeEventListener('mouseenter', this.showTooltip, isCaptureMode);\n target.removeEventListener('mousemove', this.updateTooltip, isCaptureMode);\n target.removeEventListener('mouseleave', this.hideTooltip, isCaptureMode);\n }\n\n getTooltipContent() {\n const { getContent, children } = this.props;\n\n // Generate tooltip content\n let content;\n if (getContent) {\n if (Array.isArray(getContent)) {\n content = getContent[0] && getContent[0](this.state.originTooltip);\n } else {\n content = getContent(this.state.originTooltip);\n }\n }\n\n return getTipContent(\n this.state.originTooltip,\n children,\n content,\n this.state.isMultiline\n );\n }\n\n isEmptyTip(placeholder) {\n return (\n (typeof placeholder === 'string' && placeholder === '') ||\n placeholder === null\n );\n }\n\n /**\n * When mouse enter, show the tooltip\n */\n showTooltip(e, isGlobalCall) {\n if (!this.tooltipRef) {\n return;\n }\n\n if (isGlobalCall) {\n // Don't trigger other elements belongs to other ReactTooltip\n const targetArray = this.getTargetArray(this.props.id);\n const isMyElement = targetArray.some((ele) => ele === e.currentTarget);\n if (!isMyElement) return;\n }\n // Get the tooltip content\n // calculate in this phrase so that tip width height can be detected\n const { multiline, getContent } = this.props;\n const originTooltip = e.currentTarget.getAttribute('data-tip');\n const isMultiline =\n e.currentTarget.getAttribute('data-multiline') || multiline || false;\n\n // If it is focus event or called by ReactTooltip.show, switch to `solid` effect\n const switchToSolid = e instanceof window.FocusEvent || isGlobalCall;\n\n // if it needs to skip adding hide listener to scroll\n let scrollHide = true;\n if (e.currentTarget.getAttribute('data-scroll-hide')) {\n scrollHide = e.currentTarget.getAttribute('data-scroll-hide') === 'true';\n } else if (this.props.scrollHide != null) {\n scrollHide = this.props.scrollHide;\n }\n\n // adding aria-describedby to target to make tooltips read by screen readers\n if (e && e.currentTarget && e.currentTarget.setAttribute) {\n e.currentTarget.setAttribute(\n 'aria-describedby',\n this.props.id || this.state.uuid\n );\n }\n\n // Make sure the correct place is set\n const desiredPlace =\n e.currentTarget.getAttribute('data-place') || this.props.place || 'top';\n const effect =\n (switchToSolid && 'solid') || this.getEffect(e.currentTarget);\n const offset =\n e.currentTarget.getAttribute('data-offset') || this.props.offset || {};\n const result = getPosition(\n e,\n e.currentTarget,\n this.tooltipRef,\n desiredPlace.split(',')[0],\n desiredPlace,\n effect,\n offset\n );\n if (result.position && this.props.overridePosition) {\n result.position = this.props.overridePosition(\n result.position,\n e,\n e.currentTarget,\n this.tooltipRef,\n desiredPlace,\n desiredPlace,\n effect,\n offset\n );\n }\n\n const place = result.isNewState\n ? result.newState.place\n : desiredPlace.split(',')[0];\n\n // To prevent previously created timers from triggering\n this.clearTimer();\n\n const target = e.currentTarget;\n\n const reshowDelay = this.state.show\n ? target.getAttribute('data-delay-update') || this.props.delayUpdate\n : 0;\n\n const self = this;\n\n const updateState = function updateState() {\n self.setState(\n {\n originTooltip: originTooltip,\n isMultiline: isMultiline,\n desiredPlace: desiredPlace,\n place: place,\n type: target.getAttribute('data-type') || self.props.type || 'dark',\n customColors: {\n text:\n target.getAttribute('data-text-color') ||\n self.props.textColor ||\n null,\n background:\n target.getAttribute('data-background-color') ||\n self.props.backgroundColor ||\n null,\n border:\n target.getAttribute('data-border-color') ||\n self.props.borderColor ||\n null,\n arrow:\n target.getAttribute('data-arrow-color') ||\n self.props.arrowColor ||\n null\n },\n customRadius: {\n tooltip:\n target.getAttribute('data-tooltip-radius') ||\n self.props.tooltipRadius ||\n '3',\n arrow:\n target.getAttribute('data-arrow-radius') ||\n self.props.arrowRadius ||\n '0'\n },\n effect: effect,\n offset: offset,\n padding: target.getAttribute('data-padding') || self.props.padding,\n html:\n (target.getAttribute('data-html')\n ? target.getAttribute('data-html') === 'true'\n : self.props.html) || false,\n delayShow:\n target.getAttribute('data-delay-show') || self.props.delayShow || 0,\n delayHide:\n target.getAttribute('data-delay-hide') || self.props.delayHide || 0,\n delayUpdate:\n target.getAttribute('data-delay-update') ||\n self.props.delayUpdate ||\n 0,\n border:\n (target.getAttribute('data-border')\n ? target.getAttribute('data-border') === 'true'\n : self.props.border) || false,\n borderClass:\n target.getAttribute('data-border-class') ||\n self.props.borderClass ||\n 'border',\n extraClass:\n target.getAttribute('data-class') ||\n self.props.class ||\n self.props.className ||\n '',\n disable:\n (target.getAttribute('data-tip-disable')\n ? target.getAttribute('data-tip-disable') === 'true'\n : self.props.disable) || false,\n currentTarget: target\n },\n () => {\n if (scrollHide) {\n self.addScrollListener(self.state.currentTarget);\n }\n\n self.updateTooltip(e);\n\n if (getContent && Array.isArray(getContent)) {\n self.intervalUpdateContent = setInterval(() => {\n if (self.mount) {\n const { getContent } = self.props;\n const placeholder = getTipContent(\n originTooltip,\n '',\n getContent[0](),\n isMultiline\n );\n const isEmptyTip = self.isEmptyTip(placeholder);\n self.setState({ isEmptyTip });\n self.updatePosition();\n }\n }, getContent[1]);\n }\n }\n );\n };\n\n // If there is no delay call immediately, don't allow events to get in first.\n if (reshowDelay) {\n this.delayReshow = setTimeout(updateState, reshowDelay);\n } else {\n updateState();\n }\n }\n\n /**\n * When mouse hover, update tool tip\n */\n updateTooltip(e) {\n const { delayShow, disable } = this.state;\n const { afterShow, disable: disableProp } = this.props;\n const placeholder = this.getTooltipContent();\n const eventTarget = e.currentTarget || e.target;\n\n // Check if the mouse is actually over the tooltip, if so don't hide the tooltip\n if (this.mouseOnToolTip()) {\n return;\n }\n\n // if the tooltip is empty, disable the tooltip\n if (this.isEmptyTip(placeholder) || disable || disableProp) {\n return;\n }\n\n const delayTime = !this.state.show ? parseInt(delayShow, 10) : 0;\n\n const updateState = () => {\n if (\n (Array.isArray(placeholder) && placeholder.length > 0) ||\n placeholder\n ) {\n const isInvisible = !this.state.show;\n this.setState(\n {\n currentEvent: e,\n currentTarget: eventTarget,\n show: true\n },\n () => {\n this.updatePosition(() => {\n if (isInvisible && afterShow) {\n afterShow(e);\n }\n });\n }\n );\n }\n };\n\n if (this.delayShowLoop) {\n clearTimeout(this.delayShowLoop);\n }\n if (delayTime) {\n this.delayShowLoop = setTimeout(updateState, delayTime);\n } else {\n this.delayShowLoop = null;\n updateState();\n }\n }\n\n /*\n * If we're mousing over the tooltip remove it when we leave.\n */\n listenForTooltipExit() {\n const { show } = this.state;\n\n if (show && this.tooltipRef) {\n this.tooltipRef.addEventListener('mouseleave', this.hideTooltip);\n }\n }\n\n removeListenerForTooltipExit() {\n const { show } = this.state;\n\n if (show && this.tooltipRef) {\n this.tooltipRef.removeEventListener('mouseleave', this.hideTooltip);\n }\n }\n\n /**\n * When mouse leave, hide tooltip\n */\n hideTooltip(e, hasTarget, options = { isScroll: false }) {\n const { disable } = this.state;\n const { isScroll } = options;\n const delayHide = isScroll ? 0 : this.state.delayHide;\n const { afterHide, disable: disableProp } = this.props;\n const placeholder = this.getTooltipContent();\n if (!this.mount) return;\n if (this.isEmptyTip(placeholder) || disable || disableProp) return; // if the tooltip is empty, disable the tooltip\n if (hasTarget) {\n // Don't trigger other elements belongs to other ReactTooltip\n const targetArray = this.getTargetArray(this.props.id);\n const isMyElement = targetArray.some((ele) => ele === e.currentTarget);\n if (!isMyElement || !this.state.show) return;\n }\n\n // clean up aria-describedby when hiding tooltip\n if (e && e.currentTarget && e.currentTarget.removeAttribute) {\n e.currentTarget.removeAttribute('aria-describedby');\n }\n\n const resetState = () => {\n const isVisible = this.state.show;\n // Check if the mouse is actually over the tooltip, if so don't hide the tooltip\n if (this.mouseOnToolTip()) {\n this.listenForTooltipExit();\n return;\n }\n\n this.removeListenerForTooltipExit();\n\n this.setState({ show: false }, () => {\n this.removeScrollListener(this.state.currentTarget);\n if (isVisible && afterHide) {\n afterHide(e);\n }\n });\n };\n\n this.clearTimer();\n if (delayHide) {\n this.delayHideLoop = setTimeout(resetState, parseInt(delayHide, 10));\n } else {\n resetState();\n }\n }\n\n /**\n * When scroll, hide tooltip\n */\n hideTooltipOnScroll(event, hasTarget) {\n this.hideTooltip(event, hasTarget, { isScroll: true });\n }\n\n /**\n * Add scroll event listener when tooltip show\n * automatically hide the tooltip when scrolling\n */\n addScrollListener(currentTarget) {\n const isCaptureMode = this.isCapture(currentTarget);\n window.addEventListener('scroll', this.hideTooltipOnScroll, isCaptureMode);\n }\n\n removeScrollListener(currentTarget) {\n const isCaptureMode = this.isCapture(currentTarget);\n window.removeEventListener(\n 'scroll',\n this.hideTooltipOnScroll,\n isCaptureMode\n );\n }\n\n // Calculation the position\n updatePosition(callbackAfter) {\n const { currentEvent, currentTarget, place, desiredPlace, effect, offset } =\n this.state;\n const node = this.tooltipRef;\n const result = getPosition(\n currentEvent,\n currentTarget,\n node,\n place,\n desiredPlace,\n effect,\n offset\n );\n if (result.position && this.props.overridePosition) {\n result.position = this.props.overridePosition(\n result.position,\n currentEvent,\n currentTarget,\n node,\n place,\n desiredPlace,\n effect,\n offset\n );\n }\n\n if (result.isNewState) {\n // Switch to reverse placement\n return this.setState(result.newState, () => {\n this.updatePosition(callbackAfter);\n });\n }\n\n if (callbackAfter && typeof callbackAfter === 'function') {\n callbackAfter();\n }\n\n // Set tooltip position\n node.style.left = result.position.left + 'px';\n node.style.top = result.position.top + 'px';\n }\n\n /**\n * CLear all kinds of timeout of interval\n */\n clearTimer() {\n if (this.delayShowLoop) {\n clearTimeout(this.delayShowLoop);\n this.delayShowLoop = null;\n }\n if (this.delayHideLoop) {\n clearTimeout(this.delayHideLoop);\n this.delayHideLoop = null;\n }\n if (this.delayReshow) {\n clearTimeout(this.delayReshow);\n this.delayReshow = null;\n }\n if (this.intervalUpdateContent) {\n clearInterval(this.intervalUpdateContent);\n this.intervalUpdateContent = null;\n }\n }\n\n hasCustomColors() {\n return Boolean(\n Object.keys(this.state.customColors).find(\n (color) => color !== 'border' && this.state.customColors[color]\n ) ||\n (this.state.border && this.state.customColors['border'])\n );\n }\n\n render() {\n const { extraClass, html, ariaProps, disable, uuid } = this.state;\n const content = this.getTooltipContent();\n const isEmptyTip = this.isEmptyTip(content);\n const style = this.props.disableInternalStyle\n ? ''\n : generateTooltipStyle(\n this.state.uuid,\n this.state.customColors,\n this.state.type,\n this.state.border,\n this.state.padding,\n this.state.customRadius\n );\n\n const tooltipClass =\n '__react_component_tooltip' +\n ` ${this.state.uuid}` +\n (this.state.show && !disable && !isEmptyTip ? ' show' : '') +\n (this.state.border ? ' ' + this.state.borderClass : '') +\n ` place-${this.state.place}` + // top, bottom, left, right\n ` type-${this.hasCustomColors() ? 'custom' : this.state.type}` + // dark, success, warning, error, info, light, custom\n (this.props.delayUpdate ? ' allow_hover' : '') +\n (this.props.clickable ? ' allow_click' : '');\n\n let Wrapper = this.props.wrapper;\n\n if (ReactTooltip.supportedWrappers.indexOf(Wrapper) < 0) {\n Wrapper = ReactTooltip.defaultProps.wrapper;\n }\n\n const wrapperClassName = [tooltipClass, extraClass]\n .filter(Boolean)\n .join(' ');\n\n if (html) {\n const htmlContent = `${content}${\n style ? `\\n<style aria-hidden=\"true\">${style}</style>` : ''\n }`;\n\n return (\n <Wrapper\n className={`${wrapperClassName}`}\n id={this.props.id || uuid}\n ref={(ref) => (this.tooltipRef = ref)}\n {...ariaProps}\n data-id=\"tooltip\"\n dangerouslySetInnerHTML={{ __html: htmlContent }}\n />\n );\n } else {\n return (\n <Wrapper\n className={`${wrapperClassName}`}\n id={this.props.id || uuid}\n {...ariaProps}\n ref={(ref) => (this.tooltipRef = ref)}\n data-id=\"tooltip\"\n >\n {style && (\n <style\n dangerouslySetInnerHTML={{ __html: style }}\n aria-hidden=\"true\"\n />\n )}\n {content}\n </Wrapper>\n );\n }\n }\n}\n\nexport default ReactTooltip;\n"],"names":["global","fails","require$$0","NATIVE_BIND","call","getOwnPropertyDescriptor","createPropertyDescriptor","FunctionPrototype","uncurryThisRaw","toString","classofRaw","require$$1","uncurryThis","classof","require$$2","$Object","isNullOrUndefined","$TypeError","requireObjectCoercible","IndexedObject","toIndexedObject","documentAll","$documentAll","isCallable","isObject","getBuiltIn","NATIVE_SYMBOL","USE_SYMBOL_AS_UID","require$$3","isSymbol","$String","tryToString","aCallable","getMethod","ordinaryToPrimitive","defineProperty","defineGlobalProperty","store","sharedModule","toObject","uid","shared","hasOwn","require$$4","require$$5","Symbol","wellKnownSymbol","toPrimitive","toPropertyKey","document","EXISTS","documentCreateElement","DESCRIPTORS","require$$6","IE8_DOM_DEFINE","require$$7","$getOwnPropertyDescriptor","anObject","V8_PROTOTYPE_DEFINE_BUG","CONFIGURABLE","definePropertyModule","createNonEnumerableProperty","inspectSource","WeakMap","sharedKey","hiddenKeys","TypeError","makeBuiltIn","makeBuiltInModule","defineBuiltIn","toIntegerOrInfinity","min","toAbsoluteIndex","toLength","lengthOfArrayLike","createMethod","push","enumBugKeys","internalObjectKeys","ownKeys","copyConstructorProperties","isForced","bind","isArray","TO_STRING_TAG","isConstructor","arraySpeciesConstructor","arraySpeciesCreate","objectKeys","html","addToUnscopables","GLOBAL","HIDE","REBUILD","SHOW","dispatchGlobalEvent","eventName","opts","event","window","CustomEvent","detail","createEvent","initEvent","dispatchEvent","target","hide","CONSTANT","rebuild","show","prototype","globalRebuild","mount","unbindListener","bindListener","globalShow","hasTarget","showTooltip","currentTarget","globalHide","hideTooltip","bindWindowEvents","resizeHide","removeEventListener","addEventListener","onWindowResize","unbindWindowEvents","checkStatus","dataEventOff","e","state","id","props","isCapture","currentItem","getAttribute","stopPropagation","setAttribute","setUntargetItems","getTargetArray","targetArray","i","length","customListeners","set","listener","map","Object","configurable","value","get","undefined","isCustomEvent","ele","customBindListener","eventOff","dataEvent","split","forEach","customListener","customUnbindListener","getEffect","dataEffect","effect","makeProxy","proxy","key","bodyListener","callback","options","respectEffect","customEvent","tip","forId","lastTarget","parentElement","isTargetBelongsToTooltip","findCustomEvents","dataAttribute","events","getBody","getElementsByTagName","isBodyMode","bodyMode","bindBodyListener","possibleCustomEvents","possibleCustomEventsOff","body","customEvents","customEventsOff","unbindBodyListener","listeners","bodyModeListeners","mouseover","mousemove","updateTooltip","mouseout","targetEventOff","getMutationObserverClass","MutationObserver","WebKitMutationObserver","MozMutationObserver","bindRemovalTracker","observer","mutations","m1","mutation","m2","removedNodes","element","observe","childList","subtree","removalTracker","unbindRemovalTracker","disconnect","node","place","desiredPlace","offset","getDimensions","tipWidth","width","tipHeight","height","targetWidth","targetHeight","getCurrentOffset","mouseX","mouseY","defaultOffset","getDefaultPosition","calculateOffset","extraOffsetX","extraOffsetY","windowWidth","innerWidth","windowHeight","innerHeight","getParent","parentTop","parentLeft","getTipOffsetLeft","offsetX","l","getTipOffsetRight","r","getTipOffsetTop","offsetY","t","getTipOffsetBottom","b","outsideLeft","p","outsideRight","outsideTop","outsideBottom","outside","inside","placeIsInside","top","bottom","left","right","choose","allPlaces","concat","d","chosen","isNewState","newPlace","newState","position","parseInt","getBoundingClientRect","boundingClientRect","targetTop","targetLeft","clientX","clientY","disToMouse","triangleHeight","cursorHeight","apply","JSON","parse","replace","currentParent","computedStyle","getComputedStyle","getPropertyValue","TipContent","children","getContent","multiline","regexp","test","parseAria","ariaObj","keys","filter","prop","nodeList","hasOwnProperty","Array","slice","fill","index","generateUUID","uuid","defaultColors","dark","text","background","border","arrow","success","warning","error","info","light","getDefaultPopupColors","type","_objectSpread","DEFAULT_PADDING","DEFAULT_RADIUS","tooltip","generateTooltipStyle","customColors","hasBorder","padding","radius","generateStyle","getPopupColors","colors","textColor","backgroundColor","borderColor","arrowColor","arrowRadius","tooltipRadius","ReactTooltip","staticMethods","windowListener","trackRemoval","borderClass","customRadius","extraClass","delayHide","delayShow","currentEvent","ariaProps","isEmptyTip","disable","originTooltip","isMultiline","delayShowLoop","delayHideLoop","delayReshow","intervalUpdateContent","methodArray","method","insecure","disableInternalStyle","injectStyles","clearTimer","removeScrollListener","tooltipRef","parentNode","domRoot","constructor","name","head","querySelector","style","createElement","textContent","baseCss","appendChild","matches","msMatchesSelector","mozMatchesSelector","selector","escaped","nodeListToArray","shadowRoot","querySelectorAll","globalEventOff","unbindBasicListener","isCaptureMode","content","getTipContent","placeholder","isGlobalCall","isMyElement","some","switchToSolid","FocusEvent","scrollHide","result","getPosition","overridePosition","reshowDelay","delayUpdate","self","updateState","setState","className","addScrollListener","setInterval","updatePosition","setTimeout","afterShow","disableProp","getTooltipContent","eventTarget","mouseOnToolTip","delayTime","isInvisible","clearTimeout","isScroll","afterHide","removeAttribute","resetState","isVisible","listenForTooltipExit","removeListenerForTooltipExit","hideTooltipOnScroll","callbackAfter","clearInterval","Boolean","find","color","tooltipClass","hasCustomColors","clickable","Wrapper","wrapper","supportedWrappers","indexOf","defaultProps","wrapperClassName","join","htmlContent","ref","__html","PropTypes","string","any","object","bool","number","func","nextProps","prevState","newAriaProps","isChanged","React","Component"],"mappings":"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"}
|