@@ -3,11 +3,31 @@ import PropTypes from 'prop-types'
33import Select from '../../Select'
44import cn from 'classnames'
55import styles from './ReviewType-Field.module.scss'
6+ import Tooltip from '../../Tooltip'
7+ import { DES_TRACK_ID , REVIEW_TYPES , MESSAGE } from '../../../config/constants'
68
79const ReviewTypeField = ( { reviewers, challenge, onUpdateOthers, onUpdateSelect } ) => {
8- const reviewType = challenge . reviewType ? challenge . reviewType . toLowerCase ( ) : 'community'
9- const isCommunity = reviewType === 'community'
10- const isInternal = reviewType === 'internal'
10+ const isDesignChallenge = challenge . trackId === DES_TRACK_ID
11+ const defaultReviewType = isDesignChallenge ? REVIEW_TYPES . INTERNAL : REVIEW_TYPES . COMMUNITY
12+ const reviewType = challenge . reviewType ? challenge . reviewType . toLowerCase ( ) : defaultReviewType
13+ const isCommunity = reviewType === REVIEW_TYPES . COMMUNITY
14+ const isInternal = reviewType === REVIEW_TYPES . INTERNAL
15+ const communityOption = ( disabled ) => ( < div className = { styles . tcRadioButton } >
16+ < input
17+ name = 'community'
18+ type = 'radio'
19+ id = 'community'
20+ checked = { isCommunity }
21+ disabled = { disabled }
22+ onChange = { ( e ) => e . target . checked && onUpdateOthers ( { field : 'reviewType' , value : 'community' } ) }
23+ />
24+ < label htmlFor = 'community' >
25+ < div className = { styles . radioButtonLabel } >
26+ Community
27+ </ div >
28+ < input type = 'hidden' />
29+ </ label >
30+ </ div > )
1131 return (
1232 < div >
1333 < div className = { styles . row } >
@@ -17,21 +37,14 @@ const ReviewTypeField = ({ reviewers, challenge, onUpdateOthers, onUpdateSelect
1737 < div className = { cn ( styles . field , styles . col2 ) } >
1838 < div className = { styles . subGroup } >
1939 < div className = { styles . subRow } >
20- < div className = { styles . tcRadioButton } >
21- < input
22- name = 'community'
23- type = 'radio'
24- id = 'community'
25- checked = { isCommunity }
26- onChange = { ( e ) => e . target . checked && onUpdateOthers ( { field : 'reviewType' , value : 'community' } ) }
27- />
28- < label htmlFor = 'community' >
29- < div className = { styles . radioButtonLabel } >
30- Community
31- </ div >
32- < input type = 'hidden' />
33- </ label >
34- </ div >
40+ { isDesignChallenge &&
41+ < Tooltip content = { MESSAGE . COMMUNITY_REVIEW_DISABLED } >
42+ { communityOption ( true ) }
43+ </ Tooltip >
44+ }
45+ { ! isDesignChallenge &&
46+ communityOption ( )
47+ }
3548 </ div >
3649 < div className = { styles . subRow } >
3750 < div className = { styles . tcRadioButton } >
0 commit comments