{"version":3,"file":"879.chunk.js?41ea3e9907837366e86e","mappings":"2GACAA,EAAOC,QAAU,CAAC,iBAAiB,yBAAyB,0BAA0B,kC,+DCC/E,SAASC,EAAWC,GACzB,MAAO,CACLC,KAAMC,EAAAA,EACNF,QAAAA,EAEJ,CAEO,SAASG,IACd,MAAO,CAAEF,KAAMG,EAAAA,EACjB,C,qCCRMC,EAAe,SAAfA,EAAgBC,GAAK,OAAKA,EAAMC,IAAI,UAAUC,EAAAA,EAAAA,OAAO,EAErDC,EAAyB,SAAzBA,IAAsB,OAASC,EAAAA,EAAAA,gBAAeL,GAAc,SAACC,GAAK,OAAKA,EAAMC,IAAI,SAAS,GAAE,EAE5FI,EAA0B,SAA1BA,IAAuB,OAASD,EAAAA,EAAAA,gBAAeL,GAAc,SAACC,GAAK,OAAKA,EAAMC,IAAI,UAAU,GAAE,ECO9FK,GAAkBC,EAAAA,EAAAA,0BAAyB,CAC/CC,aAAcL,IACdM,cAAeJ,MAOXK,EAAqB,SAArBA,EAAsBC,GAAQ,MAAM,CACxCd,YAAa,oBAAMc,EAASd,IAAc,EAC1CJ,WAAY,WAACmB,GAAO,OAAKD,EAASlB,EAAWmB,GAAS,EACvD,EAMD,SAAeC,EAAAA,EAAAA,SAAQP,EAAiBI,E,0+CCvBL,IAG7BI,GAAe,EADpBC,IAAWC,IAAQ,CAAEC,eAAe,KAAO,iJAmCzC,OAnCyC,8DAYlC,CACNC,SAAS,KACV,sCAEmB,OAAI,gCAEX,SAACA,GACZ,EAAKC,SAAS,CAAED,QAAAA,GAClB,KAAC,iCAEa,WACZ,EAAKC,SAAS,CAAED,SAAS,GAC3B,KAAC,qCAEiB,WAChB,IAAQA,EAAY,EAAKlB,MAAjBkB,QACArB,EAAgB,EAAKuB,MAArBvB,YAEJqB,GAIJrB,GACF,IAAC,EA0BA,OA1BA,0CAED,SAAAwB,EAAA,GAAsC,IAAjBb,GAAY,EAAZA,cACEc,KAAKF,MAAMZ,eAC9Bc,KAAKC,YAAW,GAChBD,KAAKE,kBAAoBC,WAAWH,KAAKzB,YAAa,KAE1D,GAAC,kCAED,SAAA6B,IACEC,aAAaL,KAAKE,kBACpB,GAAC,oBAED,SAAAI,IACE,IAAQV,EAAYI,KAAKtB,MAAjBkB,QACR,EAAwCI,KAAKF,MAArCZ,EAAY,EAAZA,aAAcC,EAAa,EAAbA,cAEtB,OAAQD,GACN,gBACEqB,UAAU,kBACVC,gBAAiBR,KAAKQ,gBACtBC,UAAWC,IAAAA,WAAW,GAAD,QAAIC,EAAAA,EAAAA,GAAY,iBAAkB,CAAEf,QAAAA,MAAY,UAErE,SAAC,EAAAgB,aAAY,GAACC,UAAWb,KAAKzB,aAAiBY,MAN5B,IASzB,KAAC,EA7DyC,CACd2B,EAAAA,iBAAa,EA+D3C,SAAeC,EAAAA,EAAAA,GAAWvB,E","sources":["webpack://@capitalise/container/./app/modules/NotifyContainer/styles.scss","webpack://@capitalise/container/./app/reducers/notify/actions.js","webpack://@capitalise/container/./app/reducers/notify/selectors.js","webpack://@capitalise/container/./app/HOC/withNotify.js","webpack://@capitalise/container/./app/modules/NotifyContainer/index.js"],"sourcesContent":["// extracted by extract-css-chunks-webpack-plugin\nmodule.exports = {\"m-notification\":\"m-notification___3pqZr\",\"m-notification--visible\":\"m-notification--visible___1BCLU\"};","import { CLOSE_NOTIFY, OPEN_NOTIFY } from './types';\n\nexport function openNotify(options) {\n return {\n type: OPEN_NOTIFY,\n options,\n };\n}\n\nexport function closeNotify() {\n return { type: CLOSE_NOTIFY };\n}\n","import { Map } from 'immutable';\nimport { createSelector } from 'reselect';\n\nconst selectNotify = (state) => state.get('notify', Map());\n\nconst makeSelectIsNotifyOpen = () => createSelector(selectNotify, (state) => state.get('isOpen'));\n\nconst makeSelectNotifyOptions = () => createSelector(selectNotify, (state) => state.get('options'));\n\nexport { selectNotify, makeSelectIsNotifyOpen, makeSelectNotifyOptions };\n","/**\n * Module dependencies.\n */\n\nimport { closeNotify, openNotify } from 'reducers/notify/actions';\nimport { connect } from 'react-redux';\nimport { createStructuredSelector } from 'reselect';\n\nimport { makeSelectIsNotifyOpen, makeSelectNotifyOptions } from 'reducers/notify/selectors';\n\n/**\n * Map state to props.\n */\n\nconst mapStateToProps = createStructuredSelector({\n isNotifyOpen: makeSelectIsNotifyOpen(),\n notifyOptions: makeSelectNotifyOptions(),\n});\n\n/**\n * Map dispatch to props.\n */\n\nconst mapDispatchToProps = (dispatch) => ({\n closeNotify: () => dispatch(closeNotify()),\n openNotify: (payload) => dispatch(openNotify(payload)),\n});\n\n/**\n * Export withNotify HOC.\n */\n\nexport default connect(mapStateToProps, mapDispatchToProps);\n","import { PureComponent } from 'react';\nimport { Notification } from 'platfi-ui-components';\nimport CSSModules from 'react-css-modules';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nimport { bemModifier } from 'utils/BEMHelper';\nimport withNotify from 'HOC/withNotify';\n\nimport styles from './styles.scss';\n\n@CSSModules(styles, { allowMultiple: true })\nclass NotifyContainer extends PureComponent {\n static propTypes = {\n closeNotify: PropTypes.func.isRequired,\n isNotifyOpen: PropTypes.bool,\n notifyOptions: PropTypes.shape({\n description: PropTypes.string,\n theme: PropTypes.string,\n title: PropTypes.string,\n }),\n };\n\n state = {\n visible: false,\n };\n\n transitionTimeout = null;\n\n setVisible = (visible) => {\n this.setState({ visible });\n };\n\n closeNotify = () => {\n this.setState({ visible: false });\n };\n\n onTransitionEnd = () => {\n const { visible } = this.state;\n const { closeNotify } = this.props;\n\n if (visible) {\n return;\n }\n\n closeNotify();\n };\n\n componentDidUpdate({ isNotifyOpen }) {\n if (!isNotifyOpen && this.props.isNotifyOpen) {\n this.setVisible(true);\n this.transitionTimeout = setTimeout(this.closeNotify, 3000);\n }\n }\n\n componentWillUnmount() {\n clearTimeout(this.transitionTimeout);\n }\n\n render() {\n const { visible } = this.state;\n const { isNotifyOpen, notifyOptions } = this.props;\n\n return !isNotifyOpen ? null : (\n