From 0120c363b47064be1badf780f499b52f9fdc6f28 Mon Sep 17 00:00:00 2001 From: Fadi Khadra Date: Thu, 21 Dec 2017 19:29:53 +0100 Subject: [PATCH] Allow to override default position values. Relate to issue #108 --- README.md | 35 +- dist/ReactToastify.min.js | 1901 +-------------------------------- dist/ReactToastify.min.js.map | 2 +- index.d.ts | 32 +- src/ToastContainer.js | 56 +- src/style.js | 26 +- 6 files changed, 93 insertions(+), 1959 deletions(-) diff --git a/README.md b/README.md index dfea40c4..6f89e56c 100644 --- a/README.md +++ b/README.md @@ -695,6 +695,8 @@ render(){ #### Replace default style +You could use the style helper to replace the variable listed below: + ```javascript import { style } from "react-toastify"; @@ -709,6 +711,32 @@ style({ mobile: "only screen and (max-width : 480px)", fontFamily: "sans-serif", zIndex: 9999, + TOP_LEFT: { + top: '1em', + left: '1em' + }, + TOP_CENTER: { + top: '1em', + marginLeft: `-${320/2}px`, + left: '50%' + }, + TOP_RIGHT: { + top: '1em', + right: '1em' + }, + BOTTOM_LEFT: { + bottom: '1em', + left: '1em' + }, + BOTTOM_CENTER: { + bottom: '1em', + marginLeft: `-${320/2}px`, + left: '50%' + }, + BOTTOM_RIGHT: { + bottom: '1em', + right: '1em' + } }); ``` @@ -860,10 +888,11 @@ IE 11+ ✔ | Latest ✔ | Latest ✔ | Latest ✔ | Latest ✔ | Latest ✔ | - Fix [issue #103](https://github.com/fkhadra/react-toastify/issues/103) for real... - Fix [issue #104](https://github.com/fkhadra/react-toastify/issues/104) Incorrect TS definition for `toast.dismiss` -### V3.1.2 +### V3.2.0 -- Allow "render props" rendering -- Can set fontFamily via the style helper +- Allow "render props" rendering. Relate to [issue #106](https://github.com/fkhadra/react-toastify/issues/106) +- Can set fontFamily via the style helper. Relate to [issue #107](https://github.com/fkhadra/react-toastify/issues/107) +- Can override position default values via style helper. Realte to [issue #108](https://github.com/fkhadra/react-toastify/issues/108) ### V3.1.1 diff --git a/dist/ReactToastify.min.js b/dist/ReactToastify.min.js index bbb798bd..5a719371 100644 --- a/dist/ReactToastify.min.js +++ b/dist/ReactToastify.min.js @@ -1,1899 +1,2 @@ -!(function(t, e) { - 'object' == typeof exports && 'object' == typeof module - ? (module.exports = e( - require('react'), - require('prop-types'), - require('glamor'), - require('react-dom') - )) - : 'function' == typeof define && define.amd - ? define(['react', 'prop-types', 'glamor', 'react-dom'], e) - : 'object' == typeof exports - ? (exports.ReactToastify = e( - require('react'), - require('prop-types'), - require('glamor'), - require('react-dom') - )) - : (t.ReactToastify = e( - t.react, - t['prop-types'], - t.glamor, - t['react-dom'] - )); -})(this, function(t, e, n, o) { - return (function(t) { - function e(o) { - if (n[o]) return n[o].exports; - var r = (n[o] = { i: o, l: !1, exports: {} }); - return t[o].call(r.exports, r, r.exports, e), (r.l = !0), r.exports; - } - var n = {}; - return ( - (e.m = t), - (e.c = n), - (e.d = function(t, n, o) { - e.o(t, n) || - Object.defineProperty(t, n, { - configurable: !1, - enumerable: !0, - get: o - }); - }), - (e.n = function(t) { - var n = - t && t.__esModule - ? function() { - return t.default; - } - : function() { - return t; - }; - return e.d(n, 'a', n), n; - }), - (e.o = function(t, e) { - return Object.prototype.hasOwnProperty.call(t, e); - }), - (e.p = ''), - e((e.s = 7)) - ); - })([ - function(e, n) { - e.exports = t; - }, - function(t, n) { - t.exports = e; - }, - function(t, e) { - t.exports = n; - }, - function(t, e, n) { - 'use strict'; - Object.defineProperty(e, '__esModule', { value: !0 }), - (e.POSITION = { - TOP_LEFT: 'top-left', - TOP_RIGHT: 'top-right', - TOP_CENTER: 'top-center', - BOTTOM_LEFT: 'bottom-left', - BOTTOM_RIGHT: 'bottom-right', - BOTTOM_CENTER: 'bottom-center' - }), - (e.TYPE = { - INFO: 'info', - SUCCESS: 'success', - WARNING: 'warning', - ERROR: 'error', - DEFAULT: 'default' - }), - (e.ACTION = { - SHOW: 'SHOW_TOAST', - CLEAR: 'CLEAR_TOAST', - MOUNTED: 'CONTAINER_MOUNTED' - }); - }, - function(t, e, n) { - 'use strict'; - function o(t) { - for (var e in t) r[e] = t[e]; - } - Object.defineProperty(e, '__esModule', { value: !0 }), - (e.defineStyle = o); - var r = { - width: '320px', - colorDefault: '#fff', - colorInfo: '#3498db', - colorSuccess: '#07bc0c', - colorWarning: '#f1c40f', - colorError: '#e74c3c', - colorProgressDefault: - 'linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55)', - mobile: 'only screen and (max-width : 480px)', - fontFamily: 'sans-serif', - zIndex: 9999 - }; - e.default = r; - }, - function(t, e, n) { - 'use strict'; - function o(t) { - return 'number' == typeof t && !isNaN(t) && t > 0; - } - function r(t) { - return Object.keys(t).map(function(e) { - return t[e]; - }); - } - function i(t) { - return ( - (t.isRequired = function(e, n, o) { - if (void 0 === e[n]) - return new Error( - 'The prop ' + - n + - ' is marked as required in \n ' + - o + - ', but its value is undefined.' - ); - t(e, n, o); - }), - t - ); - } - Object.defineProperty(e, '__esModule', { value: !0 }), - (e.falseOrElement = e.falseOrDelay = void 0), - (e.isValidDelay = o), - (e.objectValues = r); - var a = n(0); - (e.falseOrDelay = i(function(t, e, n) { - var r = t[e]; - return !1 === r || o(r) - ? null - : new Error( - n + - ' expect ' + - e + - ' \n to be a valid Number > 0 or equal to false. ' + - r + - ' given.' - ); - })), - (e.falseOrElement = i(function(t, e, n) { - var o = t[e]; - return !1 === o || (0, a.isValidElement)(o) - ? null - : new Error( - n + - ' expect ' + - e + - ' \n to be a valid react element or equal to false. ' + - o + - ' given.' - ); - })); - }, - function(t, e, n) { - 'use strict'; - function o(t) { - if (Array.isArray(t)) { - for (var e = 0, n = Array(t.length); e < t.length; e++) n[e] = t[e]; - return n; - } - return Array.from(t); - } - Object.defineProperty(e, '__esModule', { value: !0 }); - var r = { - eventList: new Map(), - on: function(t, e) { - return ( - this.eventList.has(t) || this.eventList.set(t, []), - this.eventList.get(t).push(e), - this - ); - }, - off: function() { - var t = - arguments.length > 0 && void 0 !== arguments[0] - ? arguments[0] - : null; - return this.eventList.delete(t); - }, - emit: function(t) { - for ( - var e = this, - n = arguments.length, - r = Array(n > 1 ? n - 1 : 0), - i = 1; - i < n; - i++ - ) - r[i - 1] = arguments[i]; - return this.eventList.has(t) - ? (this.eventList.get(t).forEach(function(t) { - return setTimeout(function() { - return t.call.apply(t, [e].concat(o(r))); - }, 0); - }), - !0) - : (console.warn( - '<' + - t + - '> Event is not registered. Did you forgot to bind the event ?' - ), - !1); - } - }; - e.default = r; - }, - function(t, e, n) { - 'use strict'; - function o(t) { - return t && t.__esModule ? t : { default: t }; - } - Object.defineProperty(e, '__esModule', { value: !0 }), - (e.style = e.toast = e.ToastContainer = void 0); - var r = n(8), - i = o(r), - a = n(19), - s = o(a), - u = n(4); - (e.ToastContainer = i.default), - (e.toast = s.default), - (e.style = u.defineStyle); - }, - function(t, e, n) { - 'use strict'; - function o(t) { - return t && t.__esModule ? t : { default: t }; - } - function r(t) { - if (Array.isArray(t)) { - for (var e = 0, n = Array(t.length); e < t.length; e++) n[e] = t[e]; - return n; - } - return Array.from(t); - } - function i(t, e) { - if (!(t instanceof e)) - throw new TypeError('Cannot call a class as a function'); - } - function a(t, e) { - if (!t) - throw new ReferenceError( - "this hasn't been initialised - super() hasn't been called" - ); - return !e || ('object' != typeof e && 'function' != typeof e) ? t : e; - } - function s(t, e) { - if ('function' != typeof e && null !== e) - throw new TypeError( - 'Super expression must either be null or a function, not ' + - typeof e - ); - (t.prototype = Object.create(e && e.prototype, { - constructor: { - value: t, - enumerable: !1, - writable: !0, - configurable: !0 - } - })), - e && - (Object.setPrototypeOf - ? Object.setPrototypeOf(t, e) - : (t.__proto__ = e)); - } - function u(t, e, n) { - return ( - e in t - ? Object.defineProperty(t, e, { - value: n, - enumerable: !0, - configurable: !0, - writable: !0 - }) - : (t[e] = n), - t - ); - } - Object.defineProperty(e, '__esModule', { value: !0 }); - var l = - 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator - ? function(t) { - return typeof t; - } - : function(t) { - return t && - 'function' == typeof Symbol && - t.constructor === Symbol && - t !== Symbol.prototype - ? 'symbol' - : typeof t; - }, - c = (function() { - function t(t, e) { - for (var n = 0; n < e.length; n++) { - var o = e[n]; - (o.enumerable = o.enumerable || !1), - (o.configurable = !0), - 'value' in o && (o.writable = !0), - Object.defineProperty(t, o.key, o); - } - } - return function(e, n, o) { - return n && t(e.prototype, n), o && t(e, o), e; - }; - })(), - f = - Object.assign || - function(t) { - for (var e = 1; e < arguments.length; e++) { - var n = arguments[e]; - for (var o in n) - Object.prototype.hasOwnProperty.call(n, o) && (t[o] = n[o]); - } - return t; - }, - p = n(0), - d = o(p), - h = n(1), - m = o(h), - y = n(2), - O = n(9), - b = o(O), - v = n(11), - g = o(v), - T = n(13), - E = o(T), - x = n(14), - C = o(x), - N = n(3), - P = n(4), - _ = o(P), - I = n(6), - S = o(I), - j = n(5), - k = function(t) { - var e = void 0, - n = '-' + parseInt(_.default.width, 10) / 2 + 'px'; - switch (t) { - case N.POSITION.TOP_LEFT: - e = { top: '1em', left: '1em' }; - break; - case N.POSITION.TOP_CENTER: - e = { top: '1em', left: '50%', marginLeft: n }; - break; - case N.POSITION.TOP_RIGHT: - default: - e = { top: '1em', right: '1em' }; - break; - case N.POSITION.BOTTOM_LEFT: - e = { bottom: '1em', left: '1em' }; - break; - case N.POSITION.BOTTOM_CENTER: - e = { bottom: '1em', left: '50%', marginLeft: n }; - break; - case N.POSITION.BOTTOM_RIGHT: - e = { bottom: '1em', right: '1em' }; - } - return (0, y.css)( - e, - (0, y.css)( - u( - {}, - '@media ' + _.default.mobile, - f( - { left: 0, margin: 0, position: 'fixed' }, - 'top' === t.substring(0, 3) ? { top: 0 } : { bottom: 0 } - ) - ) - ) - ); - }, - w = function(t, e) { - return (0, y.css)( - f( - { - zIndex: _.default.zIndex, - position: 'fixed', - padding: '4px', - width: _.default.width, - boxSizing: 'border-box', - color: '#fff' - }, - t ? { pointerEvents: 'none' } : {}, - u({}, '@media ' + _.default.mobile, { - width: '100vw', - padding: 0 - }) - ), - k(e) - ); - }, - R = (function(t) { - function e() { - var t, n, o, r; - i(this, e); - for (var s = arguments.length, u = Array(s), l = 0; l < s; l++) - u[l] = arguments[l]; - return ( - (n = o = a( - this, - (t = e.__proto__ || Object.getPrototypeOf(e)).call.apply( - t, - [this].concat(u) - ) - )), - (o.state = { toast: [], isDocumentHidden: !1 }), - (o.collection = {}), - (o.isDocumentHidden = function() { - return o.setState({ isDocumentHidden: document.hidden }); - }), - (o.isToastActive = function(t) { - return -1 !== o.state.toast.indexOf(parseInt(t, 10)); - }), - (r = n), - a(o, r) - ); - } - return ( - s(e, t), - c(e, [ - { - key: 'componentDidMount', - value: function() { - var t = this, - e = N.ACTION.SHOW, - n = N.ACTION.CLEAR, - o = N.ACTION.MOUNTED; - S.default - .on(e, function(e, n) { - return t.show(e, n); - }) - .on(n, function(e) { - return null !== e ? t.removeToast(e) : t.clear(); - }) - .emit(o, this), - document.addEventListener( - 'visibilitychange', - this.isDocumentHidden - ); - } - }, - { - key: 'componentWillUnmount', - value: function() { - S.default.off(N.ACTION.SHOW), - S.default.off(N.ACTION.CLEAR), - document.removeEventListener( - 'visibilitychange', - this.isDocumentHidden - ); - } - }, - { - key: 'removeToast', - value: function(t) { - this.setState({ - toast: this.state.toast.filter(function(e) { - return e !== parseInt(t, 10); - }) - }); - } - }, - { - key: 'makeCloseButton', - value: function(t, e, n) { - var o = this, - r = this.props.closeButton; - return ( - ((0, p.isValidElement)(t) || !1 === t) && (r = t), - !1 !== r && - (0, p.cloneElement)(r, { - closeToast: function() { - return o.removeToast(e); - }, - type: n - }) - ); - } - }, - { - key: 'getAutoCloseDelay', - value: function(t) { - return !1 === t || (0, j.isValidDelay)(t) - ? t - : this.props.autoClose; - } - }, - { - key: 'isFunction', - value: function(t) { - return !!(t && t.constructor && t.call && t.apply); - } - }, - { - key: 'canBeRendered', - value: function(t) { - return ( - (0, p.isValidElement)(t) || - 'string' == typeof t || - 'number' == typeof t || - this.isFunction(t) - ); - } - }, - { - key: 'show', - value: function(t, e) { - var n = this; - if (!this.canBeRendered(t)) - throw new Error( - 'The element you provided cannot be rendered. You provided an element of type ' + - (void 0 === t ? 'undefined' : l(t)) - ); - var o = e.toastId, - i = function() { - return n.removeToast(o); - }, - a = { - id: o, - type: e.type, - closeToast: i, - updateId: e.updateId, - position: e.position || this.props.position, - transition: e.transition || this.props.transition, - className: e.className || this.props.toastClassName, - bodyClassName: - e.bodyClassName || this.props.bodyClassName, - closeButton: this.makeCloseButton( - e.closeButton, - o, - e.type - ), - pauseOnHover: - null !== e.pauseOnHover - ? e.pauseOnHover - : this.props.pauseOnHover, - closeOnClick: - null !== e.closeOnClick - ? e.closeOnClick - : this.props.closeOnClick, - progressClassName: - e.progressClassName || this.props.progressClassName, - autoClose: this.getAutoCloseDelay( - !1 !== e.autoClose - ? parseInt(e.autoClose, 10) - : e.autoClose - ), - hideProgressBar: - 'boolean' == typeof e.hideProgressBar - ? e.hideProgressBar - : this.props.hideProgressBar - }; - this.isFunction(e.onOpen) && (a.onOpen = e.onOpen), - this.isFunction(e.onClose) && (a.onClose = e.onClose), - (0, p.isValidElement)(t) && - 'string' != typeof t.type && - 'number' != typeof t.type - ? (t = (0, p.cloneElement)(t, { closeToast: i })) - : this.isFunction(t) && (t = t({ closeToast: i })), - (this.collection = f( - {}, - this.collection, - u({}, o, { position: a.position, options: a, content: t }) - )), - this.setState({ - toast: - null !== a.updateId - ? [].concat(r(this.state.toast)) - : [].concat(r(this.state.toast), [o]) - }); - } - }, - { - key: 'makeToast', - value: function(t, e) { - return d.default.createElement( - g.default, - f({}, e, { - isDocumentHidden: this.state.isDocumentHidden, - key: 'toast-' + e.id - }), - t - ); - } - }, - { - key: 'clear', - value: function() { - this.setState({ toast: [] }); - } - }, - { - key: 'renderToast', - value: function() { - var t = this, - e = {}, - n = this.props, - o = n.className, - r = n.style; - return ( - (n.newestOnTop - ? Object.keys(this.collection).reverse() - : Object.keys(this.collection) - ).forEach(function(n) { - var o = t.collection[n]; - e[o.position] || (e[o.position] = []), - -1 !== t.state.toast.indexOf(parseInt(n, 10)) - ? e[o.position].push( - t.makeToast(o.content, o.options) - ) - : (e[o.position].push(null), delete t.collection[n]); - }), - Object.keys(e).map(function(t) { - var n = 1 === e[t].length && null === e[t][0]; - return d.default.createElement( - b.default, - f( - {}, - 'string' != typeof o - ? (0, y.css)(w(n, t), o) - : w(n, t), - 'string' == typeof o && { className: o }, - null !== r && { style: r }, - { key: 'container-' + t } - ), - e[t] - ); - }) - ); - } - }, - { - key: 'render', - value: function() { - return d.default.createElement( - 'div', - null, - this.renderToast() - ); - } - } - ]), - e - ); - })(p.Component); - (R.propTypes = { - position: m.default.oneOf((0, j.objectValues)(N.POSITION)), - autoClose: j.falseOrDelay, - closeButton: j.falseOrElement, - hideProgressBar: m.default.bool, - pauseOnHover: m.default.bool, - closeOnClick: m.default.bool, - newestOnTop: m.default.bool, - className: m.default.oneOfType([m.default.string, m.default.object]), - style: m.default.object, - toastClassName: m.default.oneOfType([ - m.default.string, - m.default.object - ]), - bodyClassName: m.default.oneOfType([ - m.default.string, - m.default.object - ]), - progressClassName: m.default.oneOfType([ - m.default.string, - m.default.object - ]), - transition: m.default.func - }), - (R.defaultProps = { - position: N.POSITION.TOP_RIGHT, - transition: C.default, - autoClose: 5e3, - hideProgressBar: !1, - closeButton: d.default.createElement(E.default, null), - pauseOnHover: !0, - closeOnClick: !0, - newestOnTop: !1, - className: null, - style: null, - toastClassName: '', - bodyClassName: '', - progressClassName: '' - }), - (e.default = R); - }, - function(t, e, n) { - 'use strict'; - function o(t) { - return t && t.__esModule ? t : { default: t }; - } - function r(t, e) { - var n = {}; - for (var o in t) - e.indexOf(o) >= 0 || - (Object.prototype.hasOwnProperty.call(t, o) && (n[o] = t[o])); - return n; - } - function i(t, e) { - if (!(t instanceof e)) - throw new TypeError('Cannot call a class as a function'); - } - function a(t, e) { - if (!t) - throw new ReferenceError( - "this hasn't been initialised - super() hasn't been called" - ); - return !e || ('object' != typeof e && 'function' != typeof e) ? t : e; - } - function s(t, e) { - if ('function' != typeof e && null !== e) - throw new TypeError( - 'Super expression must either be null or a function, not ' + - typeof e - ); - (t.prototype = Object.create(e && e.prototype, { - constructor: { - value: t, - enumerable: !1, - writable: !0, - configurable: !0 - } - })), - e && - (Object.setPrototypeOf - ? Object.setPrototypeOf(t, e) - : (t.__proto__ = e)); - } - e.__esModule = !0; - var u = - Object.assign || - function(t) { - for (var e = 1; e < arguments.length; e++) { - var n = arguments[e]; - for (var o in n) - Object.prototype.hasOwnProperty.call(n, o) && (t[o] = n[o]); - } - return t; - }, - l = n(1), - c = o(l), - f = n(0), - p = o(f), - d = n(10), - h = - Object.values || - function(t) { - return Object.keys(t).map(function(e) { - return t[e]; - }); - }, - m = (c.default.any, - c.default.node, - c.default.bool, - c.default.bool, - c.default.bool, - c.default.func, - { - component: 'div', - childFactory: function(t) { - return t; - } - }), - y = (function(t) { - function e(n, o) { - i(this, e); - var r = a(this, t.call(this, n, o)); - return ( - (r.handleExited = function(t, e, n) { - var o = (0, d.getChildMapping)(r.props.children); - t in o || - (n && n(e), - r.setState(function(e) { - var n = u({}, e.children); - return delete n[t], { children: n }; - })); - }), - (r.state = { - children: (0, d.getChildMapping)(n.children, function(t) { - var e = function(e) { - r.handleExited(t.key, e, t.props.onExited); - }; - return (0, - f.cloneElement)(t, { onExited: e, in: !0, appear: r.getProp(t, 'appear'), enter: r.getProp(t, 'enter'), exit: r.getProp(t, 'exit') }); - }) - }), - r - ); - } - return ( - s(e, t), - (e.prototype.getChildContext = function() { - return { transitionGroup: { isMounting: !this.appeared } }; - }), - (e.prototype.getProp = function(t, e) { - var n = - arguments.length > 2 && void 0 !== arguments[2] - ? arguments[2] - : this.props; - return null != n[e] ? n[e] : t.props[e]; - }), - (e.prototype.componentDidMount = function() { - this.appeared = !0; - }), - (e.prototype.componentWillReceiveProps = function(t) { - var e = this, - n = this.state.children, - o = (0, d.getChildMapping)(t.children), - r = (0, d.mergeChildMappings)(n, o); - Object.keys(r).forEach(function(i) { - var a = r[i]; - if ((0, f.isValidElement)(a)) { - var s = function(t) { - e.handleExited(a.key, t, a.props.onExited); - }, - u = i in n, - l = i in o, - c = n[i], - p = (0, f.isValidElement)(c) && !c.props.in; - !l || (u && !p) - ? l || !u || p - ? l && - u && - (0, f.isValidElement)(c) && - (r[i] = (0, f.cloneElement)(a, { - onExited: s, - in: c.props.in, - exit: e.getProp(a, 'exit', t), - enter: e.getProp(a, 'enter', t) - })) - : (r[i] = (0, f.cloneElement)(a, { in: !1 })) - : (r[i] = (0, f.cloneElement)(a, { - onExited: s, - in: !0, - exit: e.getProp(a, 'exit', t), - enter: e.getProp(a, 'enter', t) - })); - } - }), - this.setState({ children: r }); - }), - (e.prototype.render = function() { - var t = this.props, - e = t.component, - n = t.childFactory, - o = r(t, ['component', 'childFactory']), - i = this.state.children; - return ( - delete o.appear, - delete o.enter, - delete o.exit, - p.default.createElement(e, o, h(i).map(n)) - ); - }), - e - ); - })(p.default.Component); - (y.childContextTypes = { transitionGroup: c.default.object.isRequired }), - (y.propTypes = {}), - (y.defaultProps = m), - (e.default = y), - (t.exports = e.default); - }, - function(t, e, n) { - 'use strict'; - function o(t, e) { - var n = function(t) { - return e && (0, i.isValidElement)(t) ? e(t) : t; - }, - o = Object.create(null); - return ( - t && - i.Children.map(t, function(t) { - return t; - }).forEach(function(t) { - o[t.key] = n(t); - }), - o - ); - } - function r(t, e) { - function n(n) { - return n in e ? e[n] : t[n]; - } - (t = t || {}), (e = e || {}); - var o = Object.create(null), - r = []; - for (var i in t) - i in e ? r.length && ((o[i] = r), (r = [])) : r.push(i); - var a = void 0, - s = {}; - for (var u in e) { - if (o[u]) - for (a = 0; a < o[u].length; a++) { - var l = o[u][a]; - s[o[u][a]] = n(l); - } - s[u] = n(u); - } - for (a = 0; a < r.length; a++) s[r[a]] = n(r[a]); - return s; - } - (e.__esModule = !0), (e.getChildMapping = o), (e.mergeChildMappings = r); - var i = n(0); - }, - function(t, e, n) { - 'use strict'; - function o(t) { - return t && t.__esModule ? t : { default: t }; - } - function r(t, e) { - if (!(t instanceof e)) - throw new TypeError('Cannot call a class as a function'); - } - function i(t, e) { - if (!t) - throw new ReferenceError( - "this hasn't been initialised - super() hasn't been called" - ); - return !e || ('object' != typeof e && 'function' != typeof e) ? t : e; - } - function a(t, e) { - if ('function' != typeof e && null !== e) - throw new TypeError( - 'Super expression must either be null or a function, not ' + - typeof e - ); - (t.prototype = Object.create(e && e.prototype, { - constructor: { - value: t, - enumerable: !1, - writable: !0, - configurable: !0 - } - })), - e && - (Object.setPrototypeOf - ? Object.setPrototypeOf(t, e) - : (t.__proto__ = e)); - } - function s(t, e, n) { - return ( - e in t - ? Object.defineProperty(t, e, { - value: n, - enumerable: !0, - configurable: !0, - writable: !0 - }) - : (t[e] = n), - t - ); - } - Object.defineProperty(e, '__esModule', { value: !0 }); - var u = (function() { - function t(t, e) { - for (var n = 0; n < e.length; n++) { - var o = e[n]; - (o.enumerable = o.enumerable || !1), - (o.configurable = !0), - 'value' in o && (o.writable = !0), - Object.defineProperty(t, o.key, o); - } - } - return function(e, n, o) { - return n && t(e.prototype, n), o && t(e, o), e; - }; - })(), - l = - Object.assign || - function(t) { - for (var e = 1; e < arguments.length; e++) { - var n = arguments[e]; - for (var o in n) - Object.prototype.hasOwnProperty.call(n, o) && (t[o] = n[o]); - } - return t; - }, - c = n(0), - f = o(c), - p = n(1), - d = o(p), - h = n(2), - m = n(12), - y = o(m), - O = n(3), - b = n(4), - v = o(b), - g = n(5), - T = function(t) { - return (0, h.css)( - l( - { - position: 'relative', - minHeight: '48px', - marginBottom: '1rem', - padding: '8px', - borderRadius: '1px', - boxShadow: - '0 1px 10px 0 rgba(0, 0, 0, .1), 0 2px 15px 0 rgba(0, 0, 0, .05)', - display: 'flex', - justifyContent: 'space-between', - maxHeight: '800px', - overflow: 'hidden', - fontFamily: v.default.fontFamily, - cursor: 'pointer', - background: - v.default['color' + t.charAt(0).toUpperCase() + t.slice(1)] - }, - 'default' === t ? { color: '#aaa' } : {}, - s({}, '@media ' + v.default.mobile, { marginBottom: 0 }) - ) - ); - }, - E = (0, h.css)({ margin: 'auto 0', flex: 1 }), - x = (function(t) { - function e() { - var t, n, o, a; - r(this, e); - for (var s = arguments.length, u = Array(s), l = 0; l < s; l++) - u[l] = arguments[l]; - return ( - (n = o = i( - this, - (t = e.__proto__ || Object.getPrototypeOf(e)).call.apply( - t, - [this].concat(u) - ) - )), - (o.state = { isRunning: !0 }), - (o.pauseToast = function() { - o.setState({ isRunning: !1 }); - }), - (o.playToast = function() { - o.setState({ isRunning: !0 }); - }), - (a = n), - i(o, a) - ); - } - return ( - a(e, t), - u(e, [ - { - key: 'componentDidMount', - value: function() { - null !== this.props.onOpen && - this.props.onOpen(this.getChildrenProps()); - } - }, - { - key: 'componentWillReceiveProps', - value: function(t) { - this.props.isDocumentHidden !== t.isDocumentHidden && - this.setState({ isRunning: !t.isDocumentHidden }); - } - }, - { - key: 'componentWillUnmount', - value: function() { - null !== this.props.onClose && - this.props.onClose(this.getChildrenProps()); - } - }, - { - key: 'getChildrenProps', - value: function() { - return this.props.children.props; - } - }, - { - key: 'getToastProps', - value: function() { - var t = {}; - return ( - !1 !== this.props.autoClose && - !0 === this.props.pauseOnHover && - ((t.onMouseEnter = this.pauseToast), - (t.onMouseLeave = this.playToast)), - 'string' == typeof this.props.className && - (t.className = this.props.className), - this.props.closeOnClick && - (t.onClick = this.props.closeToast), - t - ); - } - }, - { - key: 'render', - value: function() { - var t = this.props, - e = t.closeButton, - n = t.children, - o = t.autoClose, - r = t.type, - i = t.hideProgressBar, - a = t.closeToast, - s = t.transition, - u = t.position, - c = t.onExited, - p = t.className, - d = t.bodyClassName, - m = t.progressClassName, - O = t.updateId; - return f.default.createElement( - s, - { - in: this.props.in, - appear: !0, - unmountOnExit: !0, - onExited: c, - position: u - }, - f.default.createElement( - 'div', - l( - {}, - 'string' != typeof p ? (0, h.css)(T(r), p) : T(r), - this.getToastProps() - ), - f.default.createElement( - 'div', - l( - {}, - 'string' != typeof d ? (0, h.css)(E, d) : E, - 'string' == typeof d && { className: d } - ), - n - ), - !1 !== e && e, - !1 !== o && - f.default.createElement(y.default, { - key: 'pb-' + O, - delay: o, - isRunning: this.state.isRunning, - closeToast: a, - hide: i, - type: r, - className: m - }) - ) - ); - } - } - ]), - e - ); - })(c.Component); - (x.propTypes = { - closeButton: g.falseOrElement.isRequired, - autoClose: g.falseOrDelay.isRequired, - children: d.default.node.isRequired, - closeToast: d.default.func.isRequired, - position: d.default.oneOf((0, g.objectValues)(O.POSITION)).isRequired, - pauseOnHover: d.default.bool.isRequired, - closeOnClick: d.default.bool.isRequired, - transition: d.default.func.isRequired, - isDocumentHidden: d.default.bool.isRequired, - in: d.default.bool, - onExited: d.default.func, - hideProgressBar: d.default.bool, - onOpen: d.default.func, - onClose: d.default.func, - type: d.default.oneOf((0, g.objectValues)(O.TYPE)), - className: d.default.oneOfType([d.default.string, d.default.object]), - bodyClassName: d.default.oneOfType([ - d.default.string, - d.default.object - ]), - progressClassName: d.default.oneOfType([ - d.default.string, - d.default.object - ]), - updateId: d.default.number - }), - (x.defaultProps = { - type: O.TYPE.DEFAULT, - in: !0, - hideProgressBar: !1, - onOpen: null, - onClose: null, - className: '', - bodyClassName: '', - progressClassName: '', - updateId: null - }), - (e.default = x); - }, - function(t, e, n) { - 'use strict'; - function o(t) { - return t && t.__esModule ? t : { default: t }; - } - function r(t) { - var e = t.delay, - n = t.isRunning, - o = t.closeToast, - r = t.type, - a = t.hide, - u = t.className; - return s.default.createElement( - 'div', - i( - {}, - 'string' != typeof u ? (0, c.css)(m(r, n, a, e), u) : m(r, n, a, e), - 'string' == typeof u && { className: u }, - { onAnimationEnd: o } - ) - ); - } - Object.defineProperty(e, '__esModule', { value: !0 }); - var i = - Object.assign || - function(t) { - for (var e = 1; e < arguments.length; e++) { - var n = arguments[e]; - for (var o in n) - Object.prototype.hasOwnProperty.call(n, o) && (t[o] = n[o]); - } - return t; - }, - a = n(0), - s = o(a), - u = n(1), - l = o(u), - c = n(2), - f = n(3), - p = n(4), - d = o(p), - h = c.css.keyframes('track-progress', { - '0%': { width: '100%' }, - '100%': { width: 0 } - }), - m = function(t, e, n, o) { - return (0, c.css)( - i( - { - position: 'absolute', - bottom: 0, - left: 0, - width: 0, - height: '5px', - zIndex: d.default.zIndex, - opacity: n ? 0 : 0.7, - animation: h + ' linear 1', - animationPlayState: e ? 'running' : 'paused', - animationDuration: o + 'ms', - backgroundColor: 'rgba(255,255,255,.7)' - }, - 'default' === t - ? { background: d.default.colorProgressDefault } - : {} - ) - ); - }; - (r.propTypes = { - delay: l.default.number.isRequired, - isRunning: l.default.bool.isRequired, - closeToast: l.default.func.isRequired, - type: l.default.string, - hide: l.default.bool, - className: l.default.oneOfType([l.default.string, l.default.object]) - }), - (r.defaultProps = { type: f.TYPE.DEFAULT, hide: !1, className: '' }), - (e.default = r); - }, - function(t, e, n) { - 'use strict'; - function o(t) { - return t && t.__esModule ? t : { default: t }; - } - function r(t) { - var e = t.closeToast, - n = t.type; - return s.default.createElement( - 'button', - i({}, f('default' === n), { type: 'button', onClick: e }), - '✖' - ); - } - Object.defineProperty(e, '__esModule', { value: !0 }); - var i = - Object.assign || - function(t) { - for (var e = 1; e < arguments.length; e++) { - var n = arguments[e]; - for (var o in n) - Object.prototype.hasOwnProperty.call(n, o) && (t[o] = n[o]); - } - return t; - }, - a = n(0), - s = o(a), - u = n(1), - l = o(u), - c = n(2), - f = function(t) { - return (0, c.css)({ - color: t ? '#000' : '#fff', - fontWeight: 'bold', - fontSize: '14px', - background: 'transparent', - outline: 'none', - border: 'none', - padding: 0, - cursor: 'pointer', - opacity: t ? '0.3' : '0.7', - transition: '.3s ease', - alignSelf: 'flex-start', - ':hover, :focus': { opacity: 1 } - }); - }; - (r.propTypes = { closeToast: l.default.func }), (e.default = r); - }, - function(t, e, n) { - 'use strict'; - function o(t) { - return t && t.__esModule ? t : { default: t }; - } - function r(t, e) { - var n = {}; - for (var o in t) - e.indexOf(o) >= 0 || - (Object.prototype.hasOwnProperty.call(t, o) && (n[o] = t[o])); - return n; - } - function i(t) { - var e = t.children, - n = t.position, - o = r(t, ['children', 'position']), - i = m(n), - s = i.enter, - l = i.exit; - return u.default.createElement( - c.default, - a({}, o, { - timeout: 750, - onEnter: function(t) { - return t.classList.add(s); - }, - onEntered: function(t) { - return t.classList.remove(s); - }, - onExit: function(t) { - return t.classList.add(l); - } - }), - e - ); - } - Object.defineProperty(e, '__esModule', { value: !0 }); - var a = - Object.assign || - function(t) { - for (var e = 1; e < arguments.length; e++) { - var n = arguments[e]; - for (var o in n) - Object.prototype.hasOwnProperty.call(n, o) && (t[o] = n[o]); - } - return t; - }, - s = n(0), - u = o(s), - l = n(15), - c = o(l), - f = n(2), - p = n(18), - d = o(p), - h = { animationDuration: '0.75s', animationFillMode: 'both' }, - m = function(t) { - var e = (0, d.default)(t), - n = e.enter, - o = e.exit, - r = f.css.keyframes( - 'enter', - a( - { - 'from, 60%, 75%, 90%, to': { - animationTimingFunction: - 'cubic-bezier(0.215, 0.610, 0.355, 1.000)' - } - }, - n - ) - ), - i = f.css.keyframes('exit', o); - return { - enter: (0, f.css)(a({}, h, { animationName: r })), - exit: (0, f.css)(a({}, h, { animationName: i })) - }; - }; - e.default = i; - }, - function(t, e, n) { - 'use strict'; - function o(t) { - return t && t.__esModule ? t : { default: t }; - } - function r(t, e) { - var n = {}; - for (var o in t) - e.indexOf(o) >= 0 || - (Object.prototype.hasOwnProperty.call(t, o) && (n[o] = t[o])); - return n; - } - function i(t, e) { - if (!(t instanceof e)) - throw new TypeError('Cannot call a class as a function'); - } - function a(t, e) { - if (!t) - throw new ReferenceError( - "this hasn't been initialised - super() hasn't been called" - ); - return !e || ('object' != typeof e && 'function' != typeof e) ? t : e; - } - function s(t, e) { - if ('function' != typeof e && null !== e) - throw new TypeError( - 'Super expression must either be null or a function, not ' + - typeof e - ); - (t.prototype = Object.create(e && e.prototype, { - constructor: { - value: t, - enumerable: !1, - writable: !0, - configurable: !0 - } - })), - e && - (Object.setPrototypeOf - ? Object.setPrototypeOf(t, e) - : (t.__proto__ = e)); - } - function u() {} - (e.__esModule = !0), - (e.EXITING = e.ENTERED = e.ENTERING = e.EXITED = e.UNMOUNTED = void 0); - var l = n(1), - c = (function(t) { - if (t && t.__esModule) return t; - var e = {}; - if (null != t) - for (var n in t) - Object.prototype.hasOwnProperty.call(t, n) && (e[n] = t[n]); - return (e.default = t), e; - })(l), - f = n(0), - p = o(f), - d = n(16), - h = o(d), - m = (n(17), (e.UNMOUNTED = 'unmounted')), - y = (e.EXITED = 'exited'), - O = (e.ENTERING = 'entering'), - b = (e.ENTERED = 'entered'), - v = (e.EXITING = 'exiting'), - g = (function(t) { - function e(n, o) { - i(this, e); - var r = a(this, t.call(this, n, o)), - s = o.transitionGroup, - u = s && !s.isMounting ? n.enter : n.appear, - l = void 0; - return ( - (r.nextStatus = null), - n.in - ? u ? ((l = y), (r.nextStatus = O)) : (l = b) - : (l = n.unmountOnExit || n.mountOnEnter ? m : y), - (r.state = { status: l }), - (r.nextCallback = null), - r - ); - } - return ( - s(e, t), - (e.prototype.getChildContext = function() { - return { transitionGroup: null }; - }), - (e.prototype.componentDidMount = function() { - this.updateStatus(!0); - }), - (e.prototype.componentWillReceiveProps = function(t) { - var e = this.pendingState || this.state, - n = e.status; - t.in - ? (n === m && this.setState({ status: y }), - n !== O && n !== b && (this.nextStatus = O)) - : (n !== O && n !== b) || (this.nextStatus = v); - }), - (e.prototype.componentDidUpdate = function() { - this.updateStatus(); - }), - (e.prototype.componentWillUnmount = function() { - this.cancelNextCallback(); - }), - (e.prototype.getTimeouts = function() { - var t = this.props.timeout, - e = void 0, - n = void 0, - o = void 0; - return ( - (e = n = o = t), - null != t && - 'number' != typeof t && - ((e = t.exit), (n = t.enter), (o = t.appear)), - { exit: e, enter: n, appear: o } - ); - }), - (e.prototype.updateStatus = function() { - var t = - arguments.length > 0 && - void 0 !== arguments[0] && - arguments[0], - e = this.nextStatus; - if (null !== e) { - (this.nextStatus = null), this.cancelNextCallback(); - var n = h.default.findDOMNode(this); - e === O ? this.performEnter(n, t) : this.performExit(n); - } else - this.props.unmountOnExit && - this.state.status === y && - this.setState({ status: m }); - }), - (e.prototype.performEnter = function(t, e) { - var n = this, - o = this.props.enter, - r = this.context.transitionGroup - ? this.context.transitionGroup.isMounting - : e, - i = this.getTimeouts(); - if (!e && !o) - return void this.safeSetState({ status: b }, function() { - n.props.onEntered(t); - }); - this.props.onEnter(t, r), - this.safeSetState({ status: O }, function() { - n.props.onEntering(t, r), - n.onTransitionEnd(t, i.enter, function() { - n.safeSetState({ status: b }, function() { - n.props.onEntered(t, r); - }); - }); - }); - }), - (e.prototype.performExit = function(t) { - var e = this, - n = this.props.exit, - o = this.getTimeouts(); - if (!n) - return void this.safeSetState({ status: y }, function() { - e.props.onExited(t); - }); - this.props.onExit(t), - this.safeSetState({ status: v }, function() { - e.props.onExiting(t), - e.onTransitionEnd(t, o.exit, function() { - e.safeSetState({ status: y }, function() { - e.props.onExited(t); - }); - }); - }); - }), - (e.prototype.cancelNextCallback = function() { - null !== this.nextCallback && - (this.nextCallback.cancel(), (this.nextCallback = null)); - }), - (e.prototype.safeSetState = function(t, e) { - var n = this; - (this.pendingState = t), - (e = this.setNextCallback(e)), - this.setState(t, function() { - (n.pendingState = null), e(); - }); - }), - (e.prototype.setNextCallback = function(t) { - var e = this, - n = !0; - return ( - (this.nextCallback = function(o) { - n && ((n = !1), (e.nextCallback = null), t(o)); - }), - (this.nextCallback.cancel = function() { - n = !1; - }), - this.nextCallback - ); - }), - (e.prototype.onTransitionEnd = function(t, e, n) { - this.setNextCallback(n), - t - ? (this.props.addEndListener && - this.props.addEndListener(t, this.nextCallback), - null != e && setTimeout(this.nextCallback, e)) - : setTimeout(this.nextCallback, 0); - }), - (e.prototype.render = function() { - var t = this.state.status; - if (t === m) return null; - var e = this.props, - n = e.children, - o = r(e, ['children']); - if ( - (delete o.in, - delete o.mountOnEnter, - delete o.unmountOnExit, - delete o.appear, - delete o.enter, - delete o.exit, - delete o.timeout, - delete o.addEndListener, - delete o.onEnter, - delete o.onEntering, - delete o.onEntered, - delete o.onExit, - delete o.onExiting, - delete o.onExited, - 'function' == typeof n) - ) - return n(t, o); - var i = p.default.Children.only(n); - return p.default.cloneElement(i, o); - }), - e - ); - })(p.default.Component); - (g.contextTypes = { transitionGroup: c.object }), - (g.childContextTypes = { transitionGroup: function() {} }), - (g.propTypes = {}), - (g.defaultProps = { - in: !1, - mountOnEnter: !1, - unmountOnExit: !1, - appear: !1, - enter: !0, - exit: !0, - onEnter: u, - onEntering: u, - onEntered: u, - onExit: u, - onExiting: u, - onExited: u - }), - (g.UNMOUNTED = 0), - (g.EXITED = 1), - (g.ENTERING = 2), - (g.ENTERED = 3), - (g.EXITING = 4), - (e.default = g); - }, - function(t, e) { - t.exports = o; - }, - function(t, e, n) { - 'use strict'; - function o(t) { - var e = 'transition' + t + 'Timeout', - n = 'transition' + t; - return function(t) { - if (t[n]) { - if (null == t[e]) - return new Error( - e + - " wasn't supplied to CSSTransitionGroup: this can cause unreliable animations and won't be supported in a future version of React. See https://fb.me/react-animation-transition-group-timeout for more information." - ); - if ('number' != typeof t[e]) - return new Error(e + ' must be a number (in milliseconds)'); - } - return null; - }; - } - (e.__esModule = !0), - (e.classNamesShape = e.timeoutsShape = void 0), - (e.transitionTimeout = o); - var r = n(1), - i = (function(t) { - return t && t.__esModule ? t : { default: t }; - })(r); - (e.timeoutsShape = i.default.oneOfType([ - i.default.number, - i.default.shape({ enter: i.default.number, exit: i.default.number }) - .isRequired - ])), - (e.classNamesShape = i.default.oneOfType([ - i.default.string, - i.default.shape({ - enter: i.default.string, - exit: i.default.string, - active: i.default.string - }), - i.default.shape({ - enter: i.default.string, - enterActive: i.default.string, - exit: i.default.string, - exitActive: i.default.string - }) - ])); - }, - function(t, e, n) { - 'use strict'; - function o(t) { - switch (t) { - case r.POSITION.TOP_RIGHT: - case r.POSITION.BOTTOM_RIGHT: - default: - return { - enter: { - from: { opacity: 0, transform: 'translate3d(3000px, 0, 0)' }, - '60%': { opacity: 1, transform: 'translate3d(-25px, 0, 0)' }, - '75%': { transform: 'translate3d(10px, 0, 0)' }, - '90%': { transform: 'translate3d(-5px, 0, 0)' }, - to: { transform: 'none' } - }, - exit: { - '20%': { opacity: 1, transform: 'translate3d(-20px, 0, 0)' }, - to: { opacity: 0, transform: 'translate3d(2000px, 0, 0)' } - } - }; - case r.POSITION.TOP_LEFT: - case r.POSITION.BOTTOM_LEFT: - return { - enter: { - '0%': { opacity: 0, transform: 'translate3d(-3000px, 0, 0)' }, - '60%': { opacity: 1, transform: 'translate3d(25px, 0, 0)' }, - '75%': { transform: 'translate3d(-10px, 0, 0)' }, - '90%': { transform: 'translate3d(5px, 0, 0)' }, - to: { transform: 'none' } - }, - exit: { - '20%': { opacity: 1, transform: 'translate3d(20px, 0, 0)' }, - to: { opacity: 0, transform: 'translate3d(-2000px, 0, 0)' } - } - }; - case r.POSITION.BOTTOM_CENTER: - return { - enter: { - from: { opacity: 0, transform: 'translate3d(0, 3000px, 0)' }, - '60%': { opacity: 1, transform: 'translate3d(0, -20px, 0)' }, - '75%': { transform: 'translate3d(0, 10px, 0)' }, - '90%': { transform: 'translate3d(0, -5px, 0)' }, - to: { transform: 'translate3d(0, 0, 0)' } - }, - exit: { - '20%': { transform: 'translate3d(0, 10px, 0)' }, - '40%, 45%': { - opacity: 1, - transform: 'translate3d(0, -20px, 0)' - }, - to: { opacity: 0, transform: 'translate3d(0, 2000px, 0)' } - } - }; - case r.POSITION.TOP_CENTER: - return { - enter: { - '0%': { opacity: 0, transform: 'translate3d(0, -3000px, 0)' }, - '60%': { opacity: 1, transform: 'translate3d(0, 25px, 0)' }, - '75%': { transform: 'translate3d(0, -10px, 0)' }, - '90%': { transform: 'translate3d(0, 5px, 0)' }, - to: { transform: 'none' } - }, - exit: { - '20%': { transform: 'translate3d(0, -10px, 0)' }, - '40%, 45%': { - opacity: 1, - transform: 'translate3d(0, 20px, 0)' - }, - to: { opacity: 0, transform: 'translate3d(0, -2000px, 0)' } - } - }; - } - } - Object.defineProperty(e, '__esModule', { value: !0 }), (e.default = o); - var r = n(3); - }, - function(t, e, n) { - 'use strict'; - function o(t, e) { - return i({}, l, t, { type: e, toastId: ++p }); - } - function r(t, e) { - return ( - null !== c - ? s.default.emit(u.ACTION.SHOW, t, e) - : f.push({ action: u.ACTION.SHOW, content: t, options: e }), - e.toastId - ); - } - Object.defineProperty(e, '__esModule', { value: !0 }); - var i = - Object.assign || - function(t) { - for (var e = 1; e < arguments.length; e++) { - var n = arguments[e]; - for (var o in n) - Object.prototype.hasOwnProperty.call(n, o) && (t[o] = n[o]); - } - return t; - }, - a = n(6), - s = (function(t) { - return t && t.__esModule ? t : { default: t }; - })(a), - u = n(3), - l = { - type: u.TYPE.DEFAULT, - autoClose: null, - closeButton: null, - hideProgressBar: null, - position: null, - pauseOnHover: null, - closeOnClick: null, - className: null, - bodyClassName: null, - progressClassName: null, - transition: null, - updateId: null - }, - c = null, - f = [], - p = 0, - d = i( - function(t, e) { - return r(t, o(e, (e && e.type) || u.TYPE.DEFAULT)); - }, - { - success: function(t, e) { - return r(t, o(e, u.TYPE.SUCCESS)); - }, - info: function(t, e) { - return r(t, o(e, u.TYPE.INFO)); - }, - warn: function(t, e) { - return r(t, o(e, u.TYPE.WARNING)); - }, - warning: function(t, e) { - return r(t, o(e, u.TYPE.WARNING)); - }, - error: function(t, e) { - return r(t, o(e, u.TYPE.ERROR)); - }, - dismiss: function() { - var t = - arguments.length > 0 && void 0 !== arguments[0] - ? arguments[0] - : null; - return c && s.default.emit(u.ACTION.CLEAR, t); - }, - isActive: function() { - return !1; - }, - update: function(t, e) { - if (c && void 0 !== c.collection[t]) { - var n = c.collection[t], - o = n.options, - a = n.content, - s = null !== o.updateId ? o.updateId + 1 : 1, - u = i({}, o, e, { toastId: t, updateId: s }), - l = void 0 !== u.render ? u.render : a; - return delete u.render, r(l, u); - } - return !1; - } - }, - { POSITION: u.POSITION, TYPE: u.TYPE } - ); - s.default.on(u.ACTION.MOUNTED, function(t) { - (c = t), - (d.isActive = function(t) { - return c.isToastActive(t); - }), - f.forEach(function(t) { - s.default.emit(t.action, t.content, t.options); - }), - (f = []); - }), - (e.default = d); - } - ]); -}); -//# sourceMappingURL=ReactToastify.min.js.map +!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(require("react"),require("prop-types"),require("glamor"),require("react-dom")):"function"==typeof define&&define.amd?define(["react","prop-types","glamor","react-dom"],e):"object"==typeof exports?exports.ReactToastify=e(require("react"),require("prop-types"),require("glamor"),require("react-dom")):t.ReactToastify=e(t.react,t["prop-types"],t.glamor,t["react-dom"])}(this,function(t,e,n,o){return function(t){function e(o){if(n[o])return n[o].exports;var r=n[o]={i:o,l:!1,exports:{}};return t[o].call(r.exports,r,r.exports,e),r.l=!0,r.exports}var n={};return e.m=t,e.c=n,e.d=function(t,n,o){e.o(t,n)||Object.defineProperty(t,n,{configurable:!1,enumerable:!0,get:o})},e.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(n,"a",n),n},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p="",e(e.s=7)}([function(e,n){e.exports=t},function(t,n){t.exports=e},function(t,e){t.exports=n},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.POSITION={TOP_LEFT:"top-left",TOP_RIGHT:"top-right",TOP_CENTER:"top-center",BOTTOM_LEFT:"bottom-left",BOTTOM_RIGHT:"bottom-right",BOTTOM_CENTER:"bottom-center"},e.TYPE={INFO:"info",SUCCESS:"success",WARNING:"warning",ERROR:"error",DEFAULT:"default"},e.ACTION={SHOW:"SHOW_TOAST",CLEAR:"CLEAR_TOAST",MOUNTED:"CONTAINER_MOUNTED"}},function(t,e,n){"use strict";function o(t){for(var e in t)r[e]=t[e]}Object.defineProperty(e,"__esModule",{value:!0}),e.defineStyle=o;var r={width:"320px",colorDefault:"#fff",colorInfo:"#3498db",colorSuccess:"#07bc0c",colorWarning:"#f1c40f",colorError:"#e74c3c",colorProgressDefault:"linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55)",mobile:"only screen and (max-width : 480px)",fontFamily:"sans-serif",zIndex:9999,TOP_LEFT:{top:"1em",left:"1em"},TOP_CENTER:{top:"1em",left:"50%"},TOP_RIGHT:{top:"1em",right:"1em"},BOTTOM_LEFT:{bottom:"1em",left:"1em"},BOTTOM_CENTER:{bottom:"1em",left:"50%"},BOTTOM_RIGHT:{bottom:"1em",right:"1em"}};e.default=r},function(t,e,n){"use strict";function o(t){return"number"==typeof t&&!isNaN(t)&&t>0}function r(t){return Object.keys(t).map(function(e){return t[e]})}function i(t){return t.isRequired=function(e,n,o){if(void 0===e[n])return new Error("The prop "+n+" is marked as required in \n "+o+", but its value is undefined.");t(e,n,o)},t}Object.defineProperty(e,"__esModule",{value:!0}),e.falseOrElement=e.falseOrDelay=void 0,e.isValidDelay=o,e.objectValues=r;var a=n(0);e.falseOrDelay=i(function(t,e,n){var r=t[e];return!1===r||o(r)?null:new Error(n+" expect "+e+" \n to be a valid Number > 0 or equal to false. "+r+" given.")}),e.falseOrElement=i(function(t,e,n){var o=t[e];return!1===o||(0,a.isValidElement)(o)?null:new Error(n+" expect "+e+" \n to be a valid react element or equal to false. "+o+" given.")})},function(t,e,n){"use strict";function o(t){if(Array.isArray(t)){for(var e=0,n=Array(t.length);e0&&void 0!==arguments[0]?arguments[0]:null;return this.eventList.delete(t)},emit:function(t){for(var e=this,n=arguments.length,r=Array(n>1?n-1:0),i=1;i Event is not registered. Did you forgot to bind the event ?"),!1)}};e.default=r},function(t,e,n){"use strict";function o(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0}),e.style=e.toast=e.ToastContainer=void 0;var r=n(8),i=o(r),a=n(19),s=o(a),u=n(4);e.ToastContainer=i.default,e.toast=s.default,e.style=u.defineStyle},function(t,e,n){"use strict";function o(t){return t&&t.__esModule?t:{default:t}}function r(t){if(Array.isArray(t)){for(var e=0,n=Array(t.length);e=0||Object.prototype.hasOwnProperty.call(t,o)&&(n[o]=t[o]);return n}function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function a(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}e.__esModule=!0;var u=Object.assign||function(t){for(var e=1;e2&&void 0!==arguments[2]?arguments[2]:this.props;return null!=n[e]?n[e]:t.props[e]},e.prototype.componentDidMount=function(){this.appeared=!0},e.prototype.componentWillReceiveProps=function(t){var e=this,n=this.state.children,o=(0,d.getChildMapping)(t.children),r=(0,d.mergeChildMappings)(n,o);Object.keys(r).forEach(function(i){var a=r[i];if((0,f.isValidElement)(a)){var s=function(t){e.handleExited(a.key,t,a.props.onExited)},u=i in n,l=i in o,c=n[i],p=(0,f.isValidElement)(c)&&!c.props.in;!l||u&&!p?l||!u||p?l&&u&&(0,f.isValidElement)(c)&&(r[i]=(0,f.cloneElement)(a,{onExited:s,in:c.props.in,exit:e.getProp(a,"exit",t),enter:e.getProp(a,"enter",t)})):r[i]=(0,f.cloneElement)(a,{in:!1}):r[i]=(0,f.cloneElement)(a,{onExited:s,in:!0,exit:e.getProp(a,"exit",t),enter:e.getProp(a,"enter",t)})}}),this.setState({children:r})},e.prototype.render=function(){var t=this.props,e=t.component,n=t.childFactory,o=r(t,["component","childFactory"]),i=this.state.children;return delete o.appear,delete o.enter,delete o.exit,p.default.createElement(e,o,h(i).map(n))},e}(p.default.Component);y.childContextTypes={transitionGroup:c.default.object.isRequired},y.propTypes={},y.defaultProps=m,e.default=y,t.exports=e.default},function(t,e,n){"use strict";function o(t,e){var n=function(t){return e&&(0,i.isValidElement)(t)?e(t):t},o=Object.create(null);return t&&i.Children.map(t,function(t){return t}).forEach(function(t){o[t.key]=n(t)}),o}function r(t,e){function n(n){return n in e?e[n]:t[n]}t=t||{},e=e||{};var o=Object.create(null),r=[];for(var i in t)i in e?r.length&&(o[i]=r,r=[]):r.push(i);var a=void 0,s={};for(var u in e){if(o[u])for(a=0;a=0||Object.prototype.hasOwnProperty.call(t,o)&&(n[o]=t[o]);return n}function i(t){var e=t.children,n=t.position,o=r(t,["children","position"]),i=m(n),s=i.enter,l=i.exit;return u.default.createElement(c.default,a({},o,{timeout:750,onEnter:function(t){return t.classList.add(s)},onEntered:function(t){return t.classList.remove(s)},onExit:function(t){return t.classList.add(l)}}),e)}Object.defineProperty(e,"__esModule",{value:!0});var a=Object.assign||function(t){for(var e=1;e=0||Object.prototype.hasOwnProperty.call(t,o)&&(n[o]=t[o]);return n}function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function a(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}function u(){}e.__esModule=!0,e.EXITING=e.ENTERED=e.ENTERING=e.EXITED=e.UNMOUNTED=void 0;var l=n(1),c=function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e.default=t,e}(l),f=n(0),p=o(f),d=n(16),h=o(d),m=(n(17),e.UNMOUNTED="unmounted"),y=e.EXITED="exited",O=e.ENTERING="entering",b=e.ENTERED="entered",v=e.EXITING="exiting",g=function(t){function e(n,o){i(this,e);var r=a(this,t.call(this,n,o)),s=o.transitionGroup,u=s&&!s.isMounting?n.enter:n.appear,l=void 0;return r.nextStatus=null,n.in?u?(l=y,r.nextStatus=O):l=b:l=n.unmountOnExit||n.mountOnEnter?m:y,r.state={status:l},r.nextCallback=null,r}return s(e,t),e.prototype.getChildContext=function(){return{transitionGroup:null}},e.prototype.componentDidMount=function(){this.updateStatus(!0)},e.prototype.componentWillReceiveProps=function(t){var e=this.pendingState||this.state,n=e.status;t.in?(n===m&&this.setState({status:y}),n!==O&&n!==b&&(this.nextStatus=O)):n!==O&&n!==b||(this.nextStatus=v)},e.prototype.componentDidUpdate=function(){this.updateStatus()},e.prototype.componentWillUnmount=function(){this.cancelNextCallback()},e.prototype.getTimeouts=function(){var t=this.props.timeout,e=void 0,n=void 0,o=void 0;return e=n=o=t,null!=t&&"number"!=typeof t&&(e=t.exit,n=t.enter,o=t.appear),{exit:e,enter:n,appear:o}},e.prototype.updateStatus=function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],e=this.nextStatus;if(null!==e){this.nextStatus=null,this.cancelNextCallback();var n=h.default.findDOMNode(this);e===O?this.performEnter(n,t):this.performExit(n)}else this.props.unmountOnExit&&this.state.status===y&&this.setState({status:m})},e.prototype.performEnter=function(t,e){var n=this,o=this.props.enter,r=this.context.transitionGroup?this.context.transitionGroup.isMounting:e,i=this.getTimeouts();if(!e&&!o)return void this.safeSetState({status:b},function(){n.props.onEntered(t)});this.props.onEnter(t,r),this.safeSetState({status:O},function(){n.props.onEntering(t,r),n.onTransitionEnd(t,i.enter,function(){n.safeSetState({status:b},function(){n.props.onEntered(t,r)})})})},e.prototype.performExit=function(t){var e=this,n=this.props.exit,o=this.getTimeouts();if(!n)return void this.safeSetState({status:y},function(){e.props.onExited(t)});this.props.onExit(t),this.safeSetState({status:v},function(){e.props.onExiting(t),e.onTransitionEnd(t,o.exit,function(){e.safeSetState({status:y},function(){e.props.onExited(t)})})})},e.prototype.cancelNextCallback=function(){null!==this.nextCallback&&(this.nextCallback.cancel(),this.nextCallback=null)},e.prototype.safeSetState=function(t,e){var n=this;this.pendingState=t,e=this.setNextCallback(e),this.setState(t,function(){n.pendingState=null,e()})},e.prototype.setNextCallback=function(t){var e=this,n=!0;return this.nextCallback=function(o){n&&(n=!1,e.nextCallback=null,t(o))},this.nextCallback.cancel=function(){n=!1},this.nextCallback},e.prototype.onTransitionEnd=function(t,e,n){this.setNextCallback(n),t?(this.props.addEndListener&&this.props.addEndListener(t,this.nextCallback),null!=e&&setTimeout(this.nextCallback,e)):setTimeout(this.nextCallback,0)},e.prototype.render=function(){var t=this.state.status;if(t===m)return null;var e=this.props,n=e.children,o=r(e,["children"]);if(delete o.in,delete o.mountOnEnter,delete o.unmountOnExit,delete o.appear,delete o.enter,delete o.exit,delete o.timeout,delete o.addEndListener,delete o.onEnter,delete o.onEntering,delete o.onEntered,delete o.onExit,delete o.onExiting,delete o.onExited,"function"==typeof n)return n(t,o);var i=p.default.Children.only(n);return p.default.cloneElement(i,o)},e}(p.default.Component);g.contextTypes={transitionGroup:c.object},g.childContextTypes={transitionGroup:function(){}},g.propTypes={},g.defaultProps={in:!1,mountOnEnter:!1,unmountOnExit:!1,appear:!1,enter:!0,exit:!0,onEnter:u,onEntering:u,onEntered:u,onExit:u,onExiting:u,onExited:u},g.UNMOUNTED=0,g.EXITED=1,g.ENTERING=2,g.ENTERED=3,g.EXITING=4,e.default=g},function(t,e){t.exports=o},function(t,e,n){"use strict";function o(t){var e="transition"+t+"Timeout",n="transition"+t;return function(t){if(t[n]){if(null==t[e])return new Error(e+" wasn't supplied to CSSTransitionGroup: this can cause unreliable animations and won't be supported in a future version of React. See https://fb.me/react-animation-transition-group-timeout for more information.");if("number"!=typeof t[e])return new Error(e+" must be a number (in milliseconds)")}return null}}e.__esModule=!0,e.classNamesShape=e.timeoutsShape=void 0,e.transitionTimeout=o;var r=n(1),i=function(t){return t&&t.__esModule?t:{default:t}}(r);e.timeoutsShape=i.default.oneOfType([i.default.number,i.default.shape({enter:i.default.number,exit:i.default.number}).isRequired]),e.classNamesShape=i.default.oneOfType([i.default.string,i.default.shape({enter:i.default.string,exit:i.default.string,active:i.default.string}),i.default.shape({enter:i.default.string,enterActive:i.default.string,exit:i.default.string,exitActive:i.default.string})])},function(t,e,n){"use strict";function o(t){switch(t){case r.POSITION.TOP_RIGHT:case r.POSITION.BOTTOM_RIGHT:default:return{enter:{from:{opacity:0,transform:"translate3d(3000px, 0, 0)"},"60%":{opacity:1,transform:"translate3d(-25px, 0, 0)"},"75%":{transform:"translate3d(10px, 0, 0)"},"90%":{transform:"translate3d(-5px, 0, 0)"},to:{transform:"none"}},exit:{"20%":{opacity:1,transform:"translate3d(-20px, 0, 0)"},to:{opacity:0,transform:"translate3d(2000px, 0, 0)"}}};case r.POSITION.TOP_LEFT:case r.POSITION.BOTTOM_LEFT:return{enter:{"0%":{opacity:0,transform:"translate3d(-3000px, 0, 0)"},"60%":{opacity:1,transform:"translate3d(25px, 0, 0)"},"75%":{transform:"translate3d(-10px, 0, 0)"},"90%":{transform:"translate3d(5px, 0, 0)"},to:{transform:"none"}},exit:{"20%":{opacity:1,transform:"translate3d(20px, 0, 0)"},to:{opacity:0,transform:"translate3d(-2000px, 0, 0)"}}};case r.POSITION.BOTTOM_CENTER:return{enter:{from:{opacity:0,transform:"translate3d(0, 3000px, 0)"},"60%":{opacity:1,transform:"translate3d(0, -20px, 0)"},"75%":{transform:"translate3d(0, 10px, 0)"},"90%":{transform:"translate3d(0, -5px, 0)"},to:{transform:"translate3d(0, 0, 0)"}},exit:{"20%":{transform:"translate3d(0, 10px, 0)"},"40%, 45%":{opacity:1,transform:"translate3d(0, -20px, 0)"},to:{opacity:0,transform:"translate3d(0, 2000px, 0)"}}};case r.POSITION.TOP_CENTER:return{enter:{"0%":{opacity:0,transform:"translate3d(0, -3000px, 0)"},"60%":{opacity:1,transform:"translate3d(0, 25px, 0)"},"75%":{transform:"translate3d(0, -10px, 0)"},"90%":{transform:"translate3d(0, 5px, 0)"},to:{transform:"none"}},exit:{"20%":{transform:"translate3d(0, -10px, 0)"},"40%, 45%":{opacity:1,transform:"translate3d(0, 20px, 0)"},to:{opacity:0,transform:"translate3d(0, -2000px, 0)"}}}}}Object.defineProperty(e,"__esModule",{value:!0}),e.default=o;var r=n(3)},function(t,e,n){"use strict";function o(t,e){return i({},l,t,{type:e,toastId:++p})}function r(t,e){return null!==c?s.default.emit(u.ACTION.SHOW,t,e):f.push({action:u.ACTION.SHOW,content:t,options:e}),e.toastId}Object.defineProperty(e,"__esModule",{value:!0});var i=Object.assign||function(t){for(var e=1;e0&&void 0!==arguments[0]?arguments[0]:null;return c&&s.default.emit(u.ACTION.CLEAR,t)},isActive:function(){return!1},update:function(t,e){if(c&&void 0!==c.collection[t]){var n=c.collection[t],o=n.options,a=n.content,s=null!==o.updateId?o.updateId+1:1,u=i({},o,e,{toastId:t,updateId:s}),l=void 0!==u.render?u.render:a;return delete u.render,r(l,u)}return!1}},{POSITION:u.POSITION,TYPE:u.TYPE});s.default.on(u.ACTION.MOUNTED,function(t){c=t,d.isActive=function(t){return c.isToastActive(t)},f.forEach(function(t){s.default.emit(t.action,t.content,t.options)}),f=[]}),e.default=d}])}); +//# sourceMappingURL=ReactToastify.min.js.map \ No newline at end of file diff --git a/dist/ReactToastify.min.js.map b/dist/ReactToastify.min.js.map index f3e2fbb7..8a61943e 100644 --- a/dist/ReactToastify.min.js.map +++ b/dist/ReactToastify.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///webpack/universalModuleDefinition","webpack:///dist/ReactToastify.min.js","webpack:///webpack/bootstrap 548aa54c179450baab7b","webpack:///external \"react\"","webpack:///external \"prop-types\"","webpack:///external \"glamor\"","webpack:///./src/constant.js","webpack:///./src/style.js","webpack:///./src/util/propValidator.js","webpack:///./src/util/EventManager.js","webpack:///./src/index.js","webpack:///./src/ToastContainer.js","webpack:///./node_modules/react-transition-group/TransitionGroup.js","webpack:///./node_modules/react-transition-group/utils/ChildMapping.js","webpack:///./src/Toast.js","webpack:///./src/ProgressBar.js","webpack:///./src/DefaultCloseButton.js","webpack:///./src/DefaultTransition.js","webpack:///./node_modules/react-transition-group/Transition.js","webpack:///external \"react-dom\"","webpack:///./node_modules/react-transition-group/utils/PropTypes.js","webpack:///./src/animation.js","webpack:///./src/toaster.js"],"names":["root","factory","exports","module","require","define","amd","ReactToastify","react","glamor","this","__WEBPACK_EXTERNAL_MODULE_0__","__WEBPACK_EXTERNAL_MODULE_1__","__WEBPACK_EXTERNAL_MODULE_2__","__WEBPACK_EXTERNAL_MODULE_16__","modules","__webpack_require__","moduleId","installedModules","i","l","call","m","c","d","name","getter","o","Object","defineProperty","configurable","enumerable","get","n","__esModule","default","object","property","prototype","hasOwnProperty","p","s","value","POSITION","TOP_LEFT","TOP_RIGHT","TOP_CENTER","BOTTOM_LEFT","BOTTOM_RIGHT","BOTTOM_CENTER","TYPE","INFO","SUCCESS","WARNING","ERROR","DEFAULT","ACTION","SHOW","CLEAR","MOUNTED","defineStyle","props","prop","style","width","colorDefault","colorInfo","colorSuccess","colorWarning","colorError","colorProgressDefault","mobile","fontFamily","zIndex","isValidDelay","val","isNaN","objectValues","obj","keys","map","key","withRequired","fn","isRequired","propName","componentName","Error","falseOrElement","falseOrDelay","_react","isValidElement","_toConsumableArray","arr","Array","isArray","arr2","length","from","eventManager","eventList","Map","on","event","callback","has","set","push","off","arguments","delete","emit","_this","_len","args","_key","forEach","setTimeout","apply","concat","console","warn","_interopRequireDefault","toast","ToastContainer","_ToastContainer","_ToastContainer2","_toaster","_toaster2","_style","_classCallCheck","instance","Constructor","TypeError","_possibleConstructorReturn","self","ReferenceError","_inherits","subClass","superClass","create","constructor","writable","setPrototypeOf","__proto__","_defineProperty","_typeof","Symbol","iterator","_createClass","defineProperties","target","descriptor","protoProps","staticProps","_extends","assign","source","_react2","_propTypes","_propTypes2","_glamor","_TransitionGroup","_TransitionGroup2","_Toast","_Toast2","_DefaultCloseButton","_DefaultCloseButton2","_DefaultTransition","_DefaultTransition2","_constant","_style2","_EventManager","_EventManager2","_propValidator","toastPosition","pos","rule","marginLeft","parseInt","top","left","right","bottom","css","margin","position","substring","container","disablePointer","padding","boxSizing","color","pointerEvents","_Component","_ref","_temp","_ret","getPrototypeOf","state","isDocumentHidden","collection","setState","document","hidden","isToastActive","id","indexOf","_this2","content","options","show","removeToast","clear","addEventListener","removeEventListener","filter","v","toastClose","toastId","type","_this3","closeButton","cloneElement","closeToast","toastAutoClose","autoClose","isFunction","_this4","canBeRendered","toastOptions","updateId","transition","className","toastClassName","bodyClassName","makeCloseButton","pauseOnHover","closeOnClick","progressClassName","getAutoCloseDelay","hideProgressBar","onOpen","onClose","createElement","_this5","toastToRender","_props","newestOnTop","reverse","item","makeToast","renderToast","Component","propTypes","oneOf","bool","oneOfType","string","func","defaultProps","_objectWithoutProperties","_ChildMapping","values","k","any","node","component","childFactory","child","TransitionGroup","_React$Component","context","handleExited","originalHandler","currentChildMapping","getChildMapping","children","onExited","in","appear","getProp","enter","exit","getChildContext","transitionGroup","isMounting","appeared","componentDidMount","componentWillReceiveProps","nextProps","prevChildMapping","nextChildMapping","mergeChildMappings","hasPrev","hasNext","prevChild","isLeaving","render","childContextTypes","mapFn","mapper","result","Children","prev","next","getValueForKey","nextKeysPending","pendingKeys","prevKey","childMapping","nextKey","pendingNextKey","_ProgressBar","_ProgressBar2","minHeight","marginBottom","borderRadius","boxShadow","display","justifyContent","maxHeight","overflow","cursor","background","charAt","toUpperCase","slice","body","flex","Toast","isRunning","pauseToast","playToast","getChildrenProps","toastProps","onMouseEnter","onMouseLeave","onClick","Transition","unmountOnExit","getToastProps","delay","hide","number","ProgressBar","progress","onAnimationEnd","trackProgress","keyframes","0%","100%","height","opacity","animation","animationPlayState","animationDuration","backgroundColor","DefaultCloseButton","isDefault","fontWeight","fontSize","outline","border","alignSelf",":hover, :focus","DefaultTransition","_animation","_Transition2","timeout","onEnter","classList","add","onEntered","remove","onExit","_Transition","_animation2","_animation3","animate","animationFillMode","_getAnimation","enterAnimation","from, 60%, 75%, 90%, to","animationTimingFunction","exitAnimation","animationName","noop","EXITING","ENTERED","ENTERING","EXITED","UNMOUNTED","PropTypes","newObj","_reactDom","_reactDom2","parentGroup","initialStatus","nextStatus","mountOnEnter","status","nextCallback","updateStatus","pendingState","componentDidUpdate","componentWillUnmount","cancelNextCallback","getTimeouts","mounting","findDOMNode","performEnter","performExit","appearing","timeouts","safeSetState","onEntering","onTransitionEnd","onExiting","cancel","nextState","setNextCallback","active","handler","addEndListener","childProps","only","contextTypes","transitionTimeout","transitionType","timeoutPropName","enabledPropName","classNamesShape","timeoutsShape","shape","enterActive","exitActive","getAnimation","transform","60%","75%","90%","to","20%","40%, 45%","mergeOptions","defaultOptions","emitEvent","queue","action","toaster","success","info","warning","error","dismiss","isActive","update","_container$collection","oldOptions","oldContent","nextOptions","containerInstance"],"mappings":"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","file":"dist/ReactToastify.min.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"react\"), require(\"prop-types\"), require(\"glamor\"), require(\"react-dom\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"react\", \"prop-types\", \"glamor\", \"react-dom\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"ReactToastify\"] = factory(require(\"react\"), require(\"prop-types\"), require(\"glamor\"), require(\"react-dom\"));\n\telse\n\t\troot[\"ReactToastify\"] = factory(root[\"react\"], root[\"prop-types\"], root[\"glamor\"], root[\"react-dom\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE_0__, __WEBPACK_EXTERNAL_MODULE_1__, __WEBPACK_EXTERNAL_MODULE_2__, __WEBPACK_EXTERNAL_MODULE_16__) {\nreturn \n\n\n// WEBPACK FOOTER //\n// webpack/universalModuleDefinition","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"react\"), require(\"prop-types\"), require(\"glamor\"), require(\"react-dom\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"react\", \"prop-types\", \"glamor\", \"react-dom\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"ReactToastify\"] = factory(require(\"react\"), require(\"prop-types\"), require(\"glamor\"), require(\"react-dom\"));\n\telse\n\t\troot[\"ReactToastify\"] = factory(root[\"react\"], root[\"prop-types\"], root[\"glamor\"], root[\"react-dom\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE_0__, __WEBPACK_EXTERNAL_MODULE_1__, __WEBPACK_EXTERNAL_MODULE_2__, __WEBPACK_EXTERNAL_MODULE_16__) {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 7);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_0__;\n\n/***/ }),\n/* 1 */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_1__;\n\n/***/ }),\n/* 2 */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_2__;\n\n/***/ }),\n/* 3 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nvar POSITION = exports.POSITION = {\n TOP_LEFT: 'top-left',\n TOP_RIGHT: 'top-right',\n TOP_CENTER: 'top-center',\n BOTTOM_LEFT: 'bottom-left',\n BOTTOM_RIGHT: 'bottom-right',\n BOTTOM_CENTER: 'bottom-center'\n};\n\nvar TYPE = exports.TYPE = {\n INFO: 'info',\n SUCCESS: 'success',\n WARNING: 'warning',\n ERROR: 'error',\n DEFAULT: 'default'\n};\nvar ACTION = exports.ACTION = {\n SHOW: 'SHOW_TOAST',\n CLEAR: 'CLEAR_TOAST',\n MOUNTED: 'CONTAINER_MOUNTED'\n};\n\n/***/ }),\n/* 4 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.defineStyle = defineStyle;\nvar style = {\n width: '320px',\n colorDefault: '#fff',\n colorInfo: '#3498db',\n colorSuccess: '#07bc0c',\n colorWarning: '#f1c40f',\n colorError: '#e74c3c',\n colorProgressDefault: 'linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55)',\n mobile: 'only screen and (max-width : 480px)',\n fontFamily: 'sans-serif',\n zIndex: 9999\n};\n\nfunction defineStyle(props) {\n for (var prop in props) {\n style[prop] = props[prop];\n }\n}\n\nexports.default = style;\n\n/***/ }),\n/* 5 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.falseOrElement = exports.falseOrDelay = undefined;\nexports.isValidDelay = isValidDelay;\nexports.objectValues = objectValues;\n\nvar _react = __webpack_require__(0);\n\nfunction isValidDelay(val) {\n return typeof val === 'number' && !isNaN(val) && val > 0;\n}\n\nfunction objectValues(obj) {\n return Object.keys(obj).map(function (key) {\n return obj[key];\n });\n}\n\nfunction withRequired(fn) {\n fn.isRequired = function (props, propName, componentName) {\n var prop = props[propName];\n\n if (typeof prop === 'undefined') {\n return new Error('The prop ' + propName + ' is marked as required in \\n ' + componentName + ', but its value is undefined.');\n }\n\n fn(props, propName, componentName);\n };\n return fn;\n}\n\nvar falseOrDelay = exports.falseOrDelay = withRequired(function (props, propName, componentName) {\n var prop = props[propName];\n\n if (prop !== false && !isValidDelay(prop)) {\n return new Error(componentName + ' expect ' + propName + ' \\n to be a valid Number > 0 or equal to false. ' + prop + ' given.');\n }\n\n return null;\n});\n\nvar falseOrElement = exports.falseOrElement = withRequired(function (props, propName, componentName) {\n var prop = props[propName];\n\n if (prop !== false && !(0, _react.isValidElement)(prop)) {\n return new Error(componentName + ' expect ' + propName + ' \\n to be a valid react element or equal to false. ' + prop + ' given.');\n }\n\n return null;\n});\n\n/***/ }),\n/* 6 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nfunction _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }\n\nvar eventManager = {\n eventList: new Map(),\n\n on: function on(event, callback) {\n this.eventList.has(event) || this.eventList.set(event, []);\n\n this.eventList.get(event).push(callback);\n\n return this;\n },\n off: function off() {\n var event = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n\n return this.eventList.delete(event);\n },\n emit: function emit(event) {\n var _this = this;\n\n for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n if (!this.eventList.has(event)) {\n /* eslint no-console: 0 */\n console.warn(\"<\" + event + \"> Event is not registered. Did you forgot to bind the event ?\");\n return false;\n }\n\n this.eventList.get(event).forEach(function (callback) {\n return setTimeout(function () {\n return callback.call.apply(callback, [_this].concat(_toConsumableArray(args)));\n }, 0);\n });\n\n return true;\n }\n};\n\nexports.default = eventManager;\n\n/***/ }),\n/* 7 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.style = exports.toast = exports.ToastContainer = undefined;\n\nvar _ToastContainer = __webpack_require__(8);\n\nvar _ToastContainer2 = _interopRequireDefault(_ToastContainer);\n\nvar _toaster = __webpack_require__(19);\n\nvar _toaster2 = _interopRequireDefault(_toaster);\n\nvar _style = __webpack_require__(4);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.ToastContainer = _ToastContainer2.default;\nexports.toast = _toaster2.default;\nexports.style = _style.defineStyle;\n\n/***/ }),\n/* 8 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _react = __webpack_require__(0);\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = __webpack_require__(1);\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _glamor = __webpack_require__(2);\n\nvar _TransitionGroup = __webpack_require__(9);\n\nvar _TransitionGroup2 = _interopRequireDefault(_TransitionGroup);\n\nvar _Toast = __webpack_require__(11);\n\nvar _Toast2 = _interopRequireDefault(_Toast);\n\nvar _DefaultCloseButton = __webpack_require__(13);\n\nvar _DefaultCloseButton2 = _interopRequireDefault(_DefaultCloseButton);\n\nvar _DefaultTransition = __webpack_require__(14);\n\nvar _DefaultTransition2 = _interopRequireDefault(_DefaultTransition);\n\nvar _constant = __webpack_require__(3);\n\nvar _style = __webpack_require__(4);\n\nvar _style2 = _interopRequireDefault(_style);\n\nvar _EventManager = __webpack_require__(6);\n\nvar _EventManager2 = _interopRequireDefault(_EventManager);\n\nvar _propValidator = __webpack_require__(5);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar toastPosition = function toastPosition(pos) {\n var rule = void 0;\n var marginLeft = '-' + parseInt(_style2.default.width, 10) / 2 + 'px';\n switch (pos) {\n case _constant.POSITION.TOP_LEFT:\n rule = {\n top: '1em',\n left: '1em'\n };\n break;\n case _constant.POSITION.TOP_CENTER:\n rule = {\n top: '1em',\n left: '50%',\n marginLeft: marginLeft\n };\n break;\n case _constant.POSITION.TOP_RIGHT:\n default:\n rule = {\n top: '1em',\n right: '1em'\n };\n break;\n case _constant.POSITION.BOTTOM_LEFT:\n rule = {\n bottom: '1em',\n left: '1em'\n };\n break;\n case _constant.POSITION.BOTTOM_CENTER:\n rule = {\n bottom: '1em',\n left: '50%',\n marginLeft: marginLeft\n };\n break;\n case _constant.POSITION.BOTTOM_RIGHT:\n rule = {\n bottom: '1em',\n right: '1em'\n };\n }\n return (0, _glamor.css)(rule, (0, _glamor.css)(_defineProperty({}, '@media ' + _style2.default.mobile, _extends({\n left: 0,\n margin: 0,\n position: 'fixed'\n }, pos.substring(0, 3) === 'top' ? { top: 0 } : { bottom: 0 }))));\n};\n\nvar container = function container(disablePointer, position) {\n return (0, _glamor.css)(_extends({\n zIndex: _style2.default.zIndex,\n position: 'fixed',\n padding: '4px',\n width: _style2.default.width,\n boxSizing: 'border-box',\n color: '#fff'\n }, disablePointer ? { pointerEvents: 'none' } : {}, _defineProperty({}, '@media ' + _style2.default.mobile, {\n width: '100vw',\n padding: 0\n })), toastPosition(position));\n};\n\nvar ToastContainer = function (_Component) {\n _inherits(ToastContainer, _Component);\n\n function ToastContainer() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, ToastContainer);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = ToastContainer.__proto__ || Object.getPrototypeOf(ToastContainer)).call.apply(_ref, [this].concat(args))), _this), _this.state = {\n toast: [],\n isDocumentHidden: false\n }, _this.collection = {}, _this.isDocumentHidden = function () {\n return _this.setState({ isDocumentHidden: document.hidden });\n }, _this.isToastActive = function (id) {\n return _this.state.toast.indexOf(parseInt(id, 10)) !== -1;\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n /**\n * Hold toast ids\n */\n\n\n /**\n * Hold toast's informations:\n * - what to render\n * - position\n * - raw content\n * - options\n */\n\n\n _createClass(ToastContainer, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n var SHOW = _constant.ACTION.SHOW,\n CLEAR = _constant.ACTION.CLEAR,\n MOUNTED = _constant.ACTION.MOUNTED;\n\n _EventManager2.default.on(SHOW, function (content, options) {\n return _this2.show(content, options);\n }).on(CLEAR, function (id) {\n return id !== null ? _this2.removeToast(id) : _this2.clear();\n }).emit(MOUNTED, this);\n document.addEventListener('visibilitychange', this.isDocumentHidden);\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n _EventManager2.default.off(_constant.ACTION.SHOW);\n _EventManager2.default.off(_constant.ACTION.CLEAR);\n document.removeEventListener('visibilitychange', this.isDocumentHidden);\n }\n }, {\n key: 'removeToast',\n value: function removeToast(id) {\n this.setState({\n toast: this.state.toast.filter(function (v) {\n return v !== parseInt(id, 10);\n })\n });\n }\n }, {\n key: 'makeCloseButton',\n value: function makeCloseButton(toastClose, toastId, type) {\n var _this3 = this;\n\n var closeButton = this.props.closeButton;\n\n if ((0, _react.isValidElement)(toastClose) || toastClose === false) {\n closeButton = toastClose;\n }\n\n return closeButton === false ? false : (0, _react.cloneElement)(closeButton, {\n closeToast: function closeToast() {\n return _this3.removeToast(toastId);\n },\n type: type\n });\n }\n }, {\n key: 'getAutoCloseDelay',\n value: function getAutoCloseDelay(toastAutoClose) {\n return toastAutoClose === false || (0, _propValidator.isValidDelay)(toastAutoClose) ? toastAutoClose : this.props.autoClose;\n }\n }, {\n key: 'isFunction',\n value: function isFunction(object) {\n return !!(object && object.constructor && object.call && object.apply);\n }\n }, {\n key: 'canBeRendered',\n value: function canBeRendered(content) {\n return (0, _react.isValidElement)(content) || typeof content === 'string' || typeof content === 'number' || this.isFunction(content);\n }\n }, {\n key: 'show',\n value: function show(content, options) {\n var _this4 = this;\n\n if (!this.canBeRendered(content)) {\n throw new Error('The element you provided cannot be rendered. You provided an element of type ' + (typeof content === 'undefined' ? 'undefined' : _typeof(content)));\n }\n var toastId = options.toastId;\n var closeToast = function closeToast() {\n return _this4.removeToast(toastId);\n };\n var toastOptions = {\n id: toastId,\n type: options.type,\n closeToast: closeToast,\n updateId: options.updateId,\n position: options.position || this.props.position,\n transition: options.transition || this.props.transition,\n className: options.className || this.props.toastClassName,\n bodyClassName: options.bodyClassName || this.props.bodyClassName,\n closeButton: this.makeCloseButton(options.closeButton, toastId, options.type),\n pauseOnHover: options.pauseOnHover !== null ? options.pauseOnHover : this.props.pauseOnHover,\n closeOnClick: options.closeOnClick !== null ? options.closeOnClick : this.props.closeOnClick,\n progressClassName: options.progressClassName || this.props.progressClassName,\n autoClose: this.getAutoCloseDelay(options.autoClose !== false ? parseInt(options.autoClose, 10) : options.autoClose),\n hideProgressBar: typeof options.hideProgressBar === 'boolean' ? options.hideProgressBar : this.props.hideProgressBar\n };\n\n this.isFunction(options.onOpen) && (toastOptions.onOpen = options.onOpen);\n\n this.isFunction(options.onClose) && (toastOptions.onClose = options.onClose);\n\n /**\n * add closeToast function to react component only\n */\n if ((0, _react.isValidElement)(content) && typeof content.type !== 'string' && typeof content.type !== 'number') {\n content = (0, _react.cloneElement)(content, {\n closeToast: closeToast\n });\n } else if (this.isFunction(content)) {\n content = content({ closeToast: closeToast });\n }\n\n this.collection = _extends({}, this.collection, _defineProperty({}, toastId, {\n position: toastOptions.position,\n options: toastOptions,\n content: content\n }));\n\n this.setState({\n toast: toastOptions.updateId !== null ? [].concat(_toConsumableArray(this.state.toast)) : [].concat(_toConsumableArray(this.state.toast), [toastId])\n });\n }\n }, {\n key: 'makeToast',\n value: function makeToast(content, options) {\n return _react2.default.createElement(\n _Toast2.default,\n _extends({}, options, {\n isDocumentHidden: this.state.isDocumentHidden,\n key: 'toast-' + options.id\n }),\n content\n );\n }\n }, {\n key: 'clear',\n value: function clear() {\n this.setState({ toast: [] });\n }\n }, {\n key: 'renderToast',\n value: function renderToast() {\n var _this5 = this;\n\n var toastToRender = {};\n var _props = this.props,\n className = _props.className,\n style = _props.style,\n newestOnTop = _props.newestOnTop;\n\n var collection = newestOnTop ? Object.keys(this.collection).reverse() : Object.keys(this.collection);\n\n collection.forEach(function (toastId) {\n var item = _this5.collection[toastId];\n toastToRender[item.position] || (toastToRender[item.position] = []);\n\n if (_this5.state.toast.indexOf(parseInt(toastId, 10)) !== -1) {\n toastToRender[item.position].push(_this5.makeToast(item.content, item.options));\n } else {\n toastToRender[item.position].push(null);\n delete _this5.collection[toastId];\n }\n });\n\n return Object.keys(toastToRender).map(function (position) {\n var disablePointer = toastToRender[position].length === 1 && toastToRender[position][0] === null;\n\n return _react2.default.createElement(\n _TransitionGroup2.default,\n _extends({}, typeof className !== 'string' ? (0, _glamor.css)(container(disablePointer, position), className) : container(disablePointer, position), typeof className === 'string' && { className: className }, style !== null && { style: style }, {\n key: 'container-' + position\n }),\n toastToRender[position]\n );\n });\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'div',\n null,\n this.renderToast()\n );\n }\n }]);\n\n return ToastContainer;\n}(_react.Component);\n\nToastContainer.propTypes = {\n /**\n * Set toast position\n */\n position: _propTypes2.default.oneOf((0, _propValidator.objectValues)(_constant.POSITION)),\n\n /**\n * Disable or set autoClose delay\n */\n autoClose: _propValidator.falseOrDelay,\n\n /**\n * Disable or set a custom react element for the close button\n */\n closeButton: _propValidator.falseOrElement,\n\n /**\n * Hide or not progress bar when autoClose is enabled\n */\n hideProgressBar: _propTypes2.default.bool,\n\n /**\n * Pause toast duration on hover\n */\n pauseOnHover: _propTypes2.default.bool,\n\n /**\n * Dismiss toast on click\n */\n closeOnClick: _propTypes2.default.bool,\n\n /**\n * Newest on top\n */\n newestOnTop: _propTypes2.default.bool,\n\n /**\n * An optional className\n */\n className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n\n /**\n * An optional style\n */\n style: _propTypes2.default.object,\n\n /**\n * An optional className for the toast\n */\n toastClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n\n /**\n * An optional className for the toast body\n */\n bodyClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n\n /**\n * An optional className for the toast progress bar\n */\n progressClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n\n /**\n * Define enter and exit transition using react-transition-group\n */\n transition: _propTypes2.default.func\n};\nToastContainer.defaultProps = {\n position: _constant.POSITION.TOP_RIGHT,\n transition: _DefaultTransition2.default,\n autoClose: 5000,\n hideProgressBar: false,\n closeButton: _react2.default.createElement(_DefaultCloseButton2.default, null),\n pauseOnHover: true,\n closeOnClick: true,\n newestOnTop: false,\n className: null,\n style: null,\n toastClassName: '',\n bodyClassName: '',\n progressClassName: ''\n};\nexports.default = ToastContainer;\n\n/***/ }),\n/* 9 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nexports.__esModule = true;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _propTypes = __webpack_require__(1);\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _react = __webpack_require__(0);\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _ChildMapping = __webpack_require__(10);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar values = Object.values || function (obj) {\n return Object.keys(obj).map(function (k) {\n return obj[k];\n });\n};\n\nvar propTypes = {\n /**\n * `` renders a `
` by default. You can change this\n * behavior by providing a `component` prop.\n */\n component: _propTypes2.default.any,\n /**\n * A set of `` components, that are toggled `in` and out as they\n * leave. the `` will inject specific transition props, so\n * remember to spread them through if you are wrapping the `` as\n * with our `` example.\n */\n children: _propTypes2.default.node,\n\n /**\n * A convenience prop that enables or disabled appear animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n appear: _propTypes2.default.bool,\n /**\n * A convenience prop that enables or disabled enter animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n enter: _propTypes2.default.bool,\n /**\n * A convenience prop that enables or disabled exit animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n exit: _propTypes2.default.bool,\n\n /**\n * You may need to apply reactive updates to a child as it is exiting.\n * This is generally done by using `cloneElement` however in the case of an exiting\n * child the element has already been removed and not accessible to the consumer.\n *\n * If you do need to update a child as it leaves you can provide a `childFactory`\n * to wrap every child, even the ones that are leaving.\n *\n * @type Function(child: ReactElement) -> ReactElement\n */\n childFactory: _propTypes2.default.func\n};\n\nvar defaultProps = {\n component: 'div',\n childFactory: function childFactory(child) {\n return child;\n }\n};\n\n/**\n * The `` component manages a set of `` components\n * in a list. Like with the `` component, ``, is a\n * state machine for managing the mounting and unmounting of components over\n * time.\n *\n * Consider the example below using the `Fade` CSS transition from before.\n * As items are removed or added to the TodoList the `in` prop is toggled\n * automatically by the ``. You can use _any_ ``\n * component in a ``, not just css.\n *\n * ```jsx\n * import TransitionGroup from 'react-transition-group/TransitionGroup';\n *\n * class TodoList extends React.Component {\n * constructor(props) {\n * super(props)\n * this.state = {items: ['hello', 'world', 'click', 'me']}\n * }\n * handleAdd() {\n * const newItems = this.state.items.concat([\n * prompt('Enter some text')\n * ]);\n * this.setState({ items: newItems });\n * }\n * handleRemove(i) {\n * let newItems = this.state.items.slice();\n * newItems.splice(i, 1);\n * this.setState({items: newItems});\n * }\n * render() {\n * return (\n *
\n * \n * \n * {this.state.items.map((item, i) => (\n * \n *
\n * {item}{' '}\n * \n *
\n *
\n * ))}\n *
\n *
\n * );\n * }\n * }\n * ```\n *\n * Note that `` does not define any animation behavior!\n * Exactly _how_ a list item animates is up to the individual ``\n * components. This means you can mix and match animations across different\n * list items.\n */\n\nvar TransitionGroup = function (_React$Component) {\n _inherits(TransitionGroup, _React$Component);\n\n function TransitionGroup(props, context) {\n _classCallCheck(this, TransitionGroup);\n\n // Initial children should all be entering, dependent on appear\n var _this = _possibleConstructorReturn(this, _React$Component.call(this, props, context));\n\n _this.handleExited = function (key, node, originalHandler) {\n var currentChildMapping = (0, _ChildMapping.getChildMapping)(_this.props.children);\n\n if (key in currentChildMapping) return;\n\n if (originalHandler) originalHandler(node);\n\n _this.setState(function (state) {\n var children = _extends({}, state.children);\n\n delete children[key];\n return { children: children };\n });\n };\n\n _this.state = {\n children: (0, _ChildMapping.getChildMapping)(props.children, function (child) {\n var onExited = function onExited(node) {\n _this.handleExited(child.key, node, child.props.onExited);\n };\n\n return (0, _react.cloneElement)(child, {\n onExited: onExited,\n in: true,\n appear: _this.getProp(child, 'appear'),\n enter: _this.getProp(child, 'enter'),\n exit: _this.getProp(child, 'exit')\n });\n })\n };\n return _this;\n }\n\n TransitionGroup.prototype.getChildContext = function getChildContext() {\n return {\n transitionGroup: { isMounting: !this.appeared }\n };\n };\n // use child config unless explictly set by the Group\n\n\n TransitionGroup.prototype.getProp = function getProp(child, prop) {\n var props = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.props;\n\n return props[prop] != null ? props[prop] : child.props[prop];\n };\n\n TransitionGroup.prototype.componentDidMount = function componentDidMount() {\n this.appeared = true;\n };\n\n TransitionGroup.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n var _this2 = this;\n\n var prevChildMapping = this.state.children;\n var nextChildMapping = (0, _ChildMapping.getChildMapping)(nextProps.children);\n\n var children = (0, _ChildMapping.mergeChildMappings)(prevChildMapping, nextChildMapping);\n\n Object.keys(children).forEach(function (key) {\n var child = children[key];\n\n if (!(0, _react.isValidElement)(child)) return;\n\n var onExited = function onExited(node) {\n _this2.handleExited(child.key, node, child.props.onExited);\n };\n\n var hasPrev = key in prevChildMapping;\n var hasNext = key in nextChildMapping;\n\n var prevChild = prevChildMapping[key];\n var isLeaving = (0, _react.isValidElement)(prevChild) && !prevChild.props.in;\n\n // item is new (entering)\n if (hasNext && (!hasPrev || isLeaving)) {\n // console.log('entering', key)\n children[key] = (0, _react.cloneElement)(child, {\n onExited: onExited,\n in: true,\n exit: _this2.getProp(child, 'exit', nextProps),\n enter: _this2.getProp(child, 'enter', nextProps)\n });\n }\n // item is old (exiting)\n else if (!hasNext && hasPrev && !isLeaving) {\n // console.log('leaving', key)\n children[key] = (0, _react.cloneElement)(child, { in: false });\n }\n // item hasn't changed transition states\n // copy over the last transition props;\n else if (hasNext && hasPrev && (0, _react.isValidElement)(prevChild)) {\n // console.log('unchanged', key)\n children[key] = (0, _react.cloneElement)(child, {\n onExited: onExited,\n in: prevChild.props.in,\n exit: _this2.getProp(child, 'exit', nextProps),\n enter: _this2.getProp(child, 'enter', nextProps)\n });\n }\n });\n\n this.setState({ children: children });\n };\n\n TransitionGroup.prototype.render = function render() {\n var _props = this.props,\n Component = _props.component,\n childFactory = _props.childFactory,\n props = _objectWithoutProperties(_props, ['component', 'childFactory']);\n\n var children = this.state.children;\n\n\n delete props.appear;\n delete props.enter;\n delete props.exit;\n\n return _react2.default.createElement(\n Component,\n props,\n values(children).map(childFactory)\n );\n };\n\n return TransitionGroup;\n}(_react2.default.Component);\n\nTransitionGroup.childContextTypes = {\n transitionGroup: _propTypes2.default.object.isRequired\n};\n\n\nTransitionGroup.propTypes = false ? propTypes : {};\nTransitionGroup.defaultProps = defaultProps;\n\nexports.default = TransitionGroup;\nmodule.exports = exports['default'];\n\n/***/ }),\n/* 10 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nexports.__esModule = true;\nexports.getChildMapping = getChildMapping;\nexports.mergeChildMappings = mergeChildMappings;\n\nvar _react = __webpack_require__(0);\n\n/**\n * Given `this.props.children`, return an object mapping key to child.\n *\n * @param {*} children `this.props.children`\n * @return {object} Mapping of key to child\n */\nfunction getChildMapping(children, mapFn) {\n var mapper = function mapper(child) {\n return mapFn && (0, _react.isValidElement)(child) ? mapFn(child) : child;\n };\n\n var result = Object.create(null);\n if (children) _react.Children.map(children, function (c) {\n return c;\n }).forEach(function (child) {\n // run the map function here instead so that the key is the computed one\n result[child.key] = mapper(child);\n });\n return result;\n}\n\n/**\n * When you're adding or removing children some may be added or removed in the\n * same render pass. We want to show *both* since we want to simultaneously\n * animate elements in and out. This function takes a previous set of keys\n * and a new set of keys and merges them with its best guess of the correct\n * ordering. In the future we may expose some of the utilities in\n * ReactMultiChild to make this easy, but for now React itself does not\n * directly have this concept of the union of prevChildren and nextChildren\n * so we implement it here.\n *\n * @param {object} prev prev children as returned from\n * `ReactTransitionChildMapping.getChildMapping()`.\n * @param {object} next next children as returned from\n * `ReactTransitionChildMapping.getChildMapping()`.\n * @return {object} a key set that contains all keys in `prev` and all keys\n * in `next` in a reasonable order.\n */\nfunction mergeChildMappings(prev, next) {\n prev = prev || {};\n next = next || {};\n\n function getValueForKey(key) {\n return key in next ? next[key] : prev[key];\n }\n\n // For each key of `next`, the list of keys to insert before that key in\n // the combined list\n var nextKeysPending = Object.create(null);\n\n var pendingKeys = [];\n for (var prevKey in prev) {\n if (prevKey in next) {\n if (pendingKeys.length) {\n nextKeysPending[prevKey] = pendingKeys;\n pendingKeys = [];\n }\n } else {\n pendingKeys.push(prevKey);\n }\n }\n\n var i = void 0;\n var childMapping = {};\n for (var nextKey in next) {\n if (nextKeysPending[nextKey]) {\n for (i = 0; i < nextKeysPending[nextKey].length; i++) {\n var pendingNextKey = nextKeysPending[nextKey][i];\n childMapping[nextKeysPending[nextKey][i]] = getValueForKey(pendingNextKey);\n }\n }\n childMapping[nextKey] = getValueForKey(nextKey);\n }\n\n // Finally, add the keys which didn't appear before any key in `next`\n for (i = 0; i < pendingKeys.length; i++) {\n childMapping[pendingKeys[i]] = getValueForKey(pendingKeys[i]);\n }\n\n return childMapping;\n}\n\n/***/ }),\n/* 11 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _react = __webpack_require__(0);\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = __webpack_require__(1);\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _glamor = __webpack_require__(2);\n\nvar _ProgressBar = __webpack_require__(12);\n\nvar _ProgressBar2 = _interopRequireDefault(_ProgressBar);\n\nvar _constant = __webpack_require__(3);\n\nvar _style = __webpack_require__(4);\n\nvar _style2 = _interopRequireDefault(_style);\n\nvar _propValidator = __webpack_require__(5);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar toast = function toast(type) {\n return (0, _glamor.css)(_extends({\n position: 'relative',\n minHeight: '48px',\n marginBottom: '1rem',\n padding: '8px',\n borderRadius: '1px',\n boxShadow: '0 1px 10px 0 rgba(0, 0, 0, .1), 0 2px 15px 0 rgba(0, 0, 0, .05)',\n display: 'flex',\n justifyContent: 'space-between',\n maxHeight: '800px',\n overflow: 'hidden',\n fontFamily: _style2.default.fontFamily,\n cursor: 'pointer',\n background: _style2.default['color' + type.charAt(0).toUpperCase() + type.slice(1)]\n }, type === 'default' ? { color: '#aaa' } : {}, _defineProperty({}, '@media ' + _style2.default.mobile, {\n marginBottom: 0\n })));\n};\n\nvar body = (0, _glamor.css)({\n margin: 'auto 0',\n flex: 1\n});\n\nvar Toast = function (_Component) {\n _inherits(Toast, _Component);\n\n function Toast() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, Toast);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Toast.__proto__ || Object.getPrototypeOf(Toast)).call.apply(_ref, [this].concat(args))), _this), _this.state = {\n isRunning: true\n }, _this.pauseToast = function () {\n _this.setState({ isRunning: false });\n }, _this.playToast = function () {\n _this.setState({ isRunning: true });\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(Toast, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n this.props.onOpen !== null && this.props.onOpen(this.getChildrenProps());\n }\n }, {\n key: 'componentWillReceiveProps',\n value: function componentWillReceiveProps(nextProps) {\n if (this.props.isDocumentHidden !== nextProps.isDocumentHidden) {\n this.setState({\n isRunning: !nextProps.isDocumentHidden\n });\n }\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n this.props.onClose !== null && this.props.onClose(this.getChildrenProps());\n }\n }, {\n key: 'getChildrenProps',\n value: function getChildrenProps() {\n return this.props.children.props;\n }\n }, {\n key: 'getToastProps',\n value: function getToastProps() {\n var toastProps = {};\n\n if (this.props.autoClose !== false && this.props.pauseOnHover === true) {\n toastProps.onMouseEnter = this.pauseToast;\n toastProps.onMouseLeave = this.playToast;\n }\n typeof this.props.className === 'string' && (toastProps.className = this.props.className);\n this.props.closeOnClick && (toastProps.onClick = this.props.closeToast);\n\n return toastProps;\n }\n }, {\n key: 'render',\n value: function render() {\n var _props = this.props,\n closeButton = _props.closeButton,\n children = _props.children,\n autoClose = _props.autoClose,\n type = _props.type,\n hideProgressBar = _props.hideProgressBar,\n closeToast = _props.closeToast,\n Transition = _props.transition,\n position = _props.position,\n onExited = _props.onExited,\n className = _props.className,\n bodyClassName = _props.bodyClassName,\n progressClassName = _props.progressClassName,\n updateId = _props.updateId;\n\n\n return _react2.default.createElement(\n Transition,\n {\n 'in': this.props.in,\n appear: true,\n unmountOnExit: true,\n onExited: onExited,\n position: position\n },\n _react2.default.createElement(\n 'div',\n _extends({}, typeof className !== 'string' ? (0, _glamor.css)(toast(type), className) : toast(type), this.getToastProps()),\n _react2.default.createElement(\n 'div',\n _extends({}, typeof bodyClassName !== 'string' ? (0, _glamor.css)(body, bodyClassName) : body, typeof bodyClassName === 'string' && {\n className: bodyClassName\n }),\n children\n ),\n closeButton !== false && closeButton,\n autoClose !== false && _react2.default.createElement(_ProgressBar2.default, {\n key: 'pb-' + updateId,\n delay: autoClose,\n isRunning: this.state.isRunning,\n closeToast: closeToast,\n hide: hideProgressBar,\n type: type,\n className: progressClassName\n })\n )\n );\n }\n }]);\n\n return Toast;\n}(_react.Component);\n\nToast.propTypes = {\n closeButton: _propValidator.falseOrElement.isRequired,\n autoClose: _propValidator.falseOrDelay.isRequired,\n children: _propTypes2.default.node.isRequired,\n closeToast: _propTypes2.default.func.isRequired,\n position: _propTypes2.default.oneOf((0, _propValidator.objectValues)(_constant.POSITION)).isRequired,\n pauseOnHover: _propTypes2.default.bool.isRequired,\n closeOnClick: _propTypes2.default.bool.isRequired,\n transition: _propTypes2.default.func.isRequired,\n isDocumentHidden: _propTypes2.default.bool.isRequired,\n in: _propTypes2.default.bool,\n onExited: _propTypes2.default.func,\n hideProgressBar: _propTypes2.default.bool,\n onOpen: _propTypes2.default.func,\n onClose: _propTypes2.default.func,\n type: _propTypes2.default.oneOf((0, _propValidator.objectValues)(_constant.TYPE)),\n className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n bodyClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n progressClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n updateId: _propTypes2.default.number\n};\nToast.defaultProps = {\n type: _constant.TYPE.DEFAULT,\n in: true,\n hideProgressBar: false,\n onOpen: null,\n onClose: null,\n className: '',\n bodyClassName: '',\n progressClassName: '',\n updateId: null\n};\nexports.default = Toast;\n\n/***/ }),\n/* 12 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _react = __webpack_require__(0);\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = __webpack_require__(1);\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _glamor = __webpack_require__(2);\n\nvar _constant = __webpack_require__(3);\n\nvar _style = __webpack_require__(4);\n\nvar _style2 = _interopRequireDefault(_style);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar trackProgress = _glamor.css.keyframes('track-progress', {\n '0%': { width: '100%' },\n '100%': { width: 0 }\n});\n\nvar progress = function progress(type, isRunning, hide, delay) {\n return (0, _glamor.css)(_extends({\n position: 'absolute',\n bottom: 0,\n left: 0,\n width: 0,\n height: '5px',\n zIndex: _style2.default.zIndex,\n opacity: hide ? 0 : 0.7,\n animation: trackProgress + ' linear 1',\n animationPlayState: isRunning ? 'running' : 'paused',\n animationDuration: delay + 'ms',\n backgroundColor: 'rgba(255,255,255,.7)'\n }, type === 'default' ? { background: _style2.default.colorProgressDefault } : {}));\n};\n\nfunction ProgressBar(_ref) {\n var delay = _ref.delay,\n isRunning = _ref.isRunning,\n closeToast = _ref.closeToast,\n type = _ref.type,\n hide = _ref.hide,\n className = _ref.className;\n\n return _react2.default.createElement('div', _extends({}, typeof className !== 'string' ? (0, _glamor.css)(progress(type, isRunning, hide, delay), className) : progress(type, isRunning, hide, delay), typeof className === 'string' && { className: className }, {\n onAnimationEnd: closeToast\n }));\n}\n\nProgressBar.propTypes = {\n /**\n * The animation delay which determine when to close the toast\n */\n delay: _propTypes2.default.number.isRequired,\n\n /**\n * Whether or not the animation is running or paused\n */\n isRunning: _propTypes2.default.bool.isRequired,\n\n /**\n * Func to close the current toast\n */\n closeToast: _propTypes2.default.func.isRequired,\n\n /**\n * Optional type : info, success ...\n */\n type: _propTypes2.default.string,\n\n /**\n * Hide or not the progress bar\n */\n hide: _propTypes2.default.bool,\n\n /**\n * Optionnal className\n */\n className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object])\n};\n\nProgressBar.defaultProps = {\n type: _constant.TYPE.DEFAULT,\n hide: false,\n className: ''\n};\n\nexports.default = ProgressBar;\n\n/***/ }),\n/* 13 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; /* eslint react/require-default-props: 0 */\n\n\nvar _react = __webpack_require__(0);\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = __webpack_require__(1);\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _glamor = __webpack_require__(2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar rule = function rule(isDefault) {\n return (0, _glamor.css)({\n color: isDefault ? '#000' : '#fff',\n fontWeight: 'bold',\n fontSize: '14px',\n background: 'transparent',\n outline: 'none',\n border: 'none',\n padding: 0,\n cursor: 'pointer',\n opacity: isDefault ? '0.3' : '0.7',\n transition: '.3s ease',\n alignSelf: 'flex-start',\n ':hover, :focus': {\n opacity: 1\n }\n });\n};\n\nfunction DefaultCloseButton(_ref) {\n var closeToast = _ref.closeToast,\n type = _ref.type;\n\n return _react2.default.createElement(\n 'button',\n _extends({}, rule(type === 'default'), { type: 'button', onClick: closeToast }),\n '\\u2716'\n );\n}\n\nDefaultCloseButton.propTypes = {\n closeToast: _propTypes2.default.func\n};\n\nexports.default = DefaultCloseButton;\n\n/***/ }),\n/* 14 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _react = __webpack_require__(0);\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _Transition = __webpack_require__(15);\n\nvar _Transition2 = _interopRequireDefault(_Transition);\n\nvar _glamor = __webpack_require__(2);\n\nvar _animation2 = __webpack_require__(18);\n\nvar _animation3 = _interopRequireDefault(_animation2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nvar animate = {\n animationDuration: '0.75s',\n animationFillMode: 'both'\n};\n\nvar animation = function animation(pos) {\n var _getAnimation = (0, _animation3.default)(pos),\n enter = _getAnimation.enter,\n exit = _getAnimation.exit;\n\n var enterAnimation = _glamor.css.keyframes('enter', _extends({\n 'from, 60%, 75%, 90%, to': {\n animationTimingFunction: 'cubic-bezier(0.215, 0.610, 0.355, 1.000)'\n }\n }, enter));\n var exitAnimation = _glamor.css.keyframes('exit', exit);\n\n return {\n enter: (0, _glamor.css)(_extends({}, animate, { animationName: enterAnimation })),\n exit: (0, _glamor.css)(_extends({}, animate, { animationName: exitAnimation }))\n };\n};\n\nfunction DefaultTransition(_ref) {\n var children = _ref.children,\n position = _ref.position,\n props = _objectWithoutProperties(_ref, ['children', 'position']);\n\n var _animation = animation(position),\n enter = _animation.enter,\n exit = _animation.exit;\n\n return _react2.default.createElement(\n _Transition2.default,\n _extends({}, props, {\n timeout: 750,\n onEnter: function onEnter(node) {\n return node.classList.add(enter);\n },\n onEntered: function onEntered(node) {\n return node.classList.remove(enter);\n },\n onExit: function onExit(node) {\n return node.classList.add(exit);\n }\n }),\n children\n );\n}\n\nexports.default = DefaultTransition;\n\n/***/ }),\n/* 15 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nexports.__esModule = true;\nexports.EXITING = exports.ENTERED = exports.ENTERING = exports.EXITED = exports.UNMOUNTED = undefined;\n\nvar _propTypes = __webpack_require__(1);\n\nvar PropTypes = _interopRequireWildcard(_propTypes);\n\nvar _react = __webpack_require__(0);\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = __webpack_require__(16);\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _PropTypes = __webpack_require__(17);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar UNMOUNTED = exports.UNMOUNTED = 'unmounted';\nvar EXITED = exports.EXITED = 'exited';\nvar ENTERING = exports.ENTERING = 'entering';\nvar ENTERED = exports.ENTERED = 'entered';\nvar EXITING = exports.EXITING = 'exiting';\n\n/**\n * The Transition component lets you describe a transition from one component\n * state to another _over time_ with a simple declarative API. Most commonly\n * it's used to animate the mounting and unmounting of a component, but can also\n * be used to describe in-place transition states as well.\n *\n * By default the `Transition` component does not alter the behavior of the\n * component it renders, it only tracks \"enter\" and \"exit\" states for the components.\n * It's up to you to give meaning and effect to those states. For example we can\n * add styles to a component when it enters or exits:\n *\n * ```jsx\n * import Transition from 'react-transition-group/Transition';\n *\n * const duration = 300;\n *\n * const defaultStyle = {\n * transition: `opacity ${duration}ms ease-in-out`,\n * opacity: 0,\n * }\n *\n * const transitionStyles = {\n * entering: { opacity: 0 },\n * entered: { opacity: 1 },\n * };\n *\n * const Fade = ({ in: inProp }) => (\n * \n * {(state) => (\n *
\n * I'm A fade Transition!\n *
\n * )}\n *
\n * );\n * ```\n *\n * As noted the `Transition` component doesn't _do_ anything by itself to its child component.\n * What it does do is track transition states over time so you can update the\n * component (such as by adding styles or classes) when it changes states.\n *\n * There are 4 main states a Transition can be in:\n * - `ENTERING`\n * - `ENTERED`\n * - `EXITING`\n * - `EXITED`\n *\n * Transition state is toggled via the `in` prop. When `true` the component begins the\n * \"Enter\" stage. During this stage, the component will shift from its current transition state,\n * to `'entering'` for the duration of the transition and then to the `'entered'` stage once\n * it's complete. Let's take the following example:\n *\n * ```jsx\n * state= { in: false };\n *\n * toggleEnterState = () => {\n * this.setState({ in: true });\n * }\n *\n * render() {\n * return (\n *
\n * \n * \n *
\n * );\n * }\n * ```\n *\n * When the button is clicked the component will shift to the `'entering'` state and\n * stay there for 500ms (the value of `timeout`) when finally switches to `'entered'`.\n *\n * When `in` is `false` the same thing happens except the state moves from `'exiting'` to `'exited'`.\n */\n\nvar Transition = function (_React$Component) {\n _inherits(Transition, _React$Component);\n\n function Transition(props, context) {\n _classCallCheck(this, Transition);\n\n var _this = _possibleConstructorReturn(this, _React$Component.call(this, props, context));\n\n var parentGroup = context.transitionGroup;\n // In the context of a TransitionGroup all enters are really appears\n var appear = parentGroup && !parentGroup.isMounting ? props.enter : props.appear;\n\n var initialStatus = void 0;\n _this.nextStatus = null;\n\n if (props.in) {\n if (appear) {\n initialStatus = EXITED;\n _this.nextStatus = ENTERING;\n } else {\n initialStatus = ENTERED;\n }\n } else {\n if (props.unmountOnExit || props.mountOnEnter) {\n initialStatus = UNMOUNTED;\n } else {\n initialStatus = EXITED;\n }\n }\n\n _this.state = { status: initialStatus };\n\n _this.nextCallback = null;\n return _this;\n }\n\n Transition.prototype.getChildContext = function getChildContext() {\n return { transitionGroup: null }; // allows for nested Transitions\n };\n\n Transition.prototype.componentDidMount = function componentDidMount() {\n this.updateStatus(true);\n };\n\n Transition.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n var _ref = this.pendingState || this.state,\n status = _ref.status;\n\n if (nextProps.in) {\n if (status === UNMOUNTED) {\n this.setState({ status: EXITED });\n }\n if (status !== ENTERING && status !== ENTERED) {\n this.nextStatus = ENTERING;\n }\n } else {\n if (status === ENTERING || status === ENTERED) {\n this.nextStatus = EXITING;\n }\n }\n };\n\n Transition.prototype.componentDidUpdate = function componentDidUpdate() {\n this.updateStatus();\n };\n\n Transition.prototype.componentWillUnmount = function componentWillUnmount() {\n this.cancelNextCallback();\n };\n\n Transition.prototype.getTimeouts = function getTimeouts() {\n var timeout = this.props.timeout;\n\n var exit = void 0,\n enter = void 0,\n appear = void 0;\n\n exit = enter = appear = timeout;\n\n if (timeout != null && typeof timeout !== 'number') {\n exit = timeout.exit;\n enter = timeout.enter;\n appear = timeout.appear;\n }\n return { exit: exit, enter: enter, appear: appear };\n };\n\n Transition.prototype.updateStatus = function updateStatus() {\n var mounting = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n\n var nextStatus = this.nextStatus;\n\n if (nextStatus !== null) {\n this.nextStatus = null;\n // nextStatus will always be ENTERING or EXITING.\n this.cancelNextCallback();\n var node = _reactDom2.default.findDOMNode(this);\n\n if (nextStatus === ENTERING) {\n this.performEnter(node, mounting);\n } else {\n this.performExit(node);\n }\n } else if (this.props.unmountOnExit && this.state.status === EXITED) {\n this.setState({ status: UNMOUNTED });\n }\n };\n\n Transition.prototype.performEnter = function performEnter(node, mounting) {\n var _this2 = this;\n\n var enter = this.props.enter;\n\n var appearing = this.context.transitionGroup ? this.context.transitionGroup.isMounting : mounting;\n\n var timeouts = this.getTimeouts();\n\n // no enter animation skip right to ENTERED\n // if we are mounting and running this it means appear _must_ be set\n if (!mounting && !enter) {\n this.safeSetState({ status: ENTERED }, function () {\n _this2.props.onEntered(node);\n });\n return;\n }\n\n this.props.onEnter(node, appearing);\n\n this.safeSetState({ status: ENTERING }, function () {\n _this2.props.onEntering(node, appearing);\n\n // FIXME: appear timeout?\n _this2.onTransitionEnd(node, timeouts.enter, function () {\n _this2.safeSetState({ status: ENTERED }, function () {\n _this2.props.onEntered(node, appearing);\n });\n });\n });\n };\n\n Transition.prototype.performExit = function performExit(node) {\n var _this3 = this;\n\n var exit = this.props.exit;\n\n var timeouts = this.getTimeouts();\n\n // no exit animation skip right to EXITED\n if (!exit) {\n this.safeSetState({ status: EXITED }, function () {\n _this3.props.onExited(node);\n });\n return;\n }\n this.props.onExit(node);\n\n this.safeSetState({ status: EXITING }, function () {\n _this3.props.onExiting(node);\n\n _this3.onTransitionEnd(node, timeouts.exit, function () {\n _this3.safeSetState({ status: EXITED }, function () {\n _this3.props.onExited(node);\n });\n });\n });\n };\n\n Transition.prototype.cancelNextCallback = function cancelNextCallback() {\n if (this.nextCallback !== null) {\n this.nextCallback.cancel();\n this.nextCallback = null;\n }\n };\n\n Transition.prototype.safeSetState = function safeSetState(nextState, callback) {\n var _this4 = this;\n\n // We need to track pending updates for instances where a cWRP fires quickly\n // after cDM and before the state flushes, which would double trigger a\n // transition\n this.pendingState = nextState;\n\n // This shouldn't be necessary, but there are weird race conditions with\n // setState callbacks and unmounting in testing, so always make sure that\n // we can cancel any pending setState callbacks after we unmount.\n callback = this.setNextCallback(callback);\n this.setState(nextState, function () {\n _this4.pendingState = null;\n callback();\n });\n };\n\n Transition.prototype.setNextCallback = function setNextCallback(callback) {\n var _this5 = this;\n\n var active = true;\n\n this.nextCallback = function (event) {\n if (active) {\n active = false;\n _this5.nextCallback = null;\n\n callback(event);\n }\n };\n\n this.nextCallback.cancel = function () {\n active = false;\n };\n\n return this.nextCallback;\n };\n\n Transition.prototype.onTransitionEnd = function onTransitionEnd(node, timeout, handler) {\n this.setNextCallback(handler);\n\n if (node) {\n if (this.props.addEndListener) {\n this.props.addEndListener(node, this.nextCallback);\n }\n if (timeout != null) {\n setTimeout(this.nextCallback, timeout);\n }\n } else {\n setTimeout(this.nextCallback, 0);\n }\n };\n\n Transition.prototype.render = function render() {\n var status = this.state.status;\n if (status === UNMOUNTED) {\n return null;\n }\n\n var _props = this.props,\n children = _props.children,\n childProps = _objectWithoutProperties(_props, ['children']);\n // filter props for Transtition\n\n\n delete childProps.in;\n delete childProps.mountOnEnter;\n delete childProps.unmountOnExit;\n delete childProps.appear;\n delete childProps.enter;\n delete childProps.exit;\n delete childProps.timeout;\n delete childProps.addEndListener;\n delete childProps.onEnter;\n delete childProps.onEntering;\n delete childProps.onEntered;\n delete childProps.onExit;\n delete childProps.onExiting;\n delete childProps.onExited;\n\n if (typeof children === 'function') {\n return children(status, childProps);\n }\n\n var child = _react2.default.Children.only(children);\n return _react2.default.cloneElement(child, childProps);\n };\n\n return Transition;\n}(_react2.default.Component);\n\nTransition.contextTypes = {\n transitionGroup: PropTypes.object\n};\nTransition.childContextTypes = {\n transitionGroup: function transitionGroup() {}\n};\n\n\nTransition.propTypes = false ? {\n /**\n * A `function` child can be used instead of a React element.\n * This function is called with the current transition status\n * ('entering', 'entered', 'exiting', 'exited', 'unmounted'), which can used\n * to apply context specific props to a component.\n *\n * ```jsx\n * \n * {(status) => (\n * \n * )}\n * \n * ```\n */\n children: PropTypes.oneOfType([PropTypes.func.isRequired, PropTypes.element.isRequired]).isRequired,\n\n /**\n * Show the component; triggers the enter or exit states\n */\n in: PropTypes.bool,\n\n /**\n * By default the child component is mounted immediately along with\n * the parent `Transition` component. If you want to \"lazy mount\" the component on the\n * first `in={true}` you can set `mountOnEnter`. After the first enter transition the component will stay\n * mounted, even on \"exited\", unless you also specify `unmountOnExit`.\n */\n mountOnEnter: PropTypes.bool,\n\n /**\n * By default the child component stays mounted after it reaches the `'exited'` state.\n * Set `unmountOnExit` if you'd prefer to unmount the component after it finishes exiting.\n */\n unmountOnExit: PropTypes.bool,\n\n /**\n * Normally a component is not transitioned if it is shown when the `` component mounts.\n * If you want to transition on the first mount set `appear` to `true`, and the\n * component will transition in as soon as the `` mounts.\n *\n * > Note: there are no specific \"appear\" states. `appear` only adds an additional `enter` transition.\n */\n appear: PropTypes.bool,\n\n /**\n * Enable or disable enter transitions.\n */\n enter: PropTypes.bool,\n\n /**\n * Enable or disable exit transitions.\n */\n exit: PropTypes.bool,\n\n /**\n * The duration of the transition, in milliseconds.\n * Required unless `addEventListener` is provided\n *\n * You may specify a single timeout for all transitions like: `timeout={500}`,\n * or individually like:\n *\n * ```jsx\n * timeout={{\n * enter: 300,\n * exit: 500,\n * }}\n * ```\n *\n * @type {number | { enter?: number, exit?: number }}\n */\n timeout: function timeout(props) {\n for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n var pt = _PropTypes.timeoutsShape;\n if (!props.addEndListener) pt = pt.isRequired;\n return pt.apply(undefined, [props].concat(args));\n },\n\n /**\n * Add a custom transition end trigger. Called with the transitioning\n * DOM node and a `done` callback. Allows for more fine grained transition end\n * logic. **Note:** Timeouts are still used as a fallback if provided.\n *\n * ```jsx\n * addEndListener={(node, done) => {\n * // use the css transitionend event to mark the finish of a transition\n * node.addEventListener('transitionend', done, false);\n * }}\n * ```\n */\n addEndListener: PropTypes.func,\n\n /**\n * Callback fired before the \"entering\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * @type Function(node: HtmlElement, isAppearing: bool) -> void\n */\n onEnter: PropTypes.func,\n\n /**\n * Callback fired after the \"entering\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * @type Function(node: HtmlElement, isAppearing: bool)\n */\n onEntering: PropTypes.func,\n\n /**\n * Callback fired after the \"entered\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * @type Function(node: HtmlElement, isAppearing: bool) -> void\n */\n onEntered: PropTypes.func,\n\n /**\n * Callback fired before the \"exiting\" status is applied.\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExit: PropTypes.func,\n\n /**\n * Callback fired after the \"exiting\" status is applied.\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExiting: PropTypes.func,\n\n /**\n * Callback fired after the \"exited\" status is applied.\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExited: PropTypes.func\n} : {};\n\n// Name the function so it is clearer in the documentation\nfunction noop() {}\n\nTransition.defaultProps = {\n in: false,\n mountOnEnter: false,\n unmountOnExit: false,\n appear: false,\n enter: true,\n exit: true,\n\n onEnter: noop,\n onEntering: noop,\n onEntered: noop,\n\n onExit: noop,\n onExiting: noop,\n onExited: noop\n};\n\nTransition.UNMOUNTED = 0;\nTransition.EXITED = 1;\nTransition.ENTERING = 2;\nTransition.ENTERED = 3;\nTransition.EXITING = 4;\n\nexports.default = Transition;\n\n/***/ }),\n/* 16 */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_16__;\n\n/***/ }),\n/* 17 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nexports.__esModule = true;\nexports.classNamesShape = exports.timeoutsShape = undefined;\nexports.transitionTimeout = transitionTimeout;\n\nvar _propTypes = __webpack_require__(1);\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction transitionTimeout(transitionType) {\n var timeoutPropName = 'transition' + transitionType + 'Timeout';\n var enabledPropName = 'transition' + transitionType;\n\n return function (props) {\n // If the transition is enabled\n if (props[enabledPropName]) {\n // If no timeout duration is provided\n if (props[timeoutPropName] == null) {\n return new Error(timeoutPropName + ' wasn\\'t supplied to CSSTransitionGroup: ' + 'this can cause unreliable animations and won\\'t be supported in ' + 'a future version of React. See ' + 'https://fb.me/react-animation-transition-group-timeout for more ' + 'information.');\n\n // If the duration isn't a number\n } else if (typeof props[timeoutPropName] !== 'number') {\n return new Error(timeoutPropName + ' must be a number (in milliseconds)');\n }\n }\n\n return null;\n };\n}\n\nvar timeoutsShape = exports.timeoutsShape = _propTypes2.default.oneOfType([_propTypes2.default.number, _propTypes2.default.shape({\n enter: _propTypes2.default.number,\n exit: _propTypes2.default.number\n}).isRequired]);\n\nvar classNamesShape = exports.classNamesShape = _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.shape({\n enter: _propTypes2.default.string,\n exit: _propTypes2.default.string,\n active: _propTypes2.default.string\n}), _propTypes2.default.shape({\n enter: _propTypes2.default.string,\n enterActive: _propTypes2.default.string,\n exit: _propTypes2.default.string,\n exitActive: _propTypes2.default.string\n})]);\n\n/***/ }),\n/* 18 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = getAnimation;\n\nvar _constant = __webpack_require__(3);\n\nfunction getAnimation(pos) {\n switch (pos) {\n case _constant.POSITION.TOP_RIGHT:\n case _constant.POSITION.BOTTOM_RIGHT:\n default:\n return {\n enter: {\n from: {\n opacity: 0,\n transform: 'translate3d(3000px, 0, 0)'\n },\n '60%': {\n opacity: 1,\n transform: 'translate3d(-25px, 0, 0)'\n },\n '75%': {\n transform: 'translate3d(10px, 0, 0)'\n },\n '90%': {\n transform: 'translate3d(-5px, 0, 0)'\n },\n to: {\n transform: 'none'\n }\n },\n exit: {\n '20%': {\n opacity: 1,\n transform: 'translate3d(-20px, 0, 0)'\n },\n to: {\n opacity: 0,\n transform: 'translate3d(2000px, 0, 0)'\n }\n }\n };\n case _constant.POSITION.TOP_LEFT:\n case _constant.POSITION.BOTTOM_LEFT:\n return {\n enter: {\n '0%': {\n opacity: 0,\n transform: 'translate3d(-3000px, 0, 0)'\n },\n '60%': {\n opacity: 1,\n transform: 'translate3d(25px, 0, 0)'\n },\n '75%': {\n transform: 'translate3d(-10px, 0, 0)'\n },\n '90%': {\n transform: 'translate3d(5px, 0, 0)'\n },\n to: {\n transform: 'none'\n }\n },\n exit: {\n '20%': {\n opacity: 1,\n transform: 'translate3d(20px, 0, 0)'\n },\n to: {\n opacity: 0,\n transform: 'translate3d(-2000px, 0, 0)'\n }\n }\n };\n case _constant.POSITION.BOTTOM_CENTER:\n return {\n enter: {\n from: {\n opacity: 0,\n transform: 'translate3d(0, 3000px, 0)'\n },\n '60%': {\n opacity: 1,\n transform: 'translate3d(0, -20px, 0)'\n },\n '75%': {\n transform: 'translate3d(0, 10px, 0)'\n },\n '90%': {\n transform: 'translate3d(0, -5px, 0)'\n },\n to: {\n transform: 'translate3d(0, 0, 0)'\n }\n },\n exit: {\n '20%': {\n transform: 'translate3d(0, 10px, 0)'\n },\n '40%, 45%': {\n opacity: 1,\n transform: 'translate3d(0, -20px, 0)'\n },\n to: {\n opacity: 0,\n transform: 'translate3d(0, 2000px, 0)'\n }\n }\n };\n case _constant.POSITION.TOP_CENTER:\n return {\n enter: {\n '0%': {\n opacity: 0,\n transform: 'translate3d(0, -3000px, 0)'\n },\n '60%': {\n opacity: 1,\n transform: 'translate3d(0, 25px, 0)'\n },\n '75%': {\n transform: 'translate3d(0, -10px, 0)'\n },\n '90%': {\n transform: 'translate3d(0, 5px, 0)'\n },\n to: {\n transform: 'none'\n }\n },\n exit: {\n '20%': {\n transform: 'translate3d(0, -10px, 0)'\n },\n '40%, 45%': {\n opacity: 1,\n transform: 'translate3d(0, 20px, 0)'\n },\n to: {\n opacity: 0,\n transform: 'translate3d(0, -2000px, 0)'\n }\n }\n };\n }\n}\n\n/***/ }),\n/* 19 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _EventManager = __webpack_require__(6);\n\nvar _EventManager2 = _interopRequireDefault(_EventManager);\n\nvar _constant = __webpack_require__(3);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar defaultOptions = {\n type: _constant.TYPE.DEFAULT,\n autoClose: null,\n closeButton: null,\n hideProgressBar: null,\n position: null,\n pauseOnHover: null,\n closeOnClick: null,\n className: null,\n bodyClassName: null,\n progressClassName: null,\n transition: null,\n updateId: null\n};\n\nvar container = null;\nvar queue = [];\nvar toastId = 0;\n\n/**\n * Merge provided options with the defaults settings and generate the toastId\n * @param {*} options\n */\nfunction mergeOptions(options, type) {\n return _extends({}, defaultOptions, options, {\n type: type,\n toastId: ++toastId\n });\n}\n\n/**\n * Dispatch toast. If the container is not mounted, the toast is enqueued\n * @param {*} content\n * @param {*} options\n */\nfunction emitEvent(content, options) {\n if (container !== null) {\n _EventManager2.default.emit(_constant.ACTION.SHOW, content, options);\n } else {\n queue.push({ action: _constant.ACTION.SHOW, content: content, options: options });\n }\n\n return options.toastId;\n}\n\nvar toaster = _extends(function (content, options) {\n return emitEvent(content, mergeOptions(options, options && options.type || _constant.TYPE.DEFAULT));\n}, {\n success: function success(content, options) {\n return emitEvent(content, mergeOptions(options, _constant.TYPE.SUCCESS));\n },\n info: function info(content, options) {\n return emitEvent(content, mergeOptions(options, _constant.TYPE.INFO));\n },\n warn: function warn(content, options) {\n return emitEvent(content, mergeOptions(options, _constant.TYPE.WARNING));\n },\n warning: function warning(content, options) {\n return emitEvent(content, mergeOptions(options, _constant.TYPE.WARNING));\n },\n error: function error(content, options) {\n return emitEvent(content, mergeOptions(options, _constant.TYPE.ERROR));\n },\n dismiss: function dismiss() {\n var id = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n return container && _EventManager2.default.emit(_constant.ACTION.CLEAR, id);\n },\n isActive: function isActive() {\n return false;\n },\n update: function update(id, options) {\n if (container && typeof container.collection[id] !== 'undefined') {\n var _container$collection = container.collection[id],\n oldOptions = _container$collection.options,\n oldContent = _container$collection.content;\n\n var updateId = oldOptions.updateId !== null ? oldOptions.updateId + 1 : 1;\n\n var nextOptions = _extends({}, oldOptions, options, {\n toastId: id,\n updateId: updateId\n });\n var content = typeof nextOptions.render !== 'undefined' ? nextOptions.render : oldContent;\n delete nextOptions.render;\n\n return emitEvent(content, nextOptions);\n }\n\n return false;\n }\n}, {\n POSITION: _constant.POSITION,\n TYPE: _constant.TYPE\n});\n\n/**\n * Wait until the ToastContainer is mounted to dispatch the toast\n * and attach isActive method\n */\n_EventManager2.default.on(_constant.ACTION.MOUNTED, function (containerInstance) {\n container = containerInstance;\n\n toaster.isActive = function (id) {\n return container.isToastActive(id);\n };\n\n queue.forEach(function (item) {\n _EventManager2.default.emit(item.action, item.content, item.options);\n });\n queue = [];\n});\n\nexports.default = toaster;\n\n/***/ })\n/******/ ]);\n});\n\n\n// WEBPACK FOOTER //\n// dist/ReactToastify.min.js"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 7);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 548aa54c179450baab7b","module.exports = __WEBPACK_EXTERNAL_MODULE_0__;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"react\"\n// module id = 0\n// module chunks = 0","module.exports = __WEBPACK_EXTERNAL_MODULE_1__;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"prop-types\"\n// module id = 1\n// module chunks = 0","module.exports = __WEBPACK_EXTERNAL_MODULE_2__;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"glamor\"\n// module id = 2\n// module chunks = 0","export const POSITION = {\n TOP_LEFT: 'top-left',\n TOP_RIGHT: 'top-right',\n TOP_CENTER: 'top-center',\n BOTTOM_LEFT: 'bottom-left',\n BOTTOM_RIGHT: 'bottom-right',\n BOTTOM_CENTER: 'bottom-center'\n};\n\nexport const TYPE = {\n INFO: 'info',\n SUCCESS: 'success',\n WARNING: 'warning',\n ERROR: 'error',\n DEFAULT: 'default'\n};\nexport const ACTION = {\n SHOW: 'SHOW_TOAST',\n CLEAR: 'CLEAR_TOAST',\n MOUNTED: 'CONTAINER_MOUNTED'\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/constant.js","const style = {\n width: '320px',\n colorDefault: '#fff',\n colorInfo: '#3498db',\n colorSuccess: '#07bc0c',\n colorWarning: '#f1c40f',\n colorError: '#e74c3c',\n colorProgressDefault:\n 'linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55)',\n mobile: 'only screen and (max-width : 480px)',\n fontFamily: 'sans-serif',\n zIndex: 9999\n};\n\nexport function defineStyle(props) {\n for (let prop in props) {\n style[prop] = props[prop];\n }\n}\n\nexport default style;\n\n\n\n// WEBPACK FOOTER //\n// ./src/style.js","import { isValidElement } from 'react';\n\nexport function isValidDelay(val) {\n return typeof val === 'number' && !isNaN(val) && val > 0;\n}\n\nexport function objectValues(obj) {\n return Object.keys(obj).map(key => obj[key]);\n}\n\nfunction withRequired(fn) {\n fn.isRequired = function(props, propName, componentName) {\n const prop = props[propName];\n\n if (typeof prop === 'undefined') {\n return new Error(`The prop ${propName} is marked as required in \n ${componentName}, but its value is undefined.`);\n }\n\n fn(props, propName, componentName);\n };\n return fn;\n}\n\nexport const falseOrDelay = withRequired((props, propName, componentName) => {\n const prop = props[propName];\n\n if (prop !== false && !isValidDelay(prop)) {\n return new Error(`${componentName} expect ${propName} \n to be a valid Number > 0 or equal to false. ${prop} given.`);\n }\n\n return null;\n});\n\nexport const falseOrElement = withRequired((props, propName, componentName) => {\n const prop = props[propName];\n\n if (prop !== false && !isValidElement(prop)) {\n return new Error(`${componentName} expect ${propName} \n to be a valid react element or equal to false. ${prop} given.`);\n }\n\n return null;\n});\n\n\n\n// WEBPACK FOOTER //\n// ./src/util/propValidator.js","const eventManager = {\n eventList: new Map(),\n\n on(event, callback) {\n this.eventList.has(event) || this.eventList.set(event, []);\n\n this.eventList.get(event).push(callback);\n\n return this;\n },\n\n off(event = null) {\n return this.eventList.delete(event);\n },\n\n emit(event, ...args) {\n if (!this.eventList.has(event)) {\n /* eslint no-console: 0 */\n console.warn(\n `<${event}> Event is not registered. Did you forgot to bind the event ?`\n );\n return false;\n }\n\n this.eventList\n .get(event)\n .forEach(callback => setTimeout(() => callback.call(this, ...args), 0));\n\n return true;\n }\n};\n\nexport default eventManager;\n\n\n\n// WEBPACK FOOTER //\n// ./src/util/EventManager.js","import ToastContainer from './ToastContainer';\nimport toaster from './toaster';\nimport { defineStyle } from './style';\n\nexport { ToastContainer, toaster as toast, defineStyle as style };\n\n\n\n// WEBPACK FOOTER //\n// ./src/index.js","import React, { Component, isValidElement, cloneElement } from 'react';\nimport PropTypes from 'prop-types';\nimport { css } from 'glamor';\nimport TransitionGroup from 'react-transition-group/TransitionGroup';\n\nimport Toast from './Toast';\nimport DefaultCloseButton from './DefaultCloseButton';\nimport DefaultTransition from './DefaultTransition';\nimport { POSITION, ACTION } from './constant';\nimport style from './style';\nimport EventManager from './util/EventManager';\nimport {\n falseOrDelay,\n falseOrElement,\n isValidDelay,\n objectValues\n} from './util/propValidator';\n\nconst toastPosition = pos => {\n let rule;\n const marginLeft = `-${parseInt(style.width, 10) / 2}px`;\n switch (pos) {\n case POSITION.TOP_LEFT:\n rule = {\n top: '1em',\n left: '1em'\n };\n break;\n case POSITION.TOP_CENTER:\n rule = {\n top: '1em',\n left: '50%',\n marginLeft: marginLeft\n };\n break;\n case POSITION.TOP_RIGHT:\n default:\n rule = {\n top: '1em',\n right: '1em'\n };\n break;\n case POSITION.BOTTOM_LEFT:\n rule = {\n bottom: '1em',\n left: '1em'\n };\n break;\n case POSITION.BOTTOM_CENTER:\n rule = {\n bottom: '1em',\n left: '50%',\n marginLeft: marginLeft\n };\n break;\n case POSITION.BOTTOM_RIGHT:\n rule = {\n bottom: '1em',\n right: '1em'\n };\n }\n return css(\n rule,\n css({\n [`@media ${style.mobile}`]: {\n left: 0,\n margin: 0,\n position: 'fixed',\n ...(pos.substring(0, 3) === 'top' ? { top: 0 } : { bottom: 0 })\n }\n })\n );\n};\n\nconst container = (disablePointer, position) =>\n css(\n {\n zIndex: style.zIndex,\n position: 'fixed',\n padding: '4px',\n width: style.width,\n boxSizing: 'border-box',\n color: '#fff',\n ...(disablePointer ? { pointerEvents: 'none' } : {}),\n [`@media ${style.mobile}`]: {\n width: '100vw',\n padding: 0\n }\n },\n toastPosition(position)\n );\n\nclass ToastContainer extends Component {\n static propTypes = {\n /**\n * Set toast position\n */\n position: PropTypes.oneOf(objectValues(POSITION)),\n\n /**\n * Disable or set autoClose delay\n */\n autoClose: falseOrDelay,\n\n /**\n * Disable or set a custom react element for the close button\n */\n closeButton: falseOrElement,\n\n /**\n * Hide or not progress bar when autoClose is enabled\n */\n hideProgressBar: PropTypes.bool,\n\n /**\n * Pause toast duration on hover\n */\n pauseOnHover: PropTypes.bool,\n\n /**\n * Dismiss toast on click\n */\n closeOnClick: PropTypes.bool,\n\n /**\n * Newest on top\n */\n newestOnTop: PropTypes.bool,\n\n /**\n * An optional className\n */\n className: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n\n /**\n * An optional style\n */\n style: PropTypes.object,\n\n /**\n * An optional className for the toast\n */\n toastClassName: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n\n /**\n * An optional className for the toast body\n */\n bodyClassName: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n\n /**\n * An optional className for the toast progress bar\n */\n progressClassName: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.object\n ]),\n\n /**\n * Define enter and exit transition using react-transition-group\n */\n transition: PropTypes.func\n };\n\n static defaultProps = {\n position: POSITION.TOP_RIGHT,\n transition: DefaultTransition,\n autoClose: 5000,\n hideProgressBar: false,\n closeButton: ,\n pauseOnHover: true,\n closeOnClick: true,\n newestOnTop: false,\n className: null,\n style: null,\n toastClassName: '',\n bodyClassName: '',\n progressClassName: ''\n };\n\n /**\n * Hold toast ids\n */\n state = {\n toast: [],\n isDocumentHidden: false\n };\n\n /**\n * Hold toast's informations:\n * - what to render\n * - position\n * - raw content\n * - options\n */\n collection = {};\n\n componentDidMount() {\n const { SHOW, CLEAR, MOUNTED } = ACTION;\n EventManager.on(SHOW, (content, options) => this.show(content, options))\n .on(CLEAR, id => (id !== null ? this.removeToast(id) : this.clear()))\n .emit(MOUNTED, this);\n document.addEventListener('visibilitychange', this.isDocumentHidden);\n }\n\n componentWillUnmount() {\n EventManager.off(ACTION.SHOW);\n EventManager.off(ACTION.CLEAR);\n document.removeEventListener('visibilitychange', this.isDocumentHidden);\n }\n\n isDocumentHidden = () => this.setState({ isDocumentHidden: document.hidden });\n\n isToastActive = id => this.state.toast.indexOf(parseInt(id, 10)) !== -1;\n\n removeToast(id) {\n this.setState({\n toast: this.state.toast.filter(v => v !== parseInt(id, 10))\n });\n }\n\n makeCloseButton(toastClose, toastId, type) {\n let closeButton = this.props.closeButton;\n\n if (isValidElement(toastClose) || toastClose === false) {\n closeButton = toastClose;\n }\n\n return closeButton === false\n ? false\n : cloneElement(closeButton, {\n closeToast: () => this.removeToast(toastId),\n type: type\n });\n }\n\n getAutoCloseDelay(toastAutoClose) {\n return toastAutoClose === false || isValidDelay(toastAutoClose)\n ? toastAutoClose\n : this.props.autoClose;\n }\n\n isFunction(object) {\n return !!(object && object.constructor && object.call && object.apply);\n }\n\n canBeRendered(content) {\n return (\n isValidElement(content) ||\n typeof content === 'string' ||\n typeof content === 'number' ||\n this.isFunction(content)\n );\n }\n\n show(content, options) {\n if (!this.canBeRendered(content)) {\n throw new Error(\n `The element you provided cannot be rendered. You provided an element of type ${typeof content}`\n );\n }\n const toastId = options.toastId;\n const closeToast = () => this.removeToast(toastId);\n const toastOptions = {\n id: toastId,\n type: options.type,\n closeToast: closeToast,\n updateId: options.updateId,\n position: options.position || this.props.position,\n transition: options.transition || this.props.transition,\n className: options.className || this.props.toastClassName,\n bodyClassName: options.bodyClassName || this.props.bodyClassName,\n closeButton: this.makeCloseButton(\n options.closeButton,\n toastId,\n options.type\n ),\n pauseOnHover:\n options.pauseOnHover !== null\n ? options.pauseOnHover\n : this.props.pauseOnHover,\n closeOnClick:\n options.closeOnClick !== null\n ? options.closeOnClick\n : this.props.closeOnClick,\n progressClassName:\n options.progressClassName || this.props.progressClassName,\n autoClose: this.getAutoCloseDelay(\n options.autoClose !== false\n ? parseInt(options.autoClose, 10)\n : options.autoClose\n ),\n hideProgressBar:\n typeof options.hideProgressBar === 'boolean'\n ? options.hideProgressBar\n : this.props.hideProgressBar\n };\n\n this.isFunction(options.onOpen) && (toastOptions.onOpen = options.onOpen);\n\n this.isFunction(options.onClose) &&\n (toastOptions.onClose = options.onClose);\n\n /**\n * add closeToast function to react component only\n */\n if (\n isValidElement(content) &&\n typeof content.type !== 'string' &&\n typeof content.type !== 'number'\n ) {\n content = cloneElement(content, {\n closeToast\n });\n } else if (this.isFunction(content)) {\n content = content({ closeToast });\n }\n\n this.collection = Object.assign({}, this.collection, {\n [toastId]: {\n position: toastOptions.position,\n options: toastOptions,\n content: content\n }\n });\n\n this.setState({\n toast:\n toastOptions.updateId !== null\n ? [...this.state.toast]\n : [...this.state.toast, toastId]\n });\n }\n\n makeToast(content, options) {\n return (\n \n {content}\n \n );\n }\n\n clear() {\n this.setState({ toast: [] });\n }\n\n renderToast() {\n const toastToRender = {};\n const { className, style, newestOnTop } = this.props;\n const collection = newestOnTop\n ? Object.keys(this.collection).reverse()\n : Object.keys(this.collection);\n\n collection.forEach(toastId => {\n const item = this.collection[toastId];\n toastToRender[item.position] || (toastToRender[item.position] = []);\n\n if (this.state.toast.indexOf(parseInt(toastId, 10)) !== -1) {\n toastToRender[item.position].push(\n this.makeToast(item.content, item.options)\n );\n } else {\n toastToRender[item.position].push(null);\n delete this.collection[toastId];\n }\n });\n\n return Object.keys(toastToRender).map(position => {\n const disablePointer =\n toastToRender[position].length === 1 &&\n toastToRender[position][0] === null;\n\n return (\n \n {toastToRender[position]}\n
\n );\n });\n }\n\n render() {\n return
{this.renderToast()}
;\n }\n}\n\nexport default ToastContainer;\n\n\n\n// WEBPACK FOOTER //\n// ./src/ToastContainer.js","'use strict';\n\nexports.__esModule = true;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _ChildMapping = require('./utils/ChildMapping');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar values = Object.values || function (obj) {\n return Object.keys(obj).map(function (k) {\n return obj[k];\n });\n};\n\nvar propTypes = {\n /**\n * `` renders a `
` by default. You can change this\n * behavior by providing a `component` prop.\n */\n component: _propTypes2.default.any,\n /**\n * A set of `` components, that are toggled `in` and out as they\n * leave. the `` will inject specific transition props, so\n * remember to spread them through if you are wrapping the `` as\n * with our `` example.\n */\n children: _propTypes2.default.node,\n\n /**\n * A convenience prop that enables or disabled appear animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n appear: _propTypes2.default.bool,\n /**\n * A convenience prop that enables or disabled enter animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n enter: _propTypes2.default.bool,\n /**\n * A convenience prop that enables or disabled exit animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n exit: _propTypes2.default.bool,\n\n /**\n * You may need to apply reactive updates to a child as it is exiting.\n * This is generally done by using `cloneElement` however in the case of an exiting\n * child the element has already been removed and not accessible to the consumer.\n *\n * If you do need to update a child as it leaves you can provide a `childFactory`\n * to wrap every child, even the ones that are leaving.\n *\n * @type Function(child: ReactElement) -> ReactElement\n */\n childFactory: _propTypes2.default.func\n};\n\nvar defaultProps = {\n component: 'div',\n childFactory: function childFactory(child) {\n return child;\n }\n};\n\n/**\n * The `` component manages a set of `` components\n * in a list. Like with the `` component, ``, is a\n * state machine for managing the mounting and unmounting of components over\n * time.\n *\n * Consider the example below using the `Fade` CSS transition from before.\n * As items are removed or added to the TodoList the `in` prop is toggled\n * automatically by the ``. You can use _any_ ``\n * component in a ``, not just css.\n *\n * ```jsx\n * import TransitionGroup from 'react-transition-group/TransitionGroup';\n *\n * class TodoList extends React.Component {\n * constructor(props) {\n * super(props)\n * this.state = {items: ['hello', 'world', 'click', 'me']}\n * }\n * handleAdd() {\n * const newItems = this.state.items.concat([\n * prompt('Enter some text')\n * ]);\n * this.setState({ items: newItems });\n * }\n * handleRemove(i) {\n * let newItems = this.state.items.slice();\n * newItems.splice(i, 1);\n * this.setState({items: newItems});\n * }\n * render() {\n * return (\n *
\n * \n * \n * {this.state.items.map((item, i) => (\n * \n *
\n * {item}{' '}\n * \n *
\n *
\n * ))}\n *
\n *
\n * );\n * }\n * }\n * ```\n *\n * Note that `` does not define any animation behavior!\n * Exactly _how_ a list item animates is up to the individual ``\n * components. This means you can mix and match animations across different\n * list items.\n */\n\nvar TransitionGroup = function (_React$Component) {\n _inherits(TransitionGroup, _React$Component);\n\n function TransitionGroup(props, context) {\n _classCallCheck(this, TransitionGroup);\n\n // Initial children should all be entering, dependent on appear\n var _this = _possibleConstructorReturn(this, _React$Component.call(this, props, context));\n\n _this.handleExited = function (key, node, originalHandler) {\n var currentChildMapping = (0, _ChildMapping.getChildMapping)(_this.props.children);\n\n if (key in currentChildMapping) return;\n\n if (originalHandler) originalHandler(node);\n\n _this.setState(function (state) {\n var children = _extends({}, state.children);\n\n delete children[key];\n return { children: children };\n });\n };\n\n _this.state = {\n children: (0, _ChildMapping.getChildMapping)(props.children, function (child) {\n var onExited = function onExited(node) {\n _this.handleExited(child.key, node, child.props.onExited);\n };\n\n return (0, _react.cloneElement)(child, {\n onExited: onExited,\n in: true,\n appear: _this.getProp(child, 'appear'),\n enter: _this.getProp(child, 'enter'),\n exit: _this.getProp(child, 'exit')\n });\n })\n };\n return _this;\n }\n\n TransitionGroup.prototype.getChildContext = function getChildContext() {\n return {\n transitionGroup: { isMounting: !this.appeared }\n };\n };\n // use child config unless explictly set by the Group\n\n\n TransitionGroup.prototype.getProp = function getProp(child, prop) {\n var props = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.props;\n\n return props[prop] != null ? props[prop] : child.props[prop];\n };\n\n TransitionGroup.prototype.componentDidMount = function componentDidMount() {\n this.appeared = true;\n };\n\n TransitionGroup.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n var _this2 = this;\n\n var prevChildMapping = this.state.children;\n var nextChildMapping = (0, _ChildMapping.getChildMapping)(nextProps.children);\n\n var children = (0, _ChildMapping.mergeChildMappings)(prevChildMapping, nextChildMapping);\n\n Object.keys(children).forEach(function (key) {\n var child = children[key];\n\n if (!(0, _react.isValidElement)(child)) return;\n\n var onExited = function onExited(node) {\n _this2.handleExited(child.key, node, child.props.onExited);\n };\n\n var hasPrev = key in prevChildMapping;\n var hasNext = key in nextChildMapping;\n\n var prevChild = prevChildMapping[key];\n var isLeaving = (0, _react.isValidElement)(prevChild) && !prevChild.props.in;\n\n // item is new (entering)\n if (hasNext && (!hasPrev || isLeaving)) {\n // console.log('entering', key)\n children[key] = (0, _react.cloneElement)(child, {\n onExited: onExited,\n in: true,\n exit: _this2.getProp(child, 'exit', nextProps),\n enter: _this2.getProp(child, 'enter', nextProps)\n });\n }\n // item is old (exiting)\n else if (!hasNext && hasPrev && !isLeaving) {\n // console.log('leaving', key)\n children[key] = (0, _react.cloneElement)(child, { in: false });\n }\n // item hasn't changed transition states\n // copy over the last transition props;\n else if (hasNext && hasPrev && (0, _react.isValidElement)(prevChild)) {\n // console.log('unchanged', key)\n children[key] = (0, _react.cloneElement)(child, {\n onExited: onExited,\n in: prevChild.props.in,\n exit: _this2.getProp(child, 'exit', nextProps),\n enter: _this2.getProp(child, 'enter', nextProps)\n });\n }\n });\n\n this.setState({ children: children });\n };\n\n TransitionGroup.prototype.render = function render() {\n var _props = this.props,\n Component = _props.component,\n childFactory = _props.childFactory,\n props = _objectWithoutProperties(_props, ['component', 'childFactory']);\n\n var children = this.state.children;\n\n\n delete props.appear;\n delete props.enter;\n delete props.exit;\n\n return _react2.default.createElement(\n Component,\n props,\n values(children).map(childFactory)\n );\n };\n\n return TransitionGroup;\n}(_react2.default.Component);\n\nTransitionGroup.childContextTypes = {\n transitionGroup: _propTypes2.default.object.isRequired\n};\n\n\nTransitionGroup.propTypes = process.env.NODE_ENV !== \"production\" ? propTypes : {};\nTransitionGroup.defaultProps = defaultProps;\n\nexports.default = TransitionGroup;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/react-transition-group/TransitionGroup.js\n// module id = 9\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\nexports.getChildMapping = getChildMapping;\nexports.mergeChildMappings = mergeChildMappings;\n\nvar _react = require('react');\n\n/**\n * Given `this.props.children`, return an object mapping key to child.\n *\n * @param {*} children `this.props.children`\n * @return {object} Mapping of key to child\n */\nfunction getChildMapping(children, mapFn) {\n var mapper = function mapper(child) {\n return mapFn && (0, _react.isValidElement)(child) ? mapFn(child) : child;\n };\n\n var result = Object.create(null);\n if (children) _react.Children.map(children, function (c) {\n return c;\n }).forEach(function (child) {\n // run the map function here instead so that the key is the computed one\n result[child.key] = mapper(child);\n });\n return result;\n}\n\n/**\n * When you're adding or removing children some may be added or removed in the\n * same render pass. We want to show *both* since we want to simultaneously\n * animate elements in and out. This function takes a previous set of keys\n * and a new set of keys and merges them with its best guess of the correct\n * ordering. In the future we may expose some of the utilities in\n * ReactMultiChild to make this easy, but for now React itself does not\n * directly have this concept of the union of prevChildren and nextChildren\n * so we implement it here.\n *\n * @param {object} prev prev children as returned from\n * `ReactTransitionChildMapping.getChildMapping()`.\n * @param {object} next next children as returned from\n * `ReactTransitionChildMapping.getChildMapping()`.\n * @return {object} a key set that contains all keys in `prev` and all keys\n * in `next` in a reasonable order.\n */\nfunction mergeChildMappings(prev, next) {\n prev = prev || {};\n next = next || {};\n\n function getValueForKey(key) {\n return key in next ? next[key] : prev[key];\n }\n\n // For each key of `next`, the list of keys to insert before that key in\n // the combined list\n var nextKeysPending = Object.create(null);\n\n var pendingKeys = [];\n for (var prevKey in prev) {\n if (prevKey in next) {\n if (pendingKeys.length) {\n nextKeysPending[prevKey] = pendingKeys;\n pendingKeys = [];\n }\n } else {\n pendingKeys.push(prevKey);\n }\n }\n\n var i = void 0;\n var childMapping = {};\n for (var nextKey in next) {\n if (nextKeysPending[nextKey]) {\n for (i = 0; i < nextKeysPending[nextKey].length; i++) {\n var pendingNextKey = nextKeysPending[nextKey][i];\n childMapping[nextKeysPending[nextKey][i]] = getValueForKey(pendingNextKey);\n }\n }\n childMapping[nextKey] = getValueForKey(nextKey);\n }\n\n // Finally, add the keys which didn't appear before any key in `next`\n for (i = 0; i < pendingKeys.length; i++) {\n childMapping[pendingKeys[i]] = getValueForKey(pendingKeys[i]);\n }\n\n return childMapping;\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/react-transition-group/utils/ChildMapping.js\n// module id = 10\n// module chunks = 0","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { css } from 'glamor';\n\nimport ProgressBar from './ProgressBar';\nimport { POSITION, TYPE } from './constant';\nimport style from './style';\nimport {\n falseOrElement,\n falseOrDelay,\n objectValues\n} from './util/propValidator';\n\nconst toast = type =>\n css({\n position: 'relative',\n minHeight: '48px',\n marginBottom: '1rem',\n padding: '8px',\n borderRadius: '1px',\n boxShadow:\n '0 1px 10px 0 rgba(0, 0, 0, .1), 0 2px 15px 0 rgba(0, 0, 0, .05)',\n display: 'flex',\n justifyContent: 'space-between',\n maxHeight: '800px',\n overflow: 'hidden',\n fontFamily: style.fontFamily,\n cursor: 'pointer',\n background: style[`color${type.charAt(0).toUpperCase()}${type.slice(1)}`],\n ...(type === 'default' ? { color: '#aaa' } : {}),\n [`@media ${style.mobile}`]: {\n marginBottom: 0\n }\n });\n\nconst body = css({\n margin: 'auto 0',\n flex: 1\n});\n\nclass Toast extends Component {\n static propTypes = {\n closeButton: falseOrElement.isRequired,\n autoClose: falseOrDelay.isRequired,\n children: PropTypes.node.isRequired,\n closeToast: PropTypes.func.isRequired,\n position: PropTypes.oneOf(objectValues(POSITION)).isRequired,\n pauseOnHover: PropTypes.bool.isRequired,\n closeOnClick: PropTypes.bool.isRequired,\n transition: PropTypes.func.isRequired,\n isDocumentHidden: PropTypes.bool.isRequired,\n in: PropTypes.bool,\n onExited: PropTypes.func,\n hideProgressBar: PropTypes.bool,\n onOpen: PropTypes.func,\n onClose: PropTypes.func,\n type: PropTypes.oneOf(objectValues(TYPE)),\n className: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n bodyClassName: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n progressClassName: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.object\n ]),\n updateId: PropTypes.number\n };\n\n static defaultProps = {\n type: TYPE.DEFAULT,\n in: true,\n hideProgressBar: false,\n onOpen: null,\n onClose: null,\n className: '',\n bodyClassName: '',\n progressClassName: '',\n updateId: null\n };\n\n state = {\n isRunning: true\n };\n\n componentDidMount() {\n this.props.onOpen !== null && this.props.onOpen(this.getChildrenProps());\n }\n\n componentWillReceiveProps(nextProps) {\n if (this.props.isDocumentHidden !== nextProps.isDocumentHidden) {\n this.setState({\n isRunning: !nextProps.isDocumentHidden\n });\n }\n }\n\n componentWillUnmount() {\n this.props.onClose !== null && this.props.onClose(this.getChildrenProps());\n }\n\n getChildrenProps() {\n return this.props.children.props;\n }\n\n getToastProps() {\n const toastProps = {};\n\n if (this.props.autoClose !== false && this.props.pauseOnHover === true) {\n toastProps.onMouseEnter = this.pauseToast;\n toastProps.onMouseLeave = this.playToast;\n }\n typeof this.props.className === 'string' &&\n (toastProps.className = this.props.className);\n this.props.closeOnClick && (toastProps.onClick = this.props.closeToast);\n\n return toastProps;\n }\n\n pauseToast = () => {\n this.setState({ isRunning: false });\n };\n\n playToast = () => {\n this.setState({ isRunning: true });\n };\n\n render() {\n const {\n closeButton,\n children,\n autoClose,\n type,\n hideProgressBar,\n closeToast,\n transition: Transition,\n position,\n onExited,\n className,\n bodyClassName,\n progressClassName,\n updateId\n } = this.props;\n\n return (\n \n \n \n {children}\n
\n {closeButton !== false && closeButton}\n {autoClose !== false && (\n \n )}\n
\n \n );\n }\n}\n\nexport default Toast;\n\n\n\n// WEBPACK FOOTER //\n// ./src/Toast.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { css } from 'glamor';\n\nimport { TYPE } from './constant';\nimport style from './style';\n\nconst trackProgress = css.keyframes('track-progress', {\n '0%': { width: '100%' },\n '100%': { width: 0 }\n});\n\nconst progress = (type, isRunning, hide, delay) =>\n css({\n position: 'absolute',\n bottom: 0,\n left: 0,\n width: 0,\n height: '5px',\n zIndex: style.zIndex,\n opacity: hide ? 0 : 0.7,\n animation: `${trackProgress} linear 1`,\n animationPlayState: isRunning ? 'running' : 'paused',\n animationDuration: `${delay}ms`,\n backgroundColor: 'rgba(255,255,255,.7)',\n ...(type === 'default' ? { background: style.colorProgressDefault } : {})\n });\n\nfunction ProgressBar({ delay, isRunning, closeToast, type, hide, className }) {\n return (\n \n );\n}\n\nProgressBar.propTypes = {\n /**\n * The animation delay which determine when to close the toast\n */\n delay: PropTypes.number.isRequired,\n\n /**\n * Whether or not the animation is running or paused\n */\n isRunning: PropTypes.bool.isRequired,\n\n /**\n * Func to close the current toast\n */\n closeToast: PropTypes.func.isRequired,\n\n /**\n * Optional type : info, success ...\n */\n type: PropTypes.string,\n\n /**\n * Hide or not the progress bar\n */\n hide: PropTypes.bool,\n\n /**\n * Optionnal className\n */\n className: PropTypes.oneOfType([PropTypes.string, PropTypes.object])\n};\n\nProgressBar.defaultProps = {\n type: TYPE.DEFAULT,\n hide: false,\n className: ''\n};\n\nexport default ProgressBar;\n\n\n\n// WEBPACK FOOTER //\n// ./src/ProgressBar.js","/* eslint react/require-default-props: 0 */\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { css } from 'glamor';\n\nconst rule = isDefault =>\n css({\n color: isDefault ? '#000' : '#fff',\n fontWeight: 'bold',\n fontSize: '14px',\n background: 'transparent',\n outline: 'none',\n border: 'none',\n padding: 0,\n cursor: 'pointer',\n opacity: isDefault ? '0.3' : '0.7',\n transition: '.3s ease',\n alignSelf: 'flex-start',\n ':hover, :focus': {\n opacity: 1\n }\n });\n\nfunction DefaultCloseButton({ closeToast, type }) {\n return (\n \n );\n}\n\nDefaultCloseButton.propTypes = {\n closeToast: PropTypes.func\n};\n\nexport default DefaultCloseButton;\n\n\n\n// WEBPACK FOOTER //\n// ./src/DefaultCloseButton.js","import React from 'react';\nimport Transition from 'react-transition-group/Transition';\nimport { css } from 'glamor';\n\nimport getAnimation from './animation';\n\nconst animate = {\n animationDuration: '0.75s',\n animationFillMode: 'both'\n};\n\nconst animation = pos => {\n const { enter, exit } = getAnimation(pos);\n const enterAnimation = css.keyframes('enter', {\n 'from, 60%, 75%, 90%, to': {\n animationTimingFunction: 'cubic-bezier(0.215, 0.610, 0.355, 1.000)'\n },\n ...enter\n });\n const exitAnimation = css.keyframes('exit', exit);\n\n return {\n enter: css({ ...animate, animationName: enterAnimation }),\n exit: css({ ...animate, animationName: exitAnimation })\n };\n};\n\nfunction DefaultTransition({ children, position, ...props }) {\n const { enter, exit } = animation(position);\n\n return (\n node.classList.add(enter)}\n onEntered={node => node.classList.remove(enter)}\n onExit={node => node.classList.add(exit)}\n >\n {children}\n \n );\n}\n\nexport default DefaultTransition;\n\n\n\n// WEBPACK FOOTER //\n// ./src/DefaultTransition.js","'use strict';\n\nexports.__esModule = true;\nexports.EXITING = exports.ENTERED = exports.ENTERING = exports.EXITED = exports.UNMOUNTED = undefined;\n\nvar _propTypes = require('prop-types');\n\nvar PropTypes = _interopRequireWildcard(_propTypes);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _PropTypes = require('./utils/PropTypes');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar UNMOUNTED = exports.UNMOUNTED = 'unmounted';\nvar EXITED = exports.EXITED = 'exited';\nvar ENTERING = exports.ENTERING = 'entering';\nvar ENTERED = exports.ENTERED = 'entered';\nvar EXITING = exports.EXITING = 'exiting';\n\n/**\n * The Transition component lets you describe a transition from one component\n * state to another _over time_ with a simple declarative API. Most commonly\n * it's used to animate the mounting and unmounting of a component, but can also\n * be used to describe in-place transition states as well.\n *\n * By default the `Transition` component does not alter the behavior of the\n * component it renders, it only tracks \"enter\" and \"exit\" states for the components.\n * It's up to you to give meaning and effect to those states. For example we can\n * add styles to a component when it enters or exits:\n *\n * ```jsx\n * import Transition from 'react-transition-group/Transition';\n *\n * const duration = 300;\n *\n * const defaultStyle = {\n * transition: `opacity ${duration}ms ease-in-out`,\n * opacity: 0,\n * }\n *\n * const transitionStyles = {\n * entering: { opacity: 0 },\n * entered: { opacity: 1 },\n * };\n *\n * const Fade = ({ in: inProp }) => (\n * \n * {(state) => (\n *
\n * I'm A fade Transition!\n *
\n * )}\n *
\n * );\n * ```\n *\n * As noted the `Transition` component doesn't _do_ anything by itself to its child component.\n * What it does do is track transition states over time so you can update the\n * component (such as by adding styles or classes) when it changes states.\n *\n * There are 4 main states a Transition can be in:\n * - `ENTERING`\n * - `ENTERED`\n * - `EXITING`\n * - `EXITED`\n *\n * Transition state is toggled via the `in` prop. When `true` the component begins the\n * \"Enter\" stage. During this stage, the component will shift from its current transition state,\n * to `'entering'` for the duration of the transition and then to the `'entered'` stage once\n * it's complete. Let's take the following example:\n *\n * ```jsx\n * state= { in: false };\n *\n * toggleEnterState = () => {\n * this.setState({ in: true });\n * }\n *\n * render() {\n * return (\n *
\n * \n * \n *
\n * );\n * }\n * ```\n *\n * When the button is clicked the component will shift to the `'entering'` state and\n * stay there for 500ms (the value of `timeout`) when finally switches to `'entered'`.\n *\n * When `in` is `false` the same thing happens except the state moves from `'exiting'` to `'exited'`.\n */\n\nvar Transition = function (_React$Component) {\n _inherits(Transition, _React$Component);\n\n function Transition(props, context) {\n _classCallCheck(this, Transition);\n\n var _this = _possibleConstructorReturn(this, _React$Component.call(this, props, context));\n\n var parentGroup = context.transitionGroup;\n // In the context of a TransitionGroup all enters are really appears\n var appear = parentGroup && !parentGroup.isMounting ? props.enter : props.appear;\n\n var initialStatus = void 0;\n _this.nextStatus = null;\n\n if (props.in) {\n if (appear) {\n initialStatus = EXITED;\n _this.nextStatus = ENTERING;\n } else {\n initialStatus = ENTERED;\n }\n } else {\n if (props.unmountOnExit || props.mountOnEnter) {\n initialStatus = UNMOUNTED;\n } else {\n initialStatus = EXITED;\n }\n }\n\n _this.state = { status: initialStatus };\n\n _this.nextCallback = null;\n return _this;\n }\n\n Transition.prototype.getChildContext = function getChildContext() {\n return { transitionGroup: null }; // allows for nested Transitions\n };\n\n Transition.prototype.componentDidMount = function componentDidMount() {\n this.updateStatus(true);\n };\n\n Transition.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n var _ref = this.pendingState || this.state,\n status = _ref.status;\n\n if (nextProps.in) {\n if (status === UNMOUNTED) {\n this.setState({ status: EXITED });\n }\n if (status !== ENTERING && status !== ENTERED) {\n this.nextStatus = ENTERING;\n }\n } else {\n if (status === ENTERING || status === ENTERED) {\n this.nextStatus = EXITING;\n }\n }\n };\n\n Transition.prototype.componentDidUpdate = function componentDidUpdate() {\n this.updateStatus();\n };\n\n Transition.prototype.componentWillUnmount = function componentWillUnmount() {\n this.cancelNextCallback();\n };\n\n Transition.prototype.getTimeouts = function getTimeouts() {\n var timeout = this.props.timeout;\n\n var exit = void 0,\n enter = void 0,\n appear = void 0;\n\n exit = enter = appear = timeout;\n\n if (timeout != null && typeof timeout !== 'number') {\n exit = timeout.exit;\n enter = timeout.enter;\n appear = timeout.appear;\n }\n return { exit: exit, enter: enter, appear: appear };\n };\n\n Transition.prototype.updateStatus = function updateStatus() {\n var mounting = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n\n var nextStatus = this.nextStatus;\n\n if (nextStatus !== null) {\n this.nextStatus = null;\n // nextStatus will always be ENTERING or EXITING.\n this.cancelNextCallback();\n var node = _reactDom2.default.findDOMNode(this);\n\n if (nextStatus === ENTERING) {\n this.performEnter(node, mounting);\n } else {\n this.performExit(node);\n }\n } else if (this.props.unmountOnExit && this.state.status === EXITED) {\n this.setState({ status: UNMOUNTED });\n }\n };\n\n Transition.prototype.performEnter = function performEnter(node, mounting) {\n var _this2 = this;\n\n var enter = this.props.enter;\n\n var appearing = this.context.transitionGroup ? this.context.transitionGroup.isMounting : mounting;\n\n var timeouts = this.getTimeouts();\n\n // no enter animation skip right to ENTERED\n // if we are mounting and running this it means appear _must_ be set\n if (!mounting && !enter) {\n this.safeSetState({ status: ENTERED }, function () {\n _this2.props.onEntered(node);\n });\n return;\n }\n\n this.props.onEnter(node, appearing);\n\n this.safeSetState({ status: ENTERING }, function () {\n _this2.props.onEntering(node, appearing);\n\n // FIXME: appear timeout?\n _this2.onTransitionEnd(node, timeouts.enter, function () {\n _this2.safeSetState({ status: ENTERED }, function () {\n _this2.props.onEntered(node, appearing);\n });\n });\n });\n };\n\n Transition.prototype.performExit = function performExit(node) {\n var _this3 = this;\n\n var exit = this.props.exit;\n\n var timeouts = this.getTimeouts();\n\n // no exit animation skip right to EXITED\n if (!exit) {\n this.safeSetState({ status: EXITED }, function () {\n _this3.props.onExited(node);\n });\n return;\n }\n this.props.onExit(node);\n\n this.safeSetState({ status: EXITING }, function () {\n _this3.props.onExiting(node);\n\n _this3.onTransitionEnd(node, timeouts.exit, function () {\n _this3.safeSetState({ status: EXITED }, function () {\n _this3.props.onExited(node);\n });\n });\n });\n };\n\n Transition.prototype.cancelNextCallback = function cancelNextCallback() {\n if (this.nextCallback !== null) {\n this.nextCallback.cancel();\n this.nextCallback = null;\n }\n };\n\n Transition.prototype.safeSetState = function safeSetState(nextState, callback) {\n var _this4 = this;\n\n // We need to track pending updates for instances where a cWRP fires quickly\n // after cDM and before the state flushes, which would double trigger a\n // transition\n this.pendingState = nextState;\n\n // This shouldn't be necessary, but there are weird race conditions with\n // setState callbacks and unmounting in testing, so always make sure that\n // we can cancel any pending setState callbacks after we unmount.\n callback = this.setNextCallback(callback);\n this.setState(nextState, function () {\n _this4.pendingState = null;\n callback();\n });\n };\n\n Transition.prototype.setNextCallback = function setNextCallback(callback) {\n var _this5 = this;\n\n var active = true;\n\n this.nextCallback = function (event) {\n if (active) {\n active = false;\n _this5.nextCallback = null;\n\n callback(event);\n }\n };\n\n this.nextCallback.cancel = function () {\n active = false;\n };\n\n return this.nextCallback;\n };\n\n Transition.prototype.onTransitionEnd = function onTransitionEnd(node, timeout, handler) {\n this.setNextCallback(handler);\n\n if (node) {\n if (this.props.addEndListener) {\n this.props.addEndListener(node, this.nextCallback);\n }\n if (timeout != null) {\n setTimeout(this.nextCallback, timeout);\n }\n } else {\n setTimeout(this.nextCallback, 0);\n }\n };\n\n Transition.prototype.render = function render() {\n var status = this.state.status;\n if (status === UNMOUNTED) {\n return null;\n }\n\n var _props = this.props,\n children = _props.children,\n childProps = _objectWithoutProperties(_props, ['children']);\n // filter props for Transtition\n\n\n delete childProps.in;\n delete childProps.mountOnEnter;\n delete childProps.unmountOnExit;\n delete childProps.appear;\n delete childProps.enter;\n delete childProps.exit;\n delete childProps.timeout;\n delete childProps.addEndListener;\n delete childProps.onEnter;\n delete childProps.onEntering;\n delete childProps.onEntered;\n delete childProps.onExit;\n delete childProps.onExiting;\n delete childProps.onExited;\n\n if (typeof children === 'function') {\n return children(status, childProps);\n }\n\n var child = _react2.default.Children.only(children);\n return _react2.default.cloneElement(child, childProps);\n };\n\n return Transition;\n}(_react2.default.Component);\n\nTransition.contextTypes = {\n transitionGroup: PropTypes.object\n};\nTransition.childContextTypes = {\n transitionGroup: function transitionGroup() {}\n};\n\n\nTransition.propTypes = process.env.NODE_ENV !== \"production\" ? {\n /**\n * A `function` child can be used instead of a React element.\n * This function is called with the current transition status\n * ('entering', 'entered', 'exiting', 'exited', 'unmounted'), which can used\n * to apply context specific props to a component.\n *\n * ```jsx\n * \n * {(status) => (\n * \n * )}\n * \n * ```\n */\n children: PropTypes.oneOfType([PropTypes.func.isRequired, PropTypes.element.isRequired]).isRequired,\n\n /**\n * Show the component; triggers the enter or exit states\n */\n in: PropTypes.bool,\n\n /**\n * By default the child component is mounted immediately along with\n * the parent `Transition` component. If you want to \"lazy mount\" the component on the\n * first `in={true}` you can set `mountOnEnter`. After the first enter transition the component will stay\n * mounted, even on \"exited\", unless you also specify `unmountOnExit`.\n */\n mountOnEnter: PropTypes.bool,\n\n /**\n * By default the child component stays mounted after it reaches the `'exited'` state.\n * Set `unmountOnExit` if you'd prefer to unmount the component after it finishes exiting.\n */\n unmountOnExit: PropTypes.bool,\n\n /**\n * Normally a component is not transitioned if it is shown when the `` component mounts.\n * If you want to transition on the first mount set `appear` to `true`, and the\n * component will transition in as soon as the `` mounts.\n *\n * > Note: there are no specific \"appear\" states. `appear` only adds an additional `enter` transition.\n */\n appear: PropTypes.bool,\n\n /**\n * Enable or disable enter transitions.\n */\n enter: PropTypes.bool,\n\n /**\n * Enable or disable exit transitions.\n */\n exit: PropTypes.bool,\n\n /**\n * The duration of the transition, in milliseconds.\n * Required unless `addEventListener` is provided\n *\n * You may specify a single timeout for all transitions like: `timeout={500}`,\n * or individually like:\n *\n * ```jsx\n * timeout={{\n * enter: 300,\n * exit: 500,\n * }}\n * ```\n *\n * @type {number | { enter?: number, exit?: number }}\n */\n timeout: function timeout(props) {\n for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n var pt = _PropTypes.timeoutsShape;\n if (!props.addEndListener) pt = pt.isRequired;\n return pt.apply(undefined, [props].concat(args));\n },\n\n /**\n * Add a custom transition end trigger. Called with the transitioning\n * DOM node and a `done` callback. Allows for more fine grained transition end\n * logic. **Note:** Timeouts are still used as a fallback if provided.\n *\n * ```jsx\n * addEndListener={(node, done) => {\n * // use the css transitionend event to mark the finish of a transition\n * node.addEventListener('transitionend', done, false);\n * }}\n * ```\n */\n addEndListener: PropTypes.func,\n\n /**\n * Callback fired before the \"entering\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * @type Function(node: HtmlElement, isAppearing: bool) -> void\n */\n onEnter: PropTypes.func,\n\n /**\n * Callback fired after the \"entering\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * @type Function(node: HtmlElement, isAppearing: bool)\n */\n onEntering: PropTypes.func,\n\n /**\n * Callback fired after the \"entered\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * @type Function(node: HtmlElement, isAppearing: bool) -> void\n */\n onEntered: PropTypes.func,\n\n /**\n * Callback fired before the \"exiting\" status is applied.\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExit: PropTypes.func,\n\n /**\n * Callback fired after the \"exiting\" status is applied.\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExiting: PropTypes.func,\n\n /**\n * Callback fired after the \"exited\" status is applied.\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExited: PropTypes.func\n} : {};\n\n// Name the function so it is clearer in the documentation\nfunction noop() {}\n\nTransition.defaultProps = {\n in: false,\n mountOnEnter: false,\n unmountOnExit: false,\n appear: false,\n enter: true,\n exit: true,\n\n onEnter: noop,\n onEntering: noop,\n onEntered: noop,\n\n onExit: noop,\n onExiting: noop,\n onExited: noop\n};\n\nTransition.UNMOUNTED = 0;\nTransition.EXITED = 1;\nTransition.ENTERING = 2;\nTransition.ENTERED = 3;\nTransition.EXITING = 4;\n\nexports.default = Transition;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/react-transition-group/Transition.js\n// module id = 15\n// module chunks = 0","module.exports = __WEBPACK_EXTERNAL_MODULE_16__;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"react-dom\"\n// module id = 16\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\nexports.classNamesShape = exports.timeoutsShape = undefined;\nexports.transitionTimeout = transitionTimeout;\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction transitionTimeout(transitionType) {\n var timeoutPropName = 'transition' + transitionType + 'Timeout';\n var enabledPropName = 'transition' + transitionType;\n\n return function (props) {\n // If the transition is enabled\n if (props[enabledPropName]) {\n // If no timeout duration is provided\n if (props[timeoutPropName] == null) {\n return new Error(timeoutPropName + ' wasn\\'t supplied to CSSTransitionGroup: ' + 'this can cause unreliable animations and won\\'t be supported in ' + 'a future version of React. See ' + 'https://fb.me/react-animation-transition-group-timeout for more ' + 'information.');\n\n // If the duration isn't a number\n } else if (typeof props[timeoutPropName] !== 'number') {\n return new Error(timeoutPropName + ' must be a number (in milliseconds)');\n }\n }\n\n return null;\n };\n}\n\nvar timeoutsShape = exports.timeoutsShape = _propTypes2.default.oneOfType([_propTypes2.default.number, _propTypes2.default.shape({\n enter: _propTypes2.default.number,\n exit: _propTypes2.default.number\n}).isRequired]);\n\nvar classNamesShape = exports.classNamesShape = _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.shape({\n enter: _propTypes2.default.string,\n exit: _propTypes2.default.string,\n active: _propTypes2.default.string\n}), _propTypes2.default.shape({\n enter: _propTypes2.default.string,\n enterActive: _propTypes2.default.string,\n exit: _propTypes2.default.string,\n exitActive: _propTypes2.default.string\n})]);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/react-transition-group/utils/PropTypes.js\n// module id = 17\n// module chunks = 0","import { POSITION } from './constant';\n\nexport default function getAnimation(pos) {\n switch (pos) {\n case POSITION.TOP_RIGHT:\n case POSITION.BOTTOM_RIGHT:\n default:\n return {\n enter: {\n from: {\n opacity: 0,\n transform: 'translate3d(3000px, 0, 0)'\n },\n '60%': {\n opacity: 1,\n transform: 'translate3d(-25px, 0, 0)'\n },\n '75%': {\n transform: 'translate3d(10px, 0, 0)'\n },\n '90%': {\n transform: 'translate3d(-5px, 0, 0)'\n },\n to: {\n transform: 'none'\n }\n },\n exit: {\n '20%': {\n opacity: 1,\n transform: 'translate3d(-20px, 0, 0)'\n },\n to: {\n opacity: 0,\n transform: 'translate3d(2000px, 0, 0)'\n }\n }\n };\n case POSITION.TOP_LEFT:\n case POSITION.BOTTOM_LEFT:\n return {\n enter: {\n '0%': {\n opacity: 0,\n transform: 'translate3d(-3000px, 0, 0)'\n },\n '60%': {\n opacity: 1,\n transform: 'translate3d(25px, 0, 0)'\n },\n '75%': {\n transform: 'translate3d(-10px, 0, 0)'\n },\n '90%': {\n transform: 'translate3d(5px, 0, 0)'\n },\n to: {\n transform: 'none'\n }\n },\n exit: {\n '20%': {\n opacity: 1,\n transform: 'translate3d(20px, 0, 0)'\n },\n to: {\n opacity: 0,\n transform: 'translate3d(-2000px, 0, 0)'\n }\n }\n };\n case POSITION.BOTTOM_CENTER:\n return {\n enter: {\n from: {\n opacity: 0,\n transform: 'translate3d(0, 3000px, 0)'\n },\n '60%': {\n opacity: 1,\n transform: 'translate3d(0, -20px, 0)'\n },\n '75%': {\n transform: 'translate3d(0, 10px, 0)'\n },\n '90%': {\n transform: 'translate3d(0, -5px, 0)'\n },\n to: {\n transform: 'translate3d(0, 0, 0)'\n }\n },\n exit: {\n '20%': {\n transform: 'translate3d(0, 10px, 0)'\n },\n '40%, 45%': {\n opacity: 1,\n transform: 'translate3d(0, -20px, 0)'\n },\n to: {\n opacity: 0,\n transform: 'translate3d(0, 2000px, 0)'\n }\n }\n };\n case POSITION.TOP_CENTER:\n return {\n enter: {\n '0%': {\n opacity: 0,\n transform: 'translate3d(0, -3000px, 0)'\n },\n '60%': {\n opacity: 1,\n transform: 'translate3d(0, 25px, 0)'\n },\n '75%': {\n transform: 'translate3d(0, -10px, 0)'\n },\n '90%': {\n transform: 'translate3d(0, 5px, 0)'\n },\n to: {\n transform: 'none'\n }\n },\n exit: {\n '20%': {\n transform: 'translate3d(0, -10px, 0)'\n },\n '40%, 45%': {\n opacity: 1,\n transform: 'translate3d(0, 20px, 0)'\n },\n to: {\n opacity: 0,\n transform: 'translate3d(0, -2000px, 0)'\n }\n }\n };\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/animation.js","import EventManager from './util/EventManager';\nimport { POSITION, TYPE, ACTION } from './constant';\n\nconst defaultOptions = {\n type: TYPE.DEFAULT,\n autoClose: null,\n closeButton: null,\n hideProgressBar: null,\n position: null,\n pauseOnHover: null,\n closeOnClick: null,\n className: null,\n bodyClassName: null,\n progressClassName: null,\n transition: null,\n updateId: null\n};\n\nlet container = null;\nlet queue = [];\nlet toastId = 0;\n\n/**\n * Merge provided options with the defaults settings and generate the toastId\n * @param {*} options\n */\nfunction mergeOptions(options, type) {\n return Object.assign({}, defaultOptions, options, {\n type: type,\n toastId: ++toastId\n });\n}\n\n/**\n * Dispatch toast. If the container is not mounted, the toast is enqueued\n * @param {*} content\n * @param {*} options\n */\nfunction emitEvent(content, options) {\n if (container !== null) {\n EventManager.emit(ACTION.SHOW, content, options);\n } else {\n queue.push({ action: ACTION.SHOW, content, options });\n }\n\n return options.toastId;\n}\n\nconst toaster = Object.assign(\n (content, options) =>\n emitEvent(\n content,\n mergeOptions(options, (options && options.type) || TYPE.DEFAULT)\n ),\n {\n success: (content, options) =>\n emitEvent(content, mergeOptions(options, TYPE.SUCCESS)),\n info: (content, options) =>\n emitEvent(content, mergeOptions(options, TYPE.INFO)),\n warn: (content, options) =>\n emitEvent(content, mergeOptions(options, TYPE.WARNING)),\n warning: (content, options) =>\n emitEvent(content, mergeOptions(options, TYPE.WARNING)),\n error: (content, options) =>\n emitEvent(content, mergeOptions(options, TYPE.ERROR)),\n dismiss: (id = null) => container && EventManager.emit(ACTION.CLEAR, id),\n isActive: () => false,\n update(id, options) {\n if (container && typeof container.collection[id] !== 'undefined') {\n const {\n options: oldOptions,\n content: oldContent\n } = container.collection[id];\n const updateId =\n oldOptions.updateId !== null ? oldOptions.updateId + 1 : 1;\n\n const nextOptions = Object.assign({}, oldOptions, options, {\n toastId: id,\n updateId: updateId\n });\n const content =\n typeof nextOptions.render !== 'undefined'\n ? nextOptions.render\n : oldContent;\n delete nextOptions.render;\n\n return emitEvent(content, nextOptions);\n }\n\n return false;\n }\n },\n {\n POSITION,\n TYPE\n }\n);\n\n/**\n * Wait until the ToastContainer is mounted to dispatch the toast\n * and attach isActive method\n */\nEventManager.on(ACTION.MOUNTED, containerInstance => {\n container = containerInstance;\n\n toaster.isActive = id => container.isToastActive(id);\n\n queue.forEach(item => {\n EventManager.emit(item.action, item.content, item.options);\n });\n queue = [];\n});\n\nexport default toaster;\n\n\n\n// WEBPACK FOOTER //\n// ./src/toaster.js"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack:///webpack/universalModuleDefinition","webpack:///dist/ReactToastify.min.js","webpack:///webpack/bootstrap 13311eeec6c577536bd5","webpack:///external \"react\"","webpack:///external \"prop-types\"","webpack:///external \"glamor\"","webpack:///./src/constant.js","webpack:///./src/style.js","webpack:///./src/util/propValidator.js","webpack:///./src/util/EventManager.js","webpack:///./src/index.js","webpack:///./src/ToastContainer.js","webpack:///./node_modules/react-transition-group/TransitionGroup.js","webpack:///./node_modules/react-transition-group/utils/ChildMapping.js","webpack:///./src/Toast.js","webpack:///./src/ProgressBar.js","webpack:///./src/DefaultCloseButton.js","webpack:///./src/DefaultTransition.js","webpack:///./node_modules/react-transition-group/Transition.js","webpack:///external \"react-dom\"","webpack:///./node_modules/react-transition-group/utils/PropTypes.js","webpack:///./src/animation.js","webpack:///./src/toaster.js"],"names":["root","factory","exports","module","require","define","amd","ReactToastify","react","glamor","this","__WEBPACK_EXTERNAL_MODULE_0__","__WEBPACK_EXTERNAL_MODULE_1__","__WEBPACK_EXTERNAL_MODULE_2__","__WEBPACK_EXTERNAL_MODULE_16__","modules","__webpack_require__","moduleId","installedModules","i","l","call","m","c","d","name","getter","o","Object","defineProperty","configurable","enumerable","get","n","__esModule","default","object","property","prototype","hasOwnProperty","p","s","value","POSITION","TOP_LEFT","TOP_RIGHT","TOP_CENTER","BOTTOM_LEFT","BOTTOM_RIGHT","BOTTOM_CENTER","TYPE","INFO","SUCCESS","WARNING","ERROR","DEFAULT","ACTION","SHOW","CLEAR","MOUNTED","defineStyle","props","prop","style","width","colorDefault","colorInfo","colorSuccess","colorWarning","colorError","colorProgressDefault","mobile","fontFamily","zIndex","top","left","right","bottom","isValidDelay","val","isNaN","objectValues","obj","keys","map","key","withRequired","fn","isRequired","propName","componentName","Error","falseOrElement","falseOrDelay","_react","isValidElement","_toConsumableArray","arr","Array","isArray","arr2","length","from","eventManager","eventList","Map","on","event","callback","has","set","push","off","arguments","delete","emit","_this","_len","args","_key","forEach","setTimeout","apply","concat","console","warn","_interopRequireDefault","toast","ToastContainer","_ToastContainer","_ToastContainer2","_toaster","_toaster2","_style","_classCallCheck","instance","Constructor","TypeError","_possibleConstructorReturn","self","ReferenceError","_inherits","subClass","superClass","create","constructor","writable","setPrototypeOf","__proto__","_defineProperty","_typeof","Symbol","iterator","_createClass","defineProperties","target","descriptor","protoProps","staticProps","_extends","assign","source","_react2","_propTypes","_propTypes2","_glamor","_TransitionGroup","_TransitionGroup2","_Toast","_Toast2","_DefaultCloseButton","_DefaultCloseButton2","_DefaultTransition","_DefaultTransition2","_constant","_style2","_EventManager","_EventManager2","_propValidator","toastPosition","pos","positionKey","toUpperCase","replace","positionRule","indexOf","marginLeft","parseInt","css","margin","position","substring","container","disablePointer","padding","boxSizing","color","pointerEvents","_Component","_ref","_temp","_ret","getPrototypeOf","state","isDocumentHidden","collection","setState","document","hidden","isToastActive","id","_this2","content","options","show","removeToast","clear","addEventListener","removeEventListener","filter","v","toastClose","toastId","type","_this3","closeButton","cloneElement","closeToast","toastAutoClose","autoClose","isFunction","_this4","canBeRendered","toastOptions","updateId","transition","className","toastClassName","bodyClassName","makeCloseButton","pauseOnHover","closeOnClick","progressClassName","getAutoCloseDelay","hideProgressBar","onOpen","onClose","createElement","_this5","toastToRender","_props","newestOnTop","reverse","item","makeToast","renderToast","Component","propTypes","oneOf","bool","oneOfType","string","func","defaultProps","_objectWithoutProperties","_ChildMapping","values","k","any","node","component","childFactory","child","TransitionGroup","_React$Component","context","handleExited","originalHandler","currentChildMapping","getChildMapping","children","onExited","in","appear","getProp","enter","exit","getChildContext","transitionGroup","isMounting","appeared","componentDidMount","componentWillReceiveProps","nextProps","prevChildMapping","nextChildMapping","mergeChildMappings","hasPrev","hasNext","prevChild","isLeaving","render","childContextTypes","mapFn","mapper","result","Children","prev","next","getValueForKey","nextKeysPending","pendingKeys","prevKey","childMapping","nextKey","pendingNextKey","_ProgressBar","_ProgressBar2","minHeight","marginBottom","borderRadius","boxShadow","display","justifyContent","maxHeight","overflow","cursor","background","charAt","slice","body","flex","Toast","isRunning","pauseToast","playToast","getChildrenProps","toastProps","onMouseEnter","onMouseLeave","onClick","Transition","unmountOnExit","getToastProps","delay","hide","number","ProgressBar","progress","onAnimationEnd","trackProgress","keyframes","0%","100%","height","opacity","animation","animationPlayState","animationDuration","backgroundColor","DefaultCloseButton","rule","isDefault","fontWeight","fontSize","outline","border","alignSelf",":hover, :focus","DefaultTransition","_animation","_Transition2","timeout","onEnter","classList","add","onEntered","remove","onExit","_Transition","_animation2","_animation3","animate","animationFillMode","_getAnimation","enterAnimation","from, 60%, 75%, 90%, to","animationTimingFunction","exitAnimation","animationName","noop","EXITING","ENTERED","ENTERING","EXITED","UNMOUNTED","PropTypes","newObj","_reactDom","_reactDom2","parentGroup","initialStatus","nextStatus","mountOnEnter","status","nextCallback","updateStatus","pendingState","componentDidUpdate","componentWillUnmount","cancelNextCallback","getTimeouts","mounting","findDOMNode","performEnter","performExit","appearing","timeouts","safeSetState","onEntering","onTransitionEnd","onExiting","cancel","nextState","setNextCallback","active","handler","addEndListener","childProps","only","contextTypes","transitionTimeout","transitionType","timeoutPropName","enabledPropName","classNamesShape","timeoutsShape","shape","enterActive","exitActive","getAnimation","transform","60%","75%","90%","to","20%","40%, 45%","mergeOptions","defaultOptions","emitEvent","queue","action","toaster","success","info","warning","error","dismiss","isActive","update","_container$collection","oldOptions","oldContent","nextOptions","containerInstance"],"mappings":"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","file":"dist/ReactToastify.min.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"react\"), require(\"prop-types\"), require(\"glamor\"), require(\"react-dom\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"react\", \"prop-types\", \"glamor\", \"react-dom\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"ReactToastify\"] = factory(require(\"react\"), require(\"prop-types\"), require(\"glamor\"), require(\"react-dom\"));\n\telse\n\t\troot[\"ReactToastify\"] = factory(root[\"react\"], root[\"prop-types\"], root[\"glamor\"], root[\"react-dom\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE_0__, __WEBPACK_EXTERNAL_MODULE_1__, __WEBPACK_EXTERNAL_MODULE_2__, __WEBPACK_EXTERNAL_MODULE_16__) {\nreturn \n\n\n// WEBPACK FOOTER //\n// webpack/universalModuleDefinition","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"react\"), require(\"prop-types\"), require(\"glamor\"), require(\"react-dom\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"react\", \"prop-types\", \"glamor\", \"react-dom\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"ReactToastify\"] = factory(require(\"react\"), require(\"prop-types\"), require(\"glamor\"), require(\"react-dom\"));\n\telse\n\t\troot[\"ReactToastify\"] = factory(root[\"react\"], root[\"prop-types\"], root[\"glamor\"], root[\"react-dom\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE_0__, __WEBPACK_EXTERNAL_MODULE_1__, __WEBPACK_EXTERNAL_MODULE_2__, __WEBPACK_EXTERNAL_MODULE_16__) {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 7);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_0__;\n\n/***/ }),\n/* 1 */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_1__;\n\n/***/ }),\n/* 2 */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_2__;\n\n/***/ }),\n/* 3 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nvar POSITION = exports.POSITION = {\n TOP_LEFT: 'top-left',\n TOP_RIGHT: 'top-right',\n TOP_CENTER: 'top-center',\n BOTTOM_LEFT: 'bottom-left',\n BOTTOM_RIGHT: 'bottom-right',\n BOTTOM_CENTER: 'bottom-center'\n};\n\nvar TYPE = exports.TYPE = {\n INFO: 'info',\n SUCCESS: 'success',\n WARNING: 'warning',\n ERROR: 'error',\n DEFAULT: 'default'\n};\nvar ACTION = exports.ACTION = {\n SHOW: 'SHOW_TOAST',\n CLEAR: 'CLEAR_TOAST',\n MOUNTED: 'CONTAINER_MOUNTED'\n};\n\n/***/ }),\n/* 4 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.defineStyle = defineStyle;\nvar style = {\n width: '320px',\n colorDefault: '#fff',\n colorInfo: '#3498db',\n colorSuccess: '#07bc0c',\n colorWarning: '#f1c40f',\n colorError: '#e74c3c',\n colorProgressDefault: 'linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55)',\n mobile: 'only screen and (max-width : 480px)',\n fontFamily: 'sans-serif',\n zIndex: 9999,\n TOP_LEFT: {\n top: '1em',\n left: '1em'\n },\n TOP_CENTER: {\n top: '1em',\n left: '50%'\n },\n TOP_RIGHT: {\n top: '1em',\n right: '1em'\n },\n BOTTOM_LEFT: {\n bottom: '1em',\n left: '1em'\n },\n BOTTOM_CENTER: {\n bottom: '1em',\n left: '50%'\n },\n BOTTOM_RIGHT: {\n bottom: '1em',\n right: '1em'\n }\n};\n\nfunction defineStyle(props) {\n for (var prop in props) {\n style[prop] = props[prop];\n }\n}\n\nexports.default = style;\n\n/***/ }),\n/* 5 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.falseOrElement = exports.falseOrDelay = undefined;\nexports.isValidDelay = isValidDelay;\nexports.objectValues = objectValues;\n\nvar _react = __webpack_require__(0);\n\nfunction isValidDelay(val) {\n return typeof val === 'number' && !isNaN(val) && val > 0;\n}\n\nfunction objectValues(obj) {\n return Object.keys(obj).map(function (key) {\n return obj[key];\n });\n}\n\nfunction withRequired(fn) {\n fn.isRequired = function (props, propName, componentName) {\n var prop = props[propName];\n\n if (typeof prop === 'undefined') {\n return new Error('The prop ' + propName + ' is marked as required in \\n ' + componentName + ', but its value is undefined.');\n }\n\n fn(props, propName, componentName);\n };\n return fn;\n}\n\nvar falseOrDelay = exports.falseOrDelay = withRequired(function (props, propName, componentName) {\n var prop = props[propName];\n\n if (prop !== false && !isValidDelay(prop)) {\n return new Error(componentName + ' expect ' + propName + ' \\n to be a valid Number > 0 or equal to false. ' + prop + ' given.');\n }\n\n return null;\n});\n\nvar falseOrElement = exports.falseOrElement = withRequired(function (props, propName, componentName) {\n var prop = props[propName];\n\n if (prop !== false && !(0, _react.isValidElement)(prop)) {\n return new Error(componentName + ' expect ' + propName + ' \\n to be a valid react element or equal to false. ' + prop + ' given.');\n }\n\n return null;\n});\n\n/***/ }),\n/* 6 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nfunction _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }\n\nvar eventManager = {\n eventList: new Map(),\n\n on: function on(event, callback) {\n this.eventList.has(event) || this.eventList.set(event, []);\n\n this.eventList.get(event).push(callback);\n\n return this;\n },\n off: function off() {\n var event = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n\n return this.eventList.delete(event);\n },\n emit: function emit(event) {\n var _this = this;\n\n for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n if (!this.eventList.has(event)) {\n /* eslint no-console: 0 */\n console.warn(\"<\" + event + \"> Event is not registered. Did you forgot to bind the event ?\");\n return false;\n }\n\n this.eventList.get(event).forEach(function (callback) {\n return setTimeout(function () {\n return callback.call.apply(callback, [_this].concat(_toConsumableArray(args)));\n }, 0);\n });\n\n return true;\n }\n};\n\nexports.default = eventManager;\n\n/***/ }),\n/* 7 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.style = exports.toast = exports.ToastContainer = undefined;\n\nvar _ToastContainer = __webpack_require__(8);\n\nvar _ToastContainer2 = _interopRequireDefault(_ToastContainer);\n\nvar _toaster = __webpack_require__(19);\n\nvar _toaster2 = _interopRequireDefault(_toaster);\n\nvar _style = __webpack_require__(4);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.ToastContainer = _ToastContainer2.default;\nexports.toast = _toaster2.default;\nexports.style = _style.defineStyle;\n\n/***/ }),\n/* 8 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _react = __webpack_require__(0);\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = __webpack_require__(1);\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _glamor = __webpack_require__(2);\n\nvar _TransitionGroup = __webpack_require__(9);\n\nvar _TransitionGroup2 = _interopRequireDefault(_TransitionGroup);\n\nvar _Toast = __webpack_require__(11);\n\nvar _Toast2 = _interopRequireDefault(_Toast);\n\nvar _DefaultCloseButton = __webpack_require__(13);\n\nvar _DefaultCloseButton2 = _interopRequireDefault(_DefaultCloseButton);\n\nvar _DefaultTransition = __webpack_require__(14);\n\nvar _DefaultTransition2 = _interopRequireDefault(_DefaultTransition);\n\nvar _constant = __webpack_require__(3);\n\nvar _style = __webpack_require__(4);\n\nvar _style2 = _interopRequireDefault(_style);\n\nvar _EventManager = __webpack_require__(6);\n\nvar _EventManager2 = _interopRequireDefault(_EventManager);\n\nvar _propValidator = __webpack_require__(5);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar toastPosition = function toastPosition(pos) {\n var positionKey = pos.toUpperCase().replace('-', '_');\n var positionRule = typeof _constant.POSITION[positionKey] !== 'undefined' ? _style2.default[positionKey] : _style2.default.TOP_RIGHT;\n\n /** define margin for center toast based on toast witdh */\n if (positionKey.indexOf('CENTER') !== -1 && typeof positionRule.marginLeft === 'undefined') {\n positionRule.marginLeft = '-' + parseInt(_style2.default.width, 10) / 2 + 'px';\n }\n\n return (0, _glamor.css)(positionRule, (0, _glamor.css)(_defineProperty({}, '@media ' + _style2.default.mobile, _extends({\n left: 0,\n margin: 0,\n position: 'fixed'\n }, pos.substring(0, 3) === 'top' ? { top: 0 } : { bottom: 0 }))));\n};\n\nvar container = function container(disablePointer, position) {\n return (0, _glamor.css)(_extends({\n zIndex: _style2.default.zIndex,\n position: 'fixed',\n padding: '4px',\n width: _style2.default.width,\n boxSizing: 'border-box',\n color: '#fff'\n }, disablePointer ? { pointerEvents: 'none' } : {}, _defineProperty({}, '@media ' + _style2.default.mobile, {\n width: '100vw',\n padding: 0\n })), toastPosition(position));\n};\n\nvar ToastContainer = function (_Component) {\n _inherits(ToastContainer, _Component);\n\n function ToastContainer() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, ToastContainer);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = ToastContainer.__proto__ || Object.getPrototypeOf(ToastContainer)).call.apply(_ref, [this].concat(args))), _this), _this.state = {\n toast: [],\n isDocumentHidden: false\n }, _this.collection = {}, _this.isDocumentHidden = function () {\n return _this.setState({ isDocumentHidden: document.hidden });\n }, _this.isToastActive = function (id) {\n return _this.state.toast.indexOf(parseInt(id, 10)) !== -1;\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n /**\n * Hold toast ids\n */\n\n\n /**\n * Hold toast's informations:\n * - what to render\n * - position\n * - raw content\n * - options\n */\n\n\n _createClass(ToastContainer, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var _this2 = this;\n\n var SHOW = _constant.ACTION.SHOW,\n CLEAR = _constant.ACTION.CLEAR,\n MOUNTED = _constant.ACTION.MOUNTED;\n\n _EventManager2.default.on(SHOW, function (content, options) {\n return _this2.show(content, options);\n }).on(CLEAR, function (id) {\n return id !== null ? _this2.removeToast(id) : _this2.clear();\n }).emit(MOUNTED, this);\n document.addEventListener('visibilitychange', this.isDocumentHidden);\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n _EventManager2.default.off(_constant.ACTION.SHOW);\n _EventManager2.default.off(_constant.ACTION.CLEAR);\n document.removeEventListener('visibilitychange', this.isDocumentHidden);\n }\n }, {\n key: 'removeToast',\n value: function removeToast(id) {\n this.setState({\n toast: this.state.toast.filter(function (v) {\n return v !== parseInt(id, 10);\n })\n });\n }\n }, {\n key: 'makeCloseButton',\n value: function makeCloseButton(toastClose, toastId, type) {\n var _this3 = this;\n\n var closeButton = this.props.closeButton;\n\n if ((0, _react.isValidElement)(toastClose) || toastClose === false) {\n closeButton = toastClose;\n }\n\n return closeButton === false ? false : (0, _react.cloneElement)(closeButton, {\n closeToast: function closeToast() {\n return _this3.removeToast(toastId);\n },\n type: type\n });\n }\n }, {\n key: 'getAutoCloseDelay',\n value: function getAutoCloseDelay(toastAutoClose) {\n return toastAutoClose === false || (0, _propValidator.isValidDelay)(toastAutoClose) ? toastAutoClose : this.props.autoClose;\n }\n }, {\n key: 'isFunction',\n value: function isFunction(object) {\n return !!(object && object.constructor && object.call && object.apply);\n }\n }, {\n key: 'canBeRendered',\n value: function canBeRendered(content) {\n return (0, _react.isValidElement)(content) || typeof content === 'string' || typeof content === 'number' || this.isFunction(content);\n }\n }, {\n key: 'show',\n value: function show(content, options) {\n var _this4 = this;\n\n if (!this.canBeRendered(content)) {\n throw new Error('The element you provided cannot be rendered. You provided an element of type ' + (typeof content === 'undefined' ? 'undefined' : _typeof(content)));\n }\n var toastId = options.toastId;\n var closeToast = function closeToast() {\n return _this4.removeToast(toastId);\n };\n var toastOptions = {\n id: toastId,\n type: options.type,\n closeToast: closeToast,\n updateId: options.updateId,\n position: options.position || this.props.position,\n transition: options.transition || this.props.transition,\n className: options.className || this.props.toastClassName,\n bodyClassName: options.bodyClassName || this.props.bodyClassName,\n closeButton: this.makeCloseButton(options.closeButton, toastId, options.type),\n pauseOnHover: options.pauseOnHover !== null ? options.pauseOnHover : this.props.pauseOnHover,\n closeOnClick: options.closeOnClick !== null ? options.closeOnClick : this.props.closeOnClick,\n progressClassName: options.progressClassName || this.props.progressClassName,\n autoClose: this.getAutoCloseDelay(options.autoClose !== false ? parseInt(options.autoClose, 10) : options.autoClose),\n hideProgressBar: typeof options.hideProgressBar === 'boolean' ? options.hideProgressBar : this.props.hideProgressBar\n };\n\n this.isFunction(options.onOpen) && (toastOptions.onOpen = options.onOpen);\n\n this.isFunction(options.onClose) && (toastOptions.onClose = options.onClose);\n\n /**\n * add closeToast function to react component only\n */\n if ((0, _react.isValidElement)(content) && typeof content.type !== 'string' && typeof content.type !== 'number') {\n content = (0, _react.cloneElement)(content, {\n closeToast: closeToast\n });\n } else if (this.isFunction(content)) {\n content = content({ closeToast: closeToast });\n }\n\n this.collection = _extends({}, this.collection, _defineProperty({}, toastId, {\n position: toastOptions.position,\n options: toastOptions,\n content: content\n }));\n\n this.setState({\n toast: toastOptions.updateId !== null ? [].concat(_toConsumableArray(this.state.toast)) : [].concat(_toConsumableArray(this.state.toast), [toastId])\n });\n }\n }, {\n key: 'makeToast',\n value: function makeToast(content, options) {\n return _react2.default.createElement(\n _Toast2.default,\n _extends({}, options, {\n isDocumentHidden: this.state.isDocumentHidden,\n key: 'toast-' + options.id\n }),\n content\n );\n }\n }, {\n key: 'clear',\n value: function clear() {\n this.setState({ toast: [] });\n }\n }, {\n key: 'renderToast',\n value: function renderToast() {\n var _this5 = this;\n\n var toastToRender = {};\n var _props = this.props,\n className = _props.className,\n style = _props.style,\n newestOnTop = _props.newestOnTop;\n\n var collection = newestOnTop ? Object.keys(this.collection).reverse() : Object.keys(this.collection);\n\n collection.forEach(function (toastId) {\n var item = _this5.collection[toastId];\n toastToRender[item.position] || (toastToRender[item.position] = []);\n\n if (_this5.state.toast.indexOf(parseInt(toastId, 10)) !== -1) {\n toastToRender[item.position].push(_this5.makeToast(item.content, item.options));\n } else {\n toastToRender[item.position].push(null);\n delete _this5.collection[toastId];\n }\n });\n\n return Object.keys(toastToRender).map(function (position) {\n var disablePointer = toastToRender[position].length === 1 && toastToRender[position][0] === null;\n\n return _react2.default.createElement(\n _TransitionGroup2.default,\n _extends({}, typeof className !== 'string' ? (0, _glamor.css)(container(disablePointer, position), className) : container(disablePointer, position), typeof className === 'string' && { className: className }, style !== null && { style: style }, {\n key: 'container-' + position\n }),\n toastToRender[position]\n );\n });\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(\n 'div',\n null,\n this.renderToast()\n );\n }\n }]);\n\n return ToastContainer;\n}(_react.Component);\n\nToastContainer.propTypes = {\n /**\n * Set toast position\n */\n position: _propTypes2.default.oneOf((0, _propValidator.objectValues)(_constant.POSITION)),\n\n /**\n * Disable or set autoClose delay\n */\n autoClose: _propValidator.falseOrDelay,\n\n /**\n * Disable or set a custom react element for the close button\n */\n closeButton: _propValidator.falseOrElement,\n\n /**\n * Hide or not progress bar when autoClose is enabled\n */\n hideProgressBar: _propTypes2.default.bool,\n\n /**\n * Pause toast duration on hover\n */\n pauseOnHover: _propTypes2.default.bool,\n\n /**\n * Dismiss toast on click\n */\n closeOnClick: _propTypes2.default.bool,\n\n /**\n * Newest on top\n */\n newestOnTop: _propTypes2.default.bool,\n\n /**\n * An optional className\n */\n className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n\n /**\n * An optional style\n */\n style: _propTypes2.default.object,\n\n /**\n * An optional className for the toast\n */\n toastClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n\n /**\n * An optional className for the toast body\n */\n bodyClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n\n /**\n * An optional className for the toast progress bar\n */\n progressClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n\n /**\n * Define enter and exit transition using react-transition-group\n */\n transition: _propTypes2.default.func\n};\nToastContainer.defaultProps = {\n position: _constant.POSITION.TOP_RIGHT,\n transition: _DefaultTransition2.default,\n autoClose: 5000,\n hideProgressBar: false,\n closeButton: _react2.default.createElement(_DefaultCloseButton2.default, null),\n pauseOnHover: true,\n closeOnClick: true,\n newestOnTop: false,\n className: null,\n style: null,\n toastClassName: '',\n bodyClassName: '',\n progressClassName: ''\n};\nexports.default = ToastContainer;\n\n/***/ }),\n/* 9 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nexports.__esModule = true;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _propTypes = __webpack_require__(1);\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _react = __webpack_require__(0);\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _ChildMapping = __webpack_require__(10);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar values = Object.values || function (obj) {\n return Object.keys(obj).map(function (k) {\n return obj[k];\n });\n};\n\nvar propTypes = {\n /**\n * `` renders a `
` by default. You can change this\n * behavior by providing a `component` prop.\n */\n component: _propTypes2.default.any,\n /**\n * A set of `` components, that are toggled `in` and out as they\n * leave. the `` will inject specific transition props, so\n * remember to spread them through if you are wrapping the `` as\n * with our `` example.\n */\n children: _propTypes2.default.node,\n\n /**\n * A convenience prop that enables or disabled appear animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n appear: _propTypes2.default.bool,\n /**\n * A convenience prop that enables or disabled enter animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n enter: _propTypes2.default.bool,\n /**\n * A convenience prop that enables or disabled exit animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n exit: _propTypes2.default.bool,\n\n /**\n * You may need to apply reactive updates to a child as it is exiting.\n * This is generally done by using `cloneElement` however in the case of an exiting\n * child the element has already been removed and not accessible to the consumer.\n *\n * If you do need to update a child as it leaves you can provide a `childFactory`\n * to wrap every child, even the ones that are leaving.\n *\n * @type Function(child: ReactElement) -> ReactElement\n */\n childFactory: _propTypes2.default.func\n};\n\nvar defaultProps = {\n component: 'div',\n childFactory: function childFactory(child) {\n return child;\n }\n};\n\n/**\n * The `` component manages a set of `` components\n * in a list. Like with the `` component, ``, is a\n * state machine for managing the mounting and unmounting of components over\n * time.\n *\n * Consider the example below using the `Fade` CSS transition from before.\n * As items are removed or added to the TodoList the `in` prop is toggled\n * automatically by the ``. You can use _any_ ``\n * component in a ``, not just css.\n *\n * ```jsx\n * import TransitionGroup from 'react-transition-group/TransitionGroup';\n *\n * class TodoList extends React.Component {\n * constructor(props) {\n * super(props)\n * this.state = {items: ['hello', 'world', 'click', 'me']}\n * }\n * handleAdd() {\n * const newItems = this.state.items.concat([\n * prompt('Enter some text')\n * ]);\n * this.setState({ items: newItems });\n * }\n * handleRemove(i) {\n * let newItems = this.state.items.slice();\n * newItems.splice(i, 1);\n * this.setState({items: newItems});\n * }\n * render() {\n * return (\n *
\n * \n * \n * {this.state.items.map((item, i) => (\n * \n *
\n * {item}{' '}\n * \n *
\n *
\n * ))}\n *
\n *
\n * );\n * }\n * }\n * ```\n *\n * Note that `` does not define any animation behavior!\n * Exactly _how_ a list item animates is up to the individual ``\n * components. This means you can mix and match animations across different\n * list items.\n */\n\nvar TransitionGroup = function (_React$Component) {\n _inherits(TransitionGroup, _React$Component);\n\n function TransitionGroup(props, context) {\n _classCallCheck(this, TransitionGroup);\n\n // Initial children should all be entering, dependent on appear\n var _this = _possibleConstructorReturn(this, _React$Component.call(this, props, context));\n\n _this.handleExited = function (key, node, originalHandler) {\n var currentChildMapping = (0, _ChildMapping.getChildMapping)(_this.props.children);\n\n if (key in currentChildMapping) return;\n\n if (originalHandler) originalHandler(node);\n\n _this.setState(function (state) {\n var children = _extends({}, state.children);\n\n delete children[key];\n return { children: children };\n });\n };\n\n _this.state = {\n children: (0, _ChildMapping.getChildMapping)(props.children, function (child) {\n var onExited = function onExited(node) {\n _this.handleExited(child.key, node, child.props.onExited);\n };\n\n return (0, _react.cloneElement)(child, {\n onExited: onExited,\n in: true,\n appear: _this.getProp(child, 'appear'),\n enter: _this.getProp(child, 'enter'),\n exit: _this.getProp(child, 'exit')\n });\n })\n };\n return _this;\n }\n\n TransitionGroup.prototype.getChildContext = function getChildContext() {\n return {\n transitionGroup: { isMounting: !this.appeared }\n };\n };\n // use child config unless explictly set by the Group\n\n\n TransitionGroup.prototype.getProp = function getProp(child, prop) {\n var props = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.props;\n\n return props[prop] != null ? props[prop] : child.props[prop];\n };\n\n TransitionGroup.prototype.componentDidMount = function componentDidMount() {\n this.appeared = true;\n };\n\n TransitionGroup.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n var _this2 = this;\n\n var prevChildMapping = this.state.children;\n var nextChildMapping = (0, _ChildMapping.getChildMapping)(nextProps.children);\n\n var children = (0, _ChildMapping.mergeChildMappings)(prevChildMapping, nextChildMapping);\n\n Object.keys(children).forEach(function (key) {\n var child = children[key];\n\n if (!(0, _react.isValidElement)(child)) return;\n\n var onExited = function onExited(node) {\n _this2.handleExited(child.key, node, child.props.onExited);\n };\n\n var hasPrev = key in prevChildMapping;\n var hasNext = key in nextChildMapping;\n\n var prevChild = prevChildMapping[key];\n var isLeaving = (0, _react.isValidElement)(prevChild) && !prevChild.props.in;\n\n // item is new (entering)\n if (hasNext && (!hasPrev || isLeaving)) {\n // console.log('entering', key)\n children[key] = (0, _react.cloneElement)(child, {\n onExited: onExited,\n in: true,\n exit: _this2.getProp(child, 'exit', nextProps),\n enter: _this2.getProp(child, 'enter', nextProps)\n });\n }\n // item is old (exiting)\n else if (!hasNext && hasPrev && !isLeaving) {\n // console.log('leaving', key)\n children[key] = (0, _react.cloneElement)(child, { in: false });\n }\n // item hasn't changed transition states\n // copy over the last transition props;\n else if (hasNext && hasPrev && (0, _react.isValidElement)(prevChild)) {\n // console.log('unchanged', key)\n children[key] = (0, _react.cloneElement)(child, {\n onExited: onExited,\n in: prevChild.props.in,\n exit: _this2.getProp(child, 'exit', nextProps),\n enter: _this2.getProp(child, 'enter', nextProps)\n });\n }\n });\n\n this.setState({ children: children });\n };\n\n TransitionGroup.prototype.render = function render() {\n var _props = this.props,\n Component = _props.component,\n childFactory = _props.childFactory,\n props = _objectWithoutProperties(_props, ['component', 'childFactory']);\n\n var children = this.state.children;\n\n\n delete props.appear;\n delete props.enter;\n delete props.exit;\n\n return _react2.default.createElement(\n Component,\n props,\n values(children).map(childFactory)\n );\n };\n\n return TransitionGroup;\n}(_react2.default.Component);\n\nTransitionGroup.childContextTypes = {\n transitionGroup: _propTypes2.default.object.isRequired\n};\n\n\nTransitionGroup.propTypes = false ? propTypes : {};\nTransitionGroup.defaultProps = defaultProps;\n\nexports.default = TransitionGroup;\nmodule.exports = exports['default'];\n\n/***/ }),\n/* 10 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nexports.__esModule = true;\nexports.getChildMapping = getChildMapping;\nexports.mergeChildMappings = mergeChildMappings;\n\nvar _react = __webpack_require__(0);\n\n/**\n * Given `this.props.children`, return an object mapping key to child.\n *\n * @param {*} children `this.props.children`\n * @return {object} Mapping of key to child\n */\nfunction getChildMapping(children, mapFn) {\n var mapper = function mapper(child) {\n return mapFn && (0, _react.isValidElement)(child) ? mapFn(child) : child;\n };\n\n var result = Object.create(null);\n if (children) _react.Children.map(children, function (c) {\n return c;\n }).forEach(function (child) {\n // run the map function here instead so that the key is the computed one\n result[child.key] = mapper(child);\n });\n return result;\n}\n\n/**\n * When you're adding or removing children some may be added or removed in the\n * same render pass. We want to show *both* since we want to simultaneously\n * animate elements in and out. This function takes a previous set of keys\n * and a new set of keys and merges them with its best guess of the correct\n * ordering. In the future we may expose some of the utilities in\n * ReactMultiChild to make this easy, but for now React itself does not\n * directly have this concept of the union of prevChildren and nextChildren\n * so we implement it here.\n *\n * @param {object} prev prev children as returned from\n * `ReactTransitionChildMapping.getChildMapping()`.\n * @param {object} next next children as returned from\n * `ReactTransitionChildMapping.getChildMapping()`.\n * @return {object} a key set that contains all keys in `prev` and all keys\n * in `next` in a reasonable order.\n */\nfunction mergeChildMappings(prev, next) {\n prev = prev || {};\n next = next || {};\n\n function getValueForKey(key) {\n return key in next ? next[key] : prev[key];\n }\n\n // For each key of `next`, the list of keys to insert before that key in\n // the combined list\n var nextKeysPending = Object.create(null);\n\n var pendingKeys = [];\n for (var prevKey in prev) {\n if (prevKey in next) {\n if (pendingKeys.length) {\n nextKeysPending[prevKey] = pendingKeys;\n pendingKeys = [];\n }\n } else {\n pendingKeys.push(prevKey);\n }\n }\n\n var i = void 0;\n var childMapping = {};\n for (var nextKey in next) {\n if (nextKeysPending[nextKey]) {\n for (i = 0; i < nextKeysPending[nextKey].length; i++) {\n var pendingNextKey = nextKeysPending[nextKey][i];\n childMapping[nextKeysPending[nextKey][i]] = getValueForKey(pendingNextKey);\n }\n }\n childMapping[nextKey] = getValueForKey(nextKey);\n }\n\n // Finally, add the keys which didn't appear before any key in `next`\n for (i = 0; i < pendingKeys.length; i++) {\n childMapping[pendingKeys[i]] = getValueForKey(pendingKeys[i]);\n }\n\n return childMapping;\n}\n\n/***/ }),\n/* 11 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _react = __webpack_require__(0);\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = __webpack_require__(1);\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _glamor = __webpack_require__(2);\n\nvar _ProgressBar = __webpack_require__(12);\n\nvar _ProgressBar2 = _interopRequireDefault(_ProgressBar);\n\nvar _constant = __webpack_require__(3);\n\nvar _style = __webpack_require__(4);\n\nvar _style2 = _interopRequireDefault(_style);\n\nvar _propValidator = __webpack_require__(5);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar toast = function toast(type) {\n return (0, _glamor.css)(_extends({\n position: 'relative',\n minHeight: '48px',\n marginBottom: '1rem',\n padding: '8px',\n borderRadius: '1px',\n boxShadow: '0 1px 10px 0 rgba(0, 0, 0, .1), 0 2px 15px 0 rgba(0, 0, 0, .05)',\n display: 'flex',\n justifyContent: 'space-between',\n maxHeight: '800px',\n overflow: 'hidden',\n fontFamily: _style2.default.fontFamily,\n cursor: 'pointer',\n background: _style2.default['color' + type.charAt(0).toUpperCase() + type.slice(1)]\n }, type === 'default' ? { color: '#aaa' } : {}, _defineProperty({}, '@media ' + _style2.default.mobile, {\n marginBottom: 0\n })));\n};\n\nvar body = (0, _glamor.css)({\n margin: 'auto 0',\n flex: 1\n});\n\nvar Toast = function (_Component) {\n _inherits(Toast, _Component);\n\n function Toast() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, Toast);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Toast.__proto__ || Object.getPrototypeOf(Toast)).call.apply(_ref, [this].concat(args))), _this), _this.state = {\n isRunning: true\n }, _this.pauseToast = function () {\n _this.setState({ isRunning: false });\n }, _this.playToast = function () {\n _this.setState({ isRunning: true });\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(Toast, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n this.props.onOpen !== null && this.props.onOpen(this.getChildrenProps());\n }\n }, {\n key: 'componentWillReceiveProps',\n value: function componentWillReceiveProps(nextProps) {\n if (this.props.isDocumentHidden !== nextProps.isDocumentHidden) {\n this.setState({\n isRunning: !nextProps.isDocumentHidden\n });\n }\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n this.props.onClose !== null && this.props.onClose(this.getChildrenProps());\n }\n }, {\n key: 'getChildrenProps',\n value: function getChildrenProps() {\n return this.props.children.props;\n }\n }, {\n key: 'getToastProps',\n value: function getToastProps() {\n var toastProps = {};\n\n if (this.props.autoClose !== false && this.props.pauseOnHover === true) {\n toastProps.onMouseEnter = this.pauseToast;\n toastProps.onMouseLeave = this.playToast;\n }\n typeof this.props.className === 'string' && (toastProps.className = this.props.className);\n this.props.closeOnClick && (toastProps.onClick = this.props.closeToast);\n\n return toastProps;\n }\n }, {\n key: 'render',\n value: function render() {\n var _props = this.props,\n closeButton = _props.closeButton,\n children = _props.children,\n autoClose = _props.autoClose,\n type = _props.type,\n hideProgressBar = _props.hideProgressBar,\n closeToast = _props.closeToast,\n Transition = _props.transition,\n position = _props.position,\n onExited = _props.onExited,\n className = _props.className,\n bodyClassName = _props.bodyClassName,\n progressClassName = _props.progressClassName,\n updateId = _props.updateId;\n\n\n return _react2.default.createElement(\n Transition,\n {\n 'in': this.props.in,\n appear: true,\n unmountOnExit: true,\n onExited: onExited,\n position: position\n },\n _react2.default.createElement(\n 'div',\n _extends({}, typeof className !== 'string' ? (0, _glamor.css)(toast(type), className) : toast(type), this.getToastProps()),\n _react2.default.createElement(\n 'div',\n _extends({}, typeof bodyClassName !== 'string' ? (0, _glamor.css)(body, bodyClassName) : body, typeof bodyClassName === 'string' && {\n className: bodyClassName\n }),\n children\n ),\n closeButton !== false && closeButton,\n autoClose !== false && _react2.default.createElement(_ProgressBar2.default, {\n key: 'pb-' + updateId,\n delay: autoClose,\n isRunning: this.state.isRunning,\n closeToast: closeToast,\n hide: hideProgressBar,\n type: type,\n className: progressClassName\n })\n )\n );\n }\n }]);\n\n return Toast;\n}(_react.Component);\n\nToast.propTypes = {\n closeButton: _propValidator.falseOrElement.isRequired,\n autoClose: _propValidator.falseOrDelay.isRequired,\n children: _propTypes2.default.node.isRequired,\n closeToast: _propTypes2.default.func.isRequired,\n position: _propTypes2.default.oneOf((0, _propValidator.objectValues)(_constant.POSITION)).isRequired,\n pauseOnHover: _propTypes2.default.bool.isRequired,\n closeOnClick: _propTypes2.default.bool.isRequired,\n transition: _propTypes2.default.func.isRequired,\n isDocumentHidden: _propTypes2.default.bool.isRequired,\n in: _propTypes2.default.bool,\n onExited: _propTypes2.default.func,\n hideProgressBar: _propTypes2.default.bool,\n onOpen: _propTypes2.default.func,\n onClose: _propTypes2.default.func,\n type: _propTypes2.default.oneOf((0, _propValidator.objectValues)(_constant.TYPE)),\n className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n bodyClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n progressClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),\n updateId: _propTypes2.default.number\n};\nToast.defaultProps = {\n type: _constant.TYPE.DEFAULT,\n in: true,\n hideProgressBar: false,\n onOpen: null,\n onClose: null,\n className: '',\n bodyClassName: '',\n progressClassName: '',\n updateId: null\n};\nexports.default = Toast;\n\n/***/ }),\n/* 12 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _react = __webpack_require__(0);\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = __webpack_require__(1);\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _glamor = __webpack_require__(2);\n\nvar _constant = __webpack_require__(3);\n\nvar _style = __webpack_require__(4);\n\nvar _style2 = _interopRequireDefault(_style);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar trackProgress = _glamor.css.keyframes('track-progress', {\n '0%': { width: '100%' },\n '100%': { width: 0 }\n});\n\nvar progress = function progress(type, isRunning, hide, delay) {\n return (0, _glamor.css)(_extends({\n position: 'absolute',\n bottom: 0,\n left: 0,\n width: 0,\n height: '5px',\n zIndex: _style2.default.zIndex,\n opacity: hide ? 0 : 0.7,\n animation: trackProgress + ' linear 1',\n animationPlayState: isRunning ? 'running' : 'paused',\n animationDuration: delay + 'ms',\n backgroundColor: 'rgba(255,255,255,.7)'\n }, type === 'default' ? { background: _style2.default.colorProgressDefault } : {}));\n};\n\nfunction ProgressBar(_ref) {\n var delay = _ref.delay,\n isRunning = _ref.isRunning,\n closeToast = _ref.closeToast,\n type = _ref.type,\n hide = _ref.hide,\n className = _ref.className;\n\n return _react2.default.createElement('div', _extends({}, typeof className !== 'string' ? (0, _glamor.css)(progress(type, isRunning, hide, delay), className) : progress(type, isRunning, hide, delay), typeof className === 'string' && { className: className }, {\n onAnimationEnd: closeToast\n }));\n}\n\nProgressBar.propTypes = {\n /**\n * The animation delay which determine when to close the toast\n */\n delay: _propTypes2.default.number.isRequired,\n\n /**\n * Whether or not the animation is running or paused\n */\n isRunning: _propTypes2.default.bool.isRequired,\n\n /**\n * Func to close the current toast\n */\n closeToast: _propTypes2.default.func.isRequired,\n\n /**\n * Optional type : info, success ...\n */\n type: _propTypes2.default.string,\n\n /**\n * Hide or not the progress bar\n */\n hide: _propTypes2.default.bool,\n\n /**\n * Optionnal className\n */\n className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object])\n};\n\nProgressBar.defaultProps = {\n type: _constant.TYPE.DEFAULT,\n hide: false,\n className: ''\n};\n\nexports.default = ProgressBar;\n\n/***/ }),\n/* 13 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; /* eslint react/require-default-props: 0 */\n\n\nvar _react = __webpack_require__(0);\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = __webpack_require__(1);\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _glamor = __webpack_require__(2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar rule = function rule(isDefault) {\n return (0, _glamor.css)({\n color: isDefault ? '#000' : '#fff',\n fontWeight: 'bold',\n fontSize: '14px',\n background: 'transparent',\n outline: 'none',\n border: 'none',\n padding: 0,\n cursor: 'pointer',\n opacity: isDefault ? '0.3' : '0.7',\n transition: '.3s ease',\n alignSelf: 'flex-start',\n ':hover, :focus': {\n opacity: 1\n }\n });\n};\n\nfunction DefaultCloseButton(_ref) {\n var closeToast = _ref.closeToast,\n type = _ref.type;\n\n return _react2.default.createElement(\n 'button',\n _extends({}, rule(type === 'default'), { type: 'button', onClick: closeToast }),\n '\\u2716'\n );\n}\n\nDefaultCloseButton.propTypes = {\n closeToast: _propTypes2.default.func\n};\n\nexports.default = DefaultCloseButton;\n\n/***/ }),\n/* 14 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _react = __webpack_require__(0);\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _Transition = __webpack_require__(15);\n\nvar _Transition2 = _interopRequireDefault(_Transition);\n\nvar _glamor = __webpack_require__(2);\n\nvar _animation2 = __webpack_require__(18);\n\nvar _animation3 = _interopRequireDefault(_animation2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nvar animate = {\n animationDuration: '0.75s',\n animationFillMode: 'both'\n};\n\nvar animation = function animation(pos) {\n var _getAnimation = (0, _animation3.default)(pos),\n enter = _getAnimation.enter,\n exit = _getAnimation.exit;\n\n var enterAnimation = _glamor.css.keyframes('enter', _extends({\n 'from, 60%, 75%, 90%, to': {\n animationTimingFunction: 'cubic-bezier(0.215, 0.610, 0.355, 1.000)'\n }\n }, enter));\n var exitAnimation = _glamor.css.keyframes('exit', exit);\n\n return {\n enter: (0, _glamor.css)(_extends({}, animate, { animationName: enterAnimation })),\n exit: (0, _glamor.css)(_extends({}, animate, { animationName: exitAnimation }))\n };\n};\n\nfunction DefaultTransition(_ref) {\n var children = _ref.children,\n position = _ref.position,\n props = _objectWithoutProperties(_ref, ['children', 'position']);\n\n var _animation = animation(position),\n enter = _animation.enter,\n exit = _animation.exit;\n\n return _react2.default.createElement(\n _Transition2.default,\n _extends({}, props, {\n timeout: 750,\n onEnter: function onEnter(node) {\n return node.classList.add(enter);\n },\n onEntered: function onEntered(node) {\n return node.classList.remove(enter);\n },\n onExit: function onExit(node) {\n return node.classList.add(exit);\n }\n }),\n children\n );\n}\n\nexports.default = DefaultTransition;\n\n/***/ }),\n/* 15 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nexports.__esModule = true;\nexports.EXITING = exports.ENTERED = exports.ENTERING = exports.EXITED = exports.UNMOUNTED = undefined;\n\nvar _propTypes = __webpack_require__(1);\n\nvar PropTypes = _interopRequireWildcard(_propTypes);\n\nvar _react = __webpack_require__(0);\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = __webpack_require__(16);\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _PropTypes = __webpack_require__(17);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar UNMOUNTED = exports.UNMOUNTED = 'unmounted';\nvar EXITED = exports.EXITED = 'exited';\nvar ENTERING = exports.ENTERING = 'entering';\nvar ENTERED = exports.ENTERED = 'entered';\nvar EXITING = exports.EXITING = 'exiting';\n\n/**\n * The Transition component lets you describe a transition from one component\n * state to another _over time_ with a simple declarative API. Most commonly\n * it's used to animate the mounting and unmounting of a component, but can also\n * be used to describe in-place transition states as well.\n *\n * By default the `Transition` component does not alter the behavior of the\n * component it renders, it only tracks \"enter\" and \"exit\" states for the components.\n * It's up to you to give meaning and effect to those states. For example we can\n * add styles to a component when it enters or exits:\n *\n * ```jsx\n * import Transition from 'react-transition-group/Transition';\n *\n * const duration = 300;\n *\n * const defaultStyle = {\n * transition: `opacity ${duration}ms ease-in-out`,\n * opacity: 0,\n * }\n *\n * const transitionStyles = {\n * entering: { opacity: 0 },\n * entered: { opacity: 1 },\n * };\n *\n * const Fade = ({ in: inProp }) => (\n * \n * {(state) => (\n *
\n * I'm A fade Transition!\n *
\n * )}\n *
\n * );\n * ```\n *\n * As noted the `Transition` component doesn't _do_ anything by itself to its child component.\n * What it does do is track transition states over time so you can update the\n * component (such as by adding styles or classes) when it changes states.\n *\n * There are 4 main states a Transition can be in:\n * - `ENTERING`\n * - `ENTERED`\n * - `EXITING`\n * - `EXITED`\n *\n * Transition state is toggled via the `in` prop. When `true` the component begins the\n * \"Enter\" stage. During this stage, the component will shift from its current transition state,\n * to `'entering'` for the duration of the transition and then to the `'entered'` stage once\n * it's complete. Let's take the following example:\n *\n * ```jsx\n * state= { in: false };\n *\n * toggleEnterState = () => {\n * this.setState({ in: true });\n * }\n *\n * render() {\n * return (\n *
\n * \n * \n *
\n * );\n * }\n * ```\n *\n * When the button is clicked the component will shift to the `'entering'` state and\n * stay there for 500ms (the value of `timeout`) when finally switches to `'entered'`.\n *\n * When `in` is `false` the same thing happens except the state moves from `'exiting'` to `'exited'`.\n */\n\nvar Transition = function (_React$Component) {\n _inherits(Transition, _React$Component);\n\n function Transition(props, context) {\n _classCallCheck(this, Transition);\n\n var _this = _possibleConstructorReturn(this, _React$Component.call(this, props, context));\n\n var parentGroup = context.transitionGroup;\n // In the context of a TransitionGroup all enters are really appears\n var appear = parentGroup && !parentGroup.isMounting ? props.enter : props.appear;\n\n var initialStatus = void 0;\n _this.nextStatus = null;\n\n if (props.in) {\n if (appear) {\n initialStatus = EXITED;\n _this.nextStatus = ENTERING;\n } else {\n initialStatus = ENTERED;\n }\n } else {\n if (props.unmountOnExit || props.mountOnEnter) {\n initialStatus = UNMOUNTED;\n } else {\n initialStatus = EXITED;\n }\n }\n\n _this.state = { status: initialStatus };\n\n _this.nextCallback = null;\n return _this;\n }\n\n Transition.prototype.getChildContext = function getChildContext() {\n return { transitionGroup: null }; // allows for nested Transitions\n };\n\n Transition.prototype.componentDidMount = function componentDidMount() {\n this.updateStatus(true);\n };\n\n Transition.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n var _ref = this.pendingState || this.state,\n status = _ref.status;\n\n if (nextProps.in) {\n if (status === UNMOUNTED) {\n this.setState({ status: EXITED });\n }\n if (status !== ENTERING && status !== ENTERED) {\n this.nextStatus = ENTERING;\n }\n } else {\n if (status === ENTERING || status === ENTERED) {\n this.nextStatus = EXITING;\n }\n }\n };\n\n Transition.prototype.componentDidUpdate = function componentDidUpdate() {\n this.updateStatus();\n };\n\n Transition.prototype.componentWillUnmount = function componentWillUnmount() {\n this.cancelNextCallback();\n };\n\n Transition.prototype.getTimeouts = function getTimeouts() {\n var timeout = this.props.timeout;\n\n var exit = void 0,\n enter = void 0,\n appear = void 0;\n\n exit = enter = appear = timeout;\n\n if (timeout != null && typeof timeout !== 'number') {\n exit = timeout.exit;\n enter = timeout.enter;\n appear = timeout.appear;\n }\n return { exit: exit, enter: enter, appear: appear };\n };\n\n Transition.prototype.updateStatus = function updateStatus() {\n var mounting = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n\n var nextStatus = this.nextStatus;\n\n if (nextStatus !== null) {\n this.nextStatus = null;\n // nextStatus will always be ENTERING or EXITING.\n this.cancelNextCallback();\n var node = _reactDom2.default.findDOMNode(this);\n\n if (nextStatus === ENTERING) {\n this.performEnter(node, mounting);\n } else {\n this.performExit(node);\n }\n } else if (this.props.unmountOnExit && this.state.status === EXITED) {\n this.setState({ status: UNMOUNTED });\n }\n };\n\n Transition.prototype.performEnter = function performEnter(node, mounting) {\n var _this2 = this;\n\n var enter = this.props.enter;\n\n var appearing = this.context.transitionGroup ? this.context.transitionGroup.isMounting : mounting;\n\n var timeouts = this.getTimeouts();\n\n // no enter animation skip right to ENTERED\n // if we are mounting and running this it means appear _must_ be set\n if (!mounting && !enter) {\n this.safeSetState({ status: ENTERED }, function () {\n _this2.props.onEntered(node);\n });\n return;\n }\n\n this.props.onEnter(node, appearing);\n\n this.safeSetState({ status: ENTERING }, function () {\n _this2.props.onEntering(node, appearing);\n\n // FIXME: appear timeout?\n _this2.onTransitionEnd(node, timeouts.enter, function () {\n _this2.safeSetState({ status: ENTERED }, function () {\n _this2.props.onEntered(node, appearing);\n });\n });\n });\n };\n\n Transition.prototype.performExit = function performExit(node) {\n var _this3 = this;\n\n var exit = this.props.exit;\n\n var timeouts = this.getTimeouts();\n\n // no exit animation skip right to EXITED\n if (!exit) {\n this.safeSetState({ status: EXITED }, function () {\n _this3.props.onExited(node);\n });\n return;\n }\n this.props.onExit(node);\n\n this.safeSetState({ status: EXITING }, function () {\n _this3.props.onExiting(node);\n\n _this3.onTransitionEnd(node, timeouts.exit, function () {\n _this3.safeSetState({ status: EXITED }, function () {\n _this3.props.onExited(node);\n });\n });\n });\n };\n\n Transition.prototype.cancelNextCallback = function cancelNextCallback() {\n if (this.nextCallback !== null) {\n this.nextCallback.cancel();\n this.nextCallback = null;\n }\n };\n\n Transition.prototype.safeSetState = function safeSetState(nextState, callback) {\n var _this4 = this;\n\n // We need to track pending updates for instances where a cWRP fires quickly\n // after cDM and before the state flushes, which would double trigger a\n // transition\n this.pendingState = nextState;\n\n // This shouldn't be necessary, but there are weird race conditions with\n // setState callbacks and unmounting in testing, so always make sure that\n // we can cancel any pending setState callbacks after we unmount.\n callback = this.setNextCallback(callback);\n this.setState(nextState, function () {\n _this4.pendingState = null;\n callback();\n });\n };\n\n Transition.prototype.setNextCallback = function setNextCallback(callback) {\n var _this5 = this;\n\n var active = true;\n\n this.nextCallback = function (event) {\n if (active) {\n active = false;\n _this5.nextCallback = null;\n\n callback(event);\n }\n };\n\n this.nextCallback.cancel = function () {\n active = false;\n };\n\n return this.nextCallback;\n };\n\n Transition.prototype.onTransitionEnd = function onTransitionEnd(node, timeout, handler) {\n this.setNextCallback(handler);\n\n if (node) {\n if (this.props.addEndListener) {\n this.props.addEndListener(node, this.nextCallback);\n }\n if (timeout != null) {\n setTimeout(this.nextCallback, timeout);\n }\n } else {\n setTimeout(this.nextCallback, 0);\n }\n };\n\n Transition.prototype.render = function render() {\n var status = this.state.status;\n if (status === UNMOUNTED) {\n return null;\n }\n\n var _props = this.props,\n children = _props.children,\n childProps = _objectWithoutProperties(_props, ['children']);\n // filter props for Transtition\n\n\n delete childProps.in;\n delete childProps.mountOnEnter;\n delete childProps.unmountOnExit;\n delete childProps.appear;\n delete childProps.enter;\n delete childProps.exit;\n delete childProps.timeout;\n delete childProps.addEndListener;\n delete childProps.onEnter;\n delete childProps.onEntering;\n delete childProps.onEntered;\n delete childProps.onExit;\n delete childProps.onExiting;\n delete childProps.onExited;\n\n if (typeof children === 'function') {\n return children(status, childProps);\n }\n\n var child = _react2.default.Children.only(children);\n return _react2.default.cloneElement(child, childProps);\n };\n\n return Transition;\n}(_react2.default.Component);\n\nTransition.contextTypes = {\n transitionGroup: PropTypes.object\n};\nTransition.childContextTypes = {\n transitionGroup: function transitionGroup() {}\n};\n\n\nTransition.propTypes = false ? {\n /**\n * A `function` child can be used instead of a React element.\n * This function is called with the current transition status\n * ('entering', 'entered', 'exiting', 'exited', 'unmounted'), which can used\n * to apply context specific props to a component.\n *\n * ```jsx\n * \n * {(status) => (\n * \n * )}\n * \n * ```\n */\n children: PropTypes.oneOfType([PropTypes.func.isRequired, PropTypes.element.isRequired]).isRequired,\n\n /**\n * Show the component; triggers the enter or exit states\n */\n in: PropTypes.bool,\n\n /**\n * By default the child component is mounted immediately along with\n * the parent `Transition` component. If you want to \"lazy mount\" the component on the\n * first `in={true}` you can set `mountOnEnter`. After the first enter transition the component will stay\n * mounted, even on \"exited\", unless you also specify `unmountOnExit`.\n */\n mountOnEnter: PropTypes.bool,\n\n /**\n * By default the child component stays mounted after it reaches the `'exited'` state.\n * Set `unmountOnExit` if you'd prefer to unmount the component after it finishes exiting.\n */\n unmountOnExit: PropTypes.bool,\n\n /**\n * Normally a component is not transitioned if it is shown when the `` component mounts.\n * If you want to transition on the first mount set `appear` to `true`, and the\n * component will transition in as soon as the `` mounts.\n *\n * > Note: there are no specific \"appear\" states. `appear` only adds an additional `enter` transition.\n */\n appear: PropTypes.bool,\n\n /**\n * Enable or disable enter transitions.\n */\n enter: PropTypes.bool,\n\n /**\n * Enable or disable exit transitions.\n */\n exit: PropTypes.bool,\n\n /**\n * The duration of the transition, in milliseconds.\n * Required unless `addEventListener` is provided\n *\n * You may specify a single timeout for all transitions like: `timeout={500}`,\n * or individually like:\n *\n * ```jsx\n * timeout={{\n * enter: 300,\n * exit: 500,\n * }}\n * ```\n *\n * @type {number | { enter?: number, exit?: number }}\n */\n timeout: function timeout(props) {\n for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n var pt = _PropTypes.timeoutsShape;\n if (!props.addEndListener) pt = pt.isRequired;\n return pt.apply(undefined, [props].concat(args));\n },\n\n /**\n * Add a custom transition end trigger. Called with the transitioning\n * DOM node and a `done` callback. Allows for more fine grained transition end\n * logic. **Note:** Timeouts are still used as a fallback if provided.\n *\n * ```jsx\n * addEndListener={(node, done) => {\n * // use the css transitionend event to mark the finish of a transition\n * node.addEventListener('transitionend', done, false);\n * }}\n * ```\n */\n addEndListener: PropTypes.func,\n\n /**\n * Callback fired before the \"entering\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * @type Function(node: HtmlElement, isAppearing: bool) -> void\n */\n onEnter: PropTypes.func,\n\n /**\n * Callback fired after the \"entering\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * @type Function(node: HtmlElement, isAppearing: bool)\n */\n onEntering: PropTypes.func,\n\n /**\n * Callback fired after the \"entered\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * @type Function(node: HtmlElement, isAppearing: bool) -> void\n */\n onEntered: PropTypes.func,\n\n /**\n * Callback fired before the \"exiting\" status is applied.\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExit: PropTypes.func,\n\n /**\n * Callback fired after the \"exiting\" status is applied.\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExiting: PropTypes.func,\n\n /**\n * Callback fired after the \"exited\" status is applied.\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExited: PropTypes.func\n} : {};\n\n// Name the function so it is clearer in the documentation\nfunction noop() {}\n\nTransition.defaultProps = {\n in: false,\n mountOnEnter: false,\n unmountOnExit: false,\n appear: false,\n enter: true,\n exit: true,\n\n onEnter: noop,\n onEntering: noop,\n onEntered: noop,\n\n onExit: noop,\n onExiting: noop,\n onExited: noop\n};\n\nTransition.UNMOUNTED = 0;\nTransition.EXITED = 1;\nTransition.ENTERING = 2;\nTransition.ENTERED = 3;\nTransition.EXITING = 4;\n\nexports.default = Transition;\n\n/***/ }),\n/* 16 */\n/***/ (function(module, exports) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_16__;\n\n/***/ }),\n/* 17 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nexports.__esModule = true;\nexports.classNamesShape = exports.timeoutsShape = undefined;\nexports.transitionTimeout = transitionTimeout;\n\nvar _propTypes = __webpack_require__(1);\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction transitionTimeout(transitionType) {\n var timeoutPropName = 'transition' + transitionType + 'Timeout';\n var enabledPropName = 'transition' + transitionType;\n\n return function (props) {\n // If the transition is enabled\n if (props[enabledPropName]) {\n // If no timeout duration is provided\n if (props[timeoutPropName] == null) {\n return new Error(timeoutPropName + ' wasn\\'t supplied to CSSTransitionGroup: ' + 'this can cause unreliable animations and won\\'t be supported in ' + 'a future version of React. See ' + 'https://fb.me/react-animation-transition-group-timeout for more ' + 'information.');\n\n // If the duration isn't a number\n } else if (typeof props[timeoutPropName] !== 'number') {\n return new Error(timeoutPropName + ' must be a number (in milliseconds)');\n }\n }\n\n return null;\n };\n}\n\nvar timeoutsShape = exports.timeoutsShape = _propTypes2.default.oneOfType([_propTypes2.default.number, _propTypes2.default.shape({\n enter: _propTypes2.default.number,\n exit: _propTypes2.default.number\n}).isRequired]);\n\nvar classNamesShape = exports.classNamesShape = _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.shape({\n enter: _propTypes2.default.string,\n exit: _propTypes2.default.string,\n active: _propTypes2.default.string\n}), _propTypes2.default.shape({\n enter: _propTypes2.default.string,\n enterActive: _propTypes2.default.string,\n exit: _propTypes2.default.string,\n exitActive: _propTypes2.default.string\n})]);\n\n/***/ }),\n/* 18 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = getAnimation;\n\nvar _constant = __webpack_require__(3);\n\nfunction getAnimation(pos) {\n switch (pos) {\n case _constant.POSITION.TOP_RIGHT:\n case _constant.POSITION.BOTTOM_RIGHT:\n default:\n return {\n enter: {\n from: {\n opacity: 0,\n transform: 'translate3d(3000px, 0, 0)'\n },\n '60%': {\n opacity: 1,\n transform: 'translate3d(-25px, 0, 0)'\n },\n '75%': {\n transform: 'translate3d(10px, 0, 0)'\n },\n '90%': {\n transform: 'translate3d(-5px, 0, 0)'\n },\n to: {\n transform: 'none'\n }\n },\n exit: {\n '20%': {\n opacity: 1,\n transform: 'translate3d(-20px, 0, 0)'\n },\n to: {\n opacity: 0,\n transform: 'translate3d(2000px, 0, 0)'\n }\n }\n };\n case _constant.POSITION.TOP_LEFT:\n case _constant.POSITION.BOTTOM_LEFT:\n return {\n enter: {\n '0%': {\n opacity: 0,\n transform: 'translate3d(-3000px, 0, 0)'\n },\n '60%': {\n opacity: 1,\n transform: 'translate3d(25px, 0, 0)'\n },\n '75%': {\n transform: 'translate3d(-10px, 0, 0)'\n },\n '90%': {\n transform: 'translate3d(5px, 0, 0)'\n },\n to: {\n transform: 'none'\n }\n },\n exit: {\n '20%': {\n opacity: 1,\n transform: 'translate3d(20px, 0, 0)'\n },\n to: {\n opacity: 0,\n transform: 'translate3d(-2000px, 0, 0)'\n }\n }\n };\n case _constant.POSITION.BOTTOM_CENTER:\n return {\n enter: {\n from: {\n opacity: 0,\n transform: 'translate3d(0, 3000px, 0)'\n },\n '60%': {\n opacity: 1,\n transform: 'translate3d(0, -20px, 0)'\n },\n '75%': {\n transform: 'translate3d(0, 10px, 0)'\n },\n '90%': {\n transform: 'translate3d(0, -5px, 0)'\n },\n to: {\n transform: 'translate3d(0, 0, 0)'\n }\n },\n exit: {\n '20%': {\n transform: 'translate3d(0, 10px, 0)'\n },\n '40%, 45%': {\n opacity: 1,\n transform: 'translate3d(0, -20px, 0)'\n },\n to: {\n opacity: 0,\n transform: 'translate3d(0, 2000px, 0)'\n }\n }\n };\n case _constant.POSITION.TOP_CENTER:\n return {\n enter: {\n '0%': {\n opacity: 0,\n transform: 'translate3d(0, -3000px, 0)'\n },\n '60%': {\n opacity: 1,\n transform: 'translate3d(0, 25px, 0)'\n },\n '75%': {\n transform: 'translate3d(0, -10px, 0)'\n },\n '90%': {\n transform: 'translate3d(0, 5px, 0)'\n },\n to: {\n transform: 'none'\n }\n },\n exit: {\n '20%': {\n transform: 'translate3d(0, -10px, 0)'\n },\n '40%, 45%': {\n opacity: 1,\n transform: 'translate3d(0, 20px, 0)'\n },\n to: {\n opacity: 0,\n transform: 'translate3d(0, -2000px, 0)'\n }\n }\n };\n }\n}\n\n/***/ }),\n/* 19 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _EventManager = __webpack_require__(6);\n\nvar _EventManager2 = _interopRequireDefault(_EventManager);\n\nvar _constant = __webpack_require__(3);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar defaultOptions = {\n type: _constant.TYPE.DEFAULT,\n autoClose: null,\n closeButton: null,\n hideProgressBar: null,\n position: null,\n pauseOnHover: null,\n closeOnClick: null,\n className: null,\n bodyClassName: null,\n progressClassName: null,\n transition: null,\n updateId: null\n};\n\nvar container = null;\nvar queue = [];\nvar toastId = 0;\n\n/**\n * Merge provided options with the defaults settings and generate the toastId\n * @param {*} options\n */\nfunction mergeOptions(options, type) {\n return _extends({}, defaultOptions, options, {\n type: type,\n toastId: ++toastId\n });\n}\n\n/**\n * Dispatch toast. If the container is not mounted, the toast is enqueued\n * @param {*} content\n * @param {*} options\n */\nfunction emitEvent(content, options) {\n if (container !== null) {\n _EventManager2.default.emit(_constant.ACTION.SHOW, content, options);\n } else {\n queue.push({ action: _constant.ACTION.SHOW, content: content, options: options });\n }\n\n return options.toastId;\n}\n\nvar toaster = _extends(function (content, options) {\n return emitEvent(content, mergeOptions(options, options && options.type || _constant.TYPE.DEFAULT));\n}, {\n success: function success(content, options) {\n return emitEvent(content, mergeOptions(options, _constant.TYPE.SUCCESS));\n },\n info: function info(content, options) {\n return emitEvent(content, mergeOptions(options, _constant.TYPE.INFO));\n },\n warn: function warn(content, options) {\n return emitEvent(content, mergeOptions(options, _constant.TYPE.WARNING));\n },\n warning: function warning(content, options) {\n return emitEvent(content, mergeOptions(options, _constant.TYPE.WARNING));\n },\n error: function error(content, options) {\n return emitEvent(content, mergeOptions(options, _constant.TYPE.ERROR));\n },\n dismiss: function dismiss() {\n var id = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n return container && _EventManager2.default.emit(_constant.ACTION.CLEAR, id);\n },\n isActive: function isActive() {\n return false;\n },\n update: function update(id, options) {\n if (container && typeof container.collection[id] !== 'undefined') {\n var _container$collection = container.collection[id],\n oldOptions = _container$collection.options,\n oldContent = _container$collection.content;\n\n var updateId = oldOptions.updateId !== null ? oldOptions.updateId + 1 : 1;\n\n var nextOptions = _extends({}, oldOptions, options, {\n toastId: id,\n updateId: updateId\n });\n var content = typeof nextOptions.render !== 'undefined' ? nextOptions.render : oldContent;\n delete nextOptions.render;\n\n return emitEvent(content, nextOptions);\n }\n\n return false;\n }\n}, {\n POSITION: _constant.POSITION,\n TYPE: _constant.TYPE\n});\n\n/**\n * Wait until the ToastContainer is mounted to dispatch the toast\n * and attach isActive method\n */\n_EventManager2.default.on(_constant.ACTION.MOUNTED, function (containerInstance) {\n container = containerInstance;\n\n toaster.isActive = function (id) {\n return container.isToastActive(id);\n };\n\n queue.forEach(function (item) {\n _EventManager2.default.emit(item.action, item.content, item.options);\n });\n queue = [];\n});\n\nexports.default = toaster;\n\n/***/ })\n/******/ ]);\n});\n\n\n// WEBPACK FOOTER //\n// dist/ReactToastify.min.js"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 7);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 13311eeec6c577536bd5","module.exports = __WEBPACK_EXTERNAL_MODULE_0__;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"react\"\n// module id = 0\n// module chunks = 0","module.exports = __WEBPACK_EXTERNAL_MODULE_1__;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"prop-types\"\n// module id = 1\n// module chunks = 0","module.exports = __WEBPACK_EXTERNAL_MODULE_2__;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"glamor\"\n// module id = 2\n// module chunks = 0","export const POSITION = {\n TOP_LEFT: 'top-left',\n TOP_RIGHT: 'top-right',\n TOP_CENTER: 'top-center',\n BOTTOM_LEFT: 'bottom-left',\n BOTTOM_RIGHT: 'bottom-right',\n BOTTOM_CENTER: 'bottom-center'\n};\n\nexport const TYPE = {\n INFO: 'info',\n SUCCESS: 'success',\n WARNING: 'warning',\n ERROR: 'error',\n DEFAULT: 'default'\n};\nexport const ACTION = {\n SHOW: 'SHOW_TOAST',\n CLEAR: 'CLEAR_TOAST',\n MOUNTED: 'CONTAINER_MOUNTED'\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/constant.js","const style = {\n width: '320px',\n colorDefault: '#fff',\n colorInfo: '#3498db',\n colorSuccess: '#07bc0c',\n colorWarning: '#f1c40f',\n colorError: '#e74c3c',\n colorProgressDefault:\n 'linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55)',\n mobile: 'only screen and (max-width : 480px)',\n fontFamily: 'sans-serif',\n zIndex: 9999,\n TOP_LEFT: {\n top: '1em',\n left: '1em'\n },\n TOP_CENTER: {\n top: '1em',\n left: '50%'\n },\n TOP_RIGHT: {\n top: '1em',\n right: '1em'\n },\n BOTTOM_LEFT: {\n bottom: '1em',\n left: '1em'\n },\n BOTTOM_CENTER: {\n bottom: '1em',\n left: '50%'\n },\n BOTTOM_RIGHT: {\n bottom: '1em',\n right: '1em'\n }\n};\n\nexport function defineStyle(props) {\n for (let prop in props) {\n style[prop] = props[prop];\n }\n}\n\nexport default style;\n\n\n\n// WEBPACK FOOTER //\n// ./src/style.js","import { isValidElement } from 'react';\n\nexport function isValidDelay(val) {\n return typeof val === 'number' && !isNaN(val) && val > 0;\n}\n\nexport function objectValues(obj) {\n return Object.keys(obj).map(key => obj[key]);\n}\n\nfunction withRequired(fn) {\n fn.isRequired = function(props, propName, componentName) {\n const prop = props[propName];\n\n if (typeof prop === 'undefined') {\n return new Error(`The prop ${propName} is marked as required in \n ${componentName}, but its value is undefined.`);\n }\n\n fn(props, propName, componentName);\n };\n return fn;\n}\n\nexport const falseOrDelay = withRequired((props, propName, componentName) => {\n const prop = props[propName];\n\n if (prop !== false && !isValidDelay(prop)) {\n return new Error(`${componentName} expect ${propName} \n to be a valid Number > 0 or equal to false. ${prop} given.`);\n }\n\n return null;\n});\n\nexport const falseOrElement = withRequired((props, propName, componentName) => {\n const prop = props[propName];\n\n if (prop !== false && !isValidElement(prop)) {\n return new Error(`${componentName} expect ${propName} \n to be a valid react element or equal to false. ${prop} given.`);\n }\n\n return null;\n});\n\n\n\n// WEBPACK FOOTER //\n// ./src/util/propValidator.js","const eventManager = {\n eventList: new Map(),\n\n on(event, callback) {\n this.eventList.has(event) || this.eventList.set(event, []);\n\n this.eventList.get(event).push(callback);\n\n return this;\n },\n\n off(event = null) {\n return this.eventList.delete(event);\n },\n\n emit(event, ...args) {\n if (!this.eventList.has(event)) {\n /* eslint no-console: 0 */\n console.warn(\n `<${event}> Event is not registered. Did you forgot to bind the event ?`\n );\n return false;\n }\n\n this.eventList\n .get(event)\n .forEach(callback => setTimeout(() => callback.call(this, ...args), 0));\n\n return true;\n }\n};\n\nexport default eventManager;\n\n\n\n// WEBPACK FOOTER //\n// ./src/util/EventManager.js","import ToastContainer from './ToastContainer';\nimport toaster from './toaster';\nimport { defineStyle } from './style';\n\nexport { ToastContainer, toaster as toast, defineStyle as style };\n\n\n\n// WEBPACK FOOTER //\n// ./src/index.js","import React, { Component, isValidElement, cloneElement } from 'react';\nimport PropTypes from 'prop-types';\nimport { css } from 'glamor';\nimport TransitionGroup from 'react-transition-group/TransitionGroup';\n\nimport Toast from './Toast';\nimport DefaultCloseButton from './DefaultCloseButton';\nimport DefaultTransition from './DefaultTransition';\nimport { POSITION, ACTION } from './constant';\nimport style from './style';\nimport EventManager from './util/EventManager';\nimport {\n falseOrDelay,\n falseOrElement,\n isValidDelay,\n objectValues\n} from './util/propValidator';\n\nconst toastPosition = pos => {\n const positionKey = pos.toUpperCase().replace('-', '_');\n const positionRule =\n typeof POSITION[positionKey] !== 'undefined'\n ? style[positionKey]\n : style.TOP_RIGHT;\n\n /** define margin for center toast based on toast witdh */\n if (\n positionKey.indexOf('CENTER') !== -1 &&\n typeof positionRule.marginLeft === 'undefined'\n ) {\n positionRule.marginLeft = `-${parseInt(style.width, 10) / 2}px`;\n }\n\n return css(\n positionRule,\n css({\n [`@media ${style.mobile}`]: {\n left: 0,\n margin: 0,\n position: 'fixed',\n ...(pos.substring(0, 3) === 'top' ? { top: 0 } : { bottom: 0 })\n }\n })\n );\n};\n\nconst container = (disablePointer, position) =>\n css(\n {\n zIndex: style.zIndex,\n position: 'fixed',\n padding: '4px',\n width: style.width,\n boxSizing: 'border-box',\n color: '#fff',\n ...(disablePointer ? { pointerEvents: 'none' } : {}),\n [`@media ${style.mobile}`]: {\n width: '100vw',\n padding: 0\n }\n },\n toastPosition(position)\n );\n\nclass ToastContainer extends Component {\n static propTypes = {\n /**\n * Set toast position\n */\n position: PropTypes.oneOf(objectValues(POSITION)),\n\n /**\n * Disable or set autoClose delay\n */\n autoClose: falseOrDelay,\n\n /**\n * Disable or set a custom react element for the close button\n */\n closeButton: falseOrElement,\n\n /**\n * Hide or not progress bar when autoClose is enabled\n */\n hideProgressBar: PropTypes.bool,\n\n /**\n * Pause toast duration on hover\n */\n pauseOnHover: PropTypes.bool,\n\n /**\n * Dismiss toast on click\n */\n closeOnClick: PropTypes.bool,\n\n /**\n * Newest on top\n */\n newestOnTop: PropTypes.bool,\n\n /**\n * An optional className\n */\n className: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n\n /**\n * An optional style\n */\n style: PropTypes.object,\n\n /**\n * An optional className for the toast\n */\n toastClassName: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n\n /**\n * An optional className for the toast body\n */\n bodyClassName: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n\n /**\n * An optional className for the toast progress bar\n */\n progressClassName: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.object\n ]),\n\n /**\n * Define enter and exit transition using react-transition-group\n */\n transition: PropTypes.func\n };\n\n static defaultProps = {\n position: POSITION.TOP_RIGHT,\n transition: DefaultTransition,\n autoClose: 5000,\n hideProgressBar: false,\n closeButton: ,\n pauseOnHover: true,\n closeOnClick: true,\n newestOnTop: false,\n className: null,\n style: null,\n toastClassName: '',\n bodyClassName: '',\n progressClassName: ''\n };\n\n /**\n * Hold toast ids\n */\n state = {\n toast: [],\n isDocumentHidden: false\n };\n\n /**\n * Hold toast's informations:\n * - what to render\n * - position\n * - raw content\n * - options\n */\n collection = {};\n\n componentDidMount() {\n const { SHOW, CLEAR, MOUNTED } = ACTION;\n EventManager.on(SHOW, (content, options) => this.show(content, options))\n .on(CLEAR, id => (id !== null ? this.removeToast(id) : this.clear()))\n .emit(MOUNTED, this);\n document.addEventListener('visibilitychange', this.isDocumentHidden);\n }\n\n componentWillUnmount() {\n EventManager.off(ACTION.SHOW);\n EventManager.off(ACTION.CLEAR);\n document.removeEventListener('visibilitychange', this.isDocumentHidden);\n }\n\n isDocumentHidden = () => this.setState({ isDocumentHidden: document.hidden });\n\n isToastActive = id => this.state.toast.indexOf(parseInt(id, 10)) !== -1;\n\n removeToast(id) {\n this.setState({\n toast: this.state.toast.filter(v => v !== parseInt(id, 10))\n });\n }\n\n makeCloseButton(toastClose, toastId, type) {\n let closeButton = this.props.closeButton;\n\n if (isValidElement(toastClose) || toastClose === false) {\n closeButton = toastClose;\n }\n\n return closeButton === false\n ? false\n : cloneElement(closeButton, {\n closeToast: () => this.removeToast(toastId),\n type: type\n });\n }\n\n getAutoCloseDelay(toastAutoClose) {\n return toastAutoClose === false || isValidDelay(toastAutoClose)\n ? toastAutoClose\n : this.props.autoClose;\n }\n\n isFunction(object) {\n return !!(object && object.constructor && object.call && object.apply);\n }\n\n canBeRendered(content) {\n return (\n isValidElement(content) ||\n typeof content === 'string' ||\n typeof content === 'number' ||\n this.isFunction(content)\n );\n }\n\n show(content, options) {\n if (!this.canBeRendered(content)) {\n throw new Error(\n `The element you provided cannot be rendered. You provided an element of type ${typeof content}`\n );\n }\n const toastId = options.toastId;\n const closeToast = () => this.removeToast(toastId);\n const toastOptions = {\n id: toastId,\n type: options.type,\n closeToast: closeToast,\n updateId: options.updateId,\n position: options.position || this.props.position,\n transition: options.transition || this.props.transition,\n className: options.className || this.props.toastClassName,\n bodyClassName: options.bodyClassName || this.props.bodyClassName,\n closeButton: this.makeCloseButton(\n options.closeButton,\n toastId,\n options.type\n ),\n pauseOnHover:\n options.pauseOnHover !== null\n ? options.pauseOnHover\n : this.props.pauseOnHover,\n closeOnClick:\n options.closeOnClick !== null\n ? options.closeOnClick\n : this.props.closeOnClick,\n progressClassName:\n options.progressClassName || this.props.progressClassName,\n autoClose: this.getAutoCloseDelay(\n options.autoClose !== false\n ? parseInt(options.autoClose, 10)\n : options.autoClose\n ),\n hideProgressBar:\n typeof options.hideProgressBar === 'boolean'\n ? options.hideProgressBar\n : this.props.hideProgressBar\n };\n\n this.isFunction(options.onOpen) && (toastOptions.onOpen = options.onOpen);\n\n this.isFunction(options.onClose) &&\n (toastOptions.onClose = options.onClose);\n\n /**\n * add closeToast function to react component only\n */\n if (\n isValidElement(content) &&\n typeof content.type !== 'string' &&\n typeof content.type !== 'number'\n ) {\n content = cloneElement(content, {\n closeToast\n });\n } else if (this.isFunction(content)) {\n content = content({ closeToast });\n }\n\n this.collection = Object.assign({}, this.collection, {\n [toastId]: {\n position: toastOptions.position,\n options: toastOptions,\n content: content\n }\n });\n\n this.setState({\n toast:\n toastOptions.updateId !== null\n ? [...this.state.toast]\n : [...this.state.toast, toastId]\n });\n }\n\n makeToast(content, options) {\n return (\n \n {content}\n \n );\n }\n\n clear() {\n this.setState({ toast: [] });\n }\n\n renderToast() {\n const toastToRender = {};\n const { className, style, newestOnTop } = this.props;\n const collection = newestOnTop\n ? Object.keys(this.collection).reverse()\n : Object.keys(this.collection);\n\n collection.forEach(toastId => {\n const item = this.collection[toastId];\n toastToRender[item.position] || (toastToRender[item.position] = []);\n\n if (this.state.toast.indexOf(parseInt(toastId, 10)) !== -1) {\n toastToRender[item.position].push(\n this.makeToast(item.content, item.options)\n );\n } else {\n toastToRender[item.position].push(null);\n delete this.collection[toastId];\n }\n });\n\n return Object.keys(toastToRender).map(position => {\n const disablePointer =\n toastToRender[position].length === 1 &&\n toastToRender[position][0] === null;\n\n return (\n \n {toastToRender[position]}\n
\n );\n });\n }\n\n render() {\n return
{this.renderToast()}
;\n }\n}\n\nexport default ToastContainer;\n\n\n\n// WEBPACK FOOTER //\n// ./src/ToastContainer.js","'use strict';\n\nexports.__esModule = true;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _ChildMapping = require('./utils/ChildMapping');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar values = Object.values || function (obj) {\n return Object.keys(obj).map(function (k) {\n return obj[k];\n });\n};\n\nvar propTypes = {\n /**\n * `` renders a `
` by default. You can change this\n * behavior by providing a `component` prop.\n */\n component: _propTypes2.default.any,\n /**\n * A set of `` components, that are toggled `in` and out as they\n * leave. the `` will inject specific transition props, so\n * remember to spread them through if you are wrapping the `` as\n * with our `` example.\n */\n children: _propTypes2.default.node,\n\n /**\n * A convenience prop that enables or disabled appear animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n appear: _propTypes2.default.bool,\n /**\n * A convenience prop that enables or disabled enter animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n enter: _propTypes2.default.bool,\n /**\n * A convenience prop that enables or disabled exit animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n exit: _propTypes2.default.bool,\n\n /**\n * You may need to apply reactive updates to a child as it is exiting.\n * This is generally done by using `cloneElement` however in the case of an exiting\n * child the element has already been removed and not accessible to the consumer.\n *\n * If you do need to update a child as it leaves you can provide a `childFactory`\n * to wrap every child, even the ones that are leaving.\n *\n * @type Function(child: ReactElement) -> ReactElement\n */\n childFactory: _propTypes2.default.func\n};\n\nvar defaultProps = {\n component: 'div',\n childFactory: function childFactory(child) {\n return child;\n }\n};\n\n/**\n * The `` component manages a set of `` components\n * in a list. Like with the `` component, ``, is a\n * state machine for managing the mounting and unmounting of components over\n * time.\n *\n * Consider the example below using the `Fade` CSS transition from before.\n * As items are removed or added to the TodoList the `in` prop is toggled\n * automatically by the ``. You can use _any_ ``\n * component in a ``, not just css.\n *\n * ```jsx\n * import TransitionGroup from 'react-transition-group/TransitionGroup';\n *\n * class TodoList extends React.Component {\n * constructor(props) {\n * super(props)\n * this.state = {items: ['hello', 'world', 'click', 'me']}\n * }\n * handleAdd() {\n * const newItems = this.state.items.concat([\n * prompt('Enter some text')\n * ]);\n * this.setState({ items: newItems });\n * }\n * handleRemove(i) {\n * let newItems = this.state.items.slice();\n * newItems.splice(i, 1);\n * this.setState({items: newItems});\n * }\n * render() {\n * return (\n *
\n * \n * \n * {this.state.items.map((item, i) => (\n * \n *
\n * {item}{' '}\n * \n *
\n *
\n * ))}\n *
\n *
\n * );\n * }\n * }\n * ```\n *\n * Note that `` does not define any animation behavior!\n * Exactly _how_ a list item animates is up to the individual ``\n * components. This means you can mix and match animations across different\n * list items.\n */\n\nvar TransitionGroup = function (_React$Component) {\n _inherits(TransitionGroup, _React$Component);\n\n function TransitionGroup(props, context) {\n _classCallCheck(this, TransitionGroup);\n\n // Initial children should all be entering, dependent on appear\n var _this = _possibleConstructorReturn(this, _React$Component.call(this, props, context));\n\n _this.handleExited = function (key, node, originalHandler) {\n var currentChildMapping = (0, _ChildMapping.getChildMapping)(_this.props.children);\n\n if (key in currentChildMapping) return;\n\n if (originalHandler) originalHandler(node);\n\n _this.setState(function (state) {\n var children = _extends({}, state.children);\n\n delete children[key];\n return { children: children };\n });\n };\n\n _this.state = {\n children: (0, _ChildMapping.getChildMapping)(props.children, function (child) {\n var onExited = function onExited(node) {\n _this.handleExited(child.key, node, child.props.onExited);\n };\n\n return (0, _react.cloneElement)(child, {\n onExited: onExited,\n in: true,\n appear: _this.getProp(child, 'appear'),\n enter: _this.getProp(child, 'enter'),\n exit: _this.getProp(child, 'exit')\n });\n })\n };\n return _this;\n }\n\n TransitionGroup.prototype.getChildContext = function getChildContext() {\n return {\n transitionGroup: { isMounting: !this.appeared }\n };\n };\n // use child config unless explictly set by the Group\n\n\n TransitionGroup.prototype.getProp = function getProp(child, prop) {\n var props = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.props;\n\n return props[prop] != null ? props[prop] : child.props[prop];\n };\n\n TransitionGroup.prototype.componentDidMount = function componentDidMount() {\n this.appeared = true;\n };\n\n TransitionGroup.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n var _this2 = this;\n\n var prevChildMapping = this.state.children;\n var nextChildMapping = (0, _ChildMapping.getChildMapping)(nextProps.children);\n\n var children = (0, _ChildMapping.mergeChildMappings)(prevChildMapping, nextChildMapping);\n\n Object.keys(children).forEach(function (key) {\n var child = children[key];\n\n if (!(0, _react.isValidElement)(child)) return;\n\n var onExited = function onExited(node) {\n _this2.handleExited(child.key, node, child.props.onExited);\n };\n\n var hasPrev = key in prevChildMapping;\n var hasNext = key in nextChildMapping;\n\n var prevChild = prevChildMapping[key];\n var isLeaving = (0, _react.isValidElement)(prevChild) && !prevChild.props.in;\n\n // item is new (entering)\n if (hasNext && (!hasPrev || isLeaving)) {\n // console.log('entering', key)\n children[key] = (0, _react.cloneElement)(child, {\n onExited: onExited,\n in: true,\n exit: _this2.getProp(child, 'exit', nextProps),\n enter: _this2.getProp(child, 'enter', nextProps)\n });\n }\n // item is old (exiting)\n else if (!hasNext && hasPrev && !isLeaving) {\n // console.log('leaving', key)\n children[key] = (0, _react.cloneElement)(child, { in: false });\n }\n // item hasn't changed transition states\n // copy over the last transition props;\n else if (hasNext && hasPrev && (0, _react.isValidElement)(prevChild)) {\n // console.log('unchanged', key)\n children[key] = (0, _react.cloneElement)(child, {\n onExited: onExited,\n in: prevChild.props.in,\n exit: _this2.getProp(child, 'exit', nextProps),\n enter: _this2.getProp(child, 'enter', nextProps)\n });\n }\n });\n\n this.setState({ children: children });\n };\n\n TransitionGroup.prototype.render = function render() {\n var _props = this.props,\n Component = _props.component,\n childFactory = _props.childFactory,\n props = _objectWithoutProperties(_props, ['component', 'childFactory']);\n\n var children = this.state.children;\n\n\n delete props.appear;\n delete props.enter;\n delete props.exit;\n\n return _react2.default.createElement(\n Component,\n props,\n values(children).map(childFactory)\n );\n };\n\n return TransitionGroup;\n}(_react2.default.Component);\n\nTransitionGroup.childContextTypes = {\n transitionGroup: _propTypes2.default.object.isRequired\n};\n\n\nTransitionGroup.propTypes = process.env.NODE_ENV !== \"production\" ? propTypes : {};\nTransitionGroup.defaultProps = defaultProps;\n\nexports.default = TransitionGroup;\nmodule.exports = exports['default'];\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/react-transition-group/TransitionGroup.js\n// module id = 9\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\nexports.getChildMapping = getChildMapping;\nexports.mergeChildMappings = mergeChildMappings;\n\nvar _react = require('react');\n\n/**\n * Given `this.props.children`, return an object mapping key to child.\n *\n * @param {*} children `this.props.children`\n * @return {object} Mapping of key to child\n */\nfunction getChildMapping(children, mapFn) {\n var mapper = function mapper(child) {\n return mapFn && (0, _react.isValidElement)(child) ? mapFn(child) : child;\n };\n\n var result = Object.create(null);\n if (children) _react.Children.map(children, function (c) {\n return c;\n }).forEach(function (child) {\n // run the map function here instead so that the key is the computed one\n result[child.key] = mapper(child);\n });\n return result;\n}\n\n/**\n * When you're adding or removing children some may be added or removed in the\n * same render pass. We want to show *both* since we want to simultaneously\n * animate elements in and out. This function takes a previous set of keys\n * and a new set of keys and merges them with its best guess of the correct\n * ordering. In the future we may expose some of the utilities in\n * ReactMultiChild to make this easy, but for now React itself does not\n * directly have this concept of the union of prevChildren and nextChildren\n * so we implement it here.\n *\n * @param {object} prev prev children as returned from\n * `ReactTransitionChildMapping.getChildMapping()`.\n * @param {object} next next children as returned from\n * `ReactTransitionChildMapping.getChildMapping()`.\n * @return {object} a key set that contains all keys in `prev` and all keys\n * in `next` in a reasonable order.\n */\nfunction mergeChildMappings(prev, next) {\n prev = prev || {};\n next = next || {};\n\n function getValueForKey(key) {\n return key in next ? next[key] : prev[key];\n }\n\n // For each key of `next`, the list of keys to insert before that key in\n // the combined list\n var nextKeysPending = Object.create(null);\n\n var pendingKeys = [];\n for (var prevKey in prev) {\n if (prevKey in next) {\n if (pendingKeys.length) {\n nextKeysPending[prevKey] = pendingKeys;\n pendingKeys = [];\n }\n } else {\n pendingKeys.push(prevKey);\n }\n }\n\n var i = void 0;\n var childMapping = {};\n for (var nextKey in next) {\n if (nextKeysPending[nextKey]) {\n for (i = 0; i < nextKeysPending[nextKey].length; i++) {\n var pendingNextKey = nextKeysPending[nextKey][i];\n childMapping[nextKeysPending[nextKey][i]] = getValueForKey(pendingNextKey);\n }\n }\n childMapping[nextKey] = getValueForKey(nextKey);\n }\n\n // Finally, add the keys which didn't appear before any key in `next`\n for (i = 0; i < pendingKeys.length; i++) {\n childMapping[pendingKeys[i]] = getValueForKey(pendingKeys[i]);\n }\n\n return childMapping;\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/react-transition-group/utils/ChildMapping.js\n// module id = 10\n// module chunks = 0","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { css } from 'glamor';\n\nimport ProgressBar from './ProgressBar';\nimport { POSITION, TYPE } from './constant';\nimport style from './style';\nimport {\n falseOrElement,\n falseOrDelay,\n objectValues\n} from './util/propValidator';\n\nconst toast = type =>\n css({\n position: 'relative',\n minHeight: '48px',\n marginBottom: '1rem',\n padding: '8px',\n borderRadius: '1px',\n boxShadow:\n '0 1px 10px 0 rgba(0, 0, 0, .1), 0 2px 15px 0 rgba(0, 0, 0, .05)',\n display: 'flex',\n justifyContent: 'space-between',\n maxHeight: '800px',\n overflow: 'hidden',\n fontFamily: style.fontFamily,\n cursor: 'pointer',\n background: style[`color${type.charAt(0).toUpperCase()}${type.slice(1)}`],\n ...(type === 'default' ? { color: '#aaa' } : {}),\n [`@media ${style.mobile}`]: {\n marginBottom: 0\n }\n });\n\nconst body = css({\n margin: 'auto 0',\n flex: 1\n});\n\nclass Toast extends Component {\n static propTypes = {\n closeButton: falseOrElement.isRequired,\n autoClose: falseOrDelay.isRequired,\n children: PropTypes.node.isRequired,\n closeToast: PropTypes.func.isRequired,\n position: PropTypes.oneOf(objectValues(POSITION)).isRequired,\n pauseOnHover: PropTypes.bool.isRequired,\n closeOnClick: PropTypes.bool.isRequired,\n transition: PropTypes.func.isRequired,\n isDocumentHidden: PropTypes.bool.isRequired,\n in: PropTypes.bool,\n onExited: PropTypes.func,\n hideProgressBar: PropTypes.bool,\n onOpen: PropTypes.func,\n onClose: PropTypes.func,\n type: PropTypes.oneOf(objectValues(TYPE)),\n className: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n bodyClassName: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n progressClassName: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.object\n ]),\n updateId: PropTypes.number\n };\n\n static defaultProps = {\n type: TYPE.DEFAULT,\n in: true,\n hideProgressBar: false,\n onOpen: null,\n onClose: null,\n className: '',\n bodyClassName: '',\n progressClassName: '',\n updateId: null\n };\n\n state = {\n isRunning: true\n };\n\n componentDidMount() {\n this.props.onOpen !== null && this.props.onOpen(this.getChildrenProps());\n }\n\n componentWillReceiveProps(nextProps) {\n if (this.props.isDocumentHidden !== nextProps.isDocumentHidden) {\n this.setState({\n isRunning: !nextProps.isDocumentHidden\n });\n }\n }\n\n componentWillUnmount() {\n this.props.onClose !== null && this.props.onClose(this.getChildrenProps());\n }\n\n getChildrenProps() {\n return this.props.children.props;\n }\n\n getToastProps() {\n const toastProps = {};\n\n if (this.props.autoClose !== false && this.props.pauseOnHover === true) {\n toastProps.onMouseEnter = this.pauseToast;\n toastProps.onMouseLeave = this.playToast;\n }\n typeof this.props.className === 'string' &&\n (toastProps.className = this.props.className);\n this.props.closeOnClick && (toastProps.onClick = this.props.closeToast);\n\n return toastProps;\n }\n\n pauseToast = () => {\n this.setState({ isRunning: false });\n };\n\n playToast = () => {\n this.setState({ isRunning: true });\n };\n\n render() {\n const {\n closeButton,\n children,\n autoClose,\n type,\n hideProgressBar,\n closeToast,\n transition: Transition,\n position,\n onExited,\n className,\n bodyClassName,\n progressClassName,\n updateId\n } = this.props;\n\n return (\n \n \n \n {children}\n
\n {closeButton !== false && closeButton}\n {autoClose !== false && (\n \n )}\n
\n
\n );\n }\n}\n\nexport default Toast;\n\n\n\n// WEBPACK FOOTER //\n// ./src/Toast.js","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { css } from 'glamor';\n\nimport { TYPE } from './constant';\nimport style from './style';\n\nconst trackProgress = css.keyframes('track-progress', {\n '0%': { width: '100%' },\n '100%': { width: 0 }\n});\n\nconst progress = (type, isRunning, hide, delay) =>\n css({\n position: 'absolute',\n bottom: 0,\n left: 0,\n width: 0,\n height: '5px',\n zIndex: style.zIndex,\n opacity: hide ? 0 : 0.7,\n animation: `${trackProgress} linear 1`,\n animationPlayState: isRunning ? 'running' : 'paused',\n animationDuration: `${delay}ms`,\n backgroundColor: 'rgba(255,255,255,.7)',\n ...(type === 'default' ? { background: style.colorProgressDefault } : {})\n });\n\nfunction ProgressBar({ delay, isRunning, closeToast, type, hide, className }) {\n return (\n \n );\n}\n\nProgressBar.propTypes = {\n /**\n * The animation delay which determine when to close the toast\n */\n delay: PropTypes.number.isRequired,\n\n /**\n * Whether or not the animation is running or paused\n */\n isRunning: PropTypes.bool.isRequired,\n\n /**\n * Func to close the current toast\n */\n closeToast: PropTypes.func.isRequired,\n\n /**\n * Optional type : info, success ...\n */\n type: PropTypes.string,\n\n /**\n * Hide or not the progress bar\n */\n hide: PropTypes.bool,\n\n /**\n * Optionnal className\n */\n className: PropTypes.oneOfType([PropTypes.string, PropTypes.object])\n};\n\nProgressBar.defaultProps = {\n type: TYPE.DEFAULT,\n hide: false,\n className: ''\n};\n\nexport default ProgressBar;\n\n\n\n// WEBPACK FOOTER //\n// ./src/ProgressBar.js","/* eslint react/require-default-props: 0 */\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { css } from 'glamor';\n\nconst rule = isDefault =>\n css({\n color: isDefault ? '#000' : '#fff',\n fontWeight: 'bold',\n fontSize: '14px',\n background: 'transparent',\n outline: 'none',\n border: 'none',\n padding: 0,\n cursor: 'pointer',\n opacity: isDefault ? '0.3' : '0.7',\n transition: '.3s ease',\n alignSelf: 'flex-start',\n ':hover, :focus': {\n opacity: 1\n }\n });\n\nfunction DefaultCloseButton({ closeToast, type }) {\n return (\n \n );\n}\n\nDefaultCloseButton.propTypes = {\n closeToast: PropTypes.func\n};\n\nexport default DefaultCloseButton;\n\n\n\n// WEBPACK FOOTER //\n// ./src/DefaultCloseButton.js","import React from 'react';\nimport Transition from 'react-transition-group/Transition';\nimport { css } from 'glamor';\n\nimport getAnimation from './animation';\n\nconst animate = {\n animationDuration: '0.75s',\n animationFillMode: 'both'\n};\n\nconst animation = pos => {\n const { enter, exit } = getAnimation(pos);\n const enterAnimation = css.keyframes('enter', {\n 'from, 60%, 75%, 90%, to': {\n animationTimingFunction: 'cubic-bezier(0.215, 0.610, 0.355, 1.000)'\n },\n ...enter\n });\n const exitAnimation = css.keyframes('exit', exit);\n\n return {\n enter: css({ ...animate, animationName: enterAnimation }),\n exit: css({ ...animate, animationName: exitAnimation })\n };\n};\n\nfunction DefaultTransition({ children, position, ...props }) {\n const { enter, exit } = animation(position);\n\n return (\n node.classList.add(enter)}\n onEntered={node => node.classList.remove(enter)}\n onExit={node => node.classList.add(exit)}\n >\n {children}\n
\n );\n}\n\nexport default DefaultTransition;\n\n\n\n// WEBPACK FOOTER //\n// ./src/DefaultTransition.js","'use strict';\n\nexports.__esModule = true;\nexports.EXITING = exports.ENTERED = exports.ENTERING = exports.EXITED = exports.UNMOUNTED = undefined;\n\nvar _propTypes = require('prop-types');\n\nvar PropTypes = _interopRequireWildcard(_propTypes);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nvar _PropTypes = require('./utils/PropTypes');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar UNMOUNTED = exports.UNMOUNTED = 'unmounted';\nvar EXITED = exports.EXITED = 'exited';\nvar ENTERING = exports.ENTERING = 'entering';\nvar ENTERED = exports.ENTERED = 'entered';\nvar EXITING = exports.EXITING = 'exiting';\n\n/**\n * The Transition component lets you describe a transition from one component\n * state to another _over time_ with a simple declarative API. Most commonly\n * it's used to animate the mounting and unmounting of a component, but can also\n * be used to describe in-place transition states as well.\n *\n * By default the `Transition` component does not alter the behavior of the\n * component it renders, it only tracks \"enter\" and \"exit\" states for the components.\n * It's up to you to give meaning and effect to those states. For example we can\n * add styles to a component when it enters or exits:\n *\n * ```jsx\n * import Transition from 'react-transition-group/Transition';\n *\n * const duration = 300;\n *\n * const defaultStyle = {\n * transition: `opacity ${duration}ms ease-in-out`,\n * opacity: 0,\n * }\n *\n * const transitionStyles = {\n * entering: { opacity: 0 },\n * entered: { opacity: 1 },\n * };\n *\n * const Fade = ({ in: inProp }) => (\n * \n * {(state) => (\n *
\n * I'm A fade Transition!\n *
\n * )}\n *
\n * );\n * ```\n *\n * As noted the `Transition` component doesn't _do_ anything by itself to its child component.\n * What it does do is track transition states over time so you can update the\n * component (such as by adding styles or classes) when it changes states.\n *\n * There are 4 main states a Transition can be in:\n * - `ENTERING`\n * - `ENTERED`\n * - `EXITING`\n * - `EXITED`\n *\n * Transition state is toggled via the `in` prop. When `true` the component begins the\n * \"Enter\" stage. During this stage, the component will shift from its current transition state,\n * to `'entering'` for the duration of the transition and then to the `'entered'` stage once\n * it's complete. Let's take the following example:\n *\n * ```jsx\n * state= { in: false };\n *\n * toggleEnterState = () => {\n * this.setState({ in: true });\n * }\n *\n * render() {\n * return (\n *
\n * \n * \n *
\n * );\n * }\n * ```\n *\n * When the button is clicked the component will shift to the `'entering'` state and\n * stay there for 500ms (the value of `timeout`) when finally switches to `'entered'`.\n *\n * When `in` is `false` the same thing happens except the state moves from `'exiting'` to `'exited'`.\n */\n\nvar Transition = function (_React$Component) {\n _inherits(Transition, _React$Component);\n\n function Transition(props, context) {\n _classCallCheck(this, Transition);\n\n var _this = _possibleConstructorReturn(this, _React$Component.call(this, props, context));\n\n var parentGroup = context.transitionGroup;\n // In the context of a TransitionGroup all enters are really appears\n var appear = parentGroup && !parentGroup.isMounting ? props.enter : props.appear;\n\n var initialStatus = void 0;\n _this.nextStatus = null;\n\n if (props.in) {\n if (appear) {\n initialStatus = EXITED;\n _this.nextStatus = ENTERING;\n } else {\n initialStatus = ENTERED;\n }\n } else {\n if (props.unmountOnExit || props.mountOnEnter) {\n initialStatus = UNMOUNTED;\n } else {\n initialStatus = EXITED;\n }\n }\n\n _this.state = { status: initialStatus };\n\n _this.nextCallback = null;\n return _this;\n }\n\n Transition.prototype.getChildContext = function getChildContext() {\n return { transitionGroup: null }; // allows for nested Transitions\n };\n\n Transition.prototype.componentDidMount = function componentDidMount() {\n this.updateStatus(true);\n };\n\n Transition.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n var _ref = this.pendingState || this.state,\n status = _ref.status;\n\n if (nextProps.in) {\n if (status === UNMOUNTED) {\n this.setState({ status: EXITED });\n }\n if (status !== ENTERING && status !== ENTERED) {\n this.nextStatus = ENTERING;\n }\n } else {\n if (status === ENTERING || status === ENTERED) {\n this.nextStatus = EXITING;\n }\n }\n };\n\n Transition.prototype.componentDidUpdate = function componentDidUpdate() {\n this.updateStatus();\n };\n\n Transition.prototype.componentWillUnmount = function componentWillUnmount() {\n this.cancelNextCallback();\n };\n\n Transition.prototype.getTimeouts = function getTimeouts() {\n var timeout = this.props.timeout;\n\n var exit = void 0,\n enter = void 0,\n appear = void 0;\n\n exit = enter = appear = timeout;\n\n if (timeout != null && typeof timeout !== 'number') {\n exit = timeout.exit;\n enter = timeout.enter;\n appear = timeout.appear;\n }\n return { exit: exit, enter: enter, appear: appear };\n };\n\n Transition.prototype.updateStatus = function updateStatus() {\n var mounting = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n\n var nextStatus = this.nextStatus;\n\n if (nextStatus !== null) {\n this.nextStatus = null;\n // nextStatus will always be ENTERING or EXITING.\n this.cancelNextCallback();\n var node = _reactDom2.default.findDOMNode(this);\n\n if (nextStatus === ENTERING) {\n this.performEnter(node, mounting);\n } else {\n this.performExit(node);\n }\n } else if (this.props.unmountOnExit && this.state.status === EXITED) {\n this.setState({ status: UNMOUNTED });\n }\n };\n\n Transition.prototype.performEnter = function performEnter(node, mounting) {\n var _this2 = this;\n\n var enter = this.props.enter;\n\n var appearing = this.context.transitionGroup ? this.context.transitionGroup.isMounting : mounting;\n\n var timeouts = this.getTimeouts();\n\n // no enter animation skip right to ENTERED\n // if we are mounting and running this it means appear _must_ be set\n if (!mounting && !enter) {\n this.safeSetState({ status: ENTERED }, function () {\n _this2.props.onEntered(node);\n });\n return;\n }\n\n this.props.onEnter(node, appearing);\n\n this.safeSetState({ status: ENTERING }, function () {\n _this2.props.onEntering(node, appearing);\n\n // FIXME: appear timeout?\n _this2.onTransitionEnd(node, timeouts.enter, function () {\n _this2.safeSetState({ status: ENTERED }, function () {\n _this2.props.onEntered(node, appearing);\n });\n });\n });\n };\n\n Transition.prototype.performExit = function performExit(node) {\n var _this3 = this;\n\n var exit = this.props.exit;\n\n var timeouts = this.getTimeouts();\n\n // no exit animation skip right to EXITED\n if (!exit) {\n this.safeSetState({ status: EXITED }, function () {\n _this3.props.onExited(node);\n });\n return;\n }\n this.props.onExit(node);\n\n this.safeSetState({ status: EXITING }, function () {\n _this3.props.onExiting(node);\n\n _this3.onTransitionEnd(node, timeouts.exit, function () {\n _this3.safeSetState({ status: EXITED }, function () {\n _this3.props.onExited(node);\n });\n });\n });\n };\n\n Transition.prototype.cancelNextCallback = function cancelNextCallback() {\n if (this.nextCallback !== null) {\n this.nextCallback.cancel();\n this.nextCallback = null;\n }\n };\n\n Transition.prototype.safeSetState = function safeSetState(nextState, callback) {\n var _this4 = this;\n\n // We need to track pending updates for instances where a cWRP fires quickly\n // after cDM and before the state flushes, which would double trigger a\n // transition\n this.pendingState = nextState;\n\n // This shouldn't be necessary, but there are weird race conditions with\n // setState callbacks and unmounting in testing, so always make sure that\n // we can cancel any pending setState callbacks after we unmount.\n callback = this.setNextCallback(callback);\n this.setState(nextState, function () {\n _this4.pendingState = null;\n callback();\n });\n };\n\n Transition.prototype.setNextCallback = function setNextCallback(callback) {\n var _this5 = this;\n\n var active = true;\n\n this.nextCallback = function (event) {\n if (active) {\n active = false;\n _this5.nextCallback = null;\n\n callback(event);\n }\n };\n\n this.nextCallback.cancel = function () {\n active = false;\n };\n\n return this.nextCallback;\n };\n\n Transition.prototype.onTransitionEnd = function onTransitionEnd(node, timeout, handler) {\n this.setNextCallback(handler);\n\n if (node) {\n if (this.props.addEndListener) {\n this.props.addEndListener(node, this.nextCallback);\n }\n if (timeout != null) {\n setTimeout(this.nextCallback, timeout);\n }\n } else {\n setTimeout(this.nextCallback, 0);\n }\n };\n\n Transition.prototype.render = function render() {\n var status = this.state.status;\n if (status === UNMOUNTED) {\n return null;\n }\n\n var _props = this.props,\n children = _props.children,\n childProps = _objectWithoutProperties(_props, ['children']);\n // filter props for Transtition\n\n\n delete childProps.in;\n delete childProps.mountOnEnter;\n delete childProps.unmountOnExit;\n delete childProps.appear;\n delete childProps.enter;\n delete childProps.exit;\n delete childProps.timeout;\n delete childProps.addEndListener;\n delete childProps.onEnter;\n delete childProps.onEntering;\n delete childProps.onEntered;\n delete childProps.onExit;\n delete childProps.onExiting;\n delete childProps.onExited;\n\n if (typeof children === 'function') {\n return children(status, childProps);\n }\n\n var child = _react2.default.Children.only(children);\n return _react2.default.cloneElement(child, childProps);\n };\n\n return Transition;\n}(_react2.default.Component);\n\nTransition.contextTypes = {\n transitionGroup: PropTypes.object\n};\nTransition.childContextTypes = {\n transitionGroup: function transitionGroup() {}\n};\n\n\nTransition.propTypes = process.env.NODE_ENV !== \"production\" ? {\n /**\n * A `function` child can be used instead of a React element.\n * This function is called with the current transition status\n * ('entering', 'entered', 'exiting', 'exited', 'unmounted'), which can used\n * to apply context specific props to a component.\n *\n * ```jsx\n * \n * {(status) => (\n * \n * )}\n * \n * ```\n */\n children: PropTypes.oneOfType([PropTypes.func.isRequired, PropTypes.element.isRequired]).isRequired,\n\n /**\n * Show the component; triggers the enter or exit states\n */\n in: PropTypes.bool,\n\n /**\n * By default the child component is mounted immediately along with\n * the parent `Transition` component. If you want to \"lazy mount\" the component on the\n * first `in={true}` you can set `mountOnEnter`. After the first enter transition the component will stay\n * mounted, even on \"exited\", unless you also specify `unmountOnExit`.\n */\n mountOnEnter: PropTypes.bool,\n\n /**\n * By default the child component stays mounted after it reaches the `'exited'` state.\n * Set `unmountOnExit` if you'd prefer to unmount the component after it finishes exiting.\n */\n unmountOnExit: PropTypes.bool,\n\n /**\n * Normally a component is not transitioned if it is shown when the `` component mounts.\n * If you want to transition on the first mount set `appear` to `true`, and the\n * component will transition in as soon as the `` mounts.\n *\n * > Note: there are no specific \"appear\" states. `appear` only adds an additional `enter` transition.\n */\n appear: PropTypes.bool,\n\n /**\n * Enable or disable enter transitions.\n */\n enter: PropTypes.bool,\n\n /**\n * Enable or disable exit transitions.\n */\n exit: PropTypes.bool,\n\n /**\n * The duration of the transition, in milliseconds.\n * Required unless `addEventListener` is provided\n *\n * You may specify a single timeout for all transitions like: `timeout={500}`,\n * or individually like:\n *\n * ```jsx\n * timeout={{\n * enter: 300,\n * exit: 500,\n * }}\n * ```\n *\n * @type {number | { enter?: number, exit?: number }}\n */\n timeout: function timeout(props) {\n for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n var pt = _PropTypes.timeoutsShape;\n if (!props.addEndListener) pt = pt.isRequired;\n return pt.apply(undefined, [props].concat(args));\n },\n\n /**\n * Add a custom transition end trigger. Called with the transitioning\n * DOM node and a `done` callback. Allows for more fine grained transition end\n * logic. **Note:** Timeouts are still used as a fallback if provided.\n *\n * ```jsx\n * addEndListener={(node, done) => {\n * // use the css transitionend event to mark the finish of a transition\n * node.addEventListener('transitionend', done, false);\n * }}\n * ```\n */\n addEndListener: PropTypes.func,\n\n /**\n * Callback fired before the \"entering\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * @type Function(node: HtmlElement, isAppearing: bool) -> void\n */\n onEnter: PropTypes.func,\n\n /**\n * Callback fired after the \"entering\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * @type Function(node: HtmlElement, isAppearing: bool)\n */\n onEntering: PropTypes.func,\n\n /**\n * Callback fired after the \"entered\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * @type Function(node: HtmlElement, isAppearing: bool) -> void\n */\n onEntered: PropTypes.func,\n\n /**\n * Callback fired before the \"exiting\" status is applied.\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExit: PropTypes.func,\n\n /**\n * Callback fired after the \"exiting\" status is applied.\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExiting: PropTypes.func,\n\n /**\n * Callback fired after the \"exited\" status is applied.\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExited: PropTypes.func\n} : {};\n\n// Name the function so it is clearer in the documentation\nfunction noop() {}\n\nTransition.defaultProps = {\n in: false,\n mountOnEnter: false,\n unmountOnExit: false,\n appear: false,\n enter: true,\n exit: true,\n\n onEnter: noop,\n onEntering: noop,\n onEntered: noop,\n\n onExit: noop,\n onExiting: noop,\n onExited: noop\n};\n\nTransition.UNMOUNTED = 0;\nTransition.EXITED = 1;\nTransition.ENTERING = 2;\nTransition.ENTERED = 3;\nTransition.EXITING = 4;\n\nexports.default = Transition;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/react-transition-group/Transition.js\n// module id = 15\n// module chunks = 0","module.exports = __WEBPACK_EXTERNAL_MODULE_16__;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"react-dom\"\n// module id = 16\n// module chunks = 0","'use strict';\n\nexports.__esModule = true;\nexports.classNamesShape = exports.timeoutsShape = undefined;\nexports.transitionTimeout = transitionTimeout;\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction transitionTimeout(transitionType) {\n var timeoutPropName = 'transition' + transitionType + 'Timeout';\n var enabledPropName = 'transition' + transitionType;\n\n return function (props) {\n // If the transition is enabled\n if (props[enabledPropName]) {\n // If no timeout duration is provided\n if (props[timeoutPropName] == null) {\n return new Error(timeoutPropName + ' wasn\\'t supplied to CSSTransitionGroup: ' + 'this can cause unreliable animations and won\\'t be supported in ' + 'a future version of React. See ' + 'https://fb.me/react-animation-transition-group-timeout for more ' + 'information.');\n\n // If the duration isn't a number\n } else if (typeof props[timeoutPropName] !== 'number') {\n return new Error(timeoutPropName + ' must be a number (in milliseconds)');\n }\n }\n\n return null;\n };\n}\n\nvar timeoutsShape = exports.timeoutsShape = _propTypes2.default.oneOfType([_propTypes2.default.number, _propTypes2.default.shape({\n enter: _propTypes2.default.number,\n exit: _propTypes2.default.number\n}).isRequired]);\n\nvar classNamesShape = exports.classNamesShape = _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.shape({\n enter: _propTypes2.default.string,\n exit: _propTypes2.default.string,\n active: _propTypes2.default.string\n}), _propTypes2.default.shape({\n enter: _propTypes2.default.string,\n enterActive: _propTypes2.default.string,\n exit: _propTypes2.default.string,\n exitActive: _propTypes2.default.string\n})]);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/react-transition-group/utils/PropTypes.js\n// module id = 17\n// module chunks = 0","import { POSITION } from './constant';\n\nexport default function getAnimation(pos) {\n switch (pos) {\n case POSITION.TOP_RIGHT:\n case POSITION.BOTTOM_RIGHT:\n default:\n return {\n enter: {\n from: {\n opacity: 0,\n transform: 'translate3d(3000px, 0, 0)'\n },\n '60%': {\n opacity: 1,\n transform: 'translate3d(-25px, 0, 0)'\n },\n '75%': {\n transform: 'translate3d(10px, 0, 0)'\n },\n '90%': {\n transform: 'translate3d(-5px, 0, 0)'\n },\n to: {\n transform: 'none'\n }\n },\n exit: {\n '20%': {\n opacity: 1,\n transform: 'translate3d(-20px, 0, 0)'\n },\n to: {\n opacity: 0,\n transform: 'translate3d(2000px, 0, 0)'\n }\n }\n };\n case POSITION.TOP_LEFT:\n case POSITION.BOTTOM_LEFT:\n return {\n enter: {\n '0%': {\n opacity: 0,\n transform: 'translate3d(-3000px, 0, 0)'\n },\n '60%': {\n opacity: 1,\n transform: 'translate3d(25px, 0, 0)'\n },\n '75%': {\n transform: 'translate3d(-10px, 0, 0)'\n },\n '90%': {\n transform: 'translate3d(5px, 0, 0)'\n },\n to: {\n transform: 'none'\n }\n },\n exit: {\n '20%': {\n opacity: 1,\n transform: 'translate3d(20px, 0, 0)'\n },\n to: {\n opacity: 0,\n transform: 'translate3d(-2000px, 0, 0)'\n }\n }\n };\n case POSITION.BOTTOM_CENTER:\n return {\n enter: {\n from: {\n opacity: 0,\n transform: 'translate3d(0, 3000px, 0)'\n },\n '60%': {\n opacity: 1,\n transform: 'translate3d(0, -20px, 0)'\n },\n '75%': {\n transform: 'translate3d(0, 10px, 0)'\n },\n '90%': {\n transform: 'translate3d(0, -5px, 0)'\n },\n to: {\n transform: 'translate3d(0, 0, 0)'\n }\n },\n exit: {\n '20%': {\n transform: 'translate3d(0, 10px, 0)'\n },\n '40%, 45%': {\n opacity: 1,\n transform: 'translate3d(0, -20px, 0)'\n },\n to: {\n opacity: 0,\n transform: 'translate3d(0, 2000px, 0)'\n }\n }\n };\n case POSITION.TOP_CENTER:\n return {\n enter: {\n '0%': {\n opacity: 0,\n transform: 'translate3d(0, -3000px, 0)'\n },\n '60%': {\n opacity: 1,\n transform: 'translate3d(0, 25px, 0)'\n },\n '75%': {\n transform: 'translate3d(0, -10px, 0)'\n },\n '90%': {\n transform: 'translate3d(0, 5px, 0)'\n },\n to: {\n transform: 'none'\n }\n },\n exit: {\n '20%': {\n transform: 'translate3d(0, -10px, 0)'\n },\n '40%, 45%': {\n opacity: 1,\n transform: 'translate3d(0, 20px, 0)'\n },\n to: {\n opacity: 0,\n transform: 'translate3d(0, -2000px, 0)'\n }\n }\n };\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/animation.js","import EventManager from './util/EventManager';\nimport { POSITION, TYPE, ACTION } from './constant';\n\nconst defaultOptions = {\n type: TYPE.DEFAULT,\n autoClose: null,\n closeButton: null,\n hideProgressBar: null,\n position: null,\n pauseOnHover: null,\n closeOnClick: null,\n className: null,\n bodyClassName: null,\n progressClassName: null,\n transition: null,\n updateId: null\n};\n\nlet container = null;\nlet queue = [];\nlet toastId = 0;\n\n/**\n * Merge provided options with the defaults settings and generate the toastId\n * @param {*} options\n */\nfunction mergeOptions(options, type) {\n return Object.assign({}, defaultOptions, options, {\n type: type,\n toastId: ++toastId\n });\n}\n\n/**\n * Dispatch toast. If the container is not mounted, the toast is enqueued\n * @param {*} content\n * @param {*} options\n */\nfunction emitEvent(content, options) {\n if (container !== null) {\n EventManager.emit(ACTION.SHOW, content, options);\n } else {\n queue.push({ action: ACTION.SHOW, content, options });\n }\n\n return options.toastId;\n}\n\nconst toaster = Object.assign(\n (content, options) =>\n emitEvent(\n content,\n mergeOptions(options, (options && options.type) || TYPE.DEFAULT)\n ),\n {\n success: (content, options) =>\n emitEvent(content, mergeOptions(options, TYPE.SUCCESS)),\n info: (content, options) =>\n emitEvent(content, mergeOptions(options, TYPE.INFO)),\n warn: (content, options) =>\n emitEvent(content, mergeOptions(options, TYPE.WARNING)),\n warning: (content, options) =>\n emitEvent(content, mergeOptions(options, TYPE.WARNING)),\n error: (content, options) =>\n emitEvent(content, mergeOptions(options, TYPE.ERROR)),\n dismiss: (id = null) => container && EventManager.emit(ACTION.CLEAR, id),\n isActive: () => false,\n update(id, options) {\n if (container && typeof container.collection[id] !== 'undefined') {\n const {\n options: oldOptions,\n content: oldContent\n } = container.collection[id];\n const updateId =\n oldOptions.updateId !== null ? oldOptions.updateId + 1 : 1;\n\n const nextOptions = Object.assign({}, oldOptions, options, {\n toastId: id,\n updateId: updateId\n });\n const content =\n typeof nextOptions.render !== 'undefined'\n ? nextOptions.render\n : oldContent;\n delete nextOptions.render;\n\n return emitEvent(content, nextOptions);\n }\n\n return false;\n }\n },\n {\n POSITION,\n TYPE\n }\n);\n\n/**\n * Wait until the ToastContainer is mounted to dispatch the toast\n * and attach isActive method\n */\nEventManager.on(ACTION.MOUNTED, containerInstance => {\n container = containerInstance;\n\n toaster.isActive = id => container.isToastActive(id);\n\n queue.forEach(item => {\n EventManager.emit(item.action, item.content, item.options);\n });\n queue = [];\n});\n\nexport default toaster;\n\n\n\n// WEBPACK FOOTER //\n// ./src/toaster.js"],"sourceRoot":""} \ No newline at end of file diff --git a/index.d.ts b/index.d.ts index ffe4418e..81bf4699 100644 --- a/index.d.ts +++ b/index.d.ts @@ -1,18 +1,24 @@ -import * as React from "react"; -import Transition from "react-transition-group/Transition"; +import * as React from 'react'; +import Transition from 'react-transition-group/Transition'; -type ToastType = "info" | "success" | "warning" | "error" | "default"; +type ToastType = 'info' | 'success' | 'warning' | 'error' | 'default'; interface styleProps { - width?: string, - colorDefault?: string, - colorInfo?: string, - colorSuccess?: string, - colorWarning?: string, - colorError?: string, - colorProgressDefault?: string, - mobile?: string, - zIndex?: string | number, + width?: string; + colorDefault?: string; + colorInfo?: string; + colorSuccess?: string; + colorWarning?: string; + colorError?: string; + colorProgressDefault?: string; + mobile?: string; + zIndex?: string | number; + TOP_LEFT?: object; + TOP_CENTER?: object; + TOP_RIGHT?: object; + BOTTOM_LEFT?: object; + BOTTOM_CENTER?: object; + BOTTOM_RIGHT?: object; } interface CommonOptions { @@ -35,7 +41,7 @@ interface ToastOptions extends CommonOptions { } interface UpdateOptions extends ToastOptions { - render?: React.ReactNode + render?: React.ReactNode; } interface ToastContainerProps extends CommonOptions { diff --git a/src/ToastContainer.js b/src/ToastContainer.js index 167f36df..9d7aeec6 100644 --- a/src/ToastContainer.js +++ b/src/ToastContainer.js @@ -17,50 +17,22 @@ import { } from './util/propValidator'; const toastPosition = pos => { - let rule; - const marginLeft = `-${parseInt(style.width, 10) / 2}px`; - switch (pos) { - case POSITION.TOP_LEFT: - rule = { - top: '1em', - left: '1em' - }; - break; - case POSITION.TOP_CENTER: - rule = { - top: '1em', - left: '50%', - marginLeft: marginLeft - }; - break; - case POSITION.TOP_RIGHT: - default: - rule = { - top: '1em', - right: '1em' - }; - break; - case POSITION.BOTTOM_LEFT: - rule = { - bottom: '1em', - left: '1em' - }; - break; - case POSITION.BOTTOM_CENTER: - rule = { - bottom: '1em', - left: '50%', - marginLeft: marginLeft - }; - break; - case POSITION.BOTTOM_RIGHT: - rule = { - bottom: '1em', - right: '1em' - }; + const positionKey = pos.toUpperCase().replace('-', '_'); + const positionRule = + typeof POSITION[positionKey] !== 'undefined' + ? style[positionKey] + : style.TOP_RIGHT; + + /** define margin for center toast based on toast witdh */ + if ( + positionKey.indexOf('CENTER') !== -1 && + typeof positionRule.marginLeft === 'undefined' + ) { + positionRule.marginLeft = `-${parseInt(style.width, 10) / 2}px`; } + return css( - rule, + positionRule, css({ [`@media ${style.mobile}`]: { left: 0, diff --git a/src/style.js b/src/style.js index 84e894dd..433a5353 100644 --- a/src/style.js +++ b/src/style.js @@ -9,7 +9,31 @@ const style = { 'linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55)', mobile: 'only screen and (max-width : 480px)', fontFamily: 'sans-serif', - zIndex: 9999 + zIndex: 9999, + TOP_LEFT: { + top: '1em', + left: '1em' + }, + TOP_CENTER: { + top: '1em', + left: '50%' + }, + TOP_RIGHT: { + top: '1em', + right: '1em' + }, + BOTTOM_LEFT: { + bottom: '1em', + left: '1em' + }, + BOTTOM_CENTER: { + bottom: '1em', + left: '50%' + }, + BOTTOM_RIGHT: { + bottom: '1em', + right: '1em' + } }; export function defineStyle(props) {