{"version":3,"sources":["webpack:///./app/javascript/mastodon/features/ui/components/mute_modal.js"],"names":["MuteModal","Object","react_redux__WEBPACK_IMPORTED_MODULE_5__","state","isSubmitting","getIn","account","notifications","dispatch","onConfirm","_actions_accounts__WEBPACK_IMPORTED_MODULE_10__","get","onClose","_actions_modal__WEBPACK_IMPORTED_MODULE_9__","onToggleNotifications","_actions_mutes__WEBPACK_IMPORTED_MODULE_11__","react_intl__WEBPACK_IMPORTED_MODULE_6__","handleClick","_this","props","handleCancel","setRef","c","button","toggleNotifications","componentDidMount","this","focus","render","_props","babel_runtime_helpers_jsx__WEBPACK_IMPORTED_MODULE_0___default","className","id","defaultMessage","values","name","htmlFor","react_toggle__WEBPACK_IMPORTED_MODULE_7___default","a","checked","onChange","_components_button__WEBPACK_IMPORTED_MODULE_8__","onClick","react__WEBPACK_IMPORTED_MODULE_4___default","createElement","ref","PureComponent"],"mappings":"8RAqCqBA,EAFpBC,OAAAC,EAAA,QAAAD,CAxBuB,SAAAE,GACtB,OACEC,aAAcD,EAAME,OAAO,UAAW,MAAO,iBAC7CC,QAASH,EAAME,OAAO,QAAS,MAAO,YACtCE,cAAeJ,EAAME,OAAO,QAAS,MAAO,oBAIrB,SAAAG,GACzB,OACEC,UADK,SACKH,EAASC,GACjBC,EAASP,OAAAS,EAAA,EAAAT,CAAYK,EAAQK,IAAI,MAAOJ,KAG1CK,QALK,WAMHJ,EAASP,OAAAY,EAAA,EAAAZ,KAGXa,sBATK,WAUHN,EAASP,OAAAc,EAAA,EAAAd,UAMdA,OAAAe,EAAA,EAAAf,8KAiBCgB,YAAc,WACZC,EAAKC,MAAMP,UACXM,EAAKC,MAAMV,UAAUS,EAAKC,MAAMb,QAASY,EAAKC,MAAMZ,kBAGtDa,aAAe,WACbF,EAAKC,MAAMP,aAGbS,OAAS,SAACC,GACRJ,EAAKK,OAASD,KAGhBE,oBAAsB,WACpBN,EAAKC,MAAML,kEAlBbW,6BACEC,KAAKH,OAAOI,qBAoBdC,kBAAU,IAAAC,EAC2BH,KAAKP,MAAhCb,EADAuB,EACAvB,QAASC,EADTsB,EACStB,cAEjB,OAAAuB,IAAA,OAAAC,UACiB,qCADjB,EAAAD,IAAA,OAAAC,UAEmB,8BAFnB,EAAAD,IAAA,cAAAA,IAISd,EAAA,GAJTgB,GAKa,6BALbC,eAMyB,wCANzBC,QAOoBC,KAAAL,IAAAK,uBAAgB7B,EAAQK,IAAI,aAPhDmB,IAAA,gBAAAA,IAAA,SAAAM,QAWuB,gDAXvB,EAAAN,IAYWd,EAAA,GAZXgB,GAY+B,gCAZ/BC,eAY8E,uCACnE,IAbXH,IAcWO,EAAAC,GAdXN,GAcqB,0CAdrBO,QAcwEhC,EAdxEiC,SAciGd,KAAKF,yBAdtGM,IAAA,OAAAC,UAmBmB,+BAnBnB,EAAAD,IAoBOW,EAAA,GApBPC,QAoBuBhB,KAAKN,aApB5BW,UAoBoD,kCApBpD,EAAAD,IAqBSd,EAAA,GArBTgB,GAqB6B,4BArB7BC,eAqBwE,YAElEU,EAAAL,EAAAM,cAACH,EAAA,GAAOC,QAAShB,KAAKT,YAAa4B,IAAKnB,KAAKL,QAA7CS,IACGd,EAAA,GADHgB,GACuB,6BADvBC,eACmE,gBA5DtCU,EAAAL,EAAMQ","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 isSubmitting: state.getIn(['reports', 'new', 'isSubmitting']),\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\n@connect(mapStateToProps, mapDispatchToProps)\n@injectIntl\nexport default class MuteModal extends React.PureComponent {\n\n static propTypes = {\n isSubmitting: PropTypes.bool.isRequired,\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 <div>\n <label htmlFor='mute-modal__hide-notifications-checkbox'>\n <FormattedMessage id='mute_modal.hide_notifications' defaultMessage='Hide notifications from this user?' />\n {' '}\n <Toggle id='mute-modal__hide-notifications-checkbox' checked={notifications} onChange={this.toggleNotifications} />\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":""}