{"version":3,"sources":["webpack:///./node_modules/css-animation/es/Event.js","webpack:///./node_modules/css-animation/es/index.js","webpack:///./node_modules/css-animation/lib/Event.js"],"names":["START_EVENT_NAME_MAP","transitionstart","transition","WebkitTransition","MozTransition","OTransition","msTransition","animationstart","animation","WebkitAnimation","MozAnimation","OAnimation","msAnimation","END_EVENT_NAME_MAP","transitionend","animationend","startEvents","endEvents","addEventListener","node","eventName","eventListener","removeEventListener","window","document","style","createElement","process","EVENT_NAME_MAP","events","baseEventName","hasOwnProperty","baseEvents","styleName","push","detectEvents","addStartEventListener","length","forEach","startEvent","setTimeout","removeStartEventListener","addEndEventListener","endEvent","removeEndEventListener","isCssAnimationSupported","Event","capitalPrefixes","prefixes","getStyleProperty","name","getComputedStyle","ret","i","getPropertyValue","fixBrowserByTimeout","transitionDelay","parseFloat","transitionDuration","animationDelay","animationDuration","time","Math","max","rcEndAnimTimeout","rcEndListener","clearBrowserBugTimeout","clearTimeout","transitionName","endCallback","nameIsObj","className","activeClassName","active","end","start","nodeClasses","Object","prototype","toString","call","e","target","rcAnimTimeout","remove","add","stop","callback","s","setTransition","p","value","property","v","undefined","prefix","defineProperty","exports","TransitionEvents","module"],"mappings":"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","file":"npm.css-animation.c920b4ddeb9b68365139.js","sourcesContent":["var START_EVENT_NAME_MAP = {\n transitionstart: {\n transition: 'transitionstart',\n WebkitTransition: 'webkitTransitionStart',\n MozTransition: 'mozTransitionStart',\n OTransition: 'oTransitionStart',\n msTransition: 'MSTransitionStart'\n },\n\n animationstart: {\n animation: 'animationstart',\n WebkitAnimation: 'webkitAnimationStart',\n MozAnimation: 'mozAnimationStart',\n OAnimation: 'oAnimationStart',\n msAnimation: 'MSAnimationStart'\n }\n};\n\nvar END_EVENT_NAME_MAP = {\n transitionend: {\n transition: 'transitionend',\n WebkitTransition: 'webkitTransitionEnd',\n MozTransition: 'mozTransitionEnd',\n OTransition: 'oTransitionEnd',\n msTransition: 'MSTransitionEnd'\n },\n\n animationend: {\n animation: 'animationend',\n WebkitAnimation: 'webkitAnimationEnd',\n MozAnimation: 'mozAnimationEnd',\n OAnimation: 'oAnimationEnd',\n msAnimation: 'MSAnimationEnd'\n }\n};\n\nvar startEvents = [];\nvar endEvents = [];\n\nfunction detectEvents() {\n var testEl = document.createElement('div');\n var style = testEl.style;\n\n if (!('AnimationEvent' in window)) {\n delete START_EVENT_NAME_MAP.animationstart.animation;\n delete END_EVENT_NAME_MAP.animationend.animation;\n }\n\n if (!('TransitionEvent' in window)) {\n delete START_EVENT_NAME_MAP.transitionstart.transition;\n delete END_EVENT_NAME_MAP.transitionend.transition;\n }\n\n function process(EVENT_NAME_MAP, events) {\n for (var baseEventName in EVENT_NAME_MAP) {\n if (EVENT_NAME_MAP.hasOwnProperty(baseEventName)) {\n var baseEvents = EVENT_NAME_MAP[baseEventName];\n for (var styleName in baseEvents) {\n if (styleName in style) {\n events.push(baseEvents[styleName]);\n break;\n }\n }\n }\n }\n }\n\n process(START_EVENT_NAME_MAP, startEvents);\n process(END_EVENT_NAME_MAP, endEvents);\n}\n\nif (typeof window !== 'undefined' && typeof document !== 'undefined') {\n detectEvents();\n}\n\nfunction addEventListener(node, eventName, eventListener) {\n node.addEventListener(eventName, eventListener, false);\n}\n\nfunction removeEventListener(node, eventName, eventListener) {\n node.removeEventListener(eventName, eventListener, false);\n}\n\nvar TransitionEvents = {\n // Start events\n startEvents: startEvents,\n\n addStartEventListener: function addStartEventListener(node, eventListener) {\n if (startEvents.length === 0) {\n window.setTimeout(eventListener, 0);\n return;\n }\n startEvents.forEach(function (startEvent) {\n addEventListener(node, startEvent, eventListener);\n });\n },\n removeStartEventListener: function removeStartEventListener(node, eventListener) {\n if (startEvents.length === 0) {\n return;\n }\n startEvents.forEach(function (startEvent) {\n removeEventListener(node, startEvent, eventListener);\n });\n },\n\n\n // End events\n endEvents: endEvents,\n\n addEndEventListener: function addEndEventListener(node, eventListener) {\n if (endEvents.length === 0) {\n window.setTimeout(eventListener, 0);\n return;\n }\n endEvents.forEach(function (endEvent) {\n addEventListener(node, endEvent, eventListener);\n });\n },\n removeEndEventListener: function removeEndEventListener(node, eventListener) {\n if (endEvents.length === 0) {\n return;\n }\n endEvents.forEach(function (endEvent) {\n removeEventListener(node, endEvent, eventListener);\n });\n }\n};\n\nexport default TransitionEvents;","import _typeof from 'babel-runtime/helpers/typeof';\nimport Event from './Event';\nimport classes from 'component-classes';\n\nvar isCssAnimationSupported = Event.endEvents.length !== 0;\nvar capitalPrefixes = ['Webkit', 'Moz', 'O',\n// ms is special .... !\n'ms'];\nvar prefixes = ['-webkit-', '-moz-', '-o-', 'ms-', ''];\n\nfunction getStyleProperty(node, name) {\n // old ff need null, https://developer.mozilla.org/en-US/docs/Web/API/Window/getComputedStyle\n var style = window.getComputedStyle(node, null);\n var ret = '';\n for (var i = 0; i < prefixes.length; i++) {\n ret = style.getPropertyValue(prefixes[i] + name);\n if (ret) {\n break;\n }\n }\n return ret;\n}\n\nfunction fixBrowserByTimeout(node) {\n if (isCssAnimationSupported) {\n var transitionDelay = parseFloat(getStyleProperty(node, 'transition-delay')) || 0;\n var transitionDuration = parseFloat(getStyleProperty(node, 'transition-duration')) || 0;\n var animationDelay = parseFloat(getStyleProperty(node, 'animation-delay')) || 0;\n var animationDuration = parseFloat(getStyleProperty(node, 'animation-duration')) || 0;\n var time = Math.max(transitionDuration + transitionDelay, animationDuration + animationDelay);\n // sometimes, browser bug\n node.rcEndAnimTimeout = setTimeout(function () {\n node.rcEndAnimTimeout = null;\n if (node.rcEndListener) {\n node.rcEndListener();\n }\n }, time * 1000 + 200);\n }\n}\n\nfunction clearBrowserBugTimeout(node) {\n if (node.rcEndAnimTimeout) {\n clearTimeout(node.rcEndAnimTimeout);\n node.rcEndAnimTimeout = null;\n }\n}\n\nvar cssAnimation = function cssAnimation(node, transitionName, endCallback) {\n var nameIsObj = (typeof transitionName === 'undefined' ? 'undefined' : _typeof(transitionName)) === 'object';\n var className = nameIsObj ? transitionName.name : transitionName;\n var activeClassName = nameIsObj ? transitionName.active : transitionName + '-active';\n var end = endCallback;\n var start = void 0;\n var active = void 0;\n var nodeClasses = classes(node);\n\n if (endCallback && Object.prototype.toString.call(endCallback) === '[object Object]') {\n end = endCallback.end;\n start = endCallback.start;\n active = endCallback.active;\n }\n\n if (node.rcEndListener) {\n node.rcEndListener();\n }\n\n node.rcEndListener = function (e) {\n if (e && e.target !== node) {\n return;\n }\n\n if (node.rcAnimTimeout) {\n clearTimeout(node.rcAnimTimeout);\n node.rcAnimTimeout = null;\n }\n\n clearBrowserBugTimeout(node);\n\n nodeClasses.remove(className);\n nodeClasses.remove(activeClassName);\n\n Event.removeEndEventListener(node, node.rcEndListener);\n node.rcEndListener = null;\n\n // Usually this optional end is used for informing an owner of\n // a leave animation and telling it to remove the child.\n if (end) {\n end();\n }\n };\n\n Event.addEndEventListener(node, node.rcEndListener);\n\n if (start) {\n start();\n }\n nodeClasses.add(className);\n\n node.rcAnimTimeout = setTimeout(function () {\n node.rcAnimTimeout = null;\n nodeClasses.add(activeClassName);\n if (active) {\n setTimeout(active, 0);\n }\n fixBrowserByTimeout(node);\n // 30ms for firefox\n }, 30);\n\n return {\n stop: function stop() {\n if (node.rcEndListener) {\n node.rcEndListener();\n }\n }\n };\n};\n\ncssAnimation.style = function (node, style, callback) {\n if (node.rcEndListener) {\n node.rcEndListener();\n }\n\n node.rcEndListener = function (e) {\n if (e && e.target !== node) {\n return;\n }\n\n if (node.rcAnimTimeout) {\n clearTimeout(node.rcAnimTimeout);\n node.rcAnimTimeout = null;\n }\n\n clearBrowserBugTimeout(node);\n\n Event.removeEndEventListener(node, node.rcEndListener);\n node.rcEndListener = null;\n\n // Usually this optional callback is used for informing an owner of\n // a leave animation and telling it to remove the child.\n if (callback) {\n callback();\n }\n };\n\n Event.addEndEventListener(node, node.rcEndListener);\n\n node.rcAnimTimeout = setTimeout(function () {\n for (var s in style) {\n if (style.hasOwnProperty(s)) {\n node.style[s] = style[s];\n }\n }\n node.rcAnimTimeout = null;\n fixBrowserByTimeout(node);\n }, 0);\n};\n\ncssAnimation.setTransition = function (node, p, value) {\n var property = p;\n var v = value;\n if (value === undefined) {\n v = property;\n property = '';\n }\n property = property || '';\n capitalPrefixes.forEach(function (prefix) {\n node.style[prefix + 'Transition' + property] = v;\n });\n};\n\ncssAnimation.isCssAnimationSupported = isCssAnimationSupported;\n\nexport { isCssAnimationSupported };\n\nexport default cssAnimation;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nvar START_EVENT_NAME_MAP = {\n transitionstart: {\n transition: 'transitionstart',\n WebkitTransition: 'webkitTransitionStart',\n MozTransition: 'mozTransitionStart',\n OTransition: 'oTransitionStart',\n msTransition: 'MSTransitionStart'\n },\n\n animationstart: {\n animation: 'animationstart',\n WebkitAnimation: 'webkitAnimationStart',\n MozAnimation: 'mozAnimationStart',\n OAnimation: 'oAnimationStart',\n msAnimation: 'MSAnimationStart'\n }\n};\n\nvar END_EVENT_NAME_MAP = {\n transitionend: {\n transition: 'transitionend',\n WebkitTransition: 'webkitTransitionEnd',\n MozTransition: 'mozTransitionEnd',\n OTransition: 'oTransitionEnd',\n msTransition: 'MSTransitionEnd'\n },\n\n animationend: {\n animation: 'animationend',\n WebkitAnimation: 'webkitAnimationEnd',\n MozAnimation: 'mozAnimationEnd',\n OAnimation: 'oAnimationEnd',\n msAnimation: 'MSAnimationEnd'\n }\n};\n\nvar startEvents = [];\nvar endEvents = [];\n\nfunction detectEvents() {\n var testEl = document.createElement('div');\n var style = testEl.style;\n\n if (!('AnimationEvent' in window)) {\n delete START_EVENT_NAME_MAP.animationstart.animation;\n delete END_EVENT_NAME_MAP.animationend.animation;\n }\n\n if (!('TransitionEvent' in window)) {\n delete START_EVENT_NAME_MAP.transitionstart.transition;\n delete END_EVENT_NAME_MAP.transitionend.transition;\n }\n\n function process(EVENT_NAME_MAP, events) {\n for (var baseEventName in EVENT_NAME_MAP) {\n if (EVENT_NAME_MAP.hasOwnProperty(baseEventName)) {\n var baseEvents = EVENT_NAME_MAP[baseEventName];\n for (var styleName in baseEvents) {\n if (styleName in style) {\n events.push(baseEvents[styleName]);\n break;\n }\n }\n }\n }\n }\n\n process(START_EVENT_NAME_MAP, startEvents);\n process(END_EVENT_NAME_MAP, endEvents);\n}\n\nif (typeof window !== 'undefined' && typeof document !== 'undefined') {\n detectEvents();\n}\n\nfunction addEventListener(node, eventName, eventListener) {\n node.addEventListener(eventName, eventListener, false);\n}\n\nfunction removeEventListener(node, eventName, eventListener) {\n node.removeEventListener(eventName, eventListener, false);\n}\n\nvar TransitionEvents = {\n // Start events\n startEvents: startEvents,\n\n addStartEventListener: function addStartEventListener(node, eventListener) {\n if (startEvents.length === 0) {\n window.setTimeout(eventListener, 0);\n return;\n }\n startEvents.forEach(function (startEvent) {\n addEventListener(node, startEvent, eventListener);\n });\n },\n removeStartEventListener: function removeStartEventListener(node, eventListener) {\n if (startEvents.length === 0) {\n return;\n }\n startEvents.forEach(function (startEvent) {\n removeEventListener(node, startEvent, eventListener);\n });\n },\n\n\n // End events\n endEvents: endEvents,\n\n addEndEventListener: function addEndEventListener(node, eventListener) {\n if (endEvents.length === 0) {\n window.setTimeout(eventListener, 0);\n return;\n }\n endEvents.forEach(function (endEvent) {\n addEventListener(node, endEvent, eventListener);\n });\n },\n removeEndEventListener: function removeEndEventListener(node, eventListener) {\n if (endEvents.length === 0) {\n return;\n }\n endEvents.forEach(function (endEvent) {\n removeEventListener(node, endEvent, eventListener);\n });\n }\n};\n\nexports['default'] = TransitionEvents;\nmodule.exports = exports['default'];"],"sourceRoot":""}