{"version":3,"sources":["webpack:///app/javascript/tank/sources/git/git.pleroma.social/pleroma/mastofe/app/javascript/mastodon/features/ui/components/mute_modal.js"],"names":["MuteModal","connect","state","account","getIn","notifications","dispatch","onConfirm","muteAccount","get","onClose","closeModal","onToggleNotifications","toggleHideNotifications","injectIntl","props","c","button","componentDidMount","this","focus","render","className","id","defaultMessage","values","name","checked","onChange","toggleNotifications","htmlFor","onClick","handleCancel","handleClick","ref","setRef","React","PureComponent"],"mappings":"4QAWA,IAyBMA,EAFUC,mBAvBQ,SAAAC,GACtB,MAAO,CACLC,QAASD,EAAME,MAAM,CAAC,QAAS,MAAO,YACtCC,cAAeH,EAAME,MAAM,CAAC,QAAS,MAAO,sBAIrB,SAAAE,GACzB,MAAO,CACLC,UADK,SACKJ,EAASE,GACjBC,EAASE,YAAYL,EAAQM,IAAI,MAAOJ,KAG1CK,QALK,WAMHJ,EAASK,gBAGXC,sBATK,WAUHN,EAASO,mB,GAMdC,Y,0NAgBe,WACZ,EAAKC,MAAML,UACX,EAAKK,MAAMR,UAAU,EAAKQ,MAAMZ,QAAS,EAAKY,MAAMV,kB,2CAGvC,WACb,EAAKU,MAAML,a,qCAGJ,SAACM,GACR,EAAKC,OAASD,K,kDAGM,WACpB,EAAKD,MAAMH,2B,6BAlBbM,kBAAA,WACEC,KAAKF,OAAOG,S,EAoBdC,OAAA,WAAW,IAAD,EAC2BF,KAAKJ,MAAhCZ,EADA,EACAA,QAASE,EADT,EACSA,cAEjB,OACE,mBAAKiB,UAAU,qCAAf,EACE,mBAAKA,UAAU,8BAAf,EACE,0BACE,YAAC,IAAD,CACEC,GAAG,6BACHC,eAAe,wCACfC,OAAQ,CAAEC,KAAM,mCAAUvB,EAAQM,IAAI,aAG1C,iBAAGa,UAAU,gCAAb,EACE,YAAC,IAAD,CACEC,GAAG,iCACHC,eAAe,8HAGnB,mBAAKF,UAAU,uBAAf,EACE,YAAC,IAAD,CAAQC,GAAG,0CAA0CI,QAAStB,EAAeuB,SAAUT,KAAKU,sBAC5F,qBAAOP,UAAU,wBAAwBQ,QAAQ,gDAAjD,EACE,YAAC,IAAD,CAAkBP,GAAG,gCAAgCC,eAAe,0CAK1E,mBAAKF,UAAU,+BAAf,EACE,YAAC,IAAD,CAAQS,QAASZ,KAAKa,aAAcV,UAAU,kCAA9C,EACE,YAAC,IAAD,CAAkBC,GAAG,4BAA4BC,eAAe,YAElE,kBAAC,IAAD,CAAQO,QAASZ,KAAKc,YAAaC,IAAKf,KAAKgB,QAC3C,YAAC,IAAD,CAAkBZ,GAAG,6BAA6BC,eAAe,c,GAhErDY,IAAMC,iB","file":"modals/mute_modal.js","sourcesContent":["import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport { injectIntl, FormattedMessage } from 'react-intl';\nimport Toggle from 'react-toggle';\nimport Button from '../../../components/button';\nimport { closeModal } from '../../../actions/modal';\nimport { muteAccount } from '../../../actions/accounts';\nimport { toggleHideNotifications } from '../../../actions/mutes';\n\n\nconst mapStateToProps = state => {\n return {\n account: state.getIn(['mutes', 'new', 'account']),\n notifications: state.getIn(['mutes', 'new', 'notifications']),\n };\n};\n\nconst mapDispatchToProps = dispatch => {\n return {\n onConfirm(account, notifications) {\n dispatch(muteAccount(account.get('id'), notifications));\n },\n\n onClose() {\n dispatch(closeModal());\n },\n\n onToggleNotifications() {\n dispatch(toggleHideNotifications());\n },\n };\n};\n\nexport default @connect(mapStateToProps, mapDispatchToProps)\n@injectIntl\nclass MuteModal extends React.PureComponent {\n\n static propTypes = {\n account: PropTypes.object.isRequired,\n notifications: PropTypes.bool.isRequired,\n onClose: PropTypes.func.isRequired,\n onConfirm: PropTypes.func.isRequired,\n onToggleNotifications: PropTypes.func.isRequired,\n intl: PropTypes.object.isRequired,\n };\n\n componentDidMount() {\n this.button.focus();\n }\n\n handleClick = () => {\n this.props.onClose();\n this.props.onConfirm(this.props.account, this.props.notifications);\n }\n\n handleCancel = () => {\n this.props.onClose();\n }\n\n setRef = (c) => {\n this.button = c;\n }\n\n toggleNotifications = () => {\n this.props.onToggleNotifications();\n }\n\n render () {\n const { account, notifications } = this.props;\n\n return (\n <div className='modal-root__modal mute-modal'>\n <div className='mute-modal__container'>\n <p>\n <FormattedMessage\n id='confirmations.mute.message'\n defaultMessage='Are you sure you want to mute {name}?'\n values={{ name: <strong>@{account.get('acct')}</strong> }}\n />\n </p>\n <p className='mute-modal__explanation'>\n <FormattedMessage\n id='confirmations.mute.explanation'\n defaultMessage='This will hide posts from them and posts mentioning them, but it will still allow them to see your posts and follow you.'\n />\n </p>\n <div className='setting-toggle'>\n <Toggle id='mute-modal__hide-notifications-checkbox' checked={notifications} onChange={this.toggleNotifications} />\n <label className='setting-toggle__label' htmlFor='mute-modal__hide-notifications-checkbox'>\n <FormattedMessage id='mute_modal.hide_notifications' defaultMessage='Hide notifications from this user?' />\n </label>\n </div>\n </div>\n\n <div className='mute-modal__action-bar'>\n <Button onClick={this.handleCancel} className='mute-modal__cancel-button'>\n <FormattedMessage id='confirmation_modal.cancel' defaultMessage='Cancel' />\n </Button>\n <Button onClick={this.handleClick} ref={this.setRef}>\n <FormattedMessage id='confirmations.mute.confirm' defaultMessage='Mute' />\n </Button>\n </div>\n </div>\n );\n }\n\n}\n"],"sourceRoot":""}