11import * as React from 'react' ;
22import noop from 'lodash/noop' ;
33import { FormattedMessage } from 'react-intl' ;
4+
45import CollapsableMessage from './CollapsableMessage' ;
5- import formatTaggedMessage from '../../utils/formatTaggedMessage' ;
66import LoadingIndicator , { LoadingIndicatorSize } from '../../../../../components/loading-indicator' ;
7- import messages from './messages' ;
87import ShowOriginalButton from './ShowOriginalButton' ;
98import TranslateButton from './TranslateButton' ;
9+
10+ import formatTaggedMessage from '../../utils/formatTaggedMessage' ;
1011import { withFeatureConsumer , isFeatureEnabled } from '../../../../common/feature-checking' ;
1112
13+ import messages from './messages' ;
14+
15+ import type { FeatureConfig } from '../../../../common/feature-checking' ;
16+
1217import './ActivityMessage.scss' ;
1318
14- interface Props {
15- features : Record < string , boolean > ;
19+ export interface ActivityMessageProps {
20+ features : FeatureConfig ;
1621 getUserProfileUrl ?: ( user : { id : string ; name ?: string ; email ?: string } ) => string ;
1722 id : string ;
1823 isEdited ?: boolean ;
@@ -28,7 +33,7 @@ type State = {
2833 isTranslation ?: boolean ;
2934} ;
3035
31- class ActivityMessage extends React . Component < Props , State > {
36+ class ActivityMessage extends React . Component < ActivityMessageProps , State > {
3237 static defaultProps = {
3338 isEdited : false ,
3439 translationEnabled : false ,
@@ -39,7 +44,7 @@ class ActivityMessage extends React.Component<Props, State> {
3944 isTranslation : false ,
4045 } ;
4146
42- componentDidUpdate ( prevProps : Props ) : void {
47+ componentDidUpdate ( prevProps : ActivityMessageProps ) : void {
4348 const { translatedTaggedMessage, translationFailed } = this . props ;
4449 const { translatedTaggedMessage : prevTaggedMessage , translationFailed : prevTranslationFailed } = prevProps ;
4550
0 commit comments