2018-03-04 14:46:27 -06:00
import React from 'react' ;
import { connect } from 'react-redux' ;
import { blockDomain , unblockDomain } from '../actions/domain_blocks' ;
import { defineMessages , injectIntl , FormattedMessage } from 'react-intl' ;
2023-05-08 08:12:12 -05:00
import { Domain } from '../components/domain' ;
2018-03-04 14:46:27 -06:00
import { openModal } from '../actions/modal' ;
const messages = defineMessages ( {
2020-03-09 03:13:21 -05:00
blockDomainConfirm : { id : 'confirmations.domain_block.confirm' , defaultMessage : 'Block entire domain' } ,
2018-03-04 14:46:27 -06:00
} ) ;
const makeMapStateToProps = ( ) => {
2023-05-07 14:43:25 -05:00
const mapStateToProps = ( ) => ( { } ) ;
2018-03-04 14:46:27 -06:00
return mapStateToProps ;
} ;
const mapDispatchToProps = ( dispatch , { intl } ) => ( {
onBlockDomain ( domain ) {
dispatch ( openModal ( 'CONFIRM' , {
message : < FormattedMessage id = 'confirmations.domain_block.message' defaultMessage = 'Are you really, really sure you want to block the entire {domain}? In most cases a few targeted blocks or mutes are sufficient and preferable.' values = { { domain : < strong > { domain } < / strong > } } / > ,
confirm : intl . formatMessage ( messages . blockDomainConfirm ) ,
onConfirm : ( ) => dispatch ( blockDomain ( domain ) ) ,
} ) ) ;
} ,
onUnblockDomain ( domain ) {
dispatch ( unblockDomain ( domain ) ) ;
} ,
} ) ;
export default injectIntl ( connect ( makeMapStateToProps , mapDispatchToProps ) ( Domain ) ) ;